Training: Java Web Services using JAX-WS and JAXB
In this practice oriented training course the participants learn how to build Java Web Services by using the Java Web Services Standards JAX-WS, JAXB and JWS Metadata.
Course Content
Web Services Basics
- SOAP, WSDL and UDDI
- The structure of SOAP messages: Envelope, Header and Body
- Describing Services using WSDL
- Transport via HTTP
- the Messagestyles: RPC/Encoded, RPC/Literal, Document/Literal, Wrapped and Bare
- Comparison of the SOAP Engines Axis, Axis2, Metro and CXF
Java Web Services Overview
- JAX-WS and JWS Metadata
- XML Parsing via DOM, SAX and StAX
- XML Java Binding by using JAXB
- SOAP with Attachments API for Java (SAAJ)
- Java API for XML Registries (JAXR)
- JAX-RPC versus JAX-WS
- Enterprise Web Services WSEE respectively JSR-109
- Relations and dependencies between the Java Standards
Java API for XML-Based Web Services JAX-WS
- Related specifications: JAXB, SOAP, WSDL, WS-I Basic Profile 1.1, Annotations, JSR 109, Web Services Security (JSR 183)
- WSDL to Java and Java to WSDL Mapping
- Building clients with generated stubs
- Asynchronous clients with callback or polling
- MessageContext and WebServiceContext
- Handler for payload and protocol
- Engaging of handlers on a service, a port or the protocol layer
- Non-HTTP Transport
- Message Access and Session Management
- Versioning of Web Services
- Response Bean and AsyncHandler
- InOut Parameter with Holder Classes
- SPI with Provider and ServiceDelegate
XML Binding with JAXB
- JAXB Annotations
- Generate Schema from Java Code by using schemagen
- Generate XML Schemas by using the tool xjc
- How to use JAXB for Web Services
Web Services Metadata for the JavaPlatform JSR181 JWS
- Java 1.5 Annotations
- The Development models "Start with Java", "Start with WSDL" and "Start with WSDL and Java"
- Generating Web Services via Annotations
- The Affects of WSDL Generating with Annotations
- Generating of a Service Implementation Bean
- The Service Endpoint Interface SEI
- The Annotations: @WebService, @WebMethod, @WebResult, @WebParam, ...
J2EE Web Services Overview (WS4EE)
- EJB Introduction in 20 minutes
- JSR 109 Implementing Enterprise Web Services
- Web Service Components and Container
- Web Service Endpoint Interface (SEI)
- Wrapping of J2EE Web Services
- WS4EE Web Services and Tansactions
- JBoss.NET, JBossWS or Axis EJB Provider?
Java API for XML Registries (JAXR)
- Classifications Schemata
- JAXR Architecture
- Performance profiles
- Registries and Repositories
- JAXR Clients
Interoperability with the WS-I Basic Profile
- How does the WS-I Basic Profile complete the Web Services Standards SOAP, WSDL and UDDI?
- Interpretation of Document/Literal and RPC/Literal from WS-I
- Testing of messages and metadata for WS-I conformity with Proxy and Analyser
- How to generate WS-I conform Web Services
- Further profiles: Attachment Profile, Security Profile
Advanced Topics
- Sessionmanagement
- Exceptionhandling
Objectives
- Learn more about the building of Web Service clients and servers by using the Java Standards JAX-WS, JWS and JSR-109
- Learn to understand the Web Services APIs JAXWS and JWS Metadata JSR-181
Benefits
- Gain valuable experience with practice oriented exercises
- Benefit from the experience of the course instructor in Web Services
- You will receive templates of service units, which you can use in your own projects
Targetgroup
Java programmers
Duration
3 Days
Prerequisites
Skills in Java programming
Material
Handouts of all slides presented in the course. Lecture notes with detailed exercises.
Onsite Needs
- 1 PC for each 1-2 participants (min. P III 500 MHz, 256 MByte)
- Beamer
- Whiteboard or Flipchart