The JEE 6 web profile is a specified minimal configuration targeted for small footprint servers that support "typical" web applications. The Web profile is a minimal specification, so an implementation is free to add additional services or allow applications to provision additional services. The required elements of the web profile are:
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 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.
In addition, the Geronimo spec tree contains versions of the API classes for these different interfaces, so we will probably need to develop new versions of the API classes.
As a first step in developing these, we might want to create a plugin group that is an embodiment of the web profile using the JEE5 components currently in Geronimo. This will give use a platform for experimenting with how to configure the server for the smaller footprint and how to allow additional services to be added to the mimimal profile configuration. Also, as JEE6 compatible implementations become available, we can create additional plugins that allow the newer versions to be swapped in to the configurations.
The current known state for each of these components in Geronimo is detailed here. Feel free to update this information as new details emerge.
The servlet container can be either Tomcat 6.0.18 or Jetty 7? The Tomcat artifact Geronimo uses contains patches applied on top of the Tomcat 6.0.18 version.
Unknown. In the Tomcat community, this appears to have been discussed, but is not really under active development. The Jetty community seems to be tracking the Servlet 3.0 activity a little more closely, but I've not found any projections for availability.
Geronimo is currently relying on Jasper for the JSP on Tomcat. I'm not sure I understand what the Jetty story is on this.
I've not been able to locate many signs of activity on this.
This is provided by the JSP provider, so they're fairly tightly coupled.
This tends to be tightly coupled with the JSP providers, do it's difficult to say what the story is.
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.
This is really JSP debugging support, and is implemented by the JSP provider. We're currently getting this from Jasper.
Nothing new for JEE6 in this area.
It's not clear from the pom where the jstl version comes from. The version number is 1.2, so we might be good here.
MyFaces 1.2.6, which is at a JSF 1.2 level.
There is an active MyFaces 2.0 project, though I've not been able to find much status about where this is in implementation.
Not started, but this should be a fairly simple item to complete.
This is really just a set of annotations classes that can be shared across different JEE components.
Like the web profile itself, this appears to describe a minimal feature set, but an implementation can provide more than the minimum, if desired. This appears fairly easy to meet, once the 3.1 feature set is implemented. Portions of the 3.1 features have already been implemented in OpenEJB.
Implemented by Geronimo directly.
No revisions required for JEE6,
The 2.0 version is actively being developed by the OpenJPA community.
This is another place where the Geronimo spec version numbers don't line up with the JEE spec numbers. I assume what we have is really the OpenJPA 1.x level. This is not a particularly large API, so it shouldn't be particularly difficult to update to the 2.0 level.