我在這裏有一個奇怪的問題。我的struts2 addFieldError(fieldName,ErrorMessage)
不顯示我的jsp上的錯誤Struts2驗證消息不顯示
也我延長ActionSupport
,並在我的Struts.xml中我沒有我的主題設置爲簡單。
我的ActionListener是
package pebsms.actionBeans.UserActions;
import pebsms.business.UserBusiness.Impls.UserBusinessImpl;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
UserBusinessImpl userBusiness;
public String userPassword;
public String userName;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
. public String execute()
{
return SUCCESS;
}
public void validate()
{
if (getUserPassword().length() <= 0)
addFieldError(userPassword, "Enter Password");
if (getUserName().length() <= 0)
addFieldError(userName, "Enter UserName");
if (!userBusiness.authenticateUser(userName, userPassword))
addActionError("User authentication failed");**
}
}
我struts.xml的是
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default" >
<action name="Login" >
<result>/pages/LoginScreen/Login.jsp</result>
</action>
<action name="LoginAction" class="userAction">
<result name="input">/pages/LoginScreen/Login.jsp</result>
</action>
</package>
</struts>
addFieldError
不拿出我的JSP中的錯誤消息像它應該自動,即使調用該方法在validate()裏面。
你在jsp中包含了錯誤標籤嗎? – cherit 2012-04-24 20:22:19
那麼''「'(所有空格)是一個有效的用戶名?另外,如果它沒有做任何事情,你不需要實現你自己的'execute()'。也不相信當通過註釋(或者我猜想XML)更容易處理它時,手動進行驗證是值得的。 – 2012-04-24 21:37:12
你在jsp中聲明瞭
嗎? – 2012-04-25 02:15:26