created on | September 5, 2022 |
Oracle lists the set of specifications for each Java EE version on a single page, devided into sections that denote the area of application.
In the list of technologies, I often omit the word Java, Api or Archticture, i.e. Java Persistence Api is simply listed as Persistence. Abbrevations for technolgies are given in braces, i.e.(JPA) for Java Persistence API.
For some technologies of Java EE 5 there is no version number in the list on the referenced page. In those cases I determined the version from the corresponding JSR.
During the compilation I fixed some errors from the references. I.e. in the document listing the technologies for Java EE 7, the JavaServer Pages version is stated with 2.3, but the corresponding JSR is stated as JSR 245, which handles the specification of JavaServer Pages 2.1. In this case, I determined the JavaServer Pages version from the Java EE version 7 specification document, which you can get here. However, I’m pretty sure that I didn’t catch all errors. So If you find one, I will be glad if you drop me a note.
Java EE 5 | Java EE 6 | Java EE 7 | J EE 8 | |
---|---|---|---|---|
release date | 2006-05-08 | 2009-12-10 | 2013-05-08 | 2017-08-31 |
Java SE Versions supported | Java SE 5 | Java SE 6 | Java SE 7 | Java SE 8 |
JSR for Java EE version specification | JSR 244 | JSR 316 | JSR 342 | JSR 366 |
Enterprise Application Technologies | ||||
Contexts and Dependency Injection (CDI) | 1.0 JSR 299 | 1.1 JSR 346 | 2.0 JSR 365 | |
Dependency Injection for Java | 1.0 JSR 330 | 1.0 JSR 330 | 1.0 JSR 330 | |
Bean Validation | 1.0 JSR 303 | 1.1 JSR 349 | 2.0 JSR 380 | |
Enterprise JavaBeans | 3.0 JSR 220 | 3.1 JSR 318 *61 | 3.2 JSR 345 | 3.2 JSR 345 |
Connector Architecture (JCA) | 1.5 JSR 122 | 1.6 JSR 322 | 1.7 JSR 322 | 1.7 JSR 322 |
Persistence (JPA) | 1.0 JSR 220 | 2.0 JSR 317 | 2.1 JSR 338 | 2.2 JSR 338 |
Common Annotations | 1.0 JSR 250 | 1.1 JSR 250 | 1.2 JSR 250 | 1.3 JSR 250 |
Message Service (JMS) | 1.1 JSR 914 | 1.1 JSR 914 | 2.0 JSR 343 | 2.0 JSR 343 |
Transaction API (JTA) | 1.1 JSR 907 | 1.1 JSR 907 | 1.2 JSR 907 | 1.2 JSR 907 |
JavaMail | 1.4 JSR 919 | 1.4 JSR 919 | 1.5 JSR 919 | 1.6 JSR 919 |
Activation Framework (JAF) | 1.1 JSR 919 | *jaf | *jaf | *jaf |
Batch Applications | 1.0 JSR 352 | 1.0 JSR 352 | ||
Concurrency Utilities | 1.0 JSR 236 | 1.0 JSR 236 | ||
Interceptors | 1.2 JSR 236 | 1.2 JSR 236 | ||
Management | ||||
J2EE Management *02 | 1.1 JSR 77 | 1.1 JSR 77 | 1.1 JSR 77 | 1.1 JSR 77 |
EE Application Deployment | 1.2 JSR 88 | 1.2 JSR 88 | 1.2 JSR 88 O | 1.2 JSR 88 (O) |
Security | ||||
Auth Service Prov. Interface (JASPIC) *01 | 1.1 JSR 196 | 1.1 JSR 196 | 1.1 JSR 196 | |
Auth. Contract for Containers (JACC) | 1.1 JSR 115 | 1.3 JSR 115 | 1.5 JSR 115 | 1.5 JSR 115 |
EE Security API | 1.0 JSR 375 | |||
Web Application Technologies | ||||
Servlet | 2.5 JSR 154 | 3.0 JSR 315 | 3.1 JSR 340 | 4.0 JSR 369 |
JavaServer Faces (JSF) | 1.2 JSR 252 | 2.0 JSR 314 | 2.2 JSR 344 | 2.3 JSR 372 |
JavaServer Pages (JSP) | 2.1 JSR 245 | 2.2 JSR 245 *62 | 2.3 JSR 372 | 2.3 JSR 372 |
Expression Language (EL) | 2.1 JSR 245 *51 | 2.2 JSR 245 | 3.0 JSR 341 | 3.0 JSR 341 |
Standard Tag Library for JSP (JSTL) | 1.2 JSR 52 | 1.2 JSR 52 | 1.2 JSR 52 | 1.2 JSR 52 |
Debugging Support for Other Languages | 1.0 JSR 45 | 1.0 JSR 45 | 1.0 JSR 45 | |
API for WebSocket | 1.0 JSR 356 | 1.1 JSR 356 | ||
API for JSON Processing | 1.0 JSR 353 | 1.1 JSR 374 | ||
API for JSON Binding | 1.0 JSR 367 | |||
Web Services Technologies | ||||
RESTful Web Services (JAX-RS) | 1.1 JSR 311 | 2.0 JSR 339 | 2.1 JSR 370 | |
Implementing Enterprise Web Services | 1.2 JSR 109 | 1.3 JSR 109 | 1.3 JSR 109 | 1.3 JSR 109 |
XML-Based Web Services (JAX-WS) | 2.0 JSR 224 | 2.2 JSR 224 | 2.2 JSR 224 | *81 |
XML Binding (JAXB) | 2.0 JSR 222 | 2.2 JSR 222 | ||
Web Services Metadata | 2.0 JSR 181 | 2.1 JSR 181 | 2.1 JSR 181 | 2.1 JSR 181 |
XML-Based RPC (JAX-RPC) | 1.1 JSR 101 *63 | 1.1 JSR 101 | 1.1 JSR 101 (O) | 1.1 JSR 101 (O) |
XML Messaging (JAXM) | 1.3 JSR 67 *63 | 1.3 JSR 67 | *82 | |
XML Registries (JAXR) | 1.0 JSR 93 | 1.0 JSR 93 | 1.0 JSR 93 | |
Streaming API for XML (STAX) | 1.0 JSR 173 | *64 | *64 | *64 |
Java EE-related Specs in Java SE | ||||
API for XML Processing (JAXP) | 1.3 JSR 206 | 1.3 JSR 206 | 1.3 JSR 206 | |
API for XML Binding (JAXB) | 2.2 JSR 222 | 2.2 JSR 222 | ||
Database Connectivity (JDBC) | 4.0 JSR 221 | 4.0 JSR 221 | 4.0 JSR 221 | |
Management Extensions (JMX) | 1.2 JSR 003 | 2.0 JSR 255 | 2.0 JSR 255 | 2.0 JSR 255 |
JavaBeans Activation Framework (JAF) | 1.1 JSR 925 | 1.1 JSR 925 | 1.1 JSR 925 | |
Streaming API for XML (StAX) | 1.0 JSR 173 | 1.0 JSR 173 | 1.0 JSR 173 | |
XML-Based Web Services (JAX-WS) | 2.2 JSR 224 | |||
SOAP with Attachment API for Java (SAAJ) | 1.3 JSR 67 |
*01: the complete name is: Authentication Service Provider Interface for Containers (JASPIC), but that would blow up the table column.
*02: One would rather expect the naming JEE Managaement in the Java EE versions. But, up to Java EE 8, it’s called J2EE Management.
*51: in Java EE 5, EL was part of the JavaServer Pages. It got its own Spec in Java EE 6
*52: The page for the Java EE 5 specifications on the Oracle website doesn’t list JMX.. The Java EE 5
specification document states: “The Java™ Management Extensions (JMX) API is also used to provide some
management support” and “The JMX API supports the J2EE Management API.” In the ‘Related Documents Section’
of the Java EE 5 specification document is the link “Java™ Management Extensions 1.2 (JMX specification). Available at
http://java.sun.com/products/JavaManagement/.". So the JMX version of Java EE 5 is most probable version 1.2
*61: includes Interceptors 1.1,
*62: includes JavaServer Page 2.2.
*63: depends on SOAP with Attachment API for Java (SAAJ), in J EE 5 there was only SOAP with Attachments API for Java (SAAJ).
*64: StAX was moved to Java SE in Java SE 6.
*81: JAX-WS was moved to Java SE in Java SE 8.
*82: JAXM / SAAJ was moved to Java SE in Java SE 8.
*jaf: The Java Activation Framework was moved to Java SE in Java SE 6.
The J2EE versions are listed only for historical reasons. I didn’t bother to include the links to the corresponding JSRs of each technology. Some of them are hard to find nowadays them and you wouldn’t like to touch a beast like J2EE, anyway.
J2EE 1.2 | J2EE 1.3 | J2EE 1.4 | |
---|---|---|---|
release date | 1999-12-12 | 2001-09-24 | 2003-11-11 |
technologies | |||
JSR for Java EE version specification | JSR 58 | JSR 151 | |
Enterprise JavaBeans Specification (EJB) | 1.1 | 2.0 | 2.1 |
Java Message Service (JMS) | 1.0.2 | 1.0.2 | 1.1 |
Java Naming and Directory Interface Specification (JNDI) | 1.2 | 1.2 | 1.2 |
Java Servlet Specification | 2.2 | 2.3 | 2.4 |
Java Transaction API (JTA) | 1.0.1 | 1.0.1 | 1.0.1B |
Java Transaction Service (JTS) | 0.95 | 1.0 | 1.0 |
JavaMail API Specification Version | 1.1 | 1.1 | 1.2 |
JavaBeans Activation Framework Specification (JAF) | 1.0 | 1.0 | 1.0 |
JavaServer Pages Specification (JSP) | 1.1 | 1.2 | 2.0 |
JDBC API | 2.0 | 2.1 | |
J2EE Connector Architecture | 1.0 | 1.5 | |
Java API for XML Processing (JAXP) | 1.0 | 1.2 | |
Java Authentication and Authorization Service (JAAS) | 1.0 | 1.0 | |
Java Authorization Service Provider Contract for Containers (JACC) | 1.0 | ||
Web Services for J2EE | 1.0 | ||
Java API for XML-based RPC (JAX-RPC) | 1.0 | ||
Java API for XML Registries (JAXR) | 1.0 | ||
Java Management Extensions (JMX) | 1.1 | ||
Java 2 Platform, Enterprise Edition Management Specification | 1.0 | ||
Java 2 Platform, Enterprise Edition Deployment Specification | 1.0 |
Jakarta Specifications, Jakarta EE Platform 8
Jakarta Specifications, Jakarta EE Platform 9
Jakarta Specifications, Jakarta EE Platform 9.1
Jakarta Specifications, Jakarta EE Platform 10
Jakarta Specifications, Jakarta EE WebProfile, version 8
Jakarta Specifications, Jakarta EE WebProfile, version 9
Jakarta Specifications, Jakarta EE WebProfile, version 9.1
Jakarta Specifications, Jakarta EE WebProfile, version 10
Jakarta Specifications, Jakarta EE Core Profile, version 10
Java EE 5 specifications, Java EE 5 Technologies
Java EE 6 specifications Java EE 6 Technologies
Java EE 7 specifications, Java EE 7 Technologies
Java EE 8 specifications, Java EE 8 Technologies
Specification versions not stated in the documents above where taken from the corresponding JSRs and related documents.