How To Take This Class

Course Overview

Geared for experienced Java developers new to XML, Integrating XML, SOA and Web Services is a five day, lab-intensive course that introduces Java developers to XML and then to Service-Oriented Architectures (SOA) and Web Services. SOA and Web Services represent a groundbreaking evolution in distributed computing. The concepts are not altogether new, but the application of them, and the unanimous acceptance of core standards like HTTP, XML, SOAP, WSDL, and UDDI, has paved the way for XML Web Services and service-oriented architecture.

Course Prerequisites

Students should have 1-2 years of working knowledge with Java and J2EE / JEE.

Course Audience

This is an intermediate level web services programming course, designed for Java developers and architects new to XML, who need to identify, design, and implement XML web services and. We will explore and apply the terminology, the specification, the processes and technologies specific to both XML and web services.

What You'll Learn

Upon successful completion of this course, students will be able to:
  • Understand and work with XML applications and components
  • Understand and apply the basic concepts of SOA to the identification and design of web services
  • Understand and intelligently discuss Web Services and the core technologies involved
  • Develop and deploy real-world JEE Web Services
  • Expose existing Java components as Web Services
  • Write Java components that access remote Web Services hosted by a third party
  • Read and understand a WSDL document
  • Parse, process, and respond to a SOAP message
  • Understand the concepts behind REST and implement a REST-based web service
  • Understand and work with the standards and technologies encompassed by WS-Security

Course Duration

5 Days

Course Outline

  1. XML Overview
    • XML Mechanics
    • Working with XML
  2. JAXP and SAX Parsing
    • JAXP and SAX (Part 1)
    • SAX Parsing Using JAXP
    • JAXP and SAX (Part 2)
    • SAX Content Handling
  3. JAXP and DOM Parsing
    • JAXP and DOM (Part 1)
    • DOM Parsing Using JAXP
    • JAXP and DOM (Part 2)
    • DOM Processing
  4. JAXP and Transformations
    • XSLT Transformations in Java
    • Working With XSLT Processors
  5. Introduction to SOA
    • SOA Overview
    • Thinking Services
    • Enabling Infrastructure
    • Layering of Services
    • Legacy Functions and Resources
    • Defining and Creating New Services
    • Implementing SOA
  6. Path to Useful Web Services
    • SOA via the Web
    • Web Services Overview
    • Web Services in Action
    • Web Services, Java, and JEE
    • Web Services Quickstart
    • Implementing a Web Service
    • Debugging Web Services
  7. Foundation for Web Services
    • XML: Basics, Namespaces and Schemas
    • Namespaces and Schemas
    • XML in Java: JAXP and JAXB
    • Using JAXB
  8. Binding: SOAP
    • SOAP Overview
    • SOAP in Action
    • SOAP in Detail
    • SAAJ
    • Creating a SOAP Message
    • Accessing a Service with a Servlet
  9. Description: WSDL
    • WSDL Overview
    • WSDL in Action
  10. Web Services in Java: JAX-WS/RPC
    • JAX-WS/RPC Overview
    • Working with JAX-WS/RPC
    • WSDL-generated service
    • WSDL-generated client
  11. Web Services in JEE - WSEE
    • Implementing Enterprise Web Services
  12. REST in Java
    • REST Overview
    • Principles and Best Practices with REST Web Services
    • Publishing and Consuming REST Web Services in Java
  13. Finding Web Services
    • UDDI: Pros and Cons
    • Discovery in Action
  14. Security - WS-Security and Defenses
    • Securing Untrusted Input
    • Insecure Web Services
    • XML Signature and Encryption
    • Securing Web Services: WS-Security