O'Reilly logo

Java Web Services in a Nutshell by Kim Topley

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

The Dynamic Invocation Interface

A JAX-RPC implementation typically implements dynamic proxies by using the more primitive dynamic invocation interface (or DII for short). As well as being used internally in this way, the DII is a public API that provides another way for application code to access a web service without needing to generate stub classes. Creating an application that uses the DII involves more coding effort than using either dynamic proxies or precompiled stubs. However, the DII makes it potentially possible to write clients that can work with web services that are not discovered until runtime, in much the same way as the Java reflection feature allows software tools to call methods on classes that it does not know about at compile time.

The steps required to use the dynamic invocation interface are as follows:

  1. A client application gets a Service object for a web service.

  2. Using the Service object, the application creates a Call object that is used to invoke the service’s operations. Call is the central class of the DII.

  3. Methods of the Call interface are used to specify which operation is to be called, and to discover and list the Java and XML types of the operation’s arguments and its return types.

  4. The application invokes the operation by calling the invoke( ) method of the Call object, which provides the result of the operation as its return value.

The Service interface provides five methods that can be used to obtain Call objects:

public Call createCall( ) throws ServiceException ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required