This document examines the major components within IBM WebSphere Application Server.
Application Server
The WebSphere Application Server collaborates with the Web server by exchanging client requests and application responses. You can define multiple Application Servers, each running in its own Java virtual machine (JVM). The exception to this is WebSphere Application Server for z/OS, where the defined servers contain multiple processes, each process with its own JVM.
Servlets and JavaServer Pages (JSP) files are server-side components used to process requests from HTTP clients, such as Web browsers. They handle presentation and control of the user interaction with the underlying application data and business logic. They can also generate formatted data, such as XML, for use by other application components.
The Web container processes servlets, JSP files and other process requests. Additionally, each Web container contains a session manager.
When handling servlets, the Web container takes responsibility for all levels of communication including requests, responses, the handling of all methods, and when to end the servlet relationship, at which point the JVM performs garbage collection.
Application clients are Java programs that typically run on a desktop computer with a graphical user interface (GUI). They have access to the full range of J2EE client side services.
The application client container handles Java application programs that accesses enterprise beans, Java Database Connectivity (JDBC), and message queues that belong to the Java Message Service (JMS). The J2EE application client program runs on client machines. This program follows the same Java programming model as other Java programs; however, the J2EE application client depends on the application client run time to configure its execution environment, and uses the Java Naming and Directory Interface (JNDI) name space to access resources.
An applet is a client Java class that typically executes in a Web browser, but can also run in a variety of other client applications or devices.
Applets are often used in combination with HTML pages to enhance the user experience provided by a Web browser. They can also shift some of the processing workload from the server to the client.
The applet container handles Java applets embedded in HyperText Markup Language (HTML) documents that reside on a client machine that is remote from the application server. With this type of client, the user accesses an enterprise bean in the Application Server through the Java applet in the HTML document.
A virtual host is a configuration enabling a single host machine to resemble multiple host machines. Resources associated with one virtual host cannot share data with resources associated with another virtual host, even if the virtual hosts share the same physical machine.
Administrators can use virtual hosts to associate Web applications with a particular host configured to run the application.