新年を目前にした JBoss が,JBoss AS 6 アプリケーションサーバの GA リリース を完成させた。このリリースには Java EE 6 に対応する機能拡張や JSF 処理の改善に加えて,Hibernate やキャッシングなど多くのライブラリの更新あるいは変更が含まれている。
JBoss AS の以前のリリースでは,特定の JSF 実装が最初からバンドルされていた。AS 4 のそれは MyFaces 1.1 であり,AS 5 では変更されて Mojarra 1.2 であった。結果として別の実装を使用したい開発者は,設定に頭を痛めたり,非互換性への対処を強いられたりすることがしばしばだった。 JBoss AS 6 では,設定ファイル内のひとつのエントリで,使用する JSF 実装を開発者が指定できるようになっている。出荷時の既定値では Mojarra 2.0 が選択されているが,例えば Mojarra 1.2 を使用したければ,次のようなエントリを web.xml に追加すればよい。
<context-param> <param-name>org.jboss.jbossfaces.JSF_CONFIG_NAME</param-name> <param-value>Mojarra-1.2</param-value> </context-param>
これによって,アプリケーション WAR 自体に他の実装をバンドルする必要はなくなった。
AS 6 はリリースに先立って,Java EE 6 Web プロファイル コンプライアンスにもパスしている。Java EE 6 では,非常に重い Java EE スタックのすべてを含まない,スリムな形式の Java EE アプリケーションが新たに導入された。仕様に準拠したコンテナを求めていた開発者にとってこれは,そのような形式のアプリケーション開発に JBoss が利用可能になった,という意義を持っている。この他にはアノテーションを使用したサーブレット開発のサポートや,非同期サーブレット処理のサポートなどが含まれている。JBoss 以外に 公式に EE6 準拠を達成しているのは GlassFish のみ だが,それ以外のアプリケーションサーバもそれぞれが独自に,Java EE 6 を部分的にサポートしている。
JBoss は今回のリリースを,独自の JBoss キャッシュ実装を Infinispan に 換装する機会としても利用した。Infinispan は "高度なスケール性と高可用性を備えたデータグリッドプラットフォーム" であり,単なるキャッシュではなく,分散コンピューティングプラットフォームの機能も備えている。
JBoss がサポートする Hibernate のバージョンは,JPA 2.0 準拠の 3.6.0 にアップグレードされた。JPA 2.0 への準拠によって,悲観的ロック (pessimistic locking),新規 Criteria API,その他の改良 が追加されている。
JBoss 6 のその他の改良点としては,google-collections から Google Guava への変更,RESTful な Web サービス記述のための JAX-RS 実装である RESTEasy などがある。
なお JSF に関する資料は AS 6.0 用に更新されているが,その他のコンポーネント資料 の内容は 5.0 バージョン参照のままだ (1月4日,本記事の記述時点)。 開発者は,参照しているドキュメントが対象とする JBoss のバージョンについて,細心の注意を払う必要がある。
最後に,もし IPv4 アドレスが本当に枯渇してしまっても,JBoss が今回 IPv6 に関わる既知の問題をすべて修正 したことを知れば,開発者は安心できるだろう。