When I am Doing Form validations In Struts I am Getting Exception:
org.apache.commons.validator.ValidatorException:
没有这样的验证方法:
org.apache.struts.validator.FieldChecks.validateRequired
(java.lang.Object,org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,org.apache.struts.action.ActionErrors,
javax.servlet.http.HttpServletRequest)
在org.apache.commons.validator.ValidatorAction.loadValidationMethod
(ValidatorAction.java:604)
在org.apache.commons.validator.ValidatorAction.executeValidationMethod
(ValidatorAction.java:532)
在org.apache.commons.validator.Field.validateForRule(Field.java:796)
在org.apache.commons.validator.Field.validate(Field.java:876)
在org.apache.commons.validator.Form.validate(Form.java:288)
在org.apache.commons.validator.Validator.validate(Validator.java:351)
at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java:110)
在org.apache.struts.action.RequestProcessor.processValidate
(RequestProcessor.java:927)
在org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:204)
在org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
在org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
在javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
在javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:305)
在org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:210)
在org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:222)
在org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:123)
在org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
在org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:118)
在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
在org.apache.coyote.http11.AbstractHttp11Processor.process
(AbstractHttp11Processor.java:1004)
在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process
(AbstractProtocol.java:589)
在org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run
(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)
在java.lang.Thread.run(未知来源)
答案 0 :(得分:2)
我在尝试提交表单时也遇到了同样的错误。我发现这个错误可能是因为一个版本的struts有一个validation-rules.xml文件,而是来自另一个struts版本的struts.jar文件。检查您的安装并确保这两个文件都来自同一个下载。还要检查WEB-INF / lib目录中的所有其他jar文件是否来自同一个下载。