3

実際、jboss 5.x サーバーに 2 つの耳 test.ear と test1.ear をデプロイしました。test.ear には、この jsp に index.jsp ページが含まれています。次のようなセッション変数を設定しました。

session.setAttribute("Initiated","true") 

index.jsp から、test1.ear に存在するアクション (struts2 アクション クラス) クラスにコントロールを転送しています。しかし、アクションクラスから変数を取得しているとき、それはnullです

Map session = (Map)ActionContext.getContext().getSession();
String sessionExistence=(String)session.get("Initialted");

では、test.ear の jsp から test1.ear に存在する struts2 アクション クラスにセッション変数を共有するにはどうすればよいでしょうか。

4

2 に答える 2

1

複数の異なるアプリケーション間でメモリ内(または永続的)の情報を共有する場合は、Infinispanなどのデータグリッドの使用を検討してください。開始するには、 Infinispanチュートリアルを 参照してください。それが役に立てば幸い。

于 2012-07-08T14:01:25.257 に答える
1

異なるアプリケーション間でセッションを共有することはできません。理由は簡単です。属性名に競合が発生し、値が上書きされる可能性があります。

別のアプリケーションへの転送中に、リクエストとともにパラメータを送信することしかできません。

于 2012-07-05T10:52:00.033 に答える