Topics
 
  • Web Services Atomic Transaction (WS-AtomicTransaction).
  • Web Services Reliable Messaging (WS-RM)
  • Web Services Addressing (WS-Addressing)
  • SOAP Message Transmission Optimization Mechanism (MTOM)
  • Web Services Secure Conversations (WS-SC)  

Tools Used

 

The class currently uses IBM tooling for the labs. The concept and theory are vendor neutral. If you wish to take the class using a non-IBM tool please let us know.

Audience
 

J2EE developers who will like to learn about how to build a Web Services based solution. This class covers many advanced topics that will help them build a solution appropriate for a large business.

Prerequisites
 

Previous experience with Web Services is necessary. Students should know SOAP, WSDL and how to develop a basic Web Service. WA1562 Web Services Development Using RAD v7.0 is highly recommended.

Duration
 

3 days

Lab Setup Guide

Outline for Advanced Web Service Development

Chapter 1. Introduction to JAX-WS

  • What is JAX-WS?
  • Advantages of JAX-WS
  • Why Do We Need a Programming Model?
  • Basic Java to WSDL Mapping
  • Developing a Service Provider
  • The Service Implementation Class
  • The Service Endpoint Interface (SEI)
  • Service Implementation Options
  • Developing a Consumer
  • Static Client Development
  • The Service Class
  • The BindingProvider Interface
  • Summary

Chapter 2. JAX-WS Mapping Details

  • Introduction to Mapping in JAX-WS
  • Top-down and Bottom-up Mapping
  • WSDL to Java Mapping
  • XML Data Type to JavaBean Mapping
  • Mapping <portType> to the SEI
  • Mapping the SOAP <binding>
  • Customizing WSDL to Java Mapping
  • Java to WSDL Mapping
  • JavaBean to XML Mapping
  • Mapping SEI to <portType>
  • Mapping Java Method to <operation>
  • Input Parameter Mapping
  • Method Output Mapping
  • Bare Input and Output Mapping
  • RPC Literal Style
  • Service Provider Annotation
  • Web Service Provider Example
  • Service Provider Annotations
  • JAX-WS Clients
  • Synchronous and Asynchronous Calls
  • Summary

Chapter 3. WS-Addressing

  • What is WS-Addressing?
  • WS-Addressing and Long Running Services
  • Other Uses of WS-Addressing
  • WS-Addressing SOAP Header Elements
  • Example Client SOAP Request
  • Example Callback SOAP Request
  • Writing JAX-WS Clients to use WS-Addressing
  • Enabling Asynchronous Service Requests
  • Using WS-Addressing from the Client
  • Providing an AsyncHandler to Handle Callbacks
  • WS-Addressing Headers in SOAP Messages
  • WS-Addressing Sequence of Events
  • Asynchronous "Polling"
  • Endpoint References
  • Associating Actions with WSDL Operations
  • Faults
  • Security and Firewall Issues
  • Summary

Chapter 4. WS-ReliableMessaging

  • The Problem with HTTP
  • Enter WS-ReliableMessaging
  • When to Use Reliable Messaging?
  • How Does WS-RM Work?
  • Importance of Persistence
  • The Problem With Firewall
  • How Does WS-MakeConnection Work?
  • Using WS-MakeConnection
  • Summary

Chapter 5. Using MTOM for Binary Data

  • What is MTOM?
  • How MTOM Differs from Previous Approaches
  • Role of XML-binary Optimized Packaging (XOP)
  • Example of MTOM Messages
  • Enabling MTOM on a JAX-WS Service
  • Enabling MTOM on a Client
  • Summary

Chapter 6. Web Services Security (WS-Security)

  • The Challenges
  • Public Key Infrastructure (PKI)
  • Digital Signature
  • Certificates
  • Overview of Web Services Security
  • SOAP Message Security
  • Message Integrity
  • Message Confidentiality
  • Symmetric Encryption Example
  • Authentication Using Identity Token
  • Authentication
  • Transport Level Security
  • Audit Tracking
  • Identity Assertion Using SAML
  • SAML SOAP Example

Chapter 7. WS-Policy

  • Introduction
  • Simple Example
  • Policy Alternatives
  • Relation to Other Web Service Standards
  • Summary

Chapter 8. WS-Trust and WS-Federation

  • Review of WS-Security Authentication Model
  • How WS-Trust Works
  • WS-Federation
  • Federation Metadata Example
  • Requesting a Token
  • Dynamic Conversation
  • Summary

Chapter 9. Web Service Transactions with WS-Atomic Transaction

  • Transactions in Web Services
  • Distributed Transactions
  • Two-Phase Commit
  • Transactions with Web Services
  • WS-Coordination Framework
  • Coordination Context
  • Coordination Context Example
  • Root and Subordinate Coordinators
  • WS-Atomic Transaction
  • Completion Protocol
  • Two-Phase Commit
  • Interaction with Native Transactions
  • Interoperability
  • Do you Really Need WS-Atomic Transaction?
  • Summary

Chapter 10. WS-Secure Conversation

  • Review of WS-Security and WS-Trust
  • Need for a Security Context
  • Basic Usage of WS-Secure Conversation
  • Establishing a Security Context
  • Building on WS-Trust
  • Using the Security Context Token
  • Alterations to the Security Context Token
  • Summary