Sorry, I can't give you much insight to your exception, but I *can* say
that File upload works. I am using File upload on both WAS 5.0 and 4.0.
Off the top of my head, I can't think of anything special I had do to make
it work.
Susan Bradeen
On 04/04/2003 12:39:07 AM "Andrew Hill" wrote:
> My colleague is trying to make our application run on WebSphere (WAS
5.0),
> however we are encountering an error submitting multipart forms.
(Stacktrace
> pasted below)
> (Needless to say it all works sweet on TomCat...)
>
> Ive not had time to experiment with it myself, but it looks like WAS is
barfing
> on the org.apache.struts.upload.MultipartRequestWrapper object that
struts
> wraps multipart requests in so one can get at the parameters. This
implements
> HttpServletRequest but doesnt extend
> javax.servlet.http.HttpServletRequestWrapper in order to maintain
compatibility
> with Servlet2.2
>
> Is it a requirement in WAS or the Servlet specs that all
HttpServletRequest
> implementations extend this?
>
> (And why would it cause a problem? I thought the struts wrapper is
ditched
> before forwarding anyway?)
>
>
>
>
> [4/4/03 11:18:13:734 GMT+08:00] 691323f4 I UOW=
> source=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor
> class=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor method=
> org=IBM prod=WebSphere component=UNKNOWN
> Processing a 'POST' for path '/sysFoldersDispatchAction'
> [4/4/03 11:18:13:795 GMT+08:00] 691323f4 I UOW=
> source=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor
> class=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor method=
> org=IBM prod=WebSphere component=UNKNOWN
> Looking for ActionForm in OperationContext id=oc1
> [4/4/03 11:18:13:795 GMT+08:00] 691323f4 I UOW=
> source=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor
> class=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor method=
> org=IBM prod=WebSphere component=UNKNOWN
> Found ActionForm in OperationContext
> [4/4/03 11:18:14:305 GMT+08:00] 691323f4 O UOW= source=SystemOut
org=IBM
> prod=WebSphere component=Application Server
> {
> [4/4/03 11:18:14:305 GMT+08:00] 691323f4 I UOW=
> source=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor
> class=com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor method=
> org=IBM prod=WebSphere component=UNKNOWN
> Processing a 'POST' for path '/renderingAction'
> [4/4/03 11:18:16:458 GMT+08:00] 691323f4 E UOW=
> source=com.ibm.ws.webcontainer.srt.WebGroup org=IBM prod=WebSphere
> component=Application Server
> SRVE0026E: [Servlet Error]-[action]: java.lang.IllegalArgumentException:
> Request is not of javax.servlet.ServletRequestWrapper type
> at
>
com.ibm.ws.webcontainer.webapp.WebAppDispatcherRequest.getWASProxiedHttpServletR
> equest(WebAppDispatcherRequest.java:155)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppDispatcherRequest.getSession(WebAppDispatch
> erRequest.java:234)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppDispatcherRequest.getSession(WebAppDispatch
> erRequest.java:219)
> at
>
org.apache.struts.upload.MultipartRequestWrapper.getSession(MultipartRequestWrap
> per.java:242)
> at
>
com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor.processLocale(GTReque
> stProcessor.java:167)
> at
>
com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor.process(GTRequestProc
> essor.java:250)
> 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
>
com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletIns
> tance.java:110)
> at
>
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleS
> ervlet.java:174)
> at
>
com.ibm.ws.webcontainer.servlet.ServicingServletState.service(StrictLifecycleSer
> vlet.java:333)
> at
>
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleSe
> rvlet.java:116)
> at
>
com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:258
> )
> at
>
com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServlet
> ReferenceState.java:42)
> at
>
com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanc
> eReference.java:40)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebA
> ppRequestDispatcher.java:867)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDis
> patcher.java:491)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDisp
> atcher.java:173)
> at
>
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:972)
> at
>
org.apache.struts.action.RequestProcessor.processActionForward(RequestProcessor.
> java:408)
> at
>
com.gridnode.gtas.client.web.strutsbase.GTRequestProcessor.process(GTRequestProc
> essor.java:299)
> 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
>
com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletIns
> tance.java:110)
> at
>
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleS
> ervlet.java:174)
> at
>
com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.
> java:313)
> at
>
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleSe
> rvlet.java:116)
> at
>
com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:258
> )
> at
>
com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServlet
> ReferenceState.java:42)
> at
>
com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanc
> eReference.java:40)
> at
>
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java
> :76)
> at
>
com.gridnode.gtas.client.web.strutsbase.OperationContextFilter.doFilter(Operatio
> nContextFilter.java:75)
> at
>
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrap
> per.java:132)
> at
>
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java
> :71)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebA
> ppRequestDispatcher.java:863)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDis
> patcher.java:491)
> at
>
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDisp
> atcher.java:173)
> at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
> at
>
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.jav
> a:199)
> at
>
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(Cache
> dInvocation.java:71)
> at
>
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequest
> Processor.java:182)
> at
>
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.ja
> va:331)
> at
>
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56
> )
> at
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:432)
> at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:343)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:592)
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]