Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Details on the current state of each of these is traced below.  Geronimo is already at the current level for some of these components, for others we'll need to located locate updated versions.  Hopefully, this will be just new releases of components we already use, but this might also require developing some elements directly as part of Geronimo.

...

For example:
@DataSourceDefinition(name="java:app/MyDataSource",
className="com.foobar.MyDataSource",
portNumber=6689,
serverName="myserver.com",
Proposed Final Draft
122
user="lance",
password="secret")

...

Component: Servlet 3.0 (JSR-315) 

Current Geronimo

...

Servlet 3.0 - geronimo-servlet_3.0_spec-1.0-EA-SNAPSHOT

Current Geronimo Provider

The servlet container can be either Tomcat 7 or Jetty 8?  The Tomcat artifact Geronimo uses contains patches applied on top of the Tomcat version.

...

Geronimo trunk is currently building with snapshot versions of both projects, but there are some issues that are being worked.

Additional Notes

Component: JavaServer Pages 2.2 (JSR-245)

Current Geronimo Spec Versions

...

Current Geronimo Provider

...

I've not been able to locate many signs of activity on this. 

Additional Notes

There's something bizarre going on with this spec and the Expression Language one.  The Tomcat release plan indicates there is no JSP 2.2 version.  There don't appear to be any JSP 2.2 specifications that can be located, and there are no JSRs at the Sun Java web site related to a JSP 2.2 release.  The only references I've managed to find have been a couple of indicators that Glassfish is supporting JSP 2.2, but there don't appear to be any details on what this actually is. 

New information has emerged on this spec.  There is no JSP 2.2 or EL 2.2 specification.  This is, however, a maintenance release of the JSR 245 Specification that contains some minor enhancements to both the JSR 2.1 spec and the EL  Information about the proposed changes can be found here.

Component:  Expression Language (EL) 2.2 (JSR-245)

Current Geronimo Spec Versions

EL 1.0 - geronimo-el_1.0_spec-1.0.1
There don't appear to be any spec changes required for JEE6.

Current Geronimo Provider

This is provided by the JSP provider, so they're fairly tightly coupled.  

Status of Java EE 6 Activity

This tends to be tightly coupled with the JSP providers, do it's difficult to say what the story is.

Additional Notes

The spec version appears to be a bit of a muddle.  The spec jar is getting built claiming it is 1.0, but the latest version defined in the Web Profile appears to be in lock-step with the JSP version numbers.  It's not clear what version we are actually at currently, but it is possible that there have not been any API changes in this area since the 1.0 version. 

Component:  Expression Language (EL) 2.2 (JSR-245)

Current Geronimo Provider

This is provided by the JSP provider, so they're fairly tightly coupled.  

Status of Java EE 6 Activity

This tends to be tightly coupled with the JSP providers, do it's difficult to say what the story isIt appears that the Web Profile specification has an error in the version number.  There is no Expression Language 2.2 specification.  However, the JSR 245 Maintenance Release includes some minor updates to the EL specification.  These updates are not broken out into a separate spec, but are included under the umbrella of the updated JSP 2.1 spec.

Component:  Debugging Support for Other Languages 1.0 (JSR-45)

Current Geronimo

...

No spec apis needed.

Current Geronimo Provider

This is really JSP debugging support, and is implemented by the JSP provider.  We're currently getting this from Jasper. 

...

Nothing new for Java EE 6 in this area.

...

Component:  Standard Tag Library for JavaServer Pages (JSTL) 1.2 (JSR-52)

Current Geronimo Spec Versions

None - We use Sun RI (jstl-1.2.jar)

...

Essentially complete because the RI is getting being used. 

Additional Notes

Component:  JavaServer Faces (JSF) 2.0 (JSR-314)

Current Geronimo Spec Versions

None. We use org.apache.myfaces.core.myfaces-api-2.0.0-SNAPSHOT.jar.

...

JSF 2.0 is being worked on by the MyFaces community. An initial 2.0.0-SNAPSHOT release is available - http://myfaces.apache.org/download.html, which the version currently used by the Geronimo trunk.

Additional Notes

Component:  Common Annotations for Java Platform 1.1 (JSR-250)

Current Geronimo Spec Versions

geronimo-annotation_1.0-MR1_spec-1.0-SNAPSHOT

...

A 1.1 version of the annotations is available, but not currently being used within the Geronimo trunk build.

Additional Notes

This is really just a set of annotations classes that can be shared across different Java EE components. 

Component:  Enterprise JavaBeans (EJB) 3.1 Lite (JSR-318)

Current Geronimo Spec Versions

geronimo-ejb_3.1_spec-1.0.0-EA-SNAPSHOT

...

A major new Java EE 6/EJB/Servlet feature to be completed in Geronimo is the ability to include EJBs in .war files which required as part of the Java EE 6 Web Profile. Any EJBs in the webapp share the classloader of the webapp and the java:comp/env namespace of the webapp. The Geronimo deployment process will also need to be updated to treat all webapps as potential sources for EJBs to support this feature. Rough estimate is 3-4 weeks of likely both David Blevins' and David Jencks' time.

Additional Notes

The embedded version of OpenEJB is capable of handling a dynamic provisioning of the different subsystems from the Lite profile version up to the full capability (minus the CORBA integration, which is handled by Geronimo).  It appears there will be some work required on the part of Geronimo to create profiles/plugins that will selectively start the GBeans that integrate different portions of the OpenEJB stack with the configuration.  Currently, the Geronimo EJB configuration is an all-or-nothing proposition. 

...

Component: Java Transaction API (JTA) 1.1 (JSR-907)

Current Geronimo Spec Versions

geronimo-jta_1.1_spec-1.1.1

...

No revisions required for Java EE 6, 

Additional Notes

Component: Java Persistence API (JPA) 2.0 (JSR-317)

Current Geronimo Spec Versions

geronimo-jpa_2.0_spec-1.0-SNAPSHOT

...

The 2.0 version is actively being developed by the OpenJPA community and the current version has already been integrated into Geronimo. 

Additional Notes

Component: Dependency Injection for Java 1.0 (JSR-330)

Current Geronimo Spec Versions

geronimo-atinject_1.0_spec-1.0-SNAPSHOT

...

JSR 330 is a proper subset of the JSR 299 spec definition, so no additional provider work is required beyond what is already being done to implement JSR 299 and to provide the spec jar file. 

Additional Notes

Component: Contexts and Dependency Injection for Java EE platform 1.0 (JSR-299)

Current Geronimo Spec Versions

The spec version for this is available as geronimo-cdi_1.0_spec-1.0-SNAPSHOT

...

The openwebbeans project is working on implementing this component and is already working with the Geronimo and OpenEJB communties to work on the integration issues.  There's no defined completion target here.

Additional Notes

A potential fallback might be to use the RI version, which has an ASL license.  However, there would still be sigificant integration work required for using this alternate version.  The amount has not be investigated yet, but it is assumed to be similar in extent to the openwebbeans effort + the additonal effort required to research how the integration needs to be accomplished.

Component: Bean Validation 1.0 (JSR-303)

Current Geronimo Spec Versions

geronimo-validation_1.0_spec-1.0-SNAPSHOT

...

There have been numerous discussions about creating an Apache project for implementing a Bean Validation component, but none of these proposals have managed to get off the ground as yet. Currently, using the reference implementation (which carries an ASL2 license) is looking like the most viable alternative.

Additional Notes

Component: Interceptor 1.1 (JSR-318)

Current Geronimo Spec Versions

geronimo-interceptor_1.1_spec-1.0.0-EA1-SNAPSHOT

...

This work effort is completely contained within the OpenEJB project.

Additional Notes