セッション中のオブジェクトの処理で問題に直面しています。
このようにオブジェクトをセッションに保存します。object がオブジェクトの名前であると仮定します。私はアクションクラスでこれを行います:
if(object!=null)
{
session.settAttribute("objectName",object);
return mapping.findForward("success");
}
else
{
return mapping.findForward("failure");
}
成功と失敗の両方を同じ JSP ページにマップします。のようにチェックします
if(session.getAttribute("objectName")!=null)
{
object= (SomeObjectClass)session.getAttribute("objectName");
}
if(object!=null)
{
//Do this
}
else
{
//Do that
}
ここに私の問題があります。セッションで初めてオブジェクトを設定するときは問題ありません。このアクション クラスを 2 つの異なるブラウザーから同時に呼び出すと、問題が発生します。1 つのケースでは else 部分に、1 つのケースでは if 部分に移動します。これは、セッションがスレッドセーフではないためだと思います。解決策はありますか?