[GLASSFISH-19259] Java EE 7: javaee-api.jar Created: 30/Oct/12  Updated: 22/May/13  Resolved: 20/Mar/13

Status: Resolved
Project: glassfish
Component/s: packaging
Affects Version/s: 4.0_b60
Fix Version/s: 4.0_b80_EE7MS6

Type: New Feature Priority: Critical
Reporter: Joe Di Pol Assignee: Romain Grécourt
Resolution: Fixed Votes: 0
Labels: None
Σ Remaining Estimate: 15 weeks Remaining Estimate: 2 weeks
Σ Time Spent: 1 week Time Spent: 1 week
Σ Original Estimate: 13 weeks Original Estimate: Not Specified

Issue Links:
Dependency
blocks GLASSFISH-19655 provide javax.javaee-endorsed-api:7.x Resolved
Related
is related to GLASSFISH-19279 Build Java EE 7 javadocs Resolved
is related to GLASSFISH-20069 review API metadata Resolved
Sub-Tasks:
Key
Summary
Type
Status
Assignee
GLASSFISH-19375 provide javax.ejb-api under official ... Sub-task Closed Romain Grécourt  
GLASSFISH-19376 provide javax.interceptor-api under o... Sub-task Closed Romain Grécourt  
GLASSFISH-19377 use javax.persistence-api v2.x for EE... Sub-task Resolved Romain Grécourt  
GLASSFISH-19378 provide javax.management.j2ee-api und... Sub-task Resolved Romain Grécourt  
GLASSFISH-19379 provide javax.resouce-api under offic... Sub-task Closed Romain Grécourt  
GLASSFISH-19380 provide javax.enterprise.deploy-api u... Sub-task Closed Romain Grécourt  
GLASSFISH-19381 provide javax.annotation-api under of... Sub-task Closed Romain Grécourt  
GLASSFISH-19382 provide javax.security.auth.message-a... Sub-task Resolved Romain Grécourt  
GLASSFISH-19383 provide javax.security.jacc-api under... Sub-task Closed Romain Grécourt  
GLASSFISH-19384 provide javax.transaction.cdi-api und... Sub-task Closed Romain Grécourt  
GLASSFISH-19385 provide javax.transaction under offic... Sub-task Closed Romain Grécourt  
GLASSFISH-19386 republish jaxr properly under officia... Sub-task Resolved Romain Grécourt  
GLASSFISH-19387 republish javax.xml.rpc-api under off... Sub-task Closed Romain Grécourt  
GLASSFISH-19643 provide javax.xml.soap under official... Sub-task Resolved Romain Grécourt  
GLASSFISH-19652 provide javax.jws-api under official ... Sub-task Resolved Romain Grécourt  

 Description   

Java EE 6 published the following artifacts:

http://repo1.maven.org/maven2/javax/javaee-api/
http://repo1.maven.org/maven2/javax/javaee-endorsed-api/
http://repo1.maven.org/maven2/javax/javaee-web-api/

We need to do something similar for Java EE 7. More details

  • The Java EE 6 jars are built here: main/appserver/javaee-api/javax.javaee. Rumor is they were built and published manually.
  • The Java EE 6 build did some magic to include class files without the implementations code, so you could compile against the jar files, but not run.
  • We recently changed our Java compatibility rules such that it is no longer necessary to produce the javaee.jar file in this special way with no code. We can now simply create a javaee.jar file that contains all (and only) the javax.* class files that make up the official Java EE platform API. Hopefully doing so is a simplification of the current process for producing this special javaee.jar file.
  • If all javax.* API classes and sources artifacts are published to Maven Central (in api jars) then we could create a pom file that aggregates the classes and sources artifacts and produce the javaee.jar
  • If a javax.* API is not published to Maven Central then we should work with the project team to get it published.
  • Keep in mind that not all javax.* APIs are java.net projects. For example some are from JBoss like Weld (CDI) and bean validator
  • Note that the GlassFish distribution also contains glassfish/lib/javaee.jar. In this case the jar file just contains a manifest that points to the actual jars. This is produced as part of the normal glassfish build. We need to make sure it is correctly updated to include the Java EE 7 APIs.


 Comments   
Comment by Romain Grécourt [ 30/Oct/12 ]

The artifacts built under main/appserver/javaeeapi have org.glassfish.main as groupId.

We need to setup a workspace for those, which can certainly be done by moving main/appserver/javaeeapi/* in https://svn.java.net/svn/glassfish~svn/trunk/api/javaee-api/ like it has been done for javax.servlet.

Comment by Romain Grécourt [ 10/Dec/12 ]

Build process is in place, see:

Comment by arungupta [ 10/Dec/12 ]

JAX-RPC is getting pruned from Java EE 7 and should not be included in the javadocs.

Batch, Concurrency Utilities for Java EE, and Java Caching are missing from the list.

Comment by Romain Grécourt [ 10/Dec/12 ]

Please correct me: jaxr and jax-rpc are optional in EE7 ?

Comment by arungupta [ 10/Dec/12 ]

That is correct, JAXR and JAX-RPC are optional in Java EE 7 and can be removed from the javadocs.

Comment by Romain Grécourt [ 11/Dec/12 ]

batch, concurrency utility and jcache are missing because not yet integrated in glassfish

Comment by Romain Grécourt [ 25/Jan/13 ]

The javax.javaee API jars have been published:

This issue will remain open in order to track the subtasks.

Comment by Romain Grécourt [ 06/Mar/13 ]

update fix version

Comment by Romain Grécourt [ 20/Mar/13 ]

Related work is done. This is now synched with the glassfish build seamlessly.

Generated at Sun Apr 19 18:22:01 UTC 2015 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.