With the dynamic invocation interface (DII), a client can call a remote procedure even if the signature of the remote procedure or the name of the service are unknown until runtime. This demo shows how the service can be called asynchronously.
This demo uses the Hello World service (demo/basic/hello) and invokes it using JAX-RPC DII API.
In addition to the files described in Files and Directories, this demo contains:
File or directory | Description |
---|---|
src/demo/advanced/async/dynamic/client/ | Client source code |
You can run the demo using "run.sh" or "run.bat" scripts. Running the script without arguments prints out a help screen.
Compile and publish the Hello World service (located in demo/basic/hello), using runtime publishing ...
Windows: run.bat make_server run.bat run_server Linux: ./run.sh make_server ./run.sh run_server (use a new terminal)
Make client classes ...
Windows: run.bat make_client Linux: ./run.sh make_client
Run the DynamicClient (it calls HelloService) ...
Windows: run.bat run_client Linux: ./run.sh run_client
If you wish to follow the progress of the invocation with SoapSpy, perform the following:
Run server_java60/bin/soapspy.bat or soapspy.sh. This will bring up the SoapSpy GUI.
Start spying by selecting Start Spying from the Spy menu or by clicking the spy icon in the main pane.
Run the client using the run spy_client command instead of run_client.