cziegeler 2002/06/28 01:22:56
Modified: . changes.xml
src/java/org/apache/cocoon/components/request
MaybeUploadRequestFactoryImpl.java
Log:
Applied patch from [EMAIL PROTECTED] (Stuart Roebuck) with minor
modifications
Revision Changes Path
1.199 +5 -1 xml-cocoon2/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/xml-cocoon2/changes.xml,v
retrieving revision 1.198
retrieving revision 1.199
diff -u -r1.198 -r1.199
--- changes.xml 28 Jun 2002 08:01:00 -0000 1.198
+++ changes.xml 28 Jun 2002 08:22:56 -0000 1.199
@@ -39,6 +39,10 @@
</devs>
<release version="@version@" date="@date@">
+ <action dev="CZ" type="fix" fixes-bug="10254" due-to="Stuart Roebuck"
due-to-email="[EMAIL PROTECTED] ">
+ Applied patch for MaybeUploadRequestFactoryImpl which sets the timeout for a
session to
+ infinite during an upload and restores it afterwards.
+ </action>
<action dev="CH" type="update">
Multiple results seem not to be supported by some DBMSs (i.e. Oracle and
Informix). Therefore this is made optional in ESQL. A new parameter
1.3 +18 -3
xml-cocoon2/src/java/org/apache/cocoon/components/request/MaybeUploadRequestFactoryImpl.java
Index: MaybeUploadRequestFactoryImpl.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/request/MaybeUploadRequestFactoryImpl.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- MaybeUploadRequestFactoryImpl.java 12 Mar 2002 14:26:59 -0000 1.2
+++ MaybeUploadRequestFactoryImpl.java 28 Jun 2002 08:22:56 -0000 1.3
@@ -53,6 +53,7 @@
import uk.co.weft.maybeupload.MaybeUploadRequestWrapper;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
import java.io.File;
import java.util.Map;
import java.util.Vector;
@@ -83,8 +84,17 @@
}
if (contentType.startsWith("multipart/form-data")) {
+ int oldInterval = -1;
+ HttpSession session = null;
try {
- req = new MaybeUploadRequestWrapperEx(request,
+ // Change the session timeout to infinite whilst the upload takes
place,
+ // to prevent a timeout occuring during a long upload.
+ session = req.getSession(false);
+ if ( null != session) {
+ oldInterval = session.getMaxInactiveInterval();
+ session.setMaxInactiveInterval( -1 );
+ }
+ req = new MaybeUploadRequestWrapperEx(request,
saveUploadedFilesToDisk,
uploadDirectory,
allowOverwrite,
@@ -92,7 +102,12 @@
maxUploadSize);
} catch (Exception e) {
req = request;
- }
+ } finally {
+ if ( null != session) {
+ // Reinstate the old session timeout interval upon completion
or failure.
+ session.setMaxInactiveInterval(oldInterval);
+ }
+ }
}
return req;
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]