The Eclipse Foundation, which has taken over development of enterprise Java, has outlined the various projects that will make up the enterprise Java platform, which will emphasize microservices and cloud deployments.
The projects that make up Jakarta EE Java effort
Projects in the Jakarta EE effort include:
- GlassFish, the application server that has served as a reference implementation of enterprise Java.
- ORB, for source code and tests for the CORBA ORB (Object Request Broker) used in GlassFish.
- Jakarta EE Platform, for producing the platform specification and serving as an umbrella specification over Jakarta EE specifications.
- Jakarta EE TCK (Technology Compatibility Kit), for testing Jakarta EE implementations for compliance with the platform’s specification.
- The Grizzly New I/O API (NIO) framework, for writing scalable servers.
- Project for JAXB, for supporting Java Architecture for XML Bnding (JAXB), with an API and tools to map XML documents and Java objects.
- Project for JAX-RS, for supporting the Java API for RESTful Web Services specification.
- Project for JAX-WS, for an API and TCK for XML web services and APIs for XML messaging. Web services metadata for the Java platform also is included.
- Project for Enterprise Security, for providing capabilities such as authentication, authorization, data integrity, and transport security.
- Project for Servlet, for the API for the Java servlet specification. Servlets interact with the web on the Jakarta EE platform.
- Project for JCA (Jakarta EE Connector Architecture), for a standard architecture for components to connect to enterprise information systems.
- Project for Stable EE4J APIs, with APIs for management, deployment, JAX-RPC (XML-based remote procedure call), for web services, and JAXR, to access XML registries.
- Project for JMS (Java Message Service), for a middleware API for sending messages between clients.
- OpenMQ, a message-oriented middleware platform.
- Metro, a web services stack.
- The Jersey REST framework.
- Mojarra, an implementation of JavaServer Faces, for web UI development.
- Project for EJB (Enterprise JavaBeans), for an API and TCK for EJB that supports development of component-based business applications.
- Project for JavaMail, including the JavaMail API and a framework for building mail and messaging applications.
- Ozark, for a model-view-controller (MVC) API.
- Project for Common Annotations, for common semantic concepts.
- Project for Expression Language, for enabling webpages to communicate with application logic in the form of managed beans.
- Project for Concurrency Utilities, for an API to use concurrency from application components without compromising container integrity.
- Project for Interceptors, for an API and TCK for interceptors, which are used to interpose on business method invocations and events such as life cycle and time-out events on instances of Jakarta EE components and managed classes.
- Eclipse Project for JACC (Java Authorization Contract for Containers), for a contract between a Jakarta EE application server and an authorization policy provider.
- Project for JAF (JavaBean Activation Framework), an extension to Java for using services to determine the type of an arbitrary piece of data, encapsulate access, discover the data’s operations, and instantiate a bean to perform operations.
- Project for JASPIC (Java Authentication Service Provider Interface for Containers), for enabling message authentication providers to integrate with client or server message processing containers or runtimes.
- Project for JSON Processing, for an API to process JSON documents.
- Project for JSON-B, for a binding layer to convert Java objects to and from JSON messages.
- Yasson, for a JSON-B reference implementation via a framework.
- Project for JSP (JavaServer Pages), for an API and TCK for JSP, which helps with development of webpages based on HTML, XML, or other document types.
- Project for JSTL (JavaServer Pages Standard Tag Library), for encapsulating as tags the core functionality to web applications, with support for tasks such as iteration, documents, and manipulating XML documents. Also, a framework is provided to integrate existing tags with JSTL tags.
- Project for JTA (Java Transaction API), for specifying interfaces between a transaction manager and parties involved in a distributed transaction system, including the resource manager, authentication server, and transactional applications.
- Project for Servlet, for an API and TCK for Java Servlet Specification. Java Servlets interact with the web on Jakarta EE.
- Project for JPA (Java Persistence API), for managing persistence and object-relational mapping in Java environments.
- Project for WebSocket, for an API to integrate Websockets into applications.
- Tyrus, for a WebSocket API reference implementation.
- Soteria, providing a security API reference implementation.
- EclipseLink, for a persistence solution to read and write objects to data sources, including relational databases and XML.
Jakarta EE’s GlassFish application server plans
The Eclipse Foundation plans two releases of the GlassFish Java application server this year, including one that will pass through Eclipse’s new enterprise Java specification process.