Jakarta XML RPC (JAX-RPC formerly Java API for XML Based RPC) allows a Jakarta EE application to invoke a Java-based web service with a known description while still being consistent with its WSDL description. JAX-RPC is one of the Java XML programming APIs. It can be seen as Java RMIs over web services. JAX-RPC 2.0 was renamed JAX-WS 2.0 (Java API for XML Web Services). JAX-RPC 1 is deprecated with Java EE 6. The JAX-RPC service utilizes W3C (World Wide Web Consortium) standards like WSDL or Web Service Description Language. The core API classes are located in the Java package javax.xml.rpc.

  • Supports web-based services and clients using RPC or remote procedure calls which are based on XML.
  • Allow for web service accessibility through Java APIs which in turn allows for communication between different Java applications.
  • Enables client communication with web service of different language and running on separate platform.

It works as follows:

  1. A Java program executes a method on a stub (local object representing the remote service)
  2. The stub executes routines in the JAX-RPC Runtime System (RS)
  3. The RS converts the remote method invocation into a SOAP message
  4. The RS transmits the message as an HTTP request

The advantage of such a method is that it allows the Web service to be implemented at server-side as a Servlet or EJB container. Thus, Servlet or EJB applications are made available through Web services.

JAX-RPC has been used in the oGaTe and IIX Gateway (Insurance oGaTe).