Types of client applications
We can write client applications that run separately from the application server. A client application uses the framework provided by an underlying client to access the resources provided by WebSphere Application Server.
Several types of clients are installed either with WAS or, optionally, with the Application Client for WAS.
Figure 1. Clients provided for WAS
- Stand-alone thin clients and resource adapter for JMS
- The stand-alone thin clients are small, embeddable Java SE clients that we can run either on their own or, to provide different features, with one or more other stand-alone thin clients. The resource adapter for JMS is a stand-alone resource adapter that provides third party application servers with full connectivity to service integration resources running inside WAS.
- Java EE client
- The Java EE client is a Java EE mode of using the runtime environment of either an Application Client installation or a WAS installation. The Java EE client uses the Client Container in the runtime environment to simplify access to system services such as security, transactions, naming, and database access for use by Java EE client applications.
- Java thin client
- The Java thin client is a Java Platform, Standard Edition (Java SE) mode of using the runtime environment of either an Application Client installation or aWAS installation. The Java thin client runtime environment provides the support needed by full-function Java SE client applications for object resolution, security, Reliability Availability and Serviceability (RAS), and other services. However, the Java thin client does not support a Client Container that provides easy access to these services.
- (Dist) Applet client
- (Dist) The Applet client model has a Java applet embedded in a HyperText Markup Language (HTML) document residing on a remote client machine from the WAS (base). With this type of client, the user accesses an enterprise bean in the WAS (base) through the Java applet in the HTML document.
- (Dist) ActiveX to EJB Bridge (Windows only)
- (Dist) The ActiveX application client model uses the Java Native Interface (JNI) architecture to programmatically access the JVM API. Therefore the JVM code exists in the same process space as the ActiveX application (Visual Basic, VBScript, or Active Server Pages (ASP) files) and remains attached to the process until that process terminates.
The following table provides a comparison of the different types of clients available.
Client comparison
Stand-alone thin clients Resource Adapter for JMS Java EE client (Java EE mode of Application Client) Java thin client (Java SE mode of Application Client) Java EE client (Java EE mode of Application Server1 Java thin client (Java SE mode of Application Server) 1 Unique characteristics Embeddable single jar with small footprint JCA v1.5 resource adapter with small footprint Large client footprint with many files Large client footprint with many files Very large server footprint with many files Very large server footprint with many files Supported execution environment Java SE Java EE v1.4 application server: Apache Geronimo, WAS Community Edition, JBoss Java EE client container Java SE Java EE client container Java SE Supported Java vendors IBM, Sun, and HP-UX As per J2EE vendor Supplied IBM application server Supplied IBM application server Supplied IBM application server Supplied IBM application server Supported Java version See Table 2
- 1.5
- 1.6
Supplied IBM JRE Supplied IBM JRE Supplied IBM JRE Supplied IBM JRE Supported transactions No transactions and local transactions No transactions, local transactions, and XA transactions for JMS No transactions, and local transactions for JMS No transactions, and local transactions for JMS No transactions, local transactions for JMS No transactions, and local transactions for JMS Easily embedded Yes No No No No No Include JNDI lookup capability to WAS Available through the Thin Client for EJB Not applicable (relies on host application server JNDI) Yes Yes Yes Yes Connectivity support TCP and SSL TCP and SSL TCP, HTTP, and SSL TCP, HTTP, and SSL TCP, HTTP, and SSL TCP, HTTP, and SSL Notable restrictions Thin Client for JMS does not support HTTP connectivity. For web services, the use of SOAP/JMS is not supported by the thin-client environment.
The Administration Thin Client does not support co-existence with other thin clients.
No HTTP connectivity None None None None License type IPLA (unlimited copy but no redistribution), and ILAN (redistribution) IPLA (unlimited copy but no redistribution), and ILAN (redistribution) IPLA (unlimited copy but no redistribution), and ILAN (redistribution) IPLA (unlimited copy but no redistribution), and ILAN (redistribution) IPLA IPLA 1 The information in this column relates to WAS when used as the client runtime environment.
The following table provides additional information on the supported JRE versions for stand-alone thin clients.
Type JRE Versions Enterprise JavaBeans thin client
- 1.5
- 1.6
- 1.7
Java Message Service thin client
- 1.5
- 1.6
- 1.7
JAX-RPC thin client
- 1.6
- 1.7
JAX-WS thin client
- 1.6
- 1.7
Administrative thin client
- 1.6
- 1.7
Java Persistence API (JPA)
- 1.5
- 1.6
- 1.7
Subtopics
- Terms used for clients
Clients provided by WAS, and client applications that you develop, are referred to by similar terms. The terms described in this topic should help you better understand other client-related information.- Application Client for WAS
Application Client for WAS is the package we can use to install a variety of clients. Application Client also forms the runtime for Java EE clients and Java thin clients on a system that does not have the Application Server installed.- Stand-alone thin clients
Small embeddable Java SE clients we can use either on their own (stand-alone) or, to provide different features, with one or more other stand-alone thin clients.- Java EE client
The Java EE client is a Java EE mode of using the runtime environment of either an Application Client installation or a WAS installation. The Java EE client uses the Client Container in the runtime environment to simplify access to system services such as security, transactions, naming, and database access for use by Java EE client applications.- Java thin client
The Java thin client is a JavaPlatform, Standard Edition (Java SE) mode of using the runtime environment of either an Application Client installation or a WAS installation. The Java thin client runtime environment provides the support needed by full-function Java SE client applications for object resolution, security, Reliability Availability and Serviceability (RAS), and other services. However, the Java thin client does not support a Client Container that provides easy access to these services.- Applet client
The Applet client provides a browser-based Java run time capable of interacting with enterprise beans directly, instead of indirectly through a servlet.- ActiveX to EJB Bridge
WAS provides an ActiveX to EJB bridge that enables ActiveX programs to access enterprise beans through a set of ActiveX automation objects.
Related:
Accessing the samples Developing client applications