You are on page 1of 4

Java Platform, Enterprise Edition or Java EE is Oracle's enterprise Java

computing platform. The platform provides an API and runtime environment

for developing and running enterprise software, including network and we
services, and other large!scale, multi!tiered, scalale, reliale, and secure
network applications. Java EE e"tends the Java Platform, #tandard Edition
$Java #E%,&'( providing an API for o)ect!relational mapping, distriuted and
multi!tier architectures, and we services. The platform incorporates a design
ased largel* on modular components running on an application server.
#oftware for Java EE is primaril* developed in the Java programming
language. The platform emphasi+es ,onvention over con-guration&.( and
annotations for con-guration. Optionall* /01 can e used to override
annotations or to deviate from the platform defaults.#tandards and
Java EE is de-ned * its speci-cation. As with other Java ,ommunit* Process
speci-cations, providers must meet certain conformance re2uirements in
order to declare their products as Java EE compliant.
Java EE includes several API speci-cations, such as 30I, e!mail, J0#, we
services, /01, etc., and de-nes how to coordinate them. Java EE also features
some speci-cations uni2ue to Java EE for components. These include
Enterprise Java4eans, ,onnectors, servlets, Java#erver Pages and several
we service technologies. This allows developers to create enterprise
applications that are portale and scalale, and that integrate with legac*
technologies. A Java EE application server can handle transactions, securit*,
scalailit*, concurrenc* and management of the components it is deplo*ing,
in order to enale developers to concentrate more on the usiness logic of
the components rather than on infrastructure and integration tasks.
5eneral APIs&edit(
The Java EE APIs includes several technologies that e"tend the functionalit*
of the ase Java #E APIs.
Java EE 6 Platform Packages
Java EE 7 Platform Packages
Java EE 8 Platform Packages
The servlet speci-cation de-nes a set of APIs to service mainl* :TTP
re2uests. It includes the Java#erver Pages $J#P% speci-cation.
The Java API for ;e#ocket speci-cation de-nes a set of APIs to service
;e#ocket connections.
This package de-nes the root of the Java#erver <aces $J#<% API. J#< is a
technolog* for constructing user interfaces out of components.
This package de-nes the component part of the Java#erver <aces API. #ince
J#< is primaril* component oriented, this is one of the core packages. The
package overview contains a =01 diagram of the component hierarch*.
This package de-nes the classes and interfaces for Java EE's E"pression
1anguage. The E"pression 1anguage $E1% is a simple language originall*
designed to satisf* the speci-c needs of we application developers. It is
used speci-call* in J#< to ind components to $acking% eans and in ,>I to
name eans, ut can e used throughout the entire platform.
These packages de-ne the in)ection annotations for the conte"ts and
>ependenc* In)ection $,>I% APIs.
These packages de-ne the conte"t annotations and interfaces for the
,onte"ts and >ependenc* In)ection $,>I% API.
The Enterprise Java4ean $EJ4% speci-cation de-nes a set of lightweight APIs
that an o)ect container $the EJ4 container% will support in order to provide
transactions $using JTA%, remote procedure calls $using 30I or 30I!IIOP%,
concurrenc* control, dependenc* in)ection and access control for usiness
o)ects. This package contains the Enterprise Java4eans classes and
interfaces that de-ne the contracts etween the enterprise ean and its
clients and etween the enterprise ean and the e) container.
This package contains the annotations and interfaces for the declarative
validation support o?ered * the 4ean @alidation API. 4ean @alidation
provides a uni-ed wa* to provide constraints on eans $e.g. JPA model
classes% that can e enforced cross!la*er. In Java EE, JPA honors ean
validation constraints in the persistence la*er, while J#< does so in the view
This package contains the classes and interfaces that de-ne the contracts
etween a persistence provider and the managed classes and the clients of
the Java Persistence API $JPA%.
This package provides the Java Transaction API $JTA% that contains the
interfaces and annotations to interact with the transaction support o?ered *
Java EE. Even though this API astracts from the reall* low!level details, the
interfaces are also considered somewhat low!level and the average
application developer in Java EE is either assumed to e rel*ing on
transparent handling of transactions * the higher level EJ4 astractions, or
using the annotations provided * this API in comination with ,>I managed
This package provides the core of the Java Authentication #PI $JA#PI,% that
contains the interfaces and classes to uild authentication modules for secure
Java EE applications. Authentication modules are responsile for the
interaction dialog with a user $e.g. redirecting to a <orm or to an OpenI>
provider%, verif*ing the user's input $e.g. * doing an 1>AP lookup, dataase
2uer* or contacting the OpenI> provider with a token% and retrieving a set of
groupsAroles that the authenticated user is in or has $e.g. * again doing an
1>AP lookup or dataase 2uer*%.
This package provides the interfaces for interacting directl* with Java EE's
platform default managed thread pool. A higher!level e"ecutor service
working on this same thread pool can e used optionall*. The same interfaces
can e used for user!de-ned managed thread pools, ut this relies on vendor
speci-c con-guration and is not covered * the Java EE speci-cation.
This package de-nes the Java 0essage #ervice $J0#% API. The J0# API
provides a common wa* for Java programs to create, send, receive and read
an enterprise messaging s*stem's messages.
This package de-nes the entr* AP for Java EE 4atch Applications. The 4atch
Applications API provides the means to run long running ackground tasks
that possil* involve a large volume of data and which ma* need to e
periodicall* e"ecuted.
This package de-nes the Java EE ,onnector Architecture $J,A% API. Java EE
,onnector Architecture $J,A% is a Java!ased technolog* solution for
connecting application servers and enterprise information s*stems $EI#% as
part of enterprise application integration $EAI% solutions. This is a low!level
API aimed at vendors that the average application developer t*picall* does
not come in contact with.