Mastering Java Web Services with Advanced Topics

COURSE OUTLINE:

Description

In this lab-intensive course, you will learn the entire spectrum of technologies that enable Web Services in Java and JEE. This course focuses on what separates an ad hoc set of web services (not SOA) from a managed, vibrant, reusable catalog of enterprise services (definitely SOA). This course provides an overview of the entire spectrum from the promise of cloud computing to the grit of XML content. You will gain practical, hands-on experience with implementations of the Java XML and Web Service APIs including JAXP, JAXB, JAX-WS 2.0, WSEE, and XWSS. In terms of Java, the focus is on using the JAX-WS 2.0 and JAXB APIs and implementations as the basic for generating and deploying web services and service clients.

Audience

Experienced Java developers and architects who need to identify, design, and implement web services

Prerequisites

  • Working knowledge with core JEE APIs such as servlets and JSPs
  • Familiar with XML Namespaces and XML Schema
  • You should have a working knowledge in the following topics or attend one of these courses as a prerequisite:

Learning Objectives

  • Basic concepts of SOA to the identification and design of web services
  • Web Services and the core technologies involved
  • Layered services including orchestration
  • Design, develop, and deploy real-world JEE Web Services
  • Expose existing Java components as XML Web Services
  • Write Java components that access remote Web Services hosted by a third party
  • Read and understand a WSDL document
  • Parse, process, and respond to a SOAP message
  • Concepts of REST and implement a REST-based web service
  • Implement handlers to inject cross-cutting solutions for security, logging, auditing, and other needs
  • Work with WS-Security to protect content, resources, and other assets

1. Exploring Web Services

  • Web Services Overview
  • Web Services, Java, and JEE
  • Web Services Quickstart

2. Foundation of Web Services

  • XML Review: Namespace and Schema
  • XML in Java - JAXP and JAXB

3. Binding - SOAP/REST

  • SOAP Overview
  • REST Overview

4. Description and Discovery

  • WSDL Overview
  • Discovery

5. Web Services in Java - JAX-WS

  • JAX-WS Overview
  • Working with JAX-WS
  • Handlers
  • Working With Attachments

6. Implementing REST with JAX-RS

  • Designing RESTful Services
  • Overview of JAX-RS
  • @Path: URI Matching
  • Injection Using JAX-RS
  • Handling Exceptions
  • Handling Content

7. Advanced Web Services Topics

  • Web Services for JEE (WSEE)
  • Transactions in Web Services: WS-TX

8. Security - WS-Security and Defenses

  • XML Signature and Encryption
  • WS-Security
  • Securing Untrusted Input