Subject: Re: File Upload - MultipartRequest, Weblogic 6.1 and Servlet 2.3
From: "Andrej Sobkowski" <[EMAIL PROTECTED]>
 ===
Got it! Here is the solution:

http://www.mail-archive.com/struts-dev@jakarta.apache.org/msg06077.html

[Copy&Paste]
when you use struts in combination with a Weblogic servlet container and
you would like to use multipart forms for a file upload, you get a
500 error :o( .

But it's easy to fix !

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();
}


Reason: Bea checks the request like this:

if(servletrequest instanceof HttpServletRequestWrapper) {
....
} else {
    throw new ServletException("Original request not available");
}
[End Copy&Paste]


"Andrej" <[EMAIL PROTECTED]> wrote in message
news:abr1mk$ego$[EMAIL PROTECTED]...
> Hello All,
>
> I'm having big problems uploading files in the following environment:
Struts
> 1.1b1, Weblogic 6.1 sp2 on Solaris 8. I keep getting a warning followed by
> an exception (both are shown below).
>
> I believe the problem to be related with the MultipartRequestWrapper and
the
> fact that I'm using the Servlet spec 2.3. I've checked the code and there
> are a few 2.3 methods that return null or do nothing (getParameterMap,
> getRequestURL, ...). I've tried adding an implementation but without
> success.
>
> Something doesn't work well when forwarding back to the client. The
request
> wrapped inside the MultipartRequestWrapper is either lost or partially
lost.
>
> Anybody has any suggestions? I saw similar issues but no solutions in the
> mailing lists.
>
> Thanks!
>
> Andrej
>
> * Warning:
> <WebAppServletContext(6990692,ecct,/ecct) One of the getParameter family
of
> methods called after reading from the ServletInputStream, not merging post
> parameters>
>
> * Exception
> ####<May 13, 2002 4:59:01 PM EDT> <Error> <HTTP> <devsnrs2> <myserver>
> <ExecuteThread: '10' for queue: 'default'> <> <> <101018>
> <[WebAppServletContext(6990692,ecct,/ecct)] Servlet failed with
> ServletException>
> javax.servlet.ServletException: Original request not available
>         at
>
weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImp
> l.java:115)
>         at
>
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:97
> 5)
>         at
>
org.apache.struts.action.RequestProcessor.processActionForward(RequestProces
> sor.java:408)
>         at
>
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:269)
>         at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1109)
>         at
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:470)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at
>
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
> :265)
>         at
>
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
> :200)
>         at
>
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
> ntext.java:2495)
>         at
>
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
> :2204)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
>
>
>
>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to