【发布时间】:2013-02-08 04:53:46
【问题描述】:
我正在尝试使用 Alcatel OT900A 提交表单,但出现此错误
ava.io.IOException:损坏的表单数据:提前结束 在 com.oreilly.servlet.multipart.MultipartParser.(MultipartParser.java:205) 在 com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:222) 在 com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:173) 在 net.sourceforge.stripes.controller.multipart.CosMultipartWrapper.build(CosMultipartWrapper.java:63) 在 net.sourceforge.stripes.controller.multipart.DefaultMultipartWrapperFactory.wrap(DefaultMultipartWrapperFactory.java:125) 在 net.sourceforge.stripes.controller.StripesRequestWrapper.constructMultipartWrapper(StripesRequestWrapper.java:109) 在 net.sourceforge.stripes.controller.StripesRequestWrapper.(StripesRequestWrapper.java:95) 在 net.sourceforge.stripes.controller.StripesFilter.wrapRequest(StripesFilter.java:202) 在 net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:171) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 在 com.colibria.imps.clients.xhtml.filter.LoggerFilter.doFilter(LoggerFilter.java:39) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) 在 org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) 在 org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) 在 org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:113) 在 java.lang.Thread.run(Thread.java:619)
你知道这个错误是什么吗?服务器有问题还是设备有问题?我已经尝试在其他设备上对此进行测试,并且可以正常工作。仅在 Alcatel OT900A 中出现此错误。
我的表格是这样的(当然我省略了一些代码):
<stripes:form action="Some_Action_Bean" method="post">
<stripes:text name="somemessage" class="someclass"/>
<stripes:file name="someFile" class="someClass"/>
</stripes:form>
在“somemessage”字段中输入了一些文本,但没有选择文件,所以基本上“someFile”为空。如果文件的值为空,我只需检查后端。
我在想是不是因为表单中没有 enctype="multipart/form-data" 导致错误发生,或者条纹框架本身有错误,或者设备不支持文件发送。
【问题讨论】:
-
我发现设备不支持文件上传。
标签: java forms servlets stripes alcatel-ot