tomcat8下 struts1保单提交,报错如下。
BeanUtils.populate
class javax.servlet.ServletException
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:469)
org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:50)
org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:60)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
从网上找帖子发现,有的说表单有日期类型 需要转化为字符串类型,有的说添添加enctype="multipart/form-data" (struts1,这个应该适合文件上传的场合)。不符合我这里的实际情况,我这里表单中既不是文件上传,也没有date日志类型的表单项。
从 浏览器中查看提交请求的参数中有&description=&pass.length=10等参数。
经过测试 发现报错是有提交的参数名pass.length 引起,将参数名称改为pass_legnth ,我这里不报错了,表单成功提交。问题就解决了。