Building XML Web Services with Java

Building XML Web Services with Java

Course Code : 115

Workshop : Training

Duration : 4 days Training Course

COURSE OUTLINE

Web services revolutionize the way businesses interact by enabling interoperability between applications on different hardware and software platforms. The Java APIs for XML deliver a set of powerful tools to develop and access services. After completing this course, you will be able to learn the following:

  • Develop and deploy Web services with Java and XML
  • Describe the functionality of Web services using WSDL
  • Write services that exchange SOAP messages synchronously or asynchronously
  •  Create clients with JAX-RPC to access services
  • Customize SOAP messages using SAAJ
  •  Implement strategies to secure your Web services
  •  Locate Web services in XML registries using JAXR

COURSE OBJECTIVES

This hands-on course provides the skills to design and build Web services using Java. You develop services and clients using the latest standards-based technologies. You also deploy secure Web services that provide business partners with seamless access.

TARGET AUDIENCE

This course is valuable for those interested in integrating applications on the Web. Knowledge of XML is helpful.

COURSE CONTENTS

WEB SERVICES OVERVIEW

  • The need for Web services
  •  Service-oriented architecture (SOA)
  •  Core technologies: XML, SOAP, WSDL

ESTABLISHING A FOUNDATION FOR WEB SERVICES

The Simple Object Access Protocol (SOAP)

  • SOAP message structure
  • The message envelope, header and body
  •  Declaring namespaces

Creating Web services

  • Writing service classes in Java
  • Generating service and client files
  • Deploying services with Apache Axis

DESCRIBING WEB SERVICES WITH WSDL

Web Services Description Language

  • The role of WSDL
  • The anatomy of a WSDL document

Working with WSDL documents

  • Identifying operations and messages
  • Defining data types and port bindings
  • Fault handling

BUILDING SYNCHRONOUS WEB SERVICES

JAX-RPC services architecture

  • Implementing an SOA
  • Performing synchronous communication
  • Analyzing the request message sequence

Developing scalable services

  •  Writing service source files
  • Generating a WSDL service description
  •  Packaging and deploying services

Serializing Java objects

  • Mapping standard Java types to XML
  • Including JAX-RPC value types in SOAP messages

Java classes as WSDL

  • Mapping methods to operations
  • Converting exceptions to faults

ACCESSING SERVICES WITH JAX-RPC

Creating JAX-RPC clients

  • Generating server stub classes
  •  Coding, packaging and running the client

Deserializing XML messages

  •  Handling simple XML types
  •  XML arrays and complex types

WSDL datatypes as Java classes

  •  Mapping WSDL elements to Java
  •  Calling operations with holder class parameters and multiple return values

Invoking services with complex data

  • Encoding binary data in SOAP messages
  • Passing binary data with the DataHandler class

ASYNCHRONOUS WEB SERVICE OPERATIONS

Generating Web services from WSDL

  • Creating service source files from WSDL
  • Ensuring interoperability with the Web Services Interoperability Organization (WS-I) Basic Profile

Implementing asynchronous messaging

  •  Characteristics of asynchronous messaging
  • Setting up the WS-I Basic Callback scenario

Modifying SOAP messages with SAAJ

  • Reading and modifying SOAP messages using SOAP with Attachments API for Java (SAAJ)
  • Handling SOAP faults

SECURITY STRATEGIES

  • Authenticating access to Web services
  • Implementing programmatic security
  •  Configuring subscription-based services
  • Integrating digital signatures and encryption using security toolkits

QUERYING SERVICE REGISTRIES

Accessing service registries with the Java API for XML Registries (JAXR)

  • Universal Description, Discovery and Integration (UDDI)
  •  Finding businesses and Web services

Dynamically accessing services

  • Building a JAXR client
  • Locating service endpoints in a registry