Martin Cooper
Mon, 23 Jul 2007 19:34:34 -0700
On 7/23/07, Moisei, Constantin <[EMAIL PROTECTED]> wrote:
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.
How it behaves through a proxy depends entirely on the proxy. If it's a scanning proxy, then it almost certainly collects up the entire request, so that it can be scanned in its entirety, before passing it on to the target server. 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.
This could be the proxy too, depending on the nature of the proxy, but in this case it sounds like the proxy might be buggy. -- Martin Cooper 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.