EJBは嫌われ者
GeronimoがTomcatと同じタイミングで出ていたとしても、
EJBは普及しなかったんじゃないかと思います。
理由はテストのしにくさです。
LocalインターフェースでStateless SessionBeanとEntityBean(CMP)を
使えば、パフォーマンス的な問題点は、特にないと思ってます。
しかし、そのような使い方をすると、テストをEJB Container上で
動かさなければならなくなります。
メソッド1つテストするのに、サーバにデプロイして、
インコンテナアプローチのテストツールを使ってテストしなければならないのは、
苦痛であり、リズムが狂い、工数がかさみます。
AOPを備えたIoCコンテナがあれば、
トランザクション管理や透過的なリモート呼び出しを
使いたいがために、EJBを使う必要もなくなります。