Chapter 1. Overview of General Concepts
Before understanding how Red Hat JBoss Enterprise Application Platform can be configured and deployed, there are some important concepts to understand.
1.1. Java
Java is a programming language and a computing platform that incorporates concepts such as object-orientation, classes, and concurrency. Java applications are compiled down to bytecode and are run inside a Java Virtual Machine (JVM).
1.2. Application Servers
An application server, or app server, is software that provides an environment to run web applications. Most app servers also provide functionality to web applications running in their environment through a set of APIs. For example, an app server can provide an API for connecting to a database.
1.3. Jakarta EE 8
Jakarta EE Platform 8, maintained by the Eclipse Foundation, defines a standard platform for hosting Jakarta EE applications.
For information about Jakarta EE Platform 8, see Jakarta EE Platform 8 specification.
1.4. Java Enterprise Edition 8
Java Platform, Enterprise Edition (Java EE) is a standards-based enterprise platform that provides both an API and runtime environment for running and developing Java applications. The goal is to improve developer productivity by providing rich enterprise capabilities in easy to consume frameworks that eliminate boilerplate and reduce technical burden. The frameworks that compose Java EE are heavily tested in combination.
Java EE 8, which is based on JSR 366, builds upon Java EE 7. The primary focus of this release is to improve API and programming models needed for today’s applications. In addition to the Java EE (JSR 366) specification, the following specifications are new or updated in Java EE:
- JSR 250: Common Annotations 1.3
- JSR 338: Java Persistence 2.2
- JSR 356: Java API for WebSocket 1.1
- JSR 365: Contexts and Dependency Injection (CDI) 2.0
- JSR 367: The Java API for JSON Binding (JSON-B) 1.0
- JSR 369: Java Servlet 4.0
- JSR 370: Java API for RESTful Web Services (JAX-RS) 2.1
- JSR 372: JavaServer Faces (JSF) 2.3
- JSR 374: Java API for JSON Processing (JSON-P) 1.1
- JSR 375: Java EE Security API 1.0
- JSR 380: Bean Validation 2.0
- JSR 919: JavaMail 1.6
1.5. Transition from Java EE to Jakarta EE
After the Java Enterprise Edition 8 release, Oracle transferred Java EE to the Eclipse Foundation. The API code, implementation code, and Technology Compatibility Kit (TCK) code were transferred as part of a phased transfer process. A new certification process, the Jakarta EE Specification Process (JESP), was set up and a new specification license, the Eclipse Foundation Technology Compatibility Kit license, was created.
As part of this transfer process, new names were created for all Jakarta specifications corresponding to the existing Java EE specifications. All the new names start with Jakarta and are followed by a simple description of the specification. The Java EE specification names mentioned in the JBoss EAP documents and the names of the corresponding Jakarta EE specifications are listed in the Java EE Specifications Relevant for JBoss EAP and the Corresponding Jakarta EE Specifications section.
Additional Resources
*See Java EE Specifications Relevant for JBoss EAP and Corresponding Jakarta EE Specifications.
1.6. Java EE Specifications Relevant for JBoss EAP and the Corresponding Jakarta EE Specifications
Java EE 8 Specification | Java EE 8 Abbreviation | Jakarta EE 8 Specification |
---|---|---|
Java Servlet | Jakarta Servlet | |
JavaServer Faces | JSF | Jakarta Server Faces |
Java API for WebSocket | Jakarta WebSocket | |
Concurrency Utilities for Java EE | Jakarta Concurrency | |
Interceptors | Jakarta Interceptors | |
Java Authentication Service Provider Interface for Containers | JASPIC | Jakarta Authentication |
Java Authorization Contract for Containers | JACC | Jakarta Authorization |
Java EE Security API | Jakarta Security | |
Java Message Service | JMS | Jakarta Messaging |
Java Persistence API | JPA | Jakarta Persistence |
Java Transaction API | JTA | Jakarta Transactions |
Batch Applications for the Java Platform | JBatch | Jakarta Batch |
JavaMail API | Jakarta Mail | |
Java EE Connector Architecture | JCA | Jakarta Connectors |
Common Annotations for Java Platform | Jakarta Annotations | |
JavaBeans Activation Framework | JAF | Jakarta Activation |
Bean Validation | JBV | Jakarta Bean Validation |
Expression Language | JEL | Jakarta Expression Language |
Enterprise JavaBeans | EJB | Jakarta Enterprise Beans |
Java Architecture for XML Binding | JAXB | JAXB |
Java API for JSON Binding | JSON-B | Jakarta JSON Binding |
JavaServer Pages | JSP | Jakarta Server Pages |
Java API for XML-Based Web Services | JAX-WS | Jakarta XML Web Services |
Java API for RESTful Web Services | JAX-RS | Jakarta RESTful Web Services |
JavaServer Pages Standard Tag Library | JSTL | Jakarta Standard Tag Library |
Contexts and Dependency Injections | CDI | Jakarta Contexts and Dependency Injection |
Java API for JSON Processing | JSON-P | Jakarta JSON Processing |
Java API for XML-Based RPC | JAX-RPC | Jakarta XML RPC |
Java API for XML Registries | JAXR | Jakarta XML Registries |