Java Web Services Training Outline
Durations:32 Hours
1. Overview of Web Services
2. Web Services for Java EE
Why Web Services?
HTTP and XML
Simple Object Access Protocol (SOAP)
Web Service Description Language (WSDL)
Universal Description, Discovery and
Integration (UDDI)
Hosting Web Services: Scenarios
Invoking Web Services: Scenarios
Web Services for Java EE (WS4JEE)
The Automated Approach: JAX-WS
and JAXB
Manual Options: SAAJ and JAXP
Portable Web-Services Metadata
Service Registries: JAXR
Service-Oriented Architecture
The WS-I Basic and Related Profiles
REST
3. The Simple Object Access Protocol
4. The Java API for XML Binding
Messaging Model
The Need for Data Binding
Namespaces
XML Schema
SOAP over HTTP
Two Paths
The SOAP Envelope
JAXB Compilation
The Message Header
Mapping Schema Types to Java
The Message Body
Java-to-XML Mapping Using
Annotations
SOAP Faults
Marshaling and Unmarshaling
Attachments
Working with JAXB Object Models
In-Memory Validation
5. Web Services Description Language
Web Services as Component-Based
Software
The Need for an IDL
Two Paths
Web Services Description Language
How It Works: Build Time and
Runtime
WSDL Information Model
The Service Endpoint Interface
The Abstract Model -- Service Semantics
Working from WSDL
Message Description
Working from Java
Messaging Styles
RPC and Document Styles
The Concrete Model -- Ports, Services,
Locations
One-Way Messaging
Extending WSDL -- Bindings
Binary Protocols
Service Description
7. WSDL-to-Java Development
6. The Java API for XML-Based Web
Services
8. Client-Side Development
The @WebService Annotation
Stubs and Proxies
Generated Code
Generated Code
Compilation and Assembly
Locating a Service
Deployment
Invoking a Service
Runtime Behavior
Scope of Code Generation
More JAXB: Mapping Collections
More JAXB: Mapping Enumerations
10. JAX-WS Best Practices
Which Way to Go?
Interoperability Impact
The @WebMethod, @XmlParam, and
Related Annotations
Portability Impact
Scope of Code Generation
Polymorphism in Web Services
More JAXB: Mapping Inheritance
Web Services as Java EE
Components
Controlling the XML Model
lifecycle Annotations
Context Interfaces
The @WebServiceRef Annotation
9. Java-to-WSDL Development
Controlling the WSDL Description
11. Provider and Dispatch APIs
Stepping Down
The Provider<T> Interface
Implementing a Provider
JAXB Without WSDL
Integrating JAXP
The Dispatch<T> Interface
Building Clients
13. Message Handlers
12. The SOAP with Attachments API for
Java
The SAAJ Object Model
Parsing a SOAP Message
Reading Message Content
Working with Namespaces
Creating a Message
Setting Message Content
14. EJBs as Web Services
Handling SOAP Headers
Enterprise JavaBeans
Servlet Endpoint Context
Three Tiers for Java EE
MessageContext and SOAPMessageContext
Message Handlers and Handler Chains
Processing Model and Patterns
Client-Side Handlers
15. Handling Binary Content
The WS-I Attachments Profile
Using base64Binary
MIME Attachments
JAX-WS Support
MTOM and XOP
SAAJ Support
EJB3 and JAX-WS
Session Beans as Web Service
Endpoints
The Bean's Service Endpoint
Interface
SOAP as an EJB Protocol
Pitfalls