One important part of the J2EE 1.4 specification describes the required support for application clients.
The client application container, a part of the Geronimo distribution, greatly simplifies the creation of J2EE client applications for Geronimo.
Not all client applications can make use of the client application container, however. Typically, the following types of clients can make use of the container:
J2EE applications with a command-line user interface
J2EE fat-client applications with a Swing/AWT/SWT (or equivalent GUI library) user interface
Java Webstart (JNLP) launched applications that features a GUI user interface
Some examples of clients that cannot take advantage of the client application container but need to use other Geronimo support technologies to access the server (interoperability, Web services, a servlet, JSP, and so on), include:
Web browser-based user interfaces such as Ajax
Applet-based user interfaces
The main function of an application client container is to provide useful container services to the application client. Ideally, these services should be presented in a transparent manner to the application client. In other words, the code used to access a Geronimo component (say, an EJB) should be the same whether it resides on the client side or on the server side.
The Geronimo client application container provides the following client-side container services to the application client:
JNDI lookup of resource references
Security service for client-side authentication support
When the client calls on these services, the client application container will transparently communicate with the Geronimo server to retrieve the necessary information.
Figure 4-8 illustrates the functional role of the client application container for Geronimo.
Figure 4-8: Geronimo’s client application container
The client application container can be configured using a client deployment plan. Geronimo administrators should be familiar with the configuration of the Geronimo client application container.