エンタープライズ Java システム (JSP、サーブレット、EJB) 用に、静的な方法 (静的メソッド) で使用できるユーティリティ クラスを開発したいと考えています。ユーザーのオブジェクトにアクセスできるいくつかのメソッドが含まれてHttpSession
おり、属性として既に保存されているいくつかの有用な情報 (現在のユーザー ID など) を取得します。
HttpSession
オブジェクトをどこにでも簡単に渡すことができるのに、なぜそのようなものが必要なのか疑問に思う人もいるかもしれません。HttpSession
実際、私は従来の Java EE 5.0 システムで作業しており、一部のユーティリティ クラス (サーブレット、JSP、EJB 以外) はオブジェクトにアクセスできません。
そのようなユーティリティクラスを実装することは可能ですか? 私/あなたがここで考慮すべきいくつかの制約:
- サーブレット/JSP は、EJB をホストするマシンとは異なるマシンでホストされます。
- システムは Weblogic 10.3.0 で実行されています。
- weblogic には、(サーブレット/JSP をホストする) 多くのサーバーがあり、それらは同じクラスターの下にあります。同じことが EJB サーバーにも当てはまります。
Collection
ユーティリティ クラス内でstatic を宣言すると、機能しますか? それとも、複数のクラスローダーと複数の JVM のために、複数のコピーが存在するのでしょうか?- たぶん、共有ファイルまたは共有データベースを使用して実装する必要がありますか? ユーティリティ クラスを呼び出したユーザーを追跡するにはどうすればよいでしょうか。多分スレッドを追跡しますか?または多分トランザクションに関連する何か?