Minimum 50% hands-on
Supported Platforms
JBoss® AS, Weblogic® AS, GlassFish, RAD®/WebSphere®
Web Services Training Course Duration
5 Days
Web Services Training Course outline
Session 1: Service Oriented Architecture (SOA) and Web
Services
- SOA (Service Oriented Architecture) Overview
- Web Services Overview / Relationship to SOA
- Web services Architecture
- SOAP and WSDL Overview
Session 2: Introduction to Java Web Services
Overview
- Java Web Services
- JAX-WS and JSR-181
- A Simple Service definition with @WebService
JSR-181
- Overview
- @WebService, Modifying the Generated Service
- Other Annotations (@WebMethod, @SOAPBinding)
- The SEI (Service Endpoint Interface
- Lab: Defining a Service with an SEI
JAX-WS Capabilities
- Overview
- WSDL to Java Mapping
- Capabilities (XML Messaging, Handlers, SOAP/HTTP, Client Programming
JAX-WS Clients
- Programming Model, Generating Classes from WSDL
- Writing a JAX-WS Client
- Dynamic Clients
- Lab: JAX-WS Client and Dynamic Client
Session 3: WSDL – Web Services Description Language
- Introduction
- XML Namespace and XML Schema Overview
- Namespaces and Schema in WSDL Documents
- WSDL Structure and Elements
- A WSDL Document
- Definitions, Types, Messages, PortTypes, and Operations
- Bindings, Ports, and Services
- SOAP 1.1 Binding for WSDL
Session 4: SOAP
- SOAP Overview
- Message Structure
- Envelope/Header/Body
- Detailed Soap message structure
- SOAP Faults, Attachments
- SOAP Messaging and HTTP Binding
- SOAP Styles and Encoding
Session 5: SAAJ, DOM, and SOAP Handlers
- SAAJ Overview, Message Structure and API
- Creating/Sending Messages
- DOM Overview
- Using DOM with SAAJ
- SOAP Handlers
- Overview and Processing
- Logical and Protocol Handlers
- Writing/Configuring a SOAP Protocol Handler
- Writing/Configuring a Logical Handler
Session 6: JAXB - Java Architecture for XML Binding
- Overview and Architecture
- Generating Java Classes from XML Schema
- Customizing Generated Java
- Generating XML Schema from Annotated Java Classes
- Web Services, WSDL, and JAXB
Session 7: Start From WSDL / Start from WSDL & Java
- Starting From WSDL
- Binding Customizations
- Starting From WSDL and Java
Session 8: XML-Based (Bare) Web Services
- XML Messaging Overview
- JAX-WS Providers
- A SOAP Provider and Source Provider
- XML Clients with Dispatch
- XML/HTTP Messaging with Provider
- Overview of REST and JAX-RS
Session 9: Handling Binary Data
- Overview and Issues
- Default handling
- MTOM Overview
- Using MTOM in Services and Clients
- Using DataHandler
Session 10: Security
- Java EE Security / Role Based Security
- Securing Web Services with BASIC Authentication
- Transport Security / HTTPS
- Securing Web Services with HTTPS
- WSS (WS-Security) Overview
Session 11: EJB-Based Web Services
- EJB Overview
- Programming EJB
- Creating/Configuring EJB-Based Web Services
- Lab: Creating an EJB-Based Web Service
Session 12: WS-* Overview
- WS-Interoperability (WS-I)
- The WS-I Basic Profile
- WS-Addressing
Session 13: Introducing REST and JAX-RS
- REST Overview
- What are Resources?
- REST Characteristics
- Accessing RESTful Services
- URI Templates
- JAX-RS Overview
- What is JAX-RS
- Resource Class Definition - @PATH, @GET
- @PathParam and URI Templates
- Extracting Request Parameters
- @Produces - Returning XML and JSON
Session 14: Client-side Access to RESTful Services
- REST Client Requirements
- Creating Client instances
- Setting the Target Resource
- Setting Path Parameters
- Invoking the Service
- Getting a Response
- Getting/Setting Headers and/or Cookies
Session 15: Common REST Patterns
- The REST Methos - GET, POST, PUT< DELETE
- @Consumes and Acceptable Media Types
- GET for Data Retrieval
- POST for Adding Information
- PUT for Updating
- DELETE for Removal
Session 16: Best Practices
- Coarse Grained Web Services
- Optimization and Caching
- XML Handling
- Interoperability
- Top Down / Bottom Up