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]