ここ数日、インターネットを探し回っているという問題があります。同様の問題を抱えている人を見つけましたが、その解決策は私の状態を改善しませんでした。
最もイライラするのは、問題やブロックなしで、以前にこれを使用していたことです。
問題は、私のJava Webアプリケーションのセッションが、リクエストの合間に削除されているか、最初から正しく作成されていないことです。
簡単なトラブルシューティング:
- Cookie を正常に作成して使用できます。
- サーブレットまたは JSP へのリンクを更新またはたどるたびに、jsessionid が新しい ID を取得しています。
- クロムでは、セッション Cookie が表示されません(ただし、他の Cookie は表示されます)。
- Firefox では、セッション Cookie を確認できます (また、その ID がリクエストごとに変化していることもわかります)。
私はこれまで、何も考えずにこれを機能させてきました。
jsp では session.get/setAttribute() のみ サーブレットでは request.getSession() のみ
getSession(boolean created) も調べましたが、私に関する限り、 getSession() は私のためにそれを行うべきですか?
私のサーバーは Tomcat 7 を実行しており、サーブレット 3 を使用しています。サーブレット 3 では、web.xml ファイルでいくつかのことを宣言する必要があることがわかります。私のセッション構成は次のとおりです。
<session-config>
<session-timeout>30</session-timeout>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
私のコードで何か間違ったことをしていると思いますか? シンプルには程遠いようで、以前に何度も使用したことがあります。しかし、サーバー構成もセットアップするタスクがあったのはこれが初めてです。
これは、stackoverflow に関する私の最初の投稿であり、ここで以前に多くの回答を見つけました。誰かが私がばかである場所を教えてくれることを願っています。包括的な詳細を提供したことを願っています。前もって感謝します。