Network Deployment (Distributed operating systems), v8.0 > Develop and deploying applications > Develop web services > Deploy web services


Run an unmanaged web services JAX-RPC client

WAS v8.0 and the Application Client for WAS v8.0 provides a thin Java Platform, Standard Edition 6 (Java SE 6) web services client runtime implementation that is based on the Java API for XML-based RPC (JAX-RPC) 1.1 specification. The Thin Client for JAX-RPC with WAS is a stand-alone Java SE 6 client environment that enables running unmanaged JAX-RPC web services client applications in a non-WebSphere environment to invoke web services that are hosted by the application server.

We can use the Thin Client for JAX-RPC with WAS as a stand-alone client run time in a pure Java SE environment, or within an OSGi environment. The Thin Client for JAX-RPC is not supported when running within WAS or WebSphere Application Client environments. In this version of the application server, with the exception of the Administration Thin Client, other Thin Client run times provided with the application server can also reside in the CLASSPATH and coexist with the Thin Client for JAX-RPC.

Before you can set up a JAX-RPC unmanaged client environment you will need to obtain the Thin Client for JAX-RPC Java archive (JAR) file. To obtain the Thin Client for JAX-RPC, either install the application server or the application client.

The Thin Client for JAX-RPC JAR file, com.ibm.ws.webservices.thinclient_8.0.0.jar, is located in the WAS_HOME\runtimes directory. Refer to the license agreements to ensure correct usage and for limitations on copies of the Thin Client for JAX-RPC outside of the WebSphere environment.

The Thin Client for JAX-RPC is supported in the following environments:

WS-Addressing is not supported for JAX-RPC web services in an unmanaged client environment. If you need to use WS-Addressing, or a web service standard that relies on WS-Addressing, such as WS-Notification, use the Thin Client for Java API for XML-based Web Services (JAX-WS) instead.

To learn how to setup and run the Thin Client for JAX-WS, see the Thin Client for JAX-WS documentation.


Procedure

  1. Configure the path. We can add the Java bin directories to your path by typing:

    (Windows)

    set PATH=
    <your_JDK_bin_directory>;%PATH%
    

    (AIX) (Solaris)

    export PATH=
    <your_JDK_bin_directory>:$PATH
    

  2. Configure the classpath.

    (Windows)

    set CLASSPATH=.;
    <your_web_services_thin_client_install_directory>\com.ibm.ws.webservices.thinclient_8.0.0.jar;
    
    <your_application_jars>;%CLASSPATH%
    

    (AIX) (Solaris)

    export CLASSPATH=.:
    <your_web_services_thin_client_install_directory>/com.ibm.ws.webservices.thinclient_8.0.0.jar:
    
    <your_application_jars>;$CLASSPATH
    

    • If you are using a non-IBM SDK, obtain a Xerces xml-apis.jar and xercesImpl.jar from the Xerces web site and configure the classpath definition.

      (Windows)

      set CLASSPATH=.;
      <your_Xerces_install_directory>\xml-apis.jar;
      <your_Xerces_install_directory> \xercesImpl.jar;%CLASSPATH%
      

      (AIX) (Solaris)

      export CLASSPATH=.:
      <your_Xerces_install_directory>/xml-apis.jar:
      <your_Xerces_install_directory> \xercesImpl.jar:$CLASSPATH
      

  3. Configure SSL for the client.

    1. Add the following system properties to the Java command:
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props
      
      

      We can obtain the ssl.client.props file from the WAS installation and modify the file to suit the environment. We must, at a minimum, update the location of the com.ibm.ssl.keyStore and com.ibm.ssl.trustStore key files in the ssl.client.props file to the match location of your target environment. For example, use these SSL configuration settings when running the application with a Sun JRE:

      com.ibm.ssl.protocol=SSL
      com.ibm.ssl.trustManager=SunX509
      com.ibm.ssl.keyManager=SunX509
      com.ibm.ssl.contextProvider=SunJSSE
      
      com.ibm.ssl.keyStoreType=JKS
      com.ibm.ssl.keyStoreProvider=SUN
      com.ibm.ssl.keyStore=/home/user1/etc/key.jks
      
      com.ibm.ssl.trustStoreType=JKS
      com.ibm.ssl.trustStoreProvider=SUN
      com.ibm.ssl.trustStore=/home/user1/etc/trust.jks
      

      The key store file and trust store file must be created using the Java keytool utility before the application runs. The automatic key file generation is not supported with a non-IBM product JRE.

  4. Enter the following command to run your client application:

    (Windows)

    %JAVA_HOME%/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props
    <your_client_application> 

    (AIX) (Solaris)

    $JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props
    <your_client_application> 


Results

You have set up an unmanaged JAX-RPC client runtime environment that can be used to invoke web services hosted on a WAS.
Task overview: Implementing web services applications
Install, updating, rolling back, and uninstalling the Application Client for IBM WAS
Implement JAX-RPC web services clients
Run an unmanaged web services JAX-WS client
Xerces website

+

Search Tips   |   Advanced Search