2016-04-08 9 views
1

私は単純なstruts2アプリで遊んでいます。これには2つのJSPページがあります。一つは 'login.jsp'、もう一つは単純な 'form.jsp'です。私はこの同じフォームを使用して、データベースに何回もデータを送信します。ログインに成功すると、 'form.jsp'ページにユーザーIDの名前が表示されます。最初のログインが成功した後、ユーザーIDは<s:property value="#session['user'].userid" />を使用してform.jspに表示されますが、最初のサブミット後、form.jspの後続の表示はユーザーIDの空白を戻します。struts2アプリでセッション情報を保持する

ログインページとログアウトページはSessionAwareですが、form.jspの背後にあるアクションはモデルオブジェクトを実装するだけで、セッションを認識しません。複数のサブミット間で 'userid'を保持するにはどうすればよいですか?誰かが私を助けてくれたら、本当に感謝しています。

+0

それで 'SessionAware'にしましょう。どうした? –

答えて

1

複数のサブミット間で 'userid'を保持するにはどうすればよいですか?

にはセッション変数が必要です。複数のサブミットが異なるリクエストを呼び出すので、変数が重要になります。

保存あなたはプロパティにゲッターとセッターを持っているので、隠されたこの

<s:hidden name="userId" value="%{#session.user.userId}" multiple="true" /> 

名前のように提出する値は、camaleCasedしなければなりません。再度フォームに戻ると、セッションから値が取得されます。

関連する問題