Developing Web Services in Java

Duration: 3 days
Type: advanced


Prior to JSE 1.6 and JEE 5 support for Web Services in Java was fragmented and overly complicated. In the newest evolution of the Java platform Web Services are simplified, standardised and fully integrated. This makes it much easier to write code which interoperates with .NET components written in C# and VB .NET.

This course introduces the latest methods for developing Web Services in both JEE and .NET. Delegates create Web Services on both platforms and learn how a client from one platform can access a service developed using the other. The course can be delivered using either NetBeans 6.1 or Eclipse Ganymede.


Delegates must have several years Java and XML experience, preferably gained developing JEE Web Applications. Some prior exposure to C# and ASP .NET is helpful but not essential.

List of Modules

Introduction to Web Services

Limitations of conventional Web Applications
Advantages of automating web based services
Web Services verses distributed method calls
Using Web Services to interoperate with legacy systems
Web Services and Service Oriented Architectures

Core Web Service Technologies

Strengths and weaknesses of messaging over HTTP
Using SOAP to deliver XML messages and handle faults
Choosing between RPC and Document based encoding
Creating WSDL documents to advertise services
The WS-I and advantages of WS-I Basic Profile
Deciding if you want to make use of UDDI

Web Services Description Language (WSDL) in Depth

Defining complex data types using XML Schema
Using types to define messages and operations
Combining operations to create port types
Binding operations and defining services

Developing Web Services with JAX-WS 2.0

Writing a Web Service as a plain Java object (POJO)
Writing a Web Service as an EJB 3.0 JavaBean
Mapping operations and parameters into Java
Mapping SOAP faults into Java exceptions
Generating a Web Service Client

Mapping Complex Types using JAXB 2.0

Limitations of JAXB version 1.0
Support for XML Schema in v2.0
The javax.xml.datatypes package
Creating bindings via Annotations
Using Collections within bindings

Developing Web Services with ASP .NET 2.0 (Overview)

How support for WS is layered onto ASP .NET
Creating a Web Service Project in VS2005
Attributes used within Web Services
Limitations of ASP .NET Web Services
Generating a Web Service Client

Developing Interoperable Web Services

Considerations when developing .NET services for Java clients
Considerations when developing Java services for C# clients
Exchanging binary data via attachments to SOAP messages
Authenticating users and establishing levels of trust

Advanced and Emerging Web Service Technologies

Problems applying existing security strategies to Web Services
Safeguarding Web Services using XML-Encryption and XML-Signature
Building a PKI infrastructure for and around Web Services
Ensuring reliable message delivery and supporting transactions
Using BPEL to define and direct business processes within a SOA