JBoss 5.x Product Roadmap(PDF)

J2EEアラカルトというコンセプトのもとJBoss 4では他のベンダーに先駆けてAOPフレームワーク、JBossAOPを導入しました。JBossAOPはPOJOJDK 1.5(5.0?)のアノテーションを使ってトランザクションやセキュリティといったアスペクトPOJOに関連付けられるようにしました。しかし、残念なことに、JBoss 4のEJBはまだJBossAOPを利用していません。JMX/JMS/Webなどの別のコンポーネントは別々のインターセプタフレームワークを使っています。

JBoss 5.xはAspect Oriented Middleware(AOM)として位置づけられています。もちろん最大のウリはEJB 3.0。そして、サーバ内部でEJB 3.0アスペクトとして起動されるものはインタセプタです。EJB 3.0実装ではもちろんJBossAOPが使われています。JBoss 5のUnified Interceptors & Unified Invokersというのは、JMX/EJB/JMS/Webで方式の異なるインタセプタや通信プロトコルAOPで整理統合しようとしているのでしょう。だから"Unified(統合)"です。

POJOアノテーションをつけて、JBossマイクロカーネル上で動かせるようになると、それは普通のPOJOEJBも、他のサービスオブジェクトもアーキテクチャ上は区別がないことになります。すべての機能が直交しますから無駄がありません。JBossミドルウェアの各機能をアスペクトとして提供し、ユーザはアスペクトアノテーションとしてPOJOに付加します。これがアスペクト指向ミドルウェア(AOM)です。