You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Hua Hou <hu...@handango.com> on 2003/08/16 00:44:04 UTC

MultipartRequest: unexpected end of part

I'm using the latest oreilly class MultipartRequest to upload files into my
server. However, whenever I try to upload a big file (say, > 100k), I got
the following exception. With smaller file (< 50k), it works fine. I browse
through the tomcat archive list, as well as google site, both indicate that
this bug should've fixed in Tomcat 4.1.24 version. Could somebody help me
out?

Here is the setting of my system:
Tomcat: 4.1.24
JDK: 1.4.1
IIS: 5.x
I am using JK2 connector.

Thanks and really appreciate!

Hua

java.io.IOException: unexpected end of part
	at
com.oreilly.servlet.multipart.PartInputStream.fill(PartInputStream.java:100)
	at
com.oreilly.servlet.multipart.PartInputStream.read(PartInputStream.java:183)
	at
com.oreilly.servlet.multipart.PartInputStream.read(PartInputStream.java:156)
	at com.oreilly.servlet.multipart.ParamPart.(ParamPart.java:49)
	at
com.oreilly.servlet.multipart.MultipartParser.readNextPart(MultipartParser.j
ava:319)
	at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:246)
	at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:109)
	at com.hhc.ProductAdminFileInfo.doPost(ProductAdminFileInfo.java:90)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
	at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:261)
	at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360)
	at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:604)
	at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:562)
	at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:679)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:620)
	at java.lang.Thread.run(Thread.java:534)