Java Platform, Enterprise Edition
From Free net encyclopedia
Template:Java platforms Java Platform, Enterprise Edition or Java EE (formerly known as Java 2 Platform, Enterprise Edition or J2EE up to version 1.4), is a programming platform—part of the Java platform—for developing and running distributed multi-tier architecture Java applications, based largely on modular software components running on an application server. The Java EE platform is defined by a specification. Java EE is also considered informally to be a standard because providers must agree to certain conformance requirements in order to declare their products as Java EE compliant; albeit with no ISO or ECMA standard.
Java EE includes several API specifications, such as JDBC, client-side applets, RPC, CORBA, 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.
Contents |
History
The original J2EE specification was developed by Sun Microsystems. Starting with J2EE 1.3, the specification has been developed under the Java Community Process. JSR 58 specifies J2EE 1.3 and JSR 151 specifies the J2EE 1.4 specification. As of 2006, the Java EE 5 specification is being developed under JSR 244.
General APIs
The Java EE APIs includes several technologies that extend the functionality of the base Java SE APIs.
Template:Javadoc:EE.*
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.
Template:Javadoc:EE
The Servlets API defines a set of APIs between a web container and a servlet that is responsible for processing requests and issuing responses.
Template:Javadoc:EE
The javax.servlet.jsp
and Template:Javadoc:EE packages define the JavaServer Pages API.
Template:Javadoc:EE
The javax.naming
, Template:Javadoc:EE, Template:Javadoc:EE, Template:Javadoc:EE and Template:Javadoc:EE packages define the Java Naming and Directory Interface (JNDI) API.
Template:Javadoc:EE, Template:Javadoc:EE
The java.sql
and javax.sql
packages define the Java Database Connectivity (JDBC) API.
Template:Javadoc:EE.*
These packages define the Java Transaction API (JTA).
Template:Javadoc:EE.*
These packages define the JAXP API.
Template:Javadoc:EE.*
These packages define the Java Message Service (JMS) API.
Low cost development
One of the benefits of Java EE as a platform is that it is possible to get started with little or no cost. The Java EE implementation from Sun Microsystems can be downloaded for free, and there are a great many open source tools available to extend the platform or to simplify development.
Examples of third party open source Java development tools include:
- NetBeans IDE, a Java based integrated development environment
- The Eclipse platform, a Java based integrated development environment
- Jedit, an opensource, Java based integrated development environment
- Apache Ant, an automated build tool
- JUnit, a framework for automating unit tests
- Apache Tomcat, a Servlet/JSP web container
- Jetty, a web server and Servlet/JSP web container
- Struts, a framework for developing Java EE web applications
- Jakarta JMeter, a load testing tool for web servers
- JasperReports, a report writer
- Spring Framework
J2EE 1.4 application server certified
- GlassFish, an open-source application server from Sun
- JBoss, an open-source application server from JBoss
- Geronimo, an open-source application server from Apache
- JOnAS, an open-source application server from ObjectWeb
- Resin, an application server with integrated XML support
Java EE vs. .NET
Arguments about the merits of Java EE vs. Microsoft's .NET abound. One "consensus" is that Java EE is best for multiplatform architectures, whereas .NET should be used for a strictly Microsoft platform (and not to be migrated to for non-Microsoft platform integration).
Publications
- {{cite book
| last = Perrone | first = Paul J. | authorlink = | coauthors = Chaganti, Krishna | year = 2003 | title = J2EE Developer's Handbook | publisher = Sam's Publishing | location = Indianapolis, Indiana | id = ISBN 0-672-32348-6
}}
- {{cite book
| last = Bodoff | first = Stephanie | year = 2004 | title = The J2EE Tutorial | publisher = Addison-Wesley | location = Boston | id = ISBN 0-321-24575-X
}}
- Solveig Haugland, Mark Cade, Anthony Orapallo: J2EE 1.4: The Big Picture, Prentice Hall, ISBN 0-13-148010-3
- Alan Monnox: Rapid J2EE Development: An Adaptive Foundation for Enterprise Applications, Prentice Hall, ISBN 0-13-147220-8
- Renaud Pawlak, Lionel Seinturier, Jean-Philippe Retaillé: Foundations of AOP for J2EE Development, ISBN 1-59059-507-6
- Christopher Judd, Hakeem Shittu: Pro Eclipse JST: Plug-ins for J2EE Development, ISBN 1-59059-493-2
See also
External links
- Sun's J2EE page - official documentation
- Template:Javadoc:EE
- Java EE 5 technologies and JSRs
- Sun's J2EE compatibility page - certified J2EE servers
- J2EE Interview Questions
- Javalobby.org - popular Java, JSP & J2EE developer forums
- TheServerSide.com - popular discussion site for J2EE developers
- Jim Farley 1 August 2000. (O'Reilly 2004.)
- JavaToolbox List of the available development tools and libraries for Java/J2EE
- Java BluePrints - Sun's best practices for Java 2, Enterprise Edition application development.
- Detailed J2EE Tutorials - J2EE Tutorials and Help Files
- JavaRSS.com - A Java portal of Java websites rich in Java & J2EE News, Articles, Blogs, Groups, Forums and Tags
Examples of Java EE application servers include:
- BEA WebLogic (http://bea.com/framework.jsp?CNT=index.htm&FP=/content/products/server)
- Borland Enterprise Server (http://www.borland.com/bes/appserver)
- Geronimo Application Server by Apache Software Foundation (http://geronimo.apache.org)
- JBoss Application Server (http://www.jboss.org/products/jbossas)
- JOnAS by ObjectWeb consortium (Java Open Application Server, http://jonas.objectweb.org)
- JRun by Macromedia (http://www.macromedia.com/software/jrun/)
- Oracle Application Server (http://www.oracle.com/appserver)
- Orion Application Server by IronFlare (http://www.orionserver.com)
- Pramati Server (http://www.pramati.com)
- Sun Java System Application Server (http://www.sun.com/software/products/appsrvr/home_appsrvr.xml)
- WebSphere Application Server by IBM (http://www-306.ibm.com/software/webservers/appserv/was/features)
- WebObjects Application Server by Apple Computer (http://www.apple.com/webobjects)da:J2EE
de:Java 2 Platform Enterprise Edition es:Java 2 Enterprise Edition fr:Java 2 Enterprise Edition it:J2EE he:J2EE lt:J2EE nl:Java 2 Enterprise Edition ja:Java 2 Platform, Enterprise Edition pl:J2EE ru:Java 2 Enterprise Edition sk:J2EE vi:J2EE tr:J2EE zh:J2EE