JAX-RPC stands for Java™ API for XML-based RPC, also known as
JSR 101. It is a specification that describes Java Application Programming Interfaces
(APIs) and conventions for building Web services and Web service clients that
use remote procedure calls (RPC) and XML. It standardizes the Java to
WSDL and WSDL to Java mappings, and provides the core APIs for developing
Web services and Web service clients on the Java platform. Often used in a distributed
client/server model, an RPC mechanism enables clients to execute procedures
on other systems.
The current release of JAX-RPC requires the support of SOAP over HTTP for
interoperability purposes. The SOAP specification defines message structure,
encoding rules, and conventions for exchanging information in the RPC programming
model. These calls and responses are transmitted as SOAP messages over HTTP.
In this release, JAX-RPC supports SOAP 1.1 and HTTP 1.1. For more information
on SOAP, refer to
Although the underlying run-time mechanisms (for example, Java to
WSDL serialization, WSDL to Java deserialization, protocol and transport)
are very complex, the API hides this complexity from the application developer.
On the server side, the developer can provide a Service Endpoint Interface
(SEI); alternately an SEI can be created using the Web services wizrds. An
SEI is an interface written in the Java programming language that specifies
the remote procedures of a Web service. The developer also provides the implementation
of a Web service, in the form of one or more Java classes that implement methods of the
same signature as those on the SEI. Client programs are also easy to code.
A client creates a proxy, a local object representing the service implementation
and the SEI, and then simply invokes methods on the proxy.
JAX-RPC is highly interoperable: a JAX-RPC client can access a Web service
that is not running on the Java platform and vice versa. This flexibility
is possible because JAX-RPC uses SOAP over HTTP, and the Web Service Description
Language (WSDL). JAX-RPC was designed to support WS-I.
For more information on JAX-RPC, refer to the
official JSR 101 specifications.