struts中编译了类以后不重启或不重新部署应用会出错。

时间:2021-02-05 13:39:35
错误如下:
<2004-3-22 下午15时28分01秒 CST> <Error> <HTTP> <BEA-101020> <[ServletContext(id
=35056066,name=DefaultWebApp,context-path=)] Servlet failed with Exception
java.lang.ClassCastException: org.apache.struts.action.RequestProcessor
        at org.apache.struts.action.ActionServlet.getRequestProcessor(Lorg.apach
e.struts.config.ModuleConfig;)Lorg.apache.struts.action.RequestProcessor;(Action
Servlet.java:855)
        at org.apache.struts.action.ActionServlet.process(Ljavax.servlet.http.Ht
tpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(ActionServlet.java:1
482)
        at org.apache.struts.action.ActionServlet.doGet(Ljavax.servlet.http.Http
ServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(ActionServlet.java:507
)
        at javax.servlet.http.HttpServlet.service(Ljavax.servlet.http.HttpServle
tRequest;Ljavax.servlet.http.HttpServletResponse;)V(HttpServlet.java:740)
        at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;
Ljavax.servlet.ServletResponse;)V(HttpServlet.java:853)
        at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
()Ljava.lang.Object;(ServletStubImpl.java:971)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servle
t.ServletRequest;Ljavax.servlet.ServletResponse;Lweblogic.servlet.internal.Filte
rChainImpl;)V(ServletStubImpl.java:402)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servle
t.ServletRequest;Ljavax.servlet.ServletResponse;)V(ServletStubImpl.java:305)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run()Ljava.lang.Object;(WebAppServletContext.java:6350)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic.se
curity.subject.AbstractSubject;Ljava.security.PrivilegedAction;)Ljava.lang.Objec
t;(AuthenticatedSubject.java:317)
        at weblogic.security.service.SecurityManager.runAs(Lweblogic.security.ac
l.internal.AuthenticatedSubject;Lweblogic.security.acl.internal.AuthenticatedSub
ject;Ljava.security.PrivilegedAction;)Ljava.lang.Object;(SecurityManager.java:11
8)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogi
c.servlet.internal.ServletRequestImpl;Lweblogic.servlet.internal.ServletResponse
Impl;)V(WebAppServletContext.java:3635)
        at weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic.kernel
.ExecuteThread;)V(ServletRequestImpl.java:2585)
        at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest
;)V(ExecuteThread.java:197)
        at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:170)
        at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Sourc
e)
>

为什么会这样,可不可以不重启或不重新部署应用?

3 个解决方案

#1


在conf/server.xml下嵌入自己工程名的一段代码:
        <Context path="/××" docBase="××" 
        debug="0" privileged="true" reloadable="true" >
 
        </Context>

#2


对不起,我补充一下,我的服务器是wls81sp2。没用struts以前,编译类后使用很正常。

#3


对不起,我补充一下,我的服务器是wls81sp2。没用struts以前,编译类后使用很正常。

#1


在conf/server.xml下嵌入自己工程名的一段代码:
        <Context path="/××" docBase="××" 
        debug="0" privileged="true" reloadable="true" >
 
        </Context>

#2


对不起,我补充一下,我的服务器是wls81sp2。没用struts以前,编译类后使用很正常。

#3


对不起,我补充一下,我的服务器是wls81sp2。没用struts以前,编译类后使用很正常。