1
String reqParam=request.getParameter("param");

    if(reqParam!=null){
          HttpSession session=request.getSession(false);
          if(session!=null){
            session.setAttribute("reqParamInSession", reqParam);
          }
    }

doFilter上記のコードを使用して、メソッドが呼び出されたときにリクエスト パラメータ値をセッションに設定します。ただし、ユーザーが別のエクスペリエンスに移動すると (ショップの 3 つの異なる支店を管理するユーザーが、各支店ごとに異なるエクスペリエンスを持つと仮定します)、ユーザー プロファイル以外のセッションはクリアされます。ユーザー エクスペリエンスが変更されたときにセッションをリセットするモジュールを管理していません。ただし、ユーザーがエクスペリエンスを変更した場合でも、セッションで設定したパラメーターが必要です。

セッションが変更されているかどうかに関係なく、送信されるすべてのリクエストにパラメーターを関連付ける方法はありますか? またはこれを処理する他の方法はありますか?

4

1 に答える 1

1

何らかの理由でセッションが閉じられているかのようにアプリケーション スコープを使用しないでください。パラメーターはクリアされません。可能であればクッキーを使用してください。

于 2012-09-21T10:54:21.220 に答える