開発中のDIコンテナですが、分散トランザクションとデータソースに対応させてみました。
J2EEサーバ上ではJNDIによってトランザクションマネージャを取得する事もできますし、ローカル環境ではJOTMを使用して取得する事もできます。そこら辺は設定次第で変更できるのですが、その辺もDIコンテナの強みで、アプリのコードの修正は不要です。
データソースはXAPoolというライブラリを使っています。トランザクションマネージャを利用して、分散トランザクションに対応したデータソースを構築してくれるライブラリです。
まだまだ品質はいかほど~って感じですが、宣言トランザクションに対応させて、DAOのサポートとMVCのサポートを入れれば、取り合えず業務アプリは作れそうな感じです。
DAOのサポートはどうしようか考え中・・・。個人的にはJPA/Hibernateの類は大嫌いなので、自前で作りたいところ。ORマッパーの必要性はわかるんですが、ガチガチにオブジェクトとデータを結び付けたくないのです。S2Daoのようにゆる~い感じの結びつけで十分だと思います。
MVCのサポートはStruts改(設定レス、POJOベース)を作るか、独自のMVCフレームワークを作っても面白そうです。この際だから標準でClickとかWicketを取り込んでも面白そうです。
サポートは自分でできるので、社内の案件に使ってみようかな。