[V5.1 and later]The J2EE specification

The J2EE specification is the standard for developing, deploying, and running enterprise applications. Read this topic for a brief overview of key J2EE concepts, including the parts of the J2EE run-time environment and the J2EE application packaging and deployment. The ultimate source of J2EE information is the specification, available from the Sun Microsystems Web site (java.sun.com) . For a list of the specification levels that comprise the J2EE 1.3 specification (Servlet, EJB, and so on), see http://java.sun.com/j2ee/1.3/docs/#specs .

IBM WebSphere Application Server, V5 has completed the full J2EE certification test suite. The product supports all of the J2EE 1.3 APIs. You can check the list of J2EE-compatible products posted by Sun Microsystems at http://java.sun.com/j2ee/compatibility.html .

Java 2 Platform, Enterprise Edition defines a standard that applies to all aspects of designing, developing, and deploying multitier, server-based applications. The standard architecture defined by the J2EE specification is composed of the following elements:

The J2EE platform specification describes the run-time environment for a J2EE application. This environment includes application components, containers, and resource manager drivers. The elements of this environment communicate with a specified set of standard services.

For more information, see Three-tier architectures.

J2EE platform roles

The J2EE platform also defines a number of distinct roles performed during the application development and deployment life cycle:

Product providers and tool providers have a product focus. Application component providers and application assemblers focus on the application. Deployers and system administrators focus on the run time.

These roles help identify the tasks and people involved. Understanding this separation of roles is important, because it helps to determine the approach to take when developing and deploying J2EE applications.

For information about the relationship of IBM WebSphere Application Server roles to J2EE roles, see User roles and activities.

J2EE benefits

The J2EE specification provides customers a standard which can be used to ensure investment protection when purchasing or developing applications. Comprehensive, independent Compatibility Test Suites ensure vendor compliance with J2EE standards.

Some benefits of deploying to a J2EE compliant architecture include:

The J2EE specifications are the result of an industry-wide effort that involves a large number of contributors. IBM has contributed in defining more than 80 percent of the J2EE APIs.

Application components and their containers

The J2EE programming model has four types of application components, which reside in four types of containers in the Application Server:

For thorough descriptions of components and containers that apply specifically to the IBM WebSphere Application Server, see Architectural features.

J2EE containers provide run-time support for application components. There must be one container for each application component type in a J2EE application. By having a container between the application components and the set of services, the J2EE specification can provide a federated view of the APIs for the application components.

A container provides the APIs to the application components used for accessing the services. It can also handle security, resource pooling, state management, as well as naming and transaction issues.

Standard services

The J2EE platform provides components with a set of standard services that they can use to interact with each other. See the Sun Web page, http://java.sun.com/products/ , for descriptions of each standard service:

J2EE packaging

Perhaps the most significant change introduced by the J2EE specification is how application components are packaged for deployment.

During a process called assembly, J2EE components are packaged into modules. Modules are then packaged into applications. Applications can be deployed on the Application Server. Each module and application contains a J2EE deployment descriptor. The deployment descriptor is an XML file providing instructions for deploying the application.

For more information, including the IBM WebSphere Application Server specifics, see Assembling or packaging.