问题描述
在做struts1校验框架练习的时候,框架校验能生效,可是jsp页面就是不显示html:errors的错误信息,请大家帮忙看看,谢谢了!下面是validator.xml<!DOCTYPEform-validationPUBLIC"-//ApacheSoftwareFoundation//DTDCommonsValidatorRulesConfiguration1.1.3//EN""http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd"><form-validation><formset><formname="regForm"><fieldproperty="user"depends="required"><msgname="err.null"key="required"/><arg0key="user"name="required"resource="false"></arg0></field><fieldproperty="password"depends="required"><msgname="err.null"key="required"/><arg0key="password"name="required"resource="false"></arg0></field></form></formset></form-validation>
这个是资源文件:#Resourcesforparameter'prj3_1.ApplicationResources'#ProjectPrj3_1err.null={0}u4E0Du80FDu4E3Au7A7A
这个是我的action:publicclassRegActionextendsAction{publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){RegFormregForm=(RegForm)form;//TODOAuto-generatedmethodstubSystem.out.println("come");System.out.println(regForm.getUser());returnnull;}}
这个是我的formimportorg.apache.struts.validator.ValidatorForm;publicclassRegFormextendsValidatorForm{privateStringuser;privateStringpassword;publicStringgetUser(){returnuser;}publicvoidsetUser(Stringuser){this.user=user;}publicStringgetPassword(){returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}}
jsp页面:<%@pagelanguage="java"pageEncoding="gbk"%><%@tagliburi="http://struts.apache.org/tags-bean"prefix="bean"%><%@tagliburi="http://struts.apache.org/tags-html"prefix="html"%><html><head><title>JSPforRegFormform</title></head><body><html:formaction="/reg"method="post">user:<html:textproperty="user"/><html:errorsproperty="user"/><br/>password:<html:textproperty="password"/><html:errorsproperty="password"/><html:submitvalue="submit"></html:submit></html:form></body></html>
最后是struts-config<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstruts-configPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.2//EN""http://struts.apache.org/dtds/struts-config_1_2.dtd"><struts-config><data-sources/><form-beans><form-beanname="regForm"type="prj3_1.form.RegForm"/></form-beans><global-exceptions/><global-forwards/><action-mappings><actionattribute="regForm"input="/reg.jsp"name="regForm"path="/reg"scope="request"type="prj3_1.action.RegAction"validate="true"></action></action-mappings><message-resourcesparameter="prj3_1.ApplicationResources"/><plug-inclassName="org.apache.struts.validator.ValidatorPlugIn"><set-propertyvalue="/WEB-INF/validator-rules.xml,/WEB-INF/validator.xml"property="pathnames"/></plug-in></struts-config>
请各位大虾帮帮忙哈~~
解决方案
解决方案二:
自己顶一下。。。
解决方案三:
感觉好像是jsp页面:少了html:error的标签
解决方案四:
你在哪里读取的资源文件呀?
解决方案五:
引用2楼lp19890601的回复:
感觉好像是jsp页面:少了html:error的标签
我的jsp标签跟在输入栏后面,user:<html:textproperty="user"/><html:errorsproperty="user"/><br/>
解决方案六:
引用3楼chennengqing的回复:
你在哪里读取的资源文件呀?
在这里:<message-resourcesparameter="prj3_1.ApplicationResources"/>
解决方案七:
没有html:errors标签,message的读取并不是来自于Resource文件。