September 26, 2007

New Course on Java EE 5 and Web Services

Capstone Courseware has released its new course on building web services in the Java EE platform. Long a leader in Java web-services courseware, Capstone is now able to provide a solid week of material on JAX-WS, JAXB, and supporting APIs that integrate web-service development with the annotation-driven approach common to other Java EE technology.

Course 561, "Developing Java Web Services," focuses on the WS-I Basic Profile (as does Java EE 5), meaning SOAP 1.1 and WSDL 1.1. It also illustrates how the previously scattered Java APIs for web services have been unified under JAX-WS. Now, developers can choose the right tool for a particular service-oriented job from a continuum of options ranging from the highly automatic to the "fully manual" approach of JAXP parsing:

Java EE 5 Web Service APIs

We also highlight the points of contact between JAX-WS and other new Java EE standards. EJB3 supports JAX-WS/JAXB mappings to stateless session beans acting as web services; servlet components and JSF beans can inject references to web services using the @WebServiceRef annotation; and one exercise shows off the fascinating possibility of annotating the same domain class using JAXB for XML serialization and JPA for relational-database persistence.

For this important release, we've also undertaken to support Eclipse -- generally not a simple matter when working with standards-based web services, because of the code generation involved in builds. We've had a long talk with Eclipse about this and have convinced it (by way of carefully placed Ant builders) to trigger WSDL-to-Java or XML-to-Java code generation before running its own Java compilations. There are a few quirks, but with a little coaching students can now enjoy the advantages of Eclipse Europa for their code development throughout this course.