关于ActionErrors
在struts的FormBean中用于表单数据的验证。
在三个方面要写代码,在Jsp页面里表达errors,Action和Form中返回errors,保存error信息的资源文件。
1.Jsp中的error表达
这里用到一个标签<html:errors/>
它将表示可显示的所有错误。
还可加入参数property,来选择性显示。
例如:用户名未输入时只想显示这个错误,则可用<html:errors property="username"/>
2.Form中返回errors
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionError;
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
ActionErrors errors=new ActionErrors();
if((username==null)||(username.length()<1)){
errors.add("username",new ActionError("error.username.required"));
}
if((password==null)||(password.length()<1)){
errors.add("password",new ActionError("error.password.required"));
}
return errors;
}
3.error资源文件
前面代码中的"error.username.required"、"error.password.required"指代资源文件中相应的参数。
struts的默认资源文件为ApplicationResources.properties
struts-config.xml中加入一句代码
<message-resources parameter="struts.ApplicationResources" />
# Resources for parameter 'struts.ApplicationResources'
# Project KnowHowBank
####################################
##header、footer为每个error加头、尾#
errors.header=<H3><font color="red">Validation Error</font></H3>You must correct the following error(s) before proceeding:<UL>
errors.footer=</UL><HR>
####################################
error.username.required=<LI>Username is required</LI>
error.password.required=<LI>Password is required</LI>
error.login.invalid=<LI>password must match exactly.</LI>
在struts的FormBean中用于表单数据的验证。
在三个方面要写代码,在Jsp页面里表达errors,Action和Form中返回errors,保存error信息的资源文件。
1.Jsp中的error表达
这里用到一个标签<html:errors/>
它将表示可显示的所有错误。
还可加入参数property,来选择性显示。
例如:用户名未输入时只想显示这个错误,则可用<html:errors property="username"/>
2.Form中返回errors
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionError;
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
ActionErrors errors=new ActionErrors();
if((username==null)||(username.length()<1)){
errors.add("username",new ActionError("error.username.required"));
}
if((password==null)||(password.length()<1)){
errors.add("password",new ActionError("error.password.required"));
}
return errors;
}
3.error资源文件
前面代码中的"error.username.required"、"error.password.required"指代资源文件中相应的参数。
struts的默认资源文件为ApplicationResources.properties
struts-config.xml中加入一句代码
<message-resources parameter="struts.ApplicationResources" />
# Resources for parameter 'struts.ApplicationResources'
# Project KnowHowBank
####################################
##header、footer为每个error加头、尾#
errors.header=<H3><font color="red">Validation Error</font></H3>You must correct the following error(s) before proceeding:<UL>
errors.footer=</UL><HR>
####################################
error.username.required=<LI>Username is required</LI>
error.password.required=<LI>Password is required</LI>
error.login.invalid=<LI>password must match exactly.</LI>