Home About Courses Schedule Services Webinars Contact Search

Java and XML Application Development

SEE SCHEDULE

Duration: 4 Days

Method: Instructor led, Hands-on workshops

Price: $2100.00

Course Code: XM1040


Audience

Java Developers seeking a practical understanding of the library of classes supporting the creation and processing of XML Documents. Developers seeking to understand how to effectively incorporate Extensible Markup Language into their designs and how to integrate XML into their applications, or transform XML data.

Description

Do you already know Java and XML but require a deep understanding of how Java and XML interact? This is the course for you!You will learn about the various XML-related technologies accessible via Java: JAXP with SAX and/or DOM, JAXB, JAX-RPC, JAXM, SAAJ and JAXR. You will gain experience using Java to create and process XML documents. Throughout the course you use Java to build a working prototype of a Web-based application that can generate, exchange, format and control XML.

Objectives

Upon successful completion of this course, the student will be able to:

  • Understand how to create and process XML Documents in Java Applications
  • Be familiar with the purpose and capabilities of JAXP with SAX and/or DOM, JAXB, JAX-RPC, JAXM, SAAJ and JAXR.
  • Be familiar with the purpose and capabilities of JAXB, JAX-RPC, JAXM, SAAJ and JAXR.
  • Be prepared to integrate SAX and/or DOM XML processing in Java Applications
  • Analyze and integrate these Java/XML technologies into applications
  • Understand the purpose, capabilities, and promise of JAXB
  • Be prepared to make use of JAXB in Java/XML Applications
  • Be familiar with the purpose and status of the various standards related to XML
  • Understand how to define the structure of XML documents using Document Type Definitions (DTDs)
  • Understand how write XSL style sheets to transform XML documents
  • Be familiar with techniques used to render XML documents for display on Browsers
  • Understand key aspects of XPath used to identify specific XML document content

Prerequisites

Introduction to Java Programming and Introduction to XML.

Topics

  • I. Java XML Technologies
    • JAXP Overview
    • JAXB Overview
    • JRPC Overview
    • JAXM Overview
    • SAAJ Overview
    • JAXR Overview
  • II. XML
    • XML
    • XML Syntax Summary
    • XML DTD Example
    • XML File Example
  • III. Reader/Parsers
    • SAX and DOM
    • JAXP
    • JAXP API's
  • IV. SAX Reader/Parser
    • SAX API's
    • SAX Parsing
    • SAX Parsing Example
    • SAX ErrorHandler
    • SAX DTDHandler
    • Handling SAX XML Events
    • SAX ContentHandler
  • V. DOM Reader/Parser
    • DOM Parsing
    • DOM API - DTD Info
    • DOM API - Document Info
    • Node Type Fields
    • Informational Node Methods
    • Node Values, By Node Type
    • Relational Node Methods
    • Processing a DOM Tree
    • Processing a DOM Node
    • DOM Tree Manipulation
  • VI. JAXB
    • What is JAXB?
    • Benefits of JAXB
    • Contrast to JAXP
    • Relating to a DTD
    • Relating to a Schema
    • Generate Processing Codes
    • Unmarshal from an XML Document
    • Instantiating XML "Objects"
    • Validating the XML Object
    • Marshal to an XML Document
  • VII. Introducing XML
    • What is XML?
    • Standards
    • Possible Uses
    • Advantages
    • Example: Sample XML Document
    • Terms
    • Evolution
    • Lab Exercise
  • VIII. XML Fundamentals
    • Creating Documents
    • Examples
    • Terms
    • Mixed Content
    • Attributes
    • Empty Elements
    • Naming
    • Predefined Entities
    • Comments
    • Processing Instructions
    • XML Declaration
    • Well-Formed Documents
    • XML and HTML
    • Lab Exercise
  • IX. Document Type Definitions
    • What is a DTD?
    • Validation
    • Example: DTD
    • Valid and Invalid Documents
    • Referencing a DTD
    • Internal DTDs
    • Public DTDs
    • Lab Exercise
    • More Expressive DTDs
    • Number of Children
    • Grouping
    • Mixed Content
    • Empty Elements
    • The ANY Element
    • Lab Exercise
    • Attribute Declarations
    • Attribute Types
    • Lab Exercise
    • Attribute Characteristics
    • General Entity Declarations
    • Lab Exercise
    • Parameter Entities
    • Lab Exercise
  • X. Namespaces
    • Motivation
    • Concept
    • General Form
    • Example: Namespace Definition
    • Lab Exercise
  • XI. XSL Transformations
    • Extensible Stylesheet Language
    • What is an XSLT Stylesheet?
    • Referencing a Stylesheet
    • Example
    • What is a Stylesheet Processor?
    • Command Line Stylesheet Processors
    • Browser Based Transformation
    • Example
    • Template Rules
    • <xsl:template>
    • <xsl:value-of>
    • Lab Exercise
    • Modes
    • Lab Exercise
    • Extracting Attribute Values
    • Lab Exercise
  • XII. XPath
    • What is XPath?
    • The Document Object Model (DOM)
    • DOM Nodes
    • Example DOM
    • Absolute vs. Relative Paths
    • Location Paths
    • Element Names
    • Attribute Values
    • Other Nodes
    • Wildcards
    • Combining Paths
    • Compound Paths
    • Predicates
    • Expressions
    • Nodeset Functions
    • String Functions
    • Boolean Functions
    • Numeric Functions
    • Lab Exercise
  • XIII. Additional XSL Features
    • <xsl:if>
    • <xsl:choose>
    • <xsl:sort>
    • Lab Exercise
  • XIV. XSL Technologies
    • XSLT to Transform XML Documents
    • XPath Expression Language
    • XSL-FO to Format XML Documents
  • XV. XSLT Basics
    • What's XSLT?
    • Why XSLT?
    • XSLT Limitations
    • Where and How XSLT Happens
    • XSLT Editors and Processors
    • Stylesheet Structure
    • XSLT Language Components
    • Syntax
  • XVI. XPath within XSLT
    • Trees, not Text strings
    • What does the Parser do?
    • XPath Data Model
    • Location Paths
    • Axes and Shorthands
    • Expressions
    • Operators
    • Functions
  • XVII. XSLT Elements
    • Categories
    • Descriptions
    • Templates
    • Template Rules
    • Matching using XPath
  • XVIII. XSLT Functions
    • Descriptions
  • XIX. Refining and Combining Style Sheets
    • Sorting Document Content
    • Controlling Document Output
    • Including and Importing Style Sheets
  • XX. XSLT Programming
    • XSLT Flow Control Elements
    • Named Templates
    • Parameters
    • Variables
  • XXI. Creating and Changing XML Structure with XSLT
    • Create New Elements in a Result Document
    • Define Attributes and Namespaces for New Elements
    • Use the DOM to Create New XML Content Dynamically
    • Add Processing Instructions and Comments to a Result Document as Necessary
    • Define and Using Keys to Access Nodes in the same XML Document or a Different XML Document
  • XXII. XSLT Techniques
    • Insert Numbered Text into a Result Document
    • Write Style Sheets to Transform XML into HTML or Another XML Grammar
    • Push vs. Pull
    • Accessing Resources
  • XXIII. XSL-FO
    • Formatting with XSL
    • Comparison to CSS
    • Setup: Declarative and Structural Elements
    • Formatting: Font and Text Attributes
    • Blocks: Text Alignment, Line Height
    • Blocks: Borders, Padding, and Background
    • Page Layout: Page Sequence Masters
    • Page Layout: Areas, Flows, Static Contents
    • Lists
    • Tables
    • Graphics