私はここで奇妙な問題があります。私の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は私のJSPのエラーメッセージが出ていない
<?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
ですvalidate()の内部にあります。
jspにエラータグを含めましたか? – cherit
'' ''(すべてのスペース)は有効なユーザー名ですか?また、何もしない場合は、独自の 'execute()'を実装する必要はありません。また、アノテーション(またはXML)を使用してより簡単に処理されるときには、検証を手動で行う価値があると確信していません。 –
jspで
を宣言しましたか? –