RE: File upload failure in struts 1.1b - FIX

2002-05-27 Thread Don Elliott

Probably a good idea to wait until the fix is done properly - I saw this fix
in the mail archives and it seemed to fix our problems, but I also don't
have the time to do all the appropriate multi-platform / multi-servlet
standards tests...

Regards,
Don
-Original Message-
From: Jeremy Prellwitz [mailto:[EMAIL PROTECTED]]
Sent: Monday, 27 May 2002 6:39 AM
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: File upload failure in struts 1.1b - FIX


Hey Don,

  My original problem was on Tomcat 4.04b3.because we are using
WebSphere in production at work, i thought i'd better switch to Tomcat 3.x
as WebSphere only supports up to servlet 2.2 and jsp 1.1.  But the problem
persists on Tomcat 3.x.

As for the XML tag syntax, i did use the correct form. i included the
compact form in my discussion to show the whole tag, but i was too lazy to
fill in the middle "" tags and such. :)

I've identified the code where the exception is being thrown from, but i
don't have the time to thoroughly go through it (i.e. properly understand
it)so i've just recommended to my co-worker that he use a separate
web-app for his upload pages using Struts 1.0.2 as a work-around, until this
issue is fixed in a stable release of 1.1.



- Original Message -
From: "Don Elliott" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Friday, May 24, 2002 5:43 PM
Subject: RE: File upload failure in struts 1.1b - FIX


> Hi Jeremy,
>
> Did you have the original problem with multi-part forms on Tomcat 3 ?
>
> I wasn't sure if the problem occured on Tomcat 3.x as it looks like all
the
> people reporting the problem are using a Servlet 2.3 implementation (3.x
is
> Servlet 2.2).  I'm not sure why this is the case, but I do know when we
> moved from 3.3 of Tomcat to 4.0 we had to replace a lot of calls to
> deprecated methods specifically to do with URL handling on the Servlet
> Request objects, so maybe it has something to do with this being
> restructured...(only a guess)
>
> re. your tag - ensure you don't have an end tag '/>' on your form tag as
> this ends the form without the form actually starting - ie.
>
>  will blow up -
you
> need
>
> 
> input fields, including 
> 
>
> On non-multipart forms having the /> on the form tag usually gives you a
> wierd error message about field name 'xxx' cannot be found in
> org.apache.struts.action.BEAN or something equivalent - I'm not sure how
> this manifests itself in a multi-part form.
>
> Regards,
> Don
> -Original Message-----
> From: Jeremy Prellwitz [mailto:[EMAIL PROTECTED]]
> Sent: Saturday, 25 May 2002 1:07 AM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: Re: File upload failure in struts 1.1b - FIX
>
>
> I tried this patch with Tomcat 3.3.1, and all i did was add:
> enctype="multipart/form-data" to the  element,
> and then i got the following exceptions:
>
> javax.servlet.ServletException: Multipart data doesn't start
> with boundary
> at
> org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
> uest(DiskMultipartRequestHandler.java:103)
> at org.apache.struts.util.RequestUtils.populate
> (RequestUtils.java:908)
> at
> org.apache.struts.action.RequestProcessor.processPopulate
> (RequestProcessor.java:795)
> at org.apache.struts.action.RequestProcessor.process
> (RequestProcessor.java:244)
> at org.apache.struts.action.ActionServlet.process
> (ActionServlet.java:1110)
> at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:470)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at org.apache.tomcat.facade.ServletHandler.doService
> (ServletHandler.java:574)
> at org.apache.tomcat.core.Handler.invoke
> (Handler.java:322)
> at org.apache.tomcat.core.Handler.service
> (Handler.java:235)
> at org.apache.tomcat.facade.ServletHandler.service
> (ServletHandler.java:485)
> at
> org.apache.tomcat.facade.RequestDispatcherImpl.doForward
> (RequestDispatcherImpl.java:272)
> at
> org.apache.tomcat.facade.RequestDispatcherImpl.forward
> (RequestDispatcherImpl.java:174)
> at org.apache.struts.action.RequestProcessor.doForward
> (RequestProcessor.java:976)
> at
> org.apache.struts.action.RequestProcessor.processActionForward
> (RequestProcessor.java:408)
> at org.apache.struts.action.RequestProcessor.process
> (RequestProcessor.java:269)
> at org.apache.struts.action.ActionServlet.process
> (ActionServlet.java:1110)
> at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:470)
> a

Re: File upload failure in struts 1.1b - FIX

2002-05-26 Thread Jeremy Prellwitz

Hey Don,

  My original problem was on Tomcat 4.04b3.because we are using
WebSphere in production at work, i thought i'd better switch to Tomcat 3.x
as WebSphere only supports up to servlet 2.2 and jsp 1.1.  But the problem
persists on Tomcat 3.x.

As for the XML tag syntax, i did use the correct form. i included the
compact form in my discussion to show the whole tag, but i was too lazy to
fill in the middle "" tags and such. :)

I've identified the code where the exception is being thrown from, but i
don't have the time to thoroughly go through it (i.e. properly understand
it)so i've just recommended to my co-worker that he use a separate
web-app for his upload pages using Struts 1.0.2 as a work-around, until this
issue is fixed in a stable release of 1.1.



- Original Message -
From: "Don Elliott" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Friday, May 24, 2002 5:43 PM
Subject: RE: File upload failure in struts 1.1b - FIX


> Hi Jeremy,
>
> Did you have the original problem with multi-part forms on Tomcat 3 ?
>
> I wasn't sure if the problem occured on Tomcat 3.x as it looks like all
the
> people reporting the problem are using a Servlet 2.3 implementation (3.x
is
> Servlet 2.2).  I'm not sure why this is the case, but I do know when we
> moved from 3.3 of Tomcat to 4.0 we had to replace a lot of calls to
> deprecated methods specifically to do with URL handling on the Servlet
> Request objects, so maybe it has something to do with this being
> restructured...(only a guess)
>
> re. your tag - ensure you don't have an end tag '/>' on your form tag as
> this ends the form without the form actually starting - ie.
>
>  will blow up -
you
> need
>
> 
> input fields, including 
> 
>
> On non-multipart forms having the /> on the form tag usually gives you a
> wierd error message about field name 'xxx' cannot be found in
> org.apache.struts.action.BEAN or something equivalent - I'm not sure how
> this manifests itself in a multi-part form.
>
> Regards,
> Don
> -----Original Message-
> From: Jeremy Prellwitz [mailto:[EMAIL PROTECTED]]
> Sent: Saturday, 25 May 2002 1:07 AM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: Re: File upload failure in struts 1.1b - FIX
>
>
> I tried this patch with Tomcat 3.3.1, and all i did was add:
> enctype="multipart/form-data" to the  element,
> and then i got the following exceptions:
>
> javax.servlet.ServletException: Multipart data doesn't start
> with boundary
> at
> org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
> uest(DiskMultipartRequestHandler.java:103)
> at org.apache.struts.util.RequestUtils.populate
> (RequestUtils.java:908)
> at
> org.apache.struts.action.RequestProcessor.processPopulate
> (RequestProcessor.java:795)
> at org.apache.struts.action.RequestProcessor.process
> (RequestProcessor.java:244)
> at org.apache.struts.action.ActionServlet.process
> (ActionServlet.java:1110)
> at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:470)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at org.apache.tomcat.facade.ServletHandler.doService
> (ServletHandler.java:574)
> at org.apache.tomcat.core.Handler.invoke
> (Handler.java:322)
> at org.apache.tomcat.core.Handler.service
> (Handler.java:235)
> at org.apache.tomcat.facade.ServletHandler.service
> (ServletHandler.java:485)
> at
> org.apache.tomcat.facade.RequestDispatcherImpl.doForward
> (RequestDispatcherImpl.java:272)
> at
> org.apache.tomcat.facade.RequestDispatcherImpl.forward
> (RequestDispatcherImpl.java:174)
> at org.apache.struts.action.RequestProcessor.doForward
> (RequestProcessor.java:976)
> at
> org.apache.struts.action.RequestProcessor.processActionForward
> (RequestProcessor.java:408)
> at org.apache.struts.action.RequestProcessor.process
> (RequestProcessor.java:269)
> at org.apache.struts.action.ActionServlet.process
> (ActionServlet.java:1110)
> at org.apache.struts.action.ActionServlet.doPost
> (ActionServlet.java:470)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java)
> at org.apache.tomcat.facade.ServletHandler.doService
> (ServletHandler.java:574)
> at org.apache.tomcat.core.Handler.invoke
> (Handler.java:322)
> at org.apache.tomcat.core.Handler.service
> (Handler.java:235)
> at org.apache.tomcat.facade.ServletHandler.service
> (ServletHandler.java:485)
> at
> org.apache.tomcat

RE: File upload failure in struts 1.1b - FIX

2002-05-26 Thread Don Elliott

Hi Jeremy,

Did you have the original problem with multi-part forms on Tomcat 3 ?

I wasn't sure if the problem occured on Tomcat 3.x as it looks like all the
people reporting the problem are using a Servlet 2.3 implementation (3.x is
Servlet 2.2).  I'm not sure why this is the case, but I do know when we
moved from 3.3 of Tomcat to 4.0 we had to replace a lot of calls to
deprecated methods specifically to do with URL handling on the Servlet
Request objects, so maybe it has something to do with this being
restructured...(only a guess)

re. your tag - ensure you don't have an end tag '/>' on your form tag as
this ends the form without the form actually starting - ie.

 will blow up - you
need


input fields, including 


On non-multipart forms having the /> on the form tag usually gives you a
wierd error message about field name 'xxx' cannot be found in
org.apache.struts.action.BEAN or something equivalent - I'm not sure how
this manifests itself in a multi-part form.

Regards,
Don
-Original Message-
From: Jeremy Prellwitz [mailto:[EMAIL PROTECTED]]
Sent: Saturday, 25 May 2002 1:07 AM
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: Re: File upload failure in struts 1.1b - FIX


I tried this patch with Tomcat 3.3.1, and all i did was add:
enctype="multipart/form-data" to the  element,
and then i got the following exceptions:

javax.servlet.ServletException: Multipart data doesn't start
with boundary
at
org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
uest(DiskMultipartRequestHandler.java:103)
at org.apache.struts.util.RequestUtils.populate
(RequestUtils.java:908)
at
org.apache.struts.action.RequestProcessor.processPopulate
(RequestProcessor.java:795)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:244)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at org.apache.tomcat.facade.ServletHandler.doService
(ServletHandler.java:574)
at org.apache.tomcat.core.Handler.invoke
(Handler.java:322)
at org.apache.tomcat.core.Handler.service
(Handler.java:235)
at org.apache.tomcat.facade.ServletHandler.service
(ServletHandler.java:485)
at
org.apache.tomcat.facade.RequestDispatcherImpl.doForward
(RequestDispatcherImpl.java:272)
at
org.apache.tomcat.facade.RequestDispatcherImpl.forward
(RequestDispatcherImpl.java:174)
at org.apache.struts.action.RequestProcessor.doForward
(RequestProcessor.java:976)
at
org.apache.struts.action.RequestProcessor.processActionForward
(RequestProcessor.java:408)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:269)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at org.apache.tomcat.facade.ServletHandler.doService
(ServletHandler.java:574)
at org.apache.tomcat.core.Handler.invoke
(Handler.java:322)
at org.apache.tomcat.core.Handler.service
(Handler.java:235)
at org.apache.tomcat.facade.ServletHandler.service
(ServletHandler.java:485)
at
org.apache.tomcat.core.ContextManager.internalService
(ContextManager.java:917)
at org.apache.tomcat.core.ContextManager.service
(ContextManager.java:833)
at
org.apache.tomcat.modules.server.Http10Interceptor.processConn
ection(Http10Interceptor.java:176)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:494)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:516)
at java.lang.Thread.run(Thread.java:479)
Root cause:
java.io.IOException: Multipart data doesn't start with
boundary
at
org.apache.struts.upload.MultipartBoundaryInputStream.readFirs
tElement(MultipartBoundaryInputStream.java:348)
at
org.apache.struts.upload.MultipartBoundaryInputStream.setInput
Stream(MultipartBoundaryInputStream.java:172)
at
org.apache.struts.upload.MultipartIterator.parseRequest
(MultipartIterator.java:202)
at org.apache.struts.upload.MultipartIterator.
(MultipartIterator.java:171)
at
org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
uest(DiskMultipartRequestHandler.java:75)
at org.apache.struts.util.RequestUtils.populate
(RequestUtils.java:908)
at
org.apache.struts.action.RequestProcessor.processPopulate
(RequestProcessor.java:795)
at org.apache.struts.acti

Re: File upload failure in struts 1.1b - FIX

2002-05-26 Thread Joe Germuska

One of the ways to get bugs assigned a higher priority is to  vote 
for them in Bugzilla.  I use Weblogic and file uploads, so I voted 
for this one.  So far I think I'm the only one...



Joe


At 11:19 AM +1000 5/24/02, Don Elliott wrote:
>Hi Struts Users / Developers,
>
>I've noticed a lot of posts about this in the archive, particularly with
>WebLogic 6.1 - we have also experienced the file upload crash in Servlet 2.3
>on Tomcat 4.0.3 for Solaris
>
>The fix is as follows:
>
>In package "org.apache.struts.action" class "RequestProcessor" method
>"doForward(...)" add the follwing code as the first lines:
>
>if (request instanceof MultipartRequestWrapper) {
> request = ((MultipartRequestWrapper) request).getRequest();
>}
>
>I've noticed that this doesn't have any priority in the fix list (are many
>people using this ?) - If anyone is interested I can send them a patched
>struts1.1b1.jar file or the RequestProcessor.class file until this fix is
>made in the nightlys..
>
>(I'll batch up all requests for the .jar file daily to save my transfer
>costs).
>
>Regards,
>Don Elliott
>e.  [EMAIL PROTECTED]
>
>
>--
>To unsubscribe, e-mail:   
>For additional commands, e-mail: 


-- 
--
* Joe Germuska{ [EMAIL PROTECTED] }
"It's pitiful, sometimes, if they've got it bad. Their eyes get 
glazed, they go white, their hands tremble As I watch them I 
often feel that a dope peddler is a gentleman compared with the man 
who sells records."
--Sam Goody, 1956
tune in posse radio: 

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




Re: File upload failure in struts 1.1b - FIX

2002-05-24 Thread Jeremy Prellwitz

I tried this patch with Tomcat 3.3.1, and all i did was add: 
enctype="multipart/form-data" to the  element, 
and then i got the following exceptions:

javax.servlet.ServletException: Multipart data doesn't start 
with boundary
at 
org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
uest(DiskMultipartRequestHandler.java:103)
at org.apache.struts.util.RequestUtils.populate
(RequestUtils.java:908)
at 
org.apache.struts.action.RequestProcessor.processPopulate
(RequestProcessor.java:795)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:244)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at org.apache.tomcat.facade.ServletHandler.doService
(ServletHandler.java:574)
at org.apache.tomcat.core.Handler.invoke
(Handler.java:322)
at org.apache.tomcat.core.Handler.service
(Handler.java:235)
at org.apache.tomcat.facade.ServletHandler.service
(ServletHandler.java:485)
at 
org.apache.tomcat.facade.RequestDispatcherImpl.doForward
(RequestDispatcherImpl.java:272)
at 
org.apache.tomcat.facade.RequestDispatcherImpl.forward
(RequestDispatcherImpl.java:174)
at org.apache.struts.action.RequestProcessor.doForward
(RequestProcessor.java:976)
at 
org.apache.struts.action.RequestProcessor.processActionForward
(RequestProcessor.java:408)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:269)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at org.apache.tomcat.facade.ServletHandler.doService
(ServletHandler.java:574)
at org.apache.tomcat.core.Handler.invoke
(Handler.java:322)
at org.apache.tomcat.core.Handler.service
(Handler.java:235)
at org.apache.tomcat.facade.ServletHandler.service
(ServletHandler.java:485)
at 
org.apache.tomcat.core.ContextManager.internalService
(ContextManager.java:917)
at org.apache.tomcat.core.ContextManager.service
(ContextManager.java:833)
at 
org.apache.tomcat.modules.server.Http10Interceptor.processConn
ection(Http10Interceptor.java:176)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:494)
at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:516)
at java.lang.Thread.run(Thread.java:479)
Root cause:
java.io.IOException: Multipart data doesn't start with 
boundary
at 
org.apache.struts.upload.MultipartBoundaryInputStream.readFirs
tElement(MultipartBoundaryInputStream.java:348)
at 
org.apache.struts.upload.MultipartBoundaryInputStream.setInput
Stream(MultipartBoundaryInputStream.java:172)
at 
org.apache.struts.upload.MultipartIterator.parseRequest
(MultipartIterator.java:202)
at org.apache.struts.upload.MultipartIterator.
(MultipartIterator.java:171)
at 
org.apache.struts.upload.DiskMultipartRequestHandler.handleReq
uest(DiskMultipartRequestHandler.java:75)
at org.apache.struts.util.RequestUtils.populate
(RequestUtils.java:908)
at 
org.apache.struts.action.RequestProcessor.processPopulate
(RequestProcessor.java:795)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:244)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java)
at org.apache.tomcat.facade.ServletHandler.doService
(ServletHandler.java:574)
at org.apache.tomcat.core.Handler.invoke
(Handler.java:322)
at org.apache.tomcat.core.Handler.service
(Handler.java:235)
at org.apache.tomcat.facade.ServletHandler.service
(ServletHandler.java:485)
at 
org.apache.tomcat.facade.RequestDispatcherImpl.doForward
(RequestDispatcherImpl.java:272)
at 
org.apache.tomcat.facade.RequestDispatcherImpl.forward
(RequestDispatcherImpl.java:174)
at org.apache.struts.action.RequestProcessor.doForward
(RequestProcessor.java:976)
at 
org.apache.struts.action.RequestProcessor.processActionForward
(RequestProcessor.java:408)
at org.apache.struts.action.RequestProcessor.process
(RequestProcessor.java:269)
at org.apache.struts.action.ActionServlet.process
(ActionServlet.java:1110)
at org.apache.struts.action.ActionServlet.doPost
(ActionServlet.java:470)