10 個の Web アプリケーションをデプロイした Tomcat サーバーがあります。あるアプリケーションからの着信要求 (「A」など) を読み取り、特定の Cookie 値を読み取り、Cookie の値に基づいてデータベースから別のコンテキスト名 (「B」など) を取得するフィルターがあります。次に、このフィルターは、コンテキスト A (例http://1.1.1.1/A/XYZServlet
) を持つ要求を、コンテキスト B (例 ) を持つ新しい要求に書き換えhttp://1.1.1.1/B/XYZServlet
ます。
これを行うと、新しいリクエストが実行されると、すべてのセッション変数が失われます。フィルターが古いリクエスト (コンテキスト A) を新しいリクエスト (コンテキスト B) にリダイレクトするときに、セッションとすべてのセッション変数 (コンテキスト A に関連する) が保持されるようにするにはどうすればよいですか? 特定のアーキテクチャ上の理由により、server.xml で emptySessionPath = "true" を設定することは解決策になりません。