Java Platform, Enterprise Edition
Java Platform, Enterprise Edition (również jako Java Enterprise, J2EE oraz Java EE czasami tłumaczona jako Java Korporacyjna) jest szeroko rozpowszechnioną serwerową platformą programistyczną języka Java. Definiuje standard tworzenia aplikacji w języku programowania Java opartych na wielowarstwowej architekturze komponentowej. Komponenty są zwykle osadzane na serwerze aplikacyjnym obsługującym Java Enterprise. Standard ten określa zestaw interfejsów programistycznych, jakich musi dostarczać zgodny serwer aplikacyjny.
Standard Java Enterprise aktualnie tworzony jest przez Oracle, które wykupiło oryginalnego twórcę – Sun Microsystems. Firma ta dostarcza poza definicją interfejsów programistycznych, wzorcową implementację serwera aplikacyjnego (otwarta wersja: GlassFish, komercyjna Sun Java System Application Server).
Rozwiązanie oparte na Java Enterprise powinno poprawnie funkcjonować na dowolnej platformie sprzętowej, systemie operacyjnym czy też serwerze aplikacji Java Enterprise. Zdarza się, iż aplikacje wymagają pewnych zmian przy przenoszeniu na inny serwer. Wynika to z faktu, iż nie wszystkie aspekty funkcjonowania aplikacji są objęte specyfikacją.
Standardowe API
Standard Java Enterprise obejmuje obecnie interfejsy programistyczne do:
- łączenia ze sobą oraz wdrażania komponentów
- tworzenia komponentów implementujących logikę biznesową w tym komponentów obsługujących komunikację asynchroniczną (EJB)
- obsługi komunikacji za pomocą komunikatów (JMS)
- dostępu do danych za pomocą mapowania obiektowo relacyjnego (JPA)
- zapewnienia transakcyjności operacji (JTA)
- zapewnienia bezpieczeństwa
- definiowania interfejsu użytkownika typu thin client (Servlet API, JSP, JSF)
- obsługi technologii XML-owych oraz usług sieciowych (JAX-WS, JAX-RPC, JAXB, SAAJ, StAX)
- wysyłania poczty (Java Mail)
Standardowe i alternatywne narzędzia
Termin Java Enterprise jest często kojarzony z ogółem technologii umożliwiających tworzenie aplikacji typu enterprise. Wówczas pod pojęciem Java Enterprise rozumie się nie tylko zestaw standardowych interfejsów programistycznych i architekturą komponentową, lecz również narzędzia często wykorzystywane przy tworzeniu takich rozwiązań. Do narzędzi takich można zaliczyć:
- Ant, Maven – automatyzacja procesu budowania aplikacji,
- XDoclet – generowanie kodu, plików konfiguracyjnych czy skryptów,
- różne narzędzia do testowania: JUnit, Cactus.
Ponadto do narzędzi takich zaliczane bywają alternatywy dla standardowych interfejsów Java Enterprise:
- narzędzia do mapowania obiektowo-relacyjnego: iBATIS – alternatywy dla JPA,
- frameworki tworzenia interfejsu użytkownika w technologii w aplikacjach internetowych JSF, Struts, WebWork, Spring Framework, JBoss SEAM Framework – alternatywy dla JSP.
Historia
Początki Java Enterprise sięgają grudnia 1999 roku, kiedy to została wydana wersja J2EE 1.2. Zakres API wchodzących w skład Java Enterprise zmieniał się w kolejnych wersjach. Niektóre interfejsy były zastępowane przez nowsze wersje, inne przenoszone do zestawu API Java Standard Edition. W każdej wersji definiowano nową wersję standardu Java Platform oznaczaną numerem wydania. Pozostałe zmiany zostały zaprezentowane poniżej.
J2EE 1.2
- J2EE Connector 1.0
- Enterprise JavaBeans 1.1
- Enterprise JavaBeans to CORBA Mapping 1.1
- JavaServer Pages 1.1
- Java Servlet 2.2
- Java Naming and Directory Interface 1.2.1
- JDBC 3.0, JDBC Optional Package API 2.0
- JavaMail API 1.1
- JavaBeans Activation Framework 1.0.1
- Java Transaction API 1.0.1
- Java Transaction Service 1.1
- RMI over IIOP
- Java IDL API
J2EE 1.3
- Enterprise JavaBeans 2.0
- JavaServer Pages 1.2
- Java Servlet 2.3
- Java Message Service 1.0.2b
- JavaMail API 1.2
- Java Transaction API 1.0.1B
- Java Transaction Service 1.0
J2EE 1.4
- J2EE Connector 1.5
- J2EE Deployment API 1.1
- J2EE Management 1.0
- Enterprise JavaBeans 2.1
- Java API for XML Processing 1.2
- Java API for XML Registries 1.0
- Java API for XML-based RPC 1.1
- Java Authorization Contract for Containers 1.0
- Java Message Service 1.1
- Java Servlet 2.4
- JavaBeans Activation Framework 1.0.2
- JavaMail API 1.3
- JavaServer Pages 2.0
- SOAP with Attachments API for Java 1.2
Java EE 5
- Implementing Enterprise Web Services
- Java API for XML-Based Web Services (JAX-WS) 2.0
- Java Architecture for XML Binding (JAXB) 2.0
- SOAP with Attachments API for Java (SAAJ)
- Streaming API for XML
- Web Service Metadata for the Java Platform
- JavaServer Faces 1.2
- JavaServer Pages 2.1
- JavaServer Pages Standard Tag Library
- Java Servlet 2.5
- Common Annotations for the Java Platform
- Enterprise JavaBeans 3.0
- JavaBeans Activation Framework (JAF) 1.1
- JavaMail API 1.4.1
- Java Message Service API
- Java Persistence API
- Java Transaction API (JTA) 1.1
Java EE 6
- Java API for RESTful Web Services (JAX-RS) 1.1
- Implementing Enterprise Web Services 1.3
- Java API for XML-Based Web Services (JAX-WS) 2.2
- Java Architecture for XML Binding (JAXB) 2.2
- Web Services Metadata for the Java Platform
- Java API for XML-Based RPC (JAX-RPC) 1.1
- Java APIs for XML Messaging 1.3
- Java API for XML Registries (JAXR) 1.0
- Java Servlet 3.0
- JavaServer Faces 2.0
- JavaServer Pages 2.2/Expression Language 2.2
- Standard Tag Library for JavaServer Pages (JSTL) 1.2
- Debugging Support for Other Languages 1.0
- Contexts and Dependency Injection for Java (Web Beans 1.0)
- Dependency Injection for Java 1.0
- Bean Validation 1.0
- Enterprise JavaBeans 3.1 (includes Interceptors 1.1)
- Java EE Connector Architecture 1.6
- Java Persistence 2.0
- Common Annotations for the Java Platform 1.1
- Java Message Service API 1.1
- Java Transaction API (JTA) 1.1
- JavaMail 1.4
Java EE 7
- Java API for RESTful Web Services (JAX-RS) 2.0
- Java API for WebSocket (WebSocket) 1.0
- Java API for JSON Processing (JSON-P) 1.0
- Java Servlet 3.1
- JavaServer Faces 2.2
- JavaServer Pages 2.3
- Expression Language 3.0
- Bean Validation 1.1
- Enterprise JavaBeans 3.2
- Java Persistence 2.1
- Common Annotations for the Java Platform 1.2
- Java Message Service API 2.0
- Java Transaction API (JTA) 1.2
Linki zewnętrzne
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.