Build and deploy Java web services using SOAP, REST, and SOA architecture
This course enables participants to acquire the skills needed to develop applications in a distributed environment. It shows how to integrate potentially heterogeneous applications to make them interoperable by using web services suited to the Java language and the Java EE platform. Numerous hands-on workshops allow participants to develop, publish, and use their first web services while working with the appropriate standards.
Is it for you ?
Developers and project managers who need to implement Web Services in the Java domain
Prerequisites
Basic knowledge of XML and experience in Java development
What You'll Walk Away With
- ✓ Design web services aligned with SOA architecture and WS-I standards
- ✓ Develop SOAP and REST services in Java using JAX-WS and frameworks (CXF, AXIS, Jersey)
- ✓ Define and use service contracts with WSDL and manage SOAP messaging
- ✓ Process and transform XML data using JAXB, SAX, DOM, and StaX APIs
- ✓ Deploy, secure, and optimize web services and clients (handlers, MTOM, multithreading)
Training content
1 Introduction: SOA Architecture and Web Services
- The 5 characteristics of SOA
- The 7 building blocks of an SOA architecture
- Relationship between SOA and Web Services
- Main Web Services technologies: HTTP, XML, SOAP, WSDL, UDDI
2 XML in Java
- XML syntax and namespaces
- XML description with schemas
- Parameter conversion and deconversion with JAXB
- Customizing XML-Java bindings
- XML manipulation with SAX, DOM, and StaX APIs
3 SOAP Messages
- Role of SOAP in web services
- Structure of SOAP messages
- SOAP-ENV, Header, Body, Attachment
- Operation, messages, and errors
4 Interface with WSDL
- Role of WSDL in Web Services
- 5 key sections of a WSDL document
- Description of the contract/interfaces/operations in the portType section
- Understanding “abstract” sections: messages, types
- Understanding “concrete” sections: binding, services
- Specification of service implementation (service)
- Specification of message exchange protocol (Binding)
5 Web Services Governance Solutions
- Governance: Compliance with SOA architecture
- Compliance with WSI (Web Service Interoperability) standards
- Integration of proxies and adapters
- Implementing a Web service endpoint with JAX-WS
- Customizing JAX-WS web services
- Deploying a Web service WAR file
- Intercepting traffic between web services and clients
- Optimizing message transmission
6 Developing SOAP Web Services in Java 6
- Creating WS from WSDL (WSDL-first) or from code (code-first)?
- Using the “high-level” JAX-WS API
- Using the “low-level” SAAJ API
- Validating Web Service compliance with WS-I standards
- WS-I tools: Analyzer, Monitor
- Creating interceptors (Handler) on the web service and client side
- Optimizing message transmission with MTOM
7 Developing SOAP Web Services with Frameworks/IDEs
- Added value of Web Services frameworks
- Overview of frameworks: CXF, AXIS, METRO, Jboss WS
- Validating WS compliance with WS-I
- Creating Web Services WAR deliverables
- Creating EJB Session type Web Services deliverables
- Creating interceptors (Handler) on the web service and client side
- Wizards for creating and testing Web Services in Eclipse and Netbeans
8 Web Services Clients
- Accessing Web Services via WDSDL
- Creating client source files from WSDL
- Customizing generated source files through JAX-WS
- Creating notification services and clients (one-way)
- Writing multithreading clients
- Intercepting and modifying SOAP messages
9 REST Approach
- Developing RESTful web services with JAX-WS
- Characteristics of annotated POJOs, HTTP, XML/JSON
- Creating client-side interactivity
- Invoking web services through the Dispatch API
- Processing received XML messages
- Security delegated to transport
- Developing REST with the Jersey Framework
10 SOAP/REST comparison
- Interoperability
- Specifications
- Security
- Transport
- Governance
📌 Practical information
Our training sessions are offered in Montreal or Quebec City, in person or in a virtual classroom. Dates and locations are specified when you select your session below. If you have any questions, check out our FAQ.