2016-04-08 72 views
1

我正在玩一個簡單的struts2應用程序。它有2個JSP頁面 - 一個是'login.jsp'頁面,第二個頁面是一個簡單的'form.jsp'。我使用相同的表單向數據庫提交數據任意次數。如果我成功登錄,我會在'form.jsp'頁面上顯示用戶標識的名稱。在第一次成功登錄後,用戶標識將使用<s:property value="#session['user'].userid" />在form.jsp上顯示,但在第一次提交後,form.jsp的後續顯示會爲用戶標識返回空白。在struts2應用程序中保留會話信息

登錄頁面和註銷頁面是SessionAware,但form.jsp後面的Action只是實現了一個模型對象,而不是會話感知。如何在多次提交中保留「用戶標識符」?如果任何人都可以請幫助我,我會很感激。

+0

所以,只要讓它成爲'SessionAware'。什麼是問題? –

回答

1

如何在多次提交中保留「用戶標識」?

真的需要一個會話變量。由於多個提交會調用不同的請求,因此這個變量很重要。

保存價值的隱藏提起這樣

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

名稱必須camaleCased,讓你有getter和setter的財產。當您再次返回表單時,它將從會話中檢索值。