You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Robert Priest <Ro...@bentley.com> on 2004/11/04 17:38:14 UTC
RE: FileUpload\Windows 2003 Server\Tomcat
Okay. It this is still happening sporadically, but here is what is left
in the buffer.
I added a few debug statements to the MultipartStream.java and
FileUploadBase.java and I am using the dump() method that was commented
out. here is what I see (this all happens when the condition bytesRead
== -1, occurs in MultipartStream.java. If you search for "The last pad
amount is left in the buffer.", you can see where the
MalformedStreamException is being thrown). In addition, the second time
I tried to load this e:
Multipart Stream created!; Time:2004-11-04 11:35:30
File Name:null
File Name:null
File Name:C:\SharePoint Developer Installation Cookbook (2).doc
Error Happening (The last pad amount is left in the buffer [bytesRead ==
-1]):
keepRegion=49;bytesRead=-1;pad=49;head=0;tail=1515;total=389637;done=fal
se
Dumping the buffer...
01234567890
!!-----------4FD67
D o c u m e n t S u m m a r y I n f o r m a t i o n
8 C o m
p O b j
q
! F Microsoft Office Word Document !
MSWordDoc Word.Document.8 9 q
!!-----------4FD67
! " # $ % & ' ( ) * + , - . / 0
1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B
C D E F G H I J K L M N O P Q R S T
U V W X Y Z [ \ ] ^ _ ` a b c d e f
g h i j k l m n o p q r s t u v w x
y z { | } ~
!
!
! " # $ % & ' ( ) * + , - .
/ 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
A B C D E F G H I J K L M N O P Q R
S T U V W X Y Z [ \ ] ^ _ ` a b c d
e f g h i j k l m n o p q r s t u v
w x y z { | } ~
R o o t E n t r y
F c4 D a
t a !
! qD 1 T a b l e
3 W o r d
D o c u m e n t
4@ S u m m a r y I n f o r m a t i o n
(
h
-----Original Message-----
From: Robert Priest
Sent: Thursday, October 28, 2004 3:17 PM
To: Jakarta Commons Users List
Subject: RE: FileUpload\Windows 2003 Server\Tomcat
I guess in that respect, it is similar to bug:
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=25598
but I am running Justin Sampson's patch of:
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=30061
but it doesn't work for this problem. Possibly this problem, is more
related to
IIS 6.0 on Windows 2003 Server?
Here is the JUNIT Output from when I built the fileupload jar today.
They complete successfully:
internal-test:
[junit] Running org.apache.commons.fileupload.DefaultFileItemTest
[junit] Tests run: 6, Failures: 0, Errors: 0, Time elapsed: 0.296
sec
[junit] Testsuite: org.apache.commons.fileupload.DefaultFileItemTest
[junit] Tests run: 6, Failures: 0, Errors: 0, Time elapsed: 0.296
sec
[junit] Testcase: testTextFieldConstruction took 0 sec
[junit] Testcase: testFileFieldConstruction took 0 sec
[junit] Testcase: testBelowThreshold took 0.016 sec
[junit] Testcase: testAboveThresholdDefaultRepository took 0 sec
[junit] Testcase: testAboveThresholdSpecifiedRepository took 0 sec
[junit] Testcase: testContentCharSet took 0.015 sec
[junit] Running org.apache.commons.fileupload.FileUploadTest
[junit] Tests run: 5, Failures: 0, Errors: 0, Time elapsed: 0.312
sec
[junit] Testsuite: org.apache.commons.fileupload.FileUploadTest
[junit] Tests run: 5, Failures: 0, Errors: 0, Time elapsed: 0.312
sec
[junit] Testcase: testWithInvalidRequest took 0.047 sec
[junit] Testcase: testWithNullContentType took 0 sec
[junit] Testcase: testFileUpload took 0.015 sec
[junit] Testcase: testEmptyFile took 0 sec
[junit] Testcase: testIE5MacBug took 0 sec
[junit] Running org.apache.commons.fileupload.MultipartStreamTest
[junit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 0.266
sec
[junit] Testsuite: org.apache.commons.fileupload.MultipartStreamTest
[junit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 0.266
sec
[junit] Testcase: testDefaultConstructor took 0.016 sec
[junit] Testcase: testThreeParamConstructor took 0 sec
[junit] Testcase: testTwoParamConstructor took 0 sec
[junit] Testcase: testToString took 0 sec
[junit] Running org.apache.commons.fileupload.ParameterParserTest
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.265
sec
[junit] Testsuite: org.apache.commons.fileupload.ParameterParserTest
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.265
sec
[junit] Testcase: testParsing took 0 sec
[junit] Testcase: testContentTypeParsing took 0 sec
[junit] Testcase: testParsingEscapedChars took 0 sec
-----Original Message-----
From: Robert Priest
Sent: Thursday, October 28, 2004 2:13 PM
To: Jakarta Commons Users List; Dakota Jack
Subject: RE: FileUpload\Windows 2003 Server\Tomcat
looks like the else statement here in: MultipartStream.java is
occurring.
(from MutipartStream.readBodyData(OutputStream output)):
bytesRead = input.read(buffer, pad, bufSize - pad);
// [pprrrrrrr]
if (bytesRead != -1)
{
tail = pad + bytesRead;
}
else
{
// The last pad amount is left in the buffer.
// Boundary can't be in there so write out the
// data you have and signal an error condition.
output.write(buffer, 0, pad);
output.flush();
total += pad;
throw new MalformedStreamException(
"Stream ended unexpectedly");
}
Here it is the stack trace:
13:43:32,962,ERROR: FileUploadBase FileUploadBase e.getMessage() =
Stream ended unexpectedly
org.apache.commons.fileupload.MultipartStream$MalformedStreamException:
Stream ended unexpectedly
at
org.apache.commons.fileupload.MultipartStream.readBodyData(MultipartStre
am.java:552)
at
org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase
.java:360)
at
com.projectwise.web.server.lite.formhandler.FormHandler.arrangeRequest(F
ormHandler.java:655)
at
com.projectwise.web.server.lite.formhandler.FormHandler.processRequest(F
ormHandler.java:3856)
at
com.projectwise.web.server.lite.LiteServlet.doGet(LiteServlet.java:470)
at
com.projectwise.web.server.lite.LiteServlet.doPost(LiteServlet.java:527)
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(Applica
tionFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:260)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:191)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:235
0)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:180)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:170)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:171)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
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.i
nvokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:256)
at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:361)
at
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:565)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:
537)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:640)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:533)
at java.lang.Thread.run(Thread.java:536)
-----Original Message-----
From: Dakota Jack [mailto:crackwillow@gmail.com]
Sent: Thursday, October 28, 2004 12:10 PM
To: Jakarta Commons Users List
Subject: Re: FileUpload\Windows 2003 Server\Tomcat
I would suggest that you go into FileUploadBase and flesh out the
exceptions so that you can get more information. Try something like the
following:
/*
try {*/
int boundaryIndex = contentType.indexOf("boundary=");
if (boundaryIndex < 0) {
throw new FileUploadException(
"the request was rejected because "
+ "no multipart boundary was found");
}
byte[] boundary = contentType.substring(
boundaryIndex + 9).getBytes();
InputStream input = null;
MultipartStream multi = null;
boolean nextPart = false;
try {
input = req.getInputStream();
multi = new MultipartStream(input, boundary);
multi.setHeaderEncoding(headerEncoding);
nextPart = multi.skipPreamble();
} catch(IOException ioe) {
YOURLOGGER("log.error","FileUploadBase (88) ioe.getMessage() = "
+ ioe.getMessage());
}
while (nextPart) {
Map headers = null;
try {
headers = parseHeaders(multi.readHeaders());
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase mse.getMessage() = "
+ mse.getMessage());
}
String fieldName = getFieldName(headers);
if (fieldName != null) {
String subContentType = getHeader(headers, CONTENT_TYPE);
if (subContentType != null &&
subContentType.startsWith(MULTIPART_MIXED)) {
// Multiple files.
byte[] subBoundary =
subContentType.substring(
subContentType
.indexOf("boundary=") + 9).getBytes();
boolean nextSubPart = false;
try {
multi.setBoundary(subBoundary);
nextSubPart =multi.skipPreamble();
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase mse.getMessage() =
" + mse.getMessage());
} catch (IllegalBoundaryException ibe) {
YOURLOGGER("log.error","FileUploadBase ibe.getMessage() =
" + ibe.getMessage());
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase ioe.getMessage() =
" + ioe.getMessage());
}
while (nextSubPart) {
try {
headers = parseHeaders(multi.readHeaders());
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase
mse.getMessage() = " + mse.getMessage());
}
if (getFileName(headers) != null) {
FileItem item =
createItem(headers, false);
OutputStream os = null;
try {
os = item.getOutputStream();
multi.readBodyData(os);
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
} finally {
try {
os.close();
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
}
}
items.add(item);
} else {
// Ignore anything but files inside
// multipart/mixed.
try {
multi.discardBodyData();
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase
mse.getMessage() = " + mse.getMessage());
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
}
}
try {
nextSubPart = multi.readBoundary();
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase
mse.getMessage() = " + mse.getMessage());
}
}
try {
multi.setBoundary(boundary);
} catch (IllegalBoundaryException ibe) {
YOURLOGGER("log.error","FileUploadBase ibe.getMessage() =
" + ibe.getMessage());
}
} else {
if (getFileName(headers) != null) {
// A single file.
FileItem item = createItem(headers, false);
OutputStream os = null;
try {
os = item.getOutputStream();
multi.readBodyData(os);
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
} finally {
try {
os.close();
} catch(IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
}
}
items.add(item);
} else {
// A form field.
FileItem item = createItem(headers, true);
OutputStream os = null;
try {
os = item.getOutputStream();
multi.readBodyData(os);
} catch(IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
} finally {
try {
os.close();
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase
ioe.getMessage() = " + ioe.getMessage());
}
}
items.add(item);
}
}
} else {
// Skip this part.
try {
multi.discardBodyData();
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase mse.getMessage() = "
+ mse.getMessage());
} catch (IOException ioe) {
YOURLOGGER("log.error","FileUploadBase ioe.getMessage() = "
+ ioe.getMessage());
}
}
try {
nextPart = multi.readBoundary();
} catch (MalformedStreamException mse) {
YOURLOGGER("log.error","FileUploadBase mse.getMessage() = "
+ mse.getMessage());
}
}
/*
} catch (IOException e) {
throw new FileUploadException(
"Processing of " + MULTIPART_FORM_DATA
+ " request failed. " + e.getMessage());
}*/
Seem right?
Jack
On Thu, 28 Oct 2004 10:30:13 -0400, Robert Priest
<ro...@bentley.com> wrote:
> Hello Dakota Jack,
>
> I am using the latest version of fileupload
> (commons-fileupload-1.1-dev.jar), which is using the latest version of
> commons-io-1.1-dev.jar
>
> The code for getTempFile() in the latest version of DefaultFileItem,
> looks like this:
>
> /**
> * Creates and returns a {@link java.io.File File} representing a
> uniquely
> * named temporary file in the configured repository path. The
> lifetime of
> * the file is tied to the lifetime of the <code>FileItem</code>
> instance;
> * the file will be deleted when the instance is garbage
collected.
> *
> * @return The {@link java.io.File File} to be used for temporary
> storage.
> */
> protected File getTempFile()
> {
> File tempDir = repository;
> if (tempDir == null)
> {
> tempDir = new File(System.getProperty("java.io.tmpdir"));
> }
>
> String fileName = "upload_" + getUniqueId() + ".tmp";
>
> File f = new File(tempDir, fileName);
> FileCleaner.track(f, this);
> return f;
> }
>
> That FileCleaner, is out of commons-io-1.1-dev.jar.
>
> I think you may be on to something with the point about the threshold.
> Another point about this problem is that if the file is 51KB or less,
> it works fine.
> However, If I try it with a file of 52 KB or more, it fails. Any idea?
>
> I did check the tmpdir, and it has been created.
> Indeed, the 51 KB file is uploaded correctly to the exact same
> directory.
>
> However 52 KB, fails.
>
> Here is how I call upload:
>
> // Create a new file upload handler
> DiskFileUpload upload = new DiskFileUpload();
> // Set upload parameters
> upload.setSizeMax(-1); //no limit
> upload.setSizeThreshold(4096);
> upload.setRepositoryPath(importDir);
> upload.setHeaderEncoding("UTF-8");
> // Parse the request
> List items = null;
> try
> {
> items = upload.parseRequest(hsrRequest);
> }
> catch(Exception e)
> {
> mLog.log("Encountered Situation parsing file
> upload request",LogConstants.LEVEL_ERROR,e);
> }
>
> And here is the stack trace I get back when it fails (when filesize >
> 51
> KB)
>
>
>
> NDC:
> Category: com.projectwise.web.server.lite.LiteServlet
> Message: Encountered Situation parsing file upload
> request
> Location:
> Thrown:
> org.apache.commons.fileupload.FileUploadException: Processing of
> multipart/form-data request failed. Stream ended unexpectedly
> at
> org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBa
> se
> .java:364)
> at
> com.projectwise.web.server.lite.formhandler.FormHandler.arrangeRequest
> (F
> ormHandler.java:655)
> at
> com.projectwise.web.server.lite.formhandler.FormHandler.processRequest
> (F
> ormHandler.java:3856)
> at
>
com.projectwise.web.server.lite.LiteServlet.doGet(LiteServlet.java:470)
> at
>
com.projectwise.web.server.lite.LiteServlet.doPost(LiteServlet.java:527)
> 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(Appli
> ca
> tionFilterChain.java:247)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFi
> lt
> erChain.java:193)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVa
> lv
> e.java:260)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext
> .i
> nvokeNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> :4
> 80)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextVa
> lv
> e.java:191)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext
> .i
> nvokeNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> :4
> 80)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2
> 35
> 0)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.ja
> va
> :180)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext
> .i
> nvokeNext(StandardPipeline.java:643)
> at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcher
> Va
> lve.java:170)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext
> .i
> nvokeNext(StandardPipeline.java:641)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.ja
> va
> :171)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext
> .i
> nvokeNext(StandardPipeline.java:641)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> :4
> 80)
> 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
> .i
> nvokeNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> :4
> 80)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
>
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
> at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:256)
> at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:361)
> at
> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:565)
> at
>
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:
> 537)
> at
> org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:640)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPo
> ol
> .java:533)
> at java.lang.Thread.run(Thread.java:536)
>
>
>
>
> -----Original Message-----
> From: Dakota Jack [mailto:crackwillow@gmail.com]
> Sent: Wednesday, October 27, 2004 7:53 PM
> To: Jakarta Commons Users List
> Subject: Re: FileUpload\Windows 2003 Server\Tomcat
>
> What is your code for his, Robert? And, what is the stack trace of
> the error? It looks like the problem is in OutputStream os =
> item.getOutputStream(); and this goes back to
>
> protected File getTempFile()
> {
> File tempDir = repository;
> if (tempDir == null)
> {
> tempDir = new File(System.getProperty("java.io.tmpdir"));
> }
>
> String fileName = "upload_" + getUniqueId() + ".tmp";
>
> File f = new File(tempDir, fileName);
> f.deleteOnExit();
> return f;
> }
>
> Have you checked out your temporary directory? Or, I think there is
> something about the threshold only being used for certain things.
>
> Jack
>
> On Wed, 27 Oct 2004 18:01:11 -0400, Robert Priest
> <ro...@bentley.com> wrote:
> > Hello, I am running a version of tomcat 4.1 on Windows 2003 Server
> > and
>
> > I keep getting the following problem from the
> >
> > DiskFileUpload.parseRequest() call:
> >
> > Date: Wed Oct 27 17:23:18 EDT 2004 (1098912198367)
> > Thread: Thread-11
> > Message #: 274
> > Level: ERROR
> > NDC:
> > Category: com.projectwise.web.server.lite.LiteServlet
> > Message: Encountered Situation parsing file upload
> > request
> > Location:
> > Thrown:
> > org.apache.commons.fileupload.FileUploadException: Processing of
> > multipart/form-data request failed. Stream ended unexpectedly
> > at
> > org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUpload
> > Ba
> > se
> > .java:364)
> > at
> > com.projectwise.web.server.lite.formhandler.FormHandler.arrangeReque
> > st
> > (F
> > ormHandler.java:655)
> > ...
> >
> > This code works fine on other machines (w2k, XP, etc). I am only
> > seeing this when I am running on a Windows 2003 Server.
> >
> > It seems to happen when on
> >
> > FileUploadBase line:349
> >
> > finally
> > {
> > line 349: --> os.close();
> > }
> >
> > the original exception is a
> >
> > org.apache.commons.fileupload.MultipartStream$MalformedStreamExcepti
> > on
> > "Stream ended unexpectedly"
> >
> > is anyone else seeing this issue?
> >
> > I am using a version of fileupload which I compiled today from the
> > cvs repository.
> >
> > it is: commons-fileupload-1.1-dev.jar
> >
> > Does anyone have any suggestions?
> >
> > I would appreciate the help. Thanks.
> >
> > Robert.
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail:
> > commons-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail:
> > commons-user-help@jakarta.apache.org
> >
> >
>
> --
> "You can't wake a person who is pretending to be asleep."
>
> ~Native Proverb~
>
> "Each man is good in His sight. It is not necessary for eagles to be
> crows."
>
> ~Hunkesni (Sitting Bull), Hunkpapa Sioux~
>
> ---------------------------------------------------------------------
> 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
>
>
--
"You can't wake a person who is pretending to be asleep."
~Native Proverb~
"Each man is good in His sight. It is not necessary for eagles to be
crows."
~Hunkesni (Sitting Bull), Hunkpapa Sioux~
---------------------------------------------------------------------
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
---------------------------------------------------------------------
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