WebLogic JMS Thin Client
The following sections describe how to deploy and use the WebLogic JMS thin client:
- Overview of the JMS Thin Client
- JMS Thin Client Functionality
- Limitations of Using the JMS Thin Client
- Deploying the JMS Thin Client
Overview of the JMS Thin Client
While the size of the full WebLogic JAR may not be a problem when you run server-side applications, it does cause a very large footprint for enterprise-level client-server applications that may be running thousands of clients. Having to deploy the full 20+ MB weblogic.jar file along with a client application can significantly increase the size of the deployed application, possibly making it too big to be practical, as is the case with a Java applet-based client program.
At around 400 KB, the JMS thin application client (wljmsclient.jar) file provides a much smaller client footprint than the full WebLogic JAR, by using a client-side library that contains only the set of supporting files required by client-side programs. The JMS thin client also requires that you use the standard WebLogic thin application client (wlclient.jar), around 300 KB, which contains the base client support for clustering, security, and transactions.
The WebLogic thin application clients are based upon the RMI-IIOP protocol stack available in JRE 1.4.n. RMI requests are handled by the JRE, enabling a significantly smaller client. Client-side development is performed using standard J2EE APIs, rather than WebLogic Server APIs.
For more information on developing WebLogic Server thin client applications, see "Developing a J2EE Application Client (Thin Client) in Using WebLogic RMI and RMI/IIOP.
JMS Thin Client Functionality
Although much smaller in size than the full WebLogic JAR, the JMS thin client and WebLogic Server thin clients provide the following functionality to client applications and applets:
- Full WebLogic JMS functionality - both standard JMS and WebLogic extensions - except for client-side XML selection for multicast sessions and the JMSHelper class methods
- EJB (Enterprise Java Bean) access
- JNDI access
- RMI access (indirectly used by JMS)
- SSL access (using JSSE in JRE 1.4.x)
- Transaction capability
- Clustering capability
- HTTP/HTTPS tunneling
- Fully internationalized
Limitations of Using the JMS Thin Client
The following limitations apply to the JMS thin client:
- It does not provide the JDBC or JMX functionality of the normal weblogic.jar file.
- It does not interoperate with earlier versions of WebLogic Server (release 7.0 or earlier).
Deploying the JMS Thin Client
The JMS thin client and WebLogic thin client JARs (wljmsclient.jar and wlclient.jar, respectively) are located in the WL_HOME\server\lib subdirectory of the WebLogic Server installation directory, where WL_HOME is the top-level installation directory for the entire WebLogic Platform (for example, c:\bea\weblogic81\server\lib).
Deployment of the JMS thin client depends on the following requirements:
- The JMS thin client requires that you use the standard WebLogic thin client, which contains the base client support for clustering, security, and transactions. Therefore, the wljmsclient.jar and the wlclient.jar must be installed somewhere on the client's file system. However, wljmsclient.jar has a reference to wlclient.jar so it is only necessary to put one or the other Jar in the client's CLASSPATH.
- The JMS thin client requires using the RMI over IIOP standard for communicating between client and server.
- URLs using t3 or t3s will transparently use iiop or iiops
- URLs using http or https will transparently use iiop tunneling.
- To facilitate the use of IIOP, always specify a valid IP address or DNS name for the Listen Address attribute in the configuration file (config.xml) to listen for connections. Note that the Listen Address default value of null allows it to "listen on all configured network interfaces". However, this feature only works with the T3 protocol. If you need to configure multiple listen addresses for use with the IIOP protocol, then use the Network Channel feature, as described in "Configuring Network Resources in Configuring and Managing WebLogic Server.
- Each client must have the JRE 1.4.n installed.
- Applications must adhere to J2EE programming guidelines, in particular the use of PortableRemoteObject.narrow() rather than using casts.
For more information on developing WebLogic Server thin client applications, see "Developing a J2EE Application Client (Thin Client) in Using WebLogic RMI and RMI/IIOP.