This topic describes the Java 2 Platform, Enterprise Edition (J2EE)
specification that is the foundation of the application programming model
for WebSphere® Application
Server. WebSphere programming model extensions add value by extending the
J2EE programming model. Read this topic for a brief overview of key J2EE concepts,
including the parts of the J2EE runtime environment and J2EE application packaging
and deployment.
The Java 2 Platform, Enterprise Edition (J2EE) specification is the standard
for developing, deploying, and running enterprise applications. The ultimate
source of information is the specification, which is available on the Sun
Microsystems, Inc., Web site at
http://java.sun.com. The WebSphere Application Server
documentation provides links and J2EE descriptions for convenience only.
Quick reference: primary J2EE 1.4 specifications
- Java Servlet Specification 2.4
- JavaServer Pages Specification 2.0
- Enterprise JavaBeans Specification 2.1
- Enterprise JavaBeans to CORBA Mapping 1.1
- RMI over IIOP
- Java IDL API
- Web Services for J2EE, Version 1.1
- SOAP with Attachments API for Java Specification 1.2
- Java API for XML Processing Specification 1.2
- Java API for XML Registries Specification 1.0
- Java API for XML-based RPC Specification 1.1
- JDBC Specifications, 3.0, 2.1, and Optional Package API (2.0)
- Java Connector Architecture (JCA) 1.5
- Java Message Service Specification 1.1
- JavaMail API Specification 1.3
- Java Authorization Contract for Containers 1.0
- Java Naming and Directory Interface Specification 1.2.1
- Java Transaction API Specification 1.0.1B
- Java Transaction Service Specification 1.0
- JavaBeans Activation Framework Specification 1.0.2
|
IBM® WebSphere
Application Server, Version 6.1 has
completed the full J2EE certification test suite. The product supports all
of the J2EE 1.4 APIs. You can check the list of J2EE-compatible products posted
by Sun Microsystems at http://java.sun.com/j2ee/compatibility.html.
- For the specifications supported by this product version, which include
the J2EE 1.4 specifications and continued support for some earlier specification
levels, see the Detailed system requirements page.
- For
information about specification levels that are deprecated in this version,
see the Deprecated and removed features.
Java 2 Platform, Enterprise Edition defines a standard that applies to
all aspects of designing, developing, and deploying multi-tier, server-based
applications. The standard architecture that is defined by the J2EE specification
is composed of the following elements:
- Standard application model for developing multi-tier applications.
- Standard platform for hosting applications.
- Compatibility test suite for verifying that J2EE platform products comply
with the J2EE platform standard.
- Reference implementation providing an operational definition of the J2EE
platform.
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 that are performed during the application development
and deployment life cycle:
- The product provider designs and offers the J2EE platform, APIs, and other
features that are defined in the J2EE specification for purchase.
- The tool provider offers tools that are used for the development and packaging
of application components as part of the J2EE specifications.
- The application component provider creates Web components, enterprise
beans, applets, or application clients to use in J2EE applications.
- The application assembler takes a set of components that are developed
by component providers and assembles them in the form of an enterprise archive
(EAR) file.
- The deployer is responsible for deploying an enterprise application into
a specific operational environment that corresponds to a J2EE platform product.
- The system administrator is responsible for the operational environment
in which the application runs.
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 providing the J2EE application with platform-specific
artifacts, and on the platform 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 when developing and deploying J2EE
applications.
For information about roles that are assumed by this product
documentation, see Fast paths for WebSphere Application Server.
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:
- A simplified architecture that is based on standard components, services,
and clients. The architecture maximizes the write-once, run-anywhere Java
technology.
- Services providing integration with existing systems, including Java DataBase
Connectivity (JDBC); Java Message Service (JMS); Java Connector Architecture
(JCA); Java Interface Definition Language (Java IDL); the JavaMail API; and
Java Transaction API (JTA and JTS) for reliable business transactions.
- Scalability to meet demand, by distributing containers across multiple
systems and using database connection pooling, for example.
- A better choice of application development tools and components from vendors
providing standard solutions.
- A flexible security model that provides single sign-on support, integration
with legacy security schemes, and a unified approach to securing application
components.
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.
For a description of the programming
model of the product, see Learn about WebSphere applications: Overview and new features.
Application components and their containers
The
J2EE programming model has four types of application components, which reside
in these types of containers in the Application Server:
- Enterprise beans - Run by the Enterprise JavaBeans (EJB) container
- Servlets and JavaServer Pages files - Run by the Web container
- Application clients - Run by the application client container
For a description of the product architecture, see Product architecture.
J2EE containers provide runtime 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 that are used for accessing the services.
The container 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
products Web page for descriptions of each standard service.
J2EE packaging
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 that provides instructions for deploying the application.
For product-specific details, see Assembling applications.