Java 2 Enterprise Edition (J2EE)
By Paul Jensen, OCI Principal Software Engineer
With the Java 2 Platform Enterprise Edition (J2EE), Sun has taken a first step in assembling a variety of Java component technologies to provide a standard integrated solution to developing web-based applications.
J2EE is a specification for a collection of software components to enable development of multi-tiered web-based applications. These software components include servlets, Java Server Pages (JSPs), and Enterprise Java Beans (EJBs) – technologies described in earlier articles.
J2EE is built on the Java2 Standard Edition (J2SE), utilizing its core functionality. The platform also includes a compatibility test suite to ensure J2EE-compliant applications will be portable across a variety of vendor implementations.
The platform is based on a standard 3-tier architecture with tiers named, respectively, the client tier (typically a web browser), the middle tier (the focus of J2EE), and the Enterprise Information System (EIS) tier (databases, ERP, or legacy applications). J2EE takes a variety of pre-existing standards and details the interaction of these components in an enterprise system.
The support for security, resource pooling, distributed transactions, and flexible component/application deployment on which EJBs are based is extended and further standardized in the J2EE platform. For example, the platform embraces XML as a standard format for data messaging and for descriptions of deployment properties.
The latest versions of specifications for many of the Java APIs (e.g., JDBC, JSP, and EJBs) feature changes that reveal Sun's focus on higher-level issues of component compatibility and ease of development and deployment.
Additional services and APIs upon which J2EE is based include:
- Java Naming and Directory Interface (JNDI)
Provides access to distributed resources via hierarchical name lookup
- Java Transaction API (JTA)
High-level access to distributed-transaction services
- Java Transaction Service (JTS)
Integration with CORBA distributed-transaction service
- Java Messaging Service (JMS)
Distributed publish/subscribe and point-point messaging
- Java Mail API
Ability to send/receive e-mail via standard protocols
- JavaBeans Activation Framework (JAF)
Mapping of JavaBeans to MIME types and file extensions
As the specification matures, we can anticipate higher levels of integration in development environments and third-party applications such as database tools.
Software Engineering Tech Trends (SETT) is a regular publication featuring emerging trends in software engineering.