commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul J DeCoursey <p...@decoursey.net>
Subject Re: [fileupload] - aborting file upload
Date Thu, 16 Nov 2006 19:16:03 GMT
Martin Cooper wrote:
> On 11/15/06, Andrew Serff <lists@serff.net> wrote:
>>
>> I have this problem as well.  I would love to hear if there is a a way
>> to cancel the client from sending the form data.  It seems that it has
>> to send the entire form data before it can get a response from the
>> server.  I'm guessing this is just a flaw/feature in the way forms are
>> handled in html land...Anyone else have ideas?
>
>
> AFAIK, this is a container issue. The container just keeps on 
> accepting the
> response, and there's no way for FileUpload to tell it to abandon the
> remainder.
>
I've heard arguments for it being container/server/protocol/browser 
issues. The fact is there is no way to abort the stream on the receiving 
end. I've been told that the browser cannot get a response until the 
request is complete and the request will not complete until the file has 
been sent. A workaround I've seen is to have a separate process run that 
monitors the progress of the upload that can handle the abort.  I don't 
have an example on hand, but I can provide one for the original poster 
if they contact me.

Paul

> -- 
> Martin Cooper
>
>
> Andrew
>>
>> Shaun_Curtis@amp.com.au wrote:
>> > Hi,
>> >
>> > I am using commons-fileupload v1.1.1 on Websphere Portal v5.1. My file
>> > upload works as expected except when the file size exceeds the 
>> specified
>> > maximum size.
>> >
>> > parseRequest() throws a FileUploadException as expected, this 
>> exception
>> is
>> > caught and processed appropriately and the code executes successfully.
>> > However the web page continues to churn, with the progress indicator
>> > increasing slowly. After 5 minutes the page displays the standard 
>> "This
>> > page cannot be displayed" error. And the stacktrace below is generated
>> in
>> > the log. Has anyone experienced this or know of a way around it? 
>> Thanks
>> > for any advice.
>> >
>> > A fragment of my code:
>> >
>> >             DiskFileItemFactory factory = new DiskFileItemFactory();
>> >
>> >             factory.setSizeThreshold(100*1024);
>> >             factory.setRepository(new File("C:\\temp\\"));
>> >
>> >             PortletFileUpload upload = new PortletFileUpload(factory);
>> >             upload.setSizeMax(1024*1024);
>> >
>> >             Iterator itemsIter = upload.parseRequest
>> (request).iterator();
>> >
>> >             while (itemsIter.hasNext())
>> >             {
>> >
>> >                 ....
>> >                 ....
>> >                 ....
>> >         }
>> >
>> >         catch (FileUploadException e)
>> >         {
>> >             System.out.println("**************************** FILE 
>> UPLOAD
>> > ERRROR");
>> >         ...
>> >         ...
>> >         ...
>> >             return;
>> >         }
>> >
>> >
>> > [16/11/06 13:31:01:250 EST] 1e290c64 SRTServletReq E SRVE0120E: IO 
>> Error
>> > java.net.SocketException: Connection reset
>> >         at java.net.SocketInputStream.read(SocketInputStream.java
>> (Compiled
>> > Code))
>> >         at com.ibm.ws.io.Stream.read(Stream.java(Compiled Code))
>> >         at com.ibm.ws.io.ReadStream.read(ReadStream.java(Compiled 
>> Code))
>> >         at
>> > com.ibm.ws.http.ContentLengthInputStream.read(
>> ContentLengthInputStream.java(Compiled
>> > Code))
>> >         at com.ibm.ws.io.ReadStream.read(ReadStream.java(Compiled 
>> Code))
>> >         at
>> > com.ibm.ws.webcontainer.http.HttpConnection.read(HttpConnection.java
>> (Inlined
>> > Compiled Code))
>> >         at
>> > com.ibm.ws.webcontainer.srp.SRPConnection.read(SRPConnection.java
>> (Compiled
>> > Code))
>> >         at
>> > com.ibm.ws.webcontainer.srt.SRTInputStream.read(SRTInputStream.java
>> (Compiled
>> > Code))
>> >         at
>> > com.ibm.ws.webcontainer.srt.http.HttpInputStream.read(
>> HttpInputStream.java(Compiled
>> > Code))
>> >         at java.io.InputStream.read(InputStream.java(Inlined Compiled
>> > Code))
>> >         at
>> > com.ibm.ws.webcontainer.srt.SRTServletRequest.finish(
>> SRTServletRequest.java(Compiled
>> > Code))
>> >         at
>> > com.ibm.ws.webcontainer.srt.SRTConnectionContext.finishConnection(
>> SRTConnectionContext.java:86)
>> >         at
>> > com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java
>> :204)
>> >         at
>> > com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(
>> WebAppInvoker.java:286)
>> >         at
>> >
>> com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation 
>>
>> (CachedInvocation.java:71)
>> >         at
>> > com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(
>> ServletRequestProcessor.java:182)
>> >         at
>> > com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(
>> OSEListener.java:334)
>> >         at
>> > com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(
>> HttpConnection.java:56)
>> >         at
>> > 
>> com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java
>> :624)
>> >         at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:448)
>> >         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java
>> (Compiled
>> > Code))
>> > This email message and any accompanying attachments may contain
>> > information that is confidential and is subject to legal privilege. If
>> you are not
>> > the intended recipient, do not read, use, disseminate, distribute or
>> copy this
>> > message or attachments. If you have received this message in error,
>> please
>> > notify the sender immediately and delete this message. Any views
>> expressed
>> > in this message are those of the individual sender, except where the
>> sender
>> > expressly, and with authority, states them to be the views of AMP.
>> Before
>> > opening any attachments, please check them for viruses and defects.
>> >
>> >
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>>
>>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Mime
View raw message