2011-05-11 60 views
4

我有一個非常簡單的Java MVC web應用程序,並使用servlet來處理表單驗證。如果表單經過驗證,則將請求轉發到適當的視圖。但是,如果表單驗證失敗,請求將被轉發回表單,然後顯示相應的錯誤消息。如何在失敗的服務器驗證後在jsp頁面上重新填充表單域

我的問題是這樣的 - 用用戶最初在表單中輸入的數據重新填充所有表單域的最有效方法是什麼?

我沒有使用MVC框架,只是簡單的HttpServlets作爲與.jsp作爲視圖的控制器。

回答

8

的最簡單和最可能的努力是隻使用

<input name="foo" type="text" value="${param.foo}"/> 

這應該默認爲「」當用戶第一次訪問的形式。

可以做更多的事情來創建綁定到請求的自定義標籤。但是,這可能不是您正在尋找的解決方案。

編輯:您可能想要使用<c:out value="${param.foo}"/>來防止XSS攻擊。

+0

簡單而優雅!謝謝! – elpisu 2011-05-11 14:48:51

+0

不客氣。 :) – 2011-05-11 15:45:54

+2

XSS攻擊警報! – BalusC 2011-07-07 20:04:15

1

將字段作爲請求對象的一部分傳回給jsp。 request.setAttribute(..)

使用這些屬性來設置表單域。

+0

我首先嚐試了,這確實奏效,但我認爲有一個更有效的方法。 – elpisu 2011-05-11 14:50:37

相關問題