完成したばかりのプロジェクトでは、分散トランザクションを機能させる作業を行っていました。
これは、JBoss の Arjuna Transaction Manager と Spring の宣言型トランザクション境界を使用して実装しました。
リクエスト シーケンスは次のようになります。
browser -> secured servlet -> 'wafer-thin' SLSB -> spring TX-aware proxy -> request-handler POJO
これが意味することは、保護されたサーブレットにサービスを提供する WAR と、SLSB にサービスを提供する EAR があるということです。
SLSB には、Spring アプリケーション コンテキストをブートストラップするための静的イニシャライザ ブロックがありました。
テクノロジの混在は好きではありませんが、物理的に異なる場所に配置できるプレゼンテーション層とビジネス層の分離は好きです。
Spring を使用するときに、他の人が層を分離するために何を提案しているのか知りたいですか?