Hello Commons-Users! I have some questions about the fileupload. I'm using with tomcat (5.5.12) and common-fileupload (1.2) and I have this multi-upload screen(ajax+java) that works great from my intranet but when testing it from outside is not. I observed the following:
1. when I initiate an upload, it seems that the whole upload happens as a result of the form post instead of being progressively. I test from a place that has a proxy and my tomcat instance is fronted by an apache that handles the static content (coupled with mod_jk). What's really happening. Shouldn't the upload happen progressively via the proxy ? Is the file firstly uploaded to the proxy and from there to my site as one chunk ? Why this is not happening from my local box. I had other people complaining about this as well so it's not only my location. From my intranet works as it should - flawless. 2.If I initiate two concurrent uploads only the last one prevails and I get always an exception on the first one... This also works just fine from my local intranet. I assume both are related with each other. 2007-07-23 11:53:27,358 [TP-Processor11]: ERROR org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:253) - Servlet.service() for org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. Stream ended unexpectedly at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase .java:359) at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase .java:302) at org.apache.struts.upload.CommonsMultipartRequestHandler.handleRequest(Co mmonsMultipartRequestHandler.java:185) at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:405) at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcess or.java:818) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java: 194) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at com.goodmedia.framework.core.servlet.FrameworkActionServlet.doGet(Framew orkActionServlet.java:119) at com.goodmedia.framework.core.servlet.FrameworkActionServlet.doPost(Frame workActionServlet.java:131) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.goodmedia.framework.core.servlet.FrameworkActionServlet.service(Fram eworkActionServlet.java:91) at com.gsi.core.servlet.GSIActionServlet.service(GSIActionServlet.java:128) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.ajaxanywhere.AAFilter.doFilter(AAFilter.java:46) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at com.goodmedia.trim.TrimFilter.doFilter(TrimFilter.java:72) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at com.goodmedia.framework.core.servlet.UserManagerUtilsFilter.doFilter(Use rManagerUtilsFilter.java:105) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(Filt erChainProxy.java:292) at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterS ecurityInterceptor.java:108) at org.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(Secur ityEnforcementFilter.java:197) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(Filt erChainProxy.java:303) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter (AnonymousProcessingFilter.java:143) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(Filt erChainProxy.java:303) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessin gFilter.java:246) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(Filt erChainProxy.java:303) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(H ttpSessionContextIntegrationFilter.java:220) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(Filt erChainProxy.java:303) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:1 73) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java :120) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at com.goodmedia.framework.core.servlet.RequestUtilsFilter.doFilter(Request UtilsFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1 48) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java: 678) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:684) at java.lang.Thread.run(Thread.java:595) Caused by: org.apache.commons.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedly at org.apache.commons.fileupload.MultipartStream$ItemInputStream.makeAvaila ble(MultipartStream.java:964) at org.apache.commons.fileupload.MultipartStream$ItemInputStream.read(Multi partStream.java:887) at java.io.InputStream.read(InputStream.java:89) at org.apache.commons.fileupload.util.Streams.copy(Streams.java:94) at org.apache.commons.fileupload.util.Streams.copy(Streams.java:64) at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase .java:354) ... 60 more This e-mail message is being sent solely for use by the intended recipient(s) and may contain confidential information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by phone or reply by e-mail, delete the original message and destroy all copies. Thank you.