The Java API for XML-based RPC (JAX-RPC) is designed to provide a simple way to create remote procedure call-based web services in which either the client or the server (or both) run on the Java platform without requiring the developer to be aware of the way that the SOAP messages that carry the procedure call request and response are encoded. Because JAX-RPC is based around remote procedure calls, the programming model will be very familiar to Java developers who have used RMI or CORBA.
In order to use the more powerful features of JAX-RPC, you need to have some understanding both of SOAP and of WSDL, an XML-based language that describes the interface to a web service. These topics are covered in Chapter 3 and Chapter 5, respectively. However, you don't need to know anything about either of them in order to become a JAX-RPC programmer. This chapter provides a straightforward introduction to JAX-RPC by demonstrating how to create and deploy a simple JAX-RPC web service and a client application that calls it, using familiar-looking Java code and only a very small amount of XML. The more advanced features of JAX-RPC will be covered in detail in Chapter 6, once the details of SOAP and WSDL are explained.
The JAX-RPC specification was developed under the Java Community Process as JSR 101 and is available for download from http://jcp.org/jsr/detail/101.jsp.