Chapter 8. SOAP-Based Web Services
SOAP-Based Web Services are defined as JSR 224, and the complete specification can be downloaded from http://jcp.org/aboutJava/communityprocess/mrel/jsr224/index4.html.
SOAP is an XML-based messaging protocol used as a data format for exchanging information over web services. The SOAP specification defines an envelope that represents the contents of a SOAP message and encoding rules for data types. It also defines how SOAP messages may be sent over different transport protocols, such as exchanging messages as the payload of HTTP POST. The SOAP protocol provides a way to communicate among applications running on different operating systems, with different technologies, and different programming languages.
Java API for XML-Based Web Services (JAX-WS) hides the complexity of the SOAP protocol and provides a
simple API for development and deployment of web service endpoints and
clients. The developer writes a web service endpoint as a Java class. The
JAX-WS runtime publishes the web service and its capabilities using Web Services
Description Language (WSDL). Tools provided by a JAX-WS implementation, such as
wscompile by the JAX-WS Reference
Implementation, are used to generate proxy to the service and invoke methods
on it from the client code. The JAX-WS runtime converts the API calls to and
from SOAP messages and sends them over HTTP, as shown in Figure 8-1.
Figure 8-1. JAX-WS client and server
In addition to sending SOAP messages over HTTP, JAX-WS also ...