我正在使用从“ EAR A”到“ EAR B”的编码形式。
当我尝试处理请求时:
accion = "/decimprenta";
pagina = "/procesardeclaracion.do";
this.getServlet().getServletContext().getContext(accion).getRequestDispatcher(pagina).forward(request, response);
“ EAR A”引发以下异常:
java.lang.RuntimeException: SRV.8.2: RequestWrapper objects must extend ServletRequestWrapper or HttpServletRequestWrapper
at com.ibm.wsspi.webcontainer.util.ServletUtil.unwrapRequest(ServletUtil.java:91)
at com.ibm.wsspi.webcontainer.util.ServletUtil.unwrapRequest(ServletUtil.java:63)
at com.ibm.wsspi.webcontainer.util.ServletUtil.unwrapRequest(ServletUtil.java:58)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1127)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:191)
浏览时,我发现此链接具有相同的错误,但补丁程序是WAS的版本6。我正在使用WAS 8:
http://www-01.ibm.com/support/docview.wss?uid=swg1PM10357
任何想法?
最佳答案
您正在使用哪个版本的Struts?如果您使用的是1.2.7或更高版本,则将看到此错误。
我在使用时遇到了这个问题
<form enctype="multipart/form-data">
这是因为使用MultipartRequestWrapper时。在版本1.2。*中,MultipartRequestWrapper扩展的java.lang.Object
在1.3。*中,MultiPartRequestWrapper扩展了HttpServletRequestWrapper
我在WAS 8.5中发现了相同的问题,但是更新支撑架解决了该问题。
希望这可以帮助