JSP& Servlets(コンテナ: Tomcat7、データベース: Oracle10)を使用して Web アプリケーションを開発しています。
Profile、、、のようないくつかの Web アプリケーションを開発しましReportsたLeads。次に、ALoginアプリケーションを開発しました。このアプリケーションでは、いくつかのセッション属性とともにUSERIDを保存しています。Session
ユーザーがログインすると、アプリケーションへのリンクなど、他のアプリケーションへのリンクを含むメニューが表示されますProfile。
したがって、Sessionユーザーのログイン後にアクセスすると:
- 同じアプリケーション (ログイン) でセッションにアクセスしようとすると、必要なすべての属性を持つセッションが取得されます
- しかし、他のアプリケーションからセッションにアクセスしようとすると、次のよう
Profilesにセッションが取得されますnull
セッションをチェックするためのコード スニペット(ログイン Web アプリケーションのサーブレット フィルター)
HttpSession session = request.getSession(false);
if(session==null)
{
System.out.println("Session does not exist... Redirected to LOGIN Page.");
response.sendRedirect("/ApplicationName/Login.jsp");
}
Profileユーザーがログインしているかどうかを確認するために、アプリケーションでセッションにアクセスしています。
そこで調べてみたところ、Sessionセキュリティ上の理由から他のアプリからはアクセスできないことがわかりましcrossContext="true"た。
その後、すべてのアプリケーションを作成して展開するなどの他のオプションを見つけましEARたが、残念ながらEARではサポートされていませんTomcat7。
私は Web 環境が初めてなので、以前にこれに取り組んだことがある人がいる場合は、どのようなオプションがあるか教えてください。
前もって感謝します
アップデート1
ここEARで、すべてのファイルをパックしWAR、それらの間でセッションを共有しようとします。Tomcat はサポートしていないため、EARをインストールしました。Oracle Glassfish次に、 Enterprise Application Project2 つのアプリケーション1. Loginとを含むファイル2. Profilesを作成し、EARファイルを作成して にデプロイしましたGlassfish。したがって、これら 2 つのアプリケーション (Glassfish 上) 間でセッションを共有したいので、何かアイデアがあれば教えてください。(チュートリアルへのリンクも歓迎します)