I have a struts application that is using tiles and weblogic.  When I try 
to use a multipart form I get the Servlet Exception listed below.  I think 
I have traced it down to the UrlController class.  The execute method 
creates a RequestDispatcher and tries to call the include method.  The 
request that is being passed at this point is the MultipartRequestWrapper. 
 It seems that the container does not know what to do with this.  I 
noticed that there is code in the RequestProcessor's doForward method that 
unwraps the request.  Is this needed here?

        // Unwrap the multipart request, if there is one.
        if (request instanceof MultipartRequestWrapper) {
            request = ((MultipartRequestWrapper) request).getRequest();
        }


The action that handles this request is working ok.  The problem occurs 
after returning from the execute method of the action.  Is there a work 
around for this or some other cause I should look at for this error?


javax.servlet.ServletException: Original request not available
        at 
org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(
TilesRequestProcessor.java:226)
        at 
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(
TilesRequestProcessor.java:302)
        at org.apache.struts.action.RequestProcessor.process(
RequestProcessor.java:229)
        at org.apache.struts.action.ActionServlet.process(
ActionServlet.java:1194)
        at org.apache.struts.action.ActionServlet.doPost(
ActionServlet.java:432)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at 
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(
ServletStubImpl.java:996)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(
ServletStubImpl.java:419)
        at weblogic.servlet.internal.TailFilter.doFilter(
TailFilter.java:28)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at shaw.spectrum.web.security.CompressionFilter.doFilter(
CompressionFilter.java:38)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at shaw.spectrum.web.security.FilterAction.run(
FilterAction.java:42)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(
AuthenticatedSubject.java:363)
        at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:144)
        at weblogic.security.Security.runAs(Security.java:61)
        at shaw.spectrum.web.security.LoginFilter.loggedInUser(
LoginFilter.java:71)
        at shaw.spectrum.web.security.LoginFilter.doFilter(
LoginFilter.java:51)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(
WebAppServletContext.java:6458)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(
AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:118)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet(
WebAppServletContext.java:3661)
        at weblogic.servlet.internal.ServletRequestImpl.execute(
ServletRequestImpl.java:2630)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
<Jan 20, 2006 11:25:10 AM EST> <Error> <HTTP> <BEA-101018> 
<[ServletContext(id=23389154,name=spectrum,context-path=/spectrum)] 
Servlet failed with ServletException
javax.servlet.ServletException: Original request not available
        at weblogic.servlet.internal.RequestDispatcherImpl.include(
RequestDispatcherImpl.java:473)
        at weblogic.servlet.internal.RequestDispatcherImpl.include(
RequestDispatcherImpl.java:412)
        at org.apache.struts.tiles.UrlController.execute(
UrlController.java:89)
        at 
org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(
TilesRequestProcessor.java:219)
        at 
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(
TilesRequestProcessor.java:302)
        at org.apache.struts.action.RequestProcessor.process(
RequestProcessor.java:229)
        at org.apache.struts.action.ActionServlet.process(
ActionServlet.java:1194)
        at org.apache.struts.action.ActionServlet.doPost(
ActionServlet.java:432)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at 
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(
ServletStubImpl.java:996)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(
ServletStubImpl.java:419)
        at weblogic.servlet.internal.TailFilter.doFilter(
TailFilter.java:28)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at shaw.spectrum.web.security.CompressionFilter.doFilter(
CompressionFilter.java:38)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at shaw.spectrum.web.security.FilterAction.run(
FilterAction.java:42)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(
AuthenticatedSubject.java:363)
        at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:144)
        at weblogic.security.Security.runAs(Security.java:61)
        at shaw.spectrum.web.security.LoginFilter.loggedInUser(
LoginFilter.java:71)
        at shaw.spectrum.web.security.LoginFilter.doFilter(
LoginFilter.java:51)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(
FilterChainImpl.java:27)
        at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(
WebAppServletContext.java:6458)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(
AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(
SecurityManager.java:118)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet(
WebAppServletContext.java:3661)
        at weblogic.servlet.internal.ServletRequestImpl.execute(
ServletRequestImpl.java:2630)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
> 

Nick E. Tsengas
Software Developer
Shaw Systems Associates, Inc.
[EMAIL PROTECTED]
804-272-3800 x211
804-272-1727 fax
Note: This communication may contain privileged, proprietary, or other 
confidential information. It is intended solely for the use of the 
intended recipient. Unauthorized use of this information is prohibited. 
Please notify the sender if you have received this communication in error.

Reply via email to