Just before the new year, JBoss finalized its JBoss AS 6 application server with a GA release. The release includes enhancements for Java EE 6, improved handing of JSF and upgrades or changes to many of the included libraries like Hibernate and caching.
Previous releases of JBoss AS had a single implementation of JSF pre-bundled. AS 4 bundled MyFaces 1.1 while AS 5 switched to Mojarra 1.2. As a result, developers wishing to use an alternate implementation often had to deal with some configuration headaches and incompatibilities. JBoss AS 6, however, allows developers to specify which JSF implementation to use with a single entry in a configuration file. By default, AS 6 ships with Mojarra 2.0, but a developer who wants to use Mojarra 1.2 instead, for example, can add an entry like this to web.xml:
<context-param> <param-name>org.jboss.jbossfaces.JSF_CONFIG_NAME</param-name> <param-value>Mojarra-1.2</param-value> </context-param>
This removes the need to bundle alternate implementations in the application WAR itself.
Just before release, AS 6 also passed Java EE 6 Web Profile compliance. This means developers looking for a compliant container can use JBoss to develop the new, slimmer type of Java EE application introduced in Java EE 6 that doesn't include the entire, heavyweight Java EE stack. This includes support for Servlet development through annotations and support for asynchronous Servlet processing. Other than JBoss, only GlassFish has yet achieved official EE 6 compliance, but other application servers have included bespoke support for parts of Java EE 6.
JBoss also took the opportunity to swap out their JBoss Cache implementation with Infinispan. Infinispan is an "extremely scalable, highly available data grid platform" that isn't just a cache but also serves as a distributed compute platform.
The version of Hibernate supported by JBoss has been upgraded to 3.6.0, a compliant implementation of JPA 2.0. Improvements in JPA 2.0 include pessimistic locking, the new Criteria API, and other improvements.
Other improvements in JBoss 6 include swapping google-collections for Google Guava and inclusion of RESTEasy, an implementation of JAX-RS for writing RESTful web services.
While documentation for JSF has all been upgraded to AS 6.0, documentation for other components still refer to the 5.0 version of JBoss (as of this writing on January 4). So developers should take extra care to note what version of JBoss the documentation they are reading describes.
Lastly, developers can rest easy knowing that if we really do run out of IPv4 addresses, JBoss now fixed all known issues with IPv6.