Developing Java Web Services Training

Answers to Popular Questions:

 
Yes, this class can be tailored to meet your specific training needs.
Yes, we provide Web Services consulting services.
Yes, group discounts are provided.

Course Description

 
A comprehensive look at the state of the art in developing interoperable web services on the Java EE 6 platform. Students learn the key standards for both SOAP-based and RESTful services, and the Java architectures that have evolved to build interoperable services and clients. We begin with an introductory module that covers both SOAP-based and RESTful services, and therefore both JAX-WS and JAX-RS. We then discuss JAXB, as this highly useful XML API is integral to both. The remainder of the course is split between two larger modules, each of which falls on one side of the fence: either SOAP services with JAX-WS, or RESTful services with JAX-RS. We cover SOAP, WSDL, and both WSDL-driven and Java-driven development paths for JAX-WS, as well as client-side development. Then students work with the Jersey implementation of JAX-RS to create RESTful services, from simple single-value interactions to more sophisticated services that manage CRUD (create/retrieve/update/delete) operations on more complex data types, using JAXB to marshal and unmarshal data over the wire.
Course Length: 5 Days
Course Tuition: $2090 (US)

Prerequisites

Strong Java programming skills are essential.

Course Outline

 

Chapter 1. Overview of Web Services
Why Web Services?
Service-Oriented Architecture
HTTP and XML
SOAP
WSDL
The SOAP Vision
The REST Vision
UDDI
The WS-I Basic Profile
Security

Chapter 2. Web Services for Java EE
Hosting Web Services: Scenarios
Web Services for Java EE
JAX-WS and JAXB
Web-Services Metadata
WSDL-to-Java and Java-to-WSDL Paths
Provider and Dispatch APIs
SAAJ and JAXP
JAX-RS for RESTful Services
JAXR

Chapter 3. The Java API for XML Binding
The Need for Data Binding
XML Schema
Two Paths
JAXB Compilation
Mapping Schema Types to Java
Java-to-XML Mapping Using Annotations
Marshaling and Unmarshaling
Working with JAXB Object Models

Chapter 4. The Simple Object Access Protocol
Messaging Model
Namespaces
SOAP over HTTP
The SOAP Envelope
The Message Header
The Message Body
SOAP Faults
Attachments

Chapter 5. Web Services Description Language
Web Services as Component-Based Software
The Need for an IDL
Web Services Description Language
WSDL Information Model
The Abstract Model -- Service Semantics
Message Description
Messaging Styles
The Concrete Model -- Ports, Services, Locations
Extending WSDL -- Bindings
Service Description

Chapter 6. The Java API for XML-Based Web Services
Two Paths
How It Works: Build Time and Runtime
The Service Endpoint Interface
Working from WSDL
Working from Java
RPC and Document Styles
One-Way Messaging
Binary Protocols

Chapter 7. WSDL-to-Java Development
The @WebService Annotation
Generated Code
Scope of Code Generation
Parameter Order
More JAXB: Mapping Collections
More JAXB: Mapping Enumerations
Applying JAXB Customizations

Chapter 8. Client-Side Development
Stubs and Proxies
Generated Code
Locating a Service
Invoking a Service
The @WebServiceRef Annotation

Chapter 9. Java-to-WSDL Development
Generating the WSDL and Schema
The @WebMethod, @XmlParam, and Related Annotations
More JAXB: Mapping Inheritance
Controlling the XML Model
Controlling the WSDL Description
JAXB Customizations with @XmlJavaTypeAdapter

Chapter 10. The Java API for RESTful Services
Applications
Resources
Sub-Resources
Providers
Scanning and @ApplicationPath

Chapter 11. Dispatching Requests to Methods
The Application Path
The @Path Annotation
The HTTP Method Annotations
Sub-Resource Locators
Annotation Inheritance and overriding

Chapter 12. Parameter and Return Types
Simple Parameter Types
@Consumes and @Produces Annotations
@XXXParam Annotations
The @DefaultValue Annotation
Return Types
Binary Content
Delivering a File

Chapter 13. Entities and Complex Content
Entity Providers
Built-In Entity Providers
Working with XML
Driving XML Representations from Schema

Chapter 14. Context and Lifecycle
Reading Web Resources
Finding Java EE Components
Finding Databases
Security Contexts

Appendix A. Course Tools and Utilities
Appendix B. Handy Guide to Web-Services Acronyms

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.