Java Platform, Enterprise Edition or Java EE (formerly known as Java 2 Platform, Enterprise Edition or J2EE up to version 1.5), is a programming platformï¿½part of the Java Platformï¿½for developing and running distributed multitier architecture Java applications, based largely on modular software components running on an application server. The Java EE platform is defined by a specification. The year 2000 has seen Java 2, Enterprise Edition (J2EE) compliancy move out of the realm of marketing and into nine shipping products. J2EE vendor strategic positioning has continually changed, from focusing on core products, to an integrated range of J2EE services, to J2EE compliancy and finally to avoiding commoditization by leveraging J2EE servers as platforms for WebServices, Wireless and EAI development. The dominant players in the game have surfaced, but a variety of strategic takeovers may reshape J2EE app. server market share for 2001. In short, the server side java industry has gone through a whirl wind of change, this article will walk you through the years events and explain the trends and the players that will change the server side java landscape in 2001.
The original J2EE specification was developed by Sun Microsystems.
Starting with J2EE 1.3, the specification was developed under the Java Community Process. JSR 58 specifies J2EE 1.3 and JSR 151 specifies the J2EE 1.4 specification.
The J2EE 1.3 SDK was first released by Sun as a beta in April 2001. The J2EE 1.4 SDK beta was released by Sun in December 2002.
The Java EE 5 specification was developed under JSR 244 and the final release was made on May 11, 2006.
Java EE includes several API specifications, such as JDBC, RMI, e-mail, JMS, web services, XML, etc, and defines how to coordinate them. Java EE also features some specifications unique to Java EE for components. These include Enterprise Java Beans, servlets, portlets (following the Java Portlet specification), JavaServer Pages and several web service technologies. This allows the developer to create an enterprise application that is portable between platforms and scalable, while integrating with legacy technologies. Other added bonuses are, for example, that the application server can handle the transactions, security, scalability, concurrency and management of the components that are deployed to it, meaning that the developers can concentrate more on the business logic of the components rather than the lower level maintenance tasks.
The Java EE APIs includes several technologies that extend the functionality of the base Java SE APIs.
The Enterprise Java Beans API defines a set of APIs that a distributed object container will support in order to provide persistence, remote procedure calls (using RMI or RMI-IIOP), concurrency control, and access control for distributed objects.
The javax.naming, javax.naming.directory, javax.naming.event, javax.naming.ldap and javax.naming.spi packages define the Java Naming and Directory Interface (JNDI) API
The java.sql and javax.sql packages define the Java Database Connectivity (JDBC) API.
These packages define the Java Transaction API (JTA).
These packages define the JAXP API.
These packages define the Java Message Service (JMS) API.