jsessionidを含むURLを使用しています。
http:// localhost:8080 / myservlet; jsessionid = 123
しかし、HttpServletRequestでセッションIDを読み取ると、値が123になることはなく、代わりに生成されたセッションIDになります。B663A96D3FBC84B4A427C0810EAB9073。
jsessionidが無視されるのはなぜですか?
jsessionidを含むURLを使用しています。
http:// localhost:8080 / myservlet; jsessionid = 123
しかし、HttpServletRequestでセッションIDを読み取ると、値が123になることはなく、代わりに生成されたセッションIDになります。B663A96D3FBC84B4A427C0810EAB9073。
jsessionidが無視されるのはなぜですか?
HttpSession
これは、サーバーのメモリに具体的なオブジェクトが存在しないセッションIDを指定したためです。つまり、指定されたセッションIDは不明/無効です。HttpSession
サーバーのメモリ内の有効な既存のオブジェクトを参照するセッションIDを指定する必要があります。
現在サーバーのメモリに有効なIDがあると仮定すると、次のリンクが機能し、エンドユーザーに正確にアクセスできるようになります。HttpSession
B663A96D3FBC84B4A427C0810EAB9073
HttpSession
http:// localhost:8080 / myservlet; jsessionid = B663A96D3FBC84B4A427C0810EAB9073
私の推測では、最近のほとんどのアプリケーション サーバーは、URL の書き換えではなく、セッション トラッキングにデフォルトで Cookie を使用するようになっていると思います。そのため、リクエストの URL にセッション Cookie と JSESSIONID の両方が含まれている場合、おそらく Cookie からのものを使用します。これを構成する方法については、アプリケーションサーバーのドキュメントを確認してください。