Hi guys, I managed to introduce the core submodule "implee6" on my local machine. This new submodule includes Java EE 6 dependencies and thus you can use Servlet API 3.0 and other new things in it.
When building MyFaces, this new submodule is built before the normal impl submodule. Then the .class and the .java files are "injected" into the impl-build. This is very similar to how shared_impl is included in the myfaces-impl build at the moment, but without recompilation. In this way we are able to use the new services approach of Java EE 6 to get rid of the Faces Servlet entries in web.xml, because in any Java EE 6 container we can configure this dynamically at startup (see MYFACES-2579 for details). This also works fantastically on my local machine - it's really cool! Also with this method we are still Java EE 5 complaint, because the EE 6 classes just won't get loaded in a non EE 6 environment, because there are no dependencies from impl or shared to them. They are only called (and loaded) by a Java EE 6 container via the services definition. Furthermore I noticed that the Mojarra guys also include a similar solution to this in their newest build! Now, before I commit something of this, I wanted to ask if there are any objections with this proposal. If so, please tell me your concerns! Regards, Jakob