There's a new patch out there for the isapi_redirector2.dll that will solve your problem.
About 3 weeks ago, I discovered that the problem recurred when I uploaded large files from the internet (no problems with the intranet.) When I turned on the debugger, the problem corrected itself about 70% of the time. At that point, I realized it was a timing issue & I posted this information on the Tomcat user group. The developers there took this information & determined what the problem was and deployed a patch! But in answer to your question, I believe it was the server.xml --JoAnn -----Original Message----- From: bouchalhi yann [mailto:[EMAIL PROTECTED] Sent: Tuesday, May 04, 2004 1:47 AM To: [EMAIL PROTECTED] Subject: Re: FileUpload: Stream ended unexpectedly Hello JoAnn , in what file you have changed the Tomcat's socket connection timeout value ? thanks > Actually, I've uploaded a 3M file with no problem - so that restriction no > longer appears to be the issue. > > Turns out that Tomcat's socket connection timeout out (she was using > dialup >after all) and there was too long a delay between the data packets. As >a >result, the socket closed before the file finished uploading. The >problem >went away after I upped the timeout. > >Thanks for you help! --JoAnn -----Original Message----- From: Dan Tran [mailto:[EMAIL <mailto:%5bEMAIL> PROTECTED] Sent: Wednesday, March 17, 2004 12:24 PM To: Struts Users Mailing List Subject: Re: FileUpload: Stream ended unexpectedly Last time I check, isapi_redirect2.dll can not handle file upload bigger then 100K. You may try to check this bug with tomcat list. -Dan ----- Original Message ----- From: "JoAnn Lemm" <[EMAIL PROTECTED]> To: "'Struts Users Mailing List'" <[EMAIL PROTECTED]> Sent: Wednesday, March 17, 2004 8:08 AM Subject: FileUpload: Stream ended unexpectedly > Hi All, > > One of our customers has a problem when trying to upload a 800KB file. > > I'm using struts1.1 with "JBoss/Tomcat4.1 " and an IIS (using the > isapi_redirector2.dll) in front of it. > > I'm using the standard struts tag: <html:file property="theFile" size="40" > /> > > > When I watch the processing of her file, it seems to go very slowly, whereas > others are much, much quicker. Any suggestions, hints and solutions would be > much appreciated. > > JoAnn > > > Stack Trace follows: > > 2004-03-17 08:08:37,084 ERROR > [org.apache.struts.upload.CommonsMultipartRequestHandler] Failed to parse > multipart request > org.apache.commons.fileupload.FileUploadException: Processing of > multipart/form-data request failed. Stream ended unexpectedly > at > org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.jav > a:429) > at > org.apache.struts.upload.CommonsMultipartRequestHandler.handleRequest(Common > sMultipartRequestHandler.java:233) > at > org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1209) > at > org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.j > ava:821) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254) > at > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) > at > org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) > 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.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrR > ealm.java:220) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:2 > 46) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStat > sValve.java:76) > 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.StandardContext.invoke(StandardContext.java:2417) > 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.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssoci > ationValve.java:65) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577) > 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:197) > at > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:309) > at > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:387) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:673) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:615) > at > org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:786) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav > a:677) > at java.lang.Thread.run(Thread.java:534) > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] _____ Yahoo! Mail : votre e-mail personnel et gratuit qui vous suit partout ! Créez <http://fr.rd.yahoo.com/mail/taglines/*http:/fr.rd.yahoo.com/mail/mail_tagli nes/default/*http:/fr.benefits.yahoo.com/> votre Yahoo! Mail Dialoguez en direct avec vos amis grâce à Yahoo! <http://fr.rd.yahoo.com/mail/taglines/*http:/fr.rd.yahoo.com/messenger/mail_ taglines/default/*http:/fr.messenger.yahoo.com/> Messenger !