public ActionErrors validate(ActionMapping actionMapping,
HttpServletRequest httpServletRequest) {
ActionErrors errors=new ActionErrors();
if(this.user==null||this.user.length()==0)
errors.add("username",new ActionError("error.missing.user"));
if(password==null||password.length()==0)
errors.add("password",new ActionError("error.missing.password"));
return errors;
}
#Application Resource for the logon.jsp
logon.jsp.title=The logon page
logon.jsp.page.heading=Welcome World!
logon.jsp.prompt.username=Username:
logon.jsp.prompt.password=Password:
logon.jsp.prompt.submit=Submit
logon.jsp.prompt.reset=Reset
#Application Resource for the main.jsp
main.jsp.title=The main page
main.jsp.welcome=Welcome:
#Validation and error messages for jsp4.jsp
error.missing.user=user is error!!!
error.missing.password=password is error!
以上配置都正确
//这种方式可以将错误信息全部打印出来
<html:errors/>
//下面这两种方式为什么打印不出来,也没提示错误
<html:errors property="error.missing.user" />
<html:errors name="username" property="error.missing.user" />
那位能够解答一下!
------解决方法--------------------------------------------------------
<html:errors>标记能够与ActionErrors结合在一起来显示错误信息。这个标记首先要从当前区域的资源文件中读取消息关键字errors.header,然后显示消息的文本。接下去它会在ActionErrors对象(通常作为请求参数而存储在Action.ERROR_KEY关键字下)中循环,读取单个ActionError对象的消息关键字,从当前区域的资源文件中读取并格式化相应的消息,并且显示它们。然后它读取与errors.footer关键字相对应的消息并且显示出来。
通过定义property属性能够过滤要显示的消息,这个属性的值应该与ActionErrors对象中存储ActionError对象的关键字对应。
<html:errors/>
显示集合中所有的错误。
<html:errors property=”missing.name”/>
显示存储在missing.name关键字的错误。
所以property="error.missing.user"有问题,或者先用<html:errors/>试一下。
希望能有帮助
------解决方法--------------------------------------------------------
建议看一下这个TAG对应的bean
我没有看过,因为我没有想到过这个问题
------解决方法--------------------------------------------------------
<html:errors name="username" property="error.missing.user" />
改成<html:errors property="username" />
------解决方法--------------------------------------------------------
的确很不爽.我一般的做法是出错的页面 用new Action Forword()然后在这个url后边加上一个参数。根据不同的错误给这个参数不同的值,到页面中取出来用js的alert显示出来。