WAS Manual

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

WebSphere Application Server: Overview

Last Updated: 2023-12-12

Learn about the programing model, get a high-level understanding of the product, then get
started quickly.

The programming model for applications deployed on this product has the following aspects:
 Java™ specifications and other open standards for developing applications
 WebSphere® programming model extensions to enhance application functionality
 Containers and services in the application server, used by deployed applications, and
which sometimes can be extended

The diagram shows a single application server installation. The parts pertaining to the
programming model are discussed here. Other parts comprise the product architecture,
independent of the various application types outlined by the programming model.
See Product overview.
Java EE application components
The product supports application components that conform to Java Platform, Enterprise
Edition (Java EE) specifications.
Web applications run in the web container

The web container is the part of the application server in which web application
components run. Web applications are comprised of one or more related servlets,
JavaServer Pages technology (JSP files), and Hyper Text Markup Language (HTML)
files that you can manage as a unit. Combined, they perform a business logic function.

The web container processes servlets, JSP files, and other types of server-side
includes. Each application server runtime has one logical web container, which can be
modified, but not created or removed. Each web container provides the following.
Web container transport chains
Requests are directed to the web container using the web container inbound transport
chain. The chain consists of a TCP inbound channel that provides the connection to
the network, an HTTP inbound channel that serves HTTP requests, and a web
container channel over which requests for servlets and JSP files are sent to the web
container for processing.
Servlet processing
When handling servlets, the web container creates a request object and a response
object, then invokes the servlet service method. The web container invokes the
servlet's destroy method when appropriate and unloads the servlet, after which the
JVM performs garbage collection.

Servlets can perform such tasks as supporting dynamic web page content, providing
database access, serving multiple clients at one time, and filtering data.

JSP files enable the separation of the HTML code from the business logic in web
pages. IBM® extensions to the JSP specification make it easy for HTML authors to
add the power of Java technology to web pages, without being experts in Java
programming.

HTML and other static content processing


Requests for HTML and other static content that are directed to the web container are
served by the web container inbound chain. However, in most cases, using an external
web server and web server plug-in as a front end to the web container is more
appropriate for a production environment.
Session management
Support is provided for the javax.servlet.http.HttpSession interface as described in the
Servlet application programming interface (API) specification.

An HTTP session is a series of requests to a servlet, originating from the same user at
the same browser. Sessions allow applications running in a web container to keep
track of individual users. For example, many web applications allow users to
dynamically collect data as they move through the site, based on a series of selections
on pages they visit. Where the user goes next, or what the site displays next, might
depend on what the user has chosen previously from the site. To maintain this data,
the application stores it in a “session”.

SIP applications and their container

SIP applications are Java programs that use at least one Session Initiation Protocol
(SIP) servlet. SIP is used to establish, modify, and terminate multimedia IP sessions
including IP telephony, presence, and instant messaging.

Portlet applications and their container


Portlet applications are special reusable Java servlets that appear as defined regions on
portal pages. Portlets provide access to many different applications, services, and web
content.

EJB applications run in the EJB container

The EJB container provides all of the runtime services needed to deploy and manage
enterprise beans. It is a server process that handles requests for both session and entity
beans.

Enterprise beans are Java components that typically implement the business logic of
Java EE applications, as well as accessing data. The enterprise beans, packaged in
EJB modules, installed in an application server do not communicate directly with the
server. Instead, the EJB container is an interface between EJB components and the
application server. Together, the container and the server provide the enterprise bean
runtime environment.

The container provides many low-level services, including threading and transaction
support. From an administrative perspective, the container handles data access for the
contained beans. A single container can host more than one EJB Java archive (JAR)
file.

Client applications and other types of clients


In a client-server environment, clients communicate with applications running on the
server. Client applications or application clients generally refers to clients implemented
according to a particular set of Java specifications, and which run in the client container of a
Java EE-compliant application server. Other clients in the WebSphere Application
Server environment include clients implemented as web applications (web clients), clients of
web services programs (web services clients), and clients of the product systems
administration (administrative clients).
Client applications and their container
The client container is installed separately from the application server, on the client
machine. It enables the client to run applications in an EJB-compatible Java EE
environment. The diagram shows a Java client running in the client container.

This product provides a convenient launchClient tool for starting the application
client, along with its client container runtime.

Depending on the source of technical information, client applications sometimes are


called application clients. In this documentation, the two terms are synonymous.

Web clients, known also as web browser clients


The diagram shows a web browser client, which can be known simply as a web client,
making a request to the web container of the application server. A web client or web
browser client runs in a web browser, and typically is a web application.
Web services clients
Web services clients are yet another kind of client that might exist in your application
serving environment. The diagram does not depict a web services client. The web
services information includes information about this type of client.
Administrative clients
The diagram shows two kinds of administrative clients: a scripting client and the
administrative console that is the graphical user interface (GUI) for administering this
product. Both are accessing parts of the systems administration infrastructure. In the
sense that they are basically the same for whatever kind of applications you are
deploying on the server, administrative clients are part of the product architecture.
However, because many of these clients are programs you create, they are discussed
as part of the programming model for completeness.

You might also like