2 Overview of Stand-alone Clients

In the context of this document, a stand-alone client is a client that has a run-time environment independent of WebLogic Server. (Managed clients, such as Web Services, rely on a server-side container to provide the run time necessary to access a server.) Stand-alone clients that access WebLogic Server applications range from simple command-line utilities that use standard I/O to highly interactive GUI applications built using the Java Swing/AWT classes. The following sections provide an overview:

Distributing Client Jar Files

For information on license requirements when using client JARs and other resources provided in Oracle WebLogic Server for creating stand-alone clients, see "Standalone WebLogic Clients" in Oracle Fusion Middleware Licensing Information.

WebLogic T3 Clients

The WebLogic T3 clients are Java RMI clients that use Oracle's T3 protocol to communicate with WebLogic Server. T3 clients outperform other client types, and are the most recommended type of client.

WebLogic Thin T3 Client

The WebLogic Thin T3 java client provides a light-weight alternative to the WebLogic Install, Full, and Thin IIOP clients. This client provides the same performance that you would see with the full client, but leverages a much smaller jar file. The Thin T3 client supports most of the use cases in which the full client can be used.

The Thin T3 client can be used in stand-alone applications, and is also designed for applications running on foreign (non-WebLogic) servers. One common use case is integration with WebLogic JMS destinations. See:

WebLogic Full Client

The WebLogic Full Client requires the largest JAR file (wlfullclient.jar) among the stand-alone clients, but it has the most features and is the best overall performer. All three T3 clients have the same performance. The wlfullclient.jar also provides IIOP support. See:

Note:

If you run the WebLogic Full Client from a <java> task that is invoked in an Ant script, see Running the WebLogic Full Client in a Non-Forked VM, for important information regarding the RSA Crypto-J library, which is included in the wlfullclient.jar manifest classpath.

WebLogic Install Client

The Install client is available from a full WebLogic Server installation. It uses the weblogic.jar file located at WL_HOME/server/lib and provides client-side support for all WebLogic Server-specific value-added features. It is the only client that supports server-side operations, such as:

  • Operations necessary for development purposes, such as the ejbc compiler.

  • Administrative operations such as deployment.

  • WLST and client-side JSR 88 applications that invoke server-side operations.

RMI-IIOP Clients

IIOP can be a transport protocol for distributed applications with interfaces written in Java RMI. When they are an option, Oracle recommends using T3 clients instead of IIOP clients. For more information, see:

For more information, see "Using RMI over IIOP" in Programming RMI for Oracle WebLogic Server.

CORBA Clients

If you are not working in a Java-only environment, you can use IIOP to connect your Java programs with Common Object Request Broker Architecture (CORBA) clients and execute CORBA objects. IIOP can be a transport protocol for distributed applications with interfaces written in Interface Definition Language (IDL) or Java RMI. However, the two models are distinctly different approaches to creating an interoperable environment between heterogeneous systems. When you program, you must decide to use either IDL or RMI interfaces; you cannot mix them. WebLogic Server supports the CORBA client models described in the following chapters:

JMX Clients

You can use a JMX client to access WebLogic Server MBeans. See "Accessing WebLogic Server MBeans With JMX" in Developing Custom Management Utilities With JMX for Oracle WebLogic Server.

JMS Clients

WebLogic Server provides a number of JMS clients that provide Java EE and WebLogic JMS functionality. See the topics listed in Table 2-1:

Table 2-1 JMS Client Types that Provide Java EE and WebLogic JMS Functionality

Client For more information, see . . .

WebLogic Thin T3 client

Chapter 3, "Developing a WebLogic Thin T3 Client"

WebLogic Full client

Chapter 4, "Developing a WebLogic Full Client"

WebLogic Install client

WebLogic Install Client

JMS thin client

Chapter 6, "WebLogic JMS Thin Client"

JMS SAF client

Chapter 7, "Reliably Sending Messages Using the JMS SAF Client"

JMS C client

"WebLogic JMS C API" in Programming JMS for Oracle WebLogic Server

JMS .NET client

Using the WebLogic JMS Client for Microsoft .NET for Oracle WebLogic Server

WebLogic AQ JMS client

"Stand-alone WebLogic AQ JMS Clients" in Configuring and Managing JMS for Oracle WebLogic Server. The WebLogic AQ JMS client obtains destination information using WebLogic Server JNDI and provides direct access to Oracle data base AQ JMS destinations using an embedded driver. It does not provide access to WebLogic Server JMS destinations.


Tip:

Oracle recommends using an efficient T3 protocol capable Java client -- either the Install, Full, and Thin T3. The Thin java client uses the slower IIOP protocol and is only recommended when the Thin T3 client is considered to be too large for your use case.

Web Services Clients

A stand-alone Web Services client (wseeclient.jar) uses WebLogic client classes to invoke a Web Service hosted on WebLogic Server or on other application servers. See "Using a Stand-alone Client JAR File When Invoking Web Services" in Getting Started With JAX-RPC Web Services for Oracle WebLogic Server.

WebLogic Tuxedo Connector Clients

WebLogic Tuxedo Connector provides inter-operability between WebLogic Server applications and Tuxedo services. See:

Clients and Features

The following table lists the types of clients supported in a WebLogic Server environment, and their characteristics, features, and limitations.

Note:

Oracle does not support combining clients to create extended feature sets. Select a client that best fits your environment and use only the client classes specified for that client type.

Table 2-2 WebLogic Server Client Types and Features

Client Type Language Protocol Client Class Requirements Key Features

WL Full Client (T3)

RMI

Java

T3

wlfullclient.jar

  • Supports most WebLogic Server-specific features.

  • Supports WebLogic Server clustering.

  • Supports Certicom SSL.

  • Faster and more scalable than IIOP clients.

  • Supports most JavaEE features.

  • See Chapter 4, "Developing a WebLogic Full Client."

WL Thin T3 Client

RMI

Java

T3

wlthint3client.jar

  • Small Footprint

  • Supports WebLogic Server clustering.

  • Supports JSSE SSL, except with HTTP tunnelling.

  • Faster and more scalable than IIOP clients.

  • Supports most of WebLogic Server JMS (the major exception is the JMS SAF feature)

  • Supports most JavaEE features.

  • See Chapter 3, "Developing a WebLogic Thin T3 Client."

WLS-IIOP

(Introduced in WebLogic Server 7.0)

RMI

Java

IIOP

wlfullclient.jar

  • Supports WebLogic Server-specific features.

  • Supports WebLogic Server clustering.

  • Supports Certicom SSL, except with HTTP tunnelling.

  • Faster and more scalable than IIOP thin clients.

  • Not ORB-based.

  • Does not support WebLogic Server JMS (use T3 protocol with same Jar instead).

  • See Chapter 9, "Developing a WLS-IIOP Client."

Thin Client

RMI

Java

IIOP

wlclient.jar

JDK 1.5 and higher

CORBA/IDL

CORBA

Languages that OMG IDL maps to, such as C++, C, Smalltalk, COBOL

IIOP

no WebLogic classes

J2SE (or JSE)

RMI

Java

IIOP

no WebLogic classes

  • Provides connectivity to WebLogic Server environment.

  • Does not support WebLogic Server-specific features. Does not support many Java EE features.

  • Uses CORBA 2.3 ORB.

  • Requires use of com.sun.jndi.cosnaming. CNCtxFactory.

  • See Chapter 8, "Developing a J2SE Client."

JMS Thin Client

RMI

Java

IIOP

wljmsclient.jar

wlclient.jar

JDK 1.5 and higher

  • Thin client functionality

  • WebLogic JMS, except for client-side XML selection for multicast sessions and JMSHelper class methods.

  • Supports SSL.

  • See Chapter 6, "WebLogic JMS Thin Client."

  • Consider using one of the faster T3 client options.

JMS SAF Client

(Introduced in WebLogic Server 9.2)

RMI

Java

IIOP

  • wlsafclient.jar

  • wljmsclient.jar

  • wlclient.jar

  • JDK 1.5 and higher

JMS C Client

(Introduced in WebLogic Server 9.0)

JNI

C

Any

Any WebLogic JMS capable Java client, such as wlfullclient.jar

  • C client applications that can access WebLogic JMS applications and resources.

  • Supports SSL.

  • See "WebLogic JMS C API"

JMS .NET Client

(Introduced in WebLogic Server 10.3)

T3

.NET

T3

WebLogic.Messaging.dll dynamic library

WebLogic AQ JMS Client

(Introduced in WebLogic Server 10.3.1)

JNDI/

Java

IIOP/T3 +

aqapi.jar, o6.jar, orai18n.jar and the wlclient.jar, wlfullclient.jar, weblogic.jar (Install client), or wlthint3client.jar

See "Stand-alone WebLogic AQ JMS Clients" in Configuring and Managing JMS for Oracle WebLogic Server.

JMX

RMI

Java

IIOP

wljmxclient.jar

See "Accessing WebLogic Server MBeans with JMX" in Developing Custom Management Utilities With JMX for Oracle WebLogic Server.

Web Services

SOAP

Java

HTTP/S

wseeclient.jar

See "Invoking a Web Service from a Java SE Client" in Getting Started With JAX-WS Web Services for Oracle WebLogic Server.

C++ Client

CORBA

C++

IIOP

Tuxedo libraries

Tuxedo Server and Native CORBA client

CORBA or RMI

C++

Tuxedo-General-Inter-Orb-Protocol

(TGIOP)

Tuxedo libraries