2014-08-29 89 views
0

我已經部署在Weblogic的10.3.6.0的EAR,我得到了一個錯誤:java.lang.NoClassDefFoundError:組織/阿帕奇/支柱/動作/ MappingDispatchAction

Error 500--Internal Server Error 
java.lang.NoClassDefFoundError: org/apache/struts/actions/MappingDispatchAction 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClassCond(ClassLoader.java:630) 
     at java.lang.ClassLoader.defineClass(ClassLoader.java:614) 
     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
     at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
     at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:305) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:294) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:246) 
     at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179) 
     at weblogic.utils.classloaders.FilteringClassLoader.findClass(FilteringClassLoader.java:101) 
     at weblogic.utils.classloaders.FilteringClassLoader.loadClass(FilteringClassLoader.java:86) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:294) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:294) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:246) 
     at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179) 
     at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43) 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClassCond(ClassLoader.java:630) 
     at java.lang.ClassLoader.defineClass(ClassLoader.java:614) 
     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
     at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:343) 
     at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:302) 
     at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270) 
     at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:305) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:246) 
     at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179) 
     at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43) 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClassCond(ClassLoader.java:630) 
     at java.lang.ClassLoader.defineClass(ClassLoader.java:614) 
     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
     at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:343) 
     at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:302) 
     at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270) 
     at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:305) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:246) 
     at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179) 
     at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43) 
     at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:117) 
     at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:143) 
     at org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:280) 
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:218) 
     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:727) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
     at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) 
     at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) 
     at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301) 
     at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) 
     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60) 
     at mx.com.softtek.infra.filters.LoginFilter.doFilter(LoginFilter.java:93) 
     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60) 
     at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119) 
     at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315) 
     at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442) 
     at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103) 
     at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171) 
     at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) 
     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60) 
     at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139) 
     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60) 
     at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3739) 
     at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3705) 
     at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 
     at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 
     at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2282) 
     at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2181) 
     at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1491) 
     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) 
     at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) 

我的耳朵的結構是:

App.ear 
---- META-INF 
     --- Application.xml 
     --- Manifest.mf (empty) 
     --- weblogic-application.xml 
--- App.war 
     --- jsp files 
     --- META-INF 
        -- Manifest.mf (empty) 
        -- Context.xml 
     --- WEB-INF 
        -- classes 
        -- lib 
        -- tags 
        -- tld 
        -- applicationContext.xml 
        -- struts-config.xml 
        -- validator-rules.xml 
        -- web.xml 

當我登錄應用程序時(index.jsp正常,應用程序裝載良好,沒有問題),就會出現此錯誤。例如,我可以訪問「myapplication/login /」,並且輸入用戶名和密碼,當我推入buttom「登錄」時,struts庫開始工作。

我認爲這是manifest.mf和classpath的問題,但我嘗試了幾次,沒有任何工作。有人可以幫助我嗎? 謝謝


+0

可能有可能出現一些靜態初始化出錯,並且這是後續過程中的一個症狀。你在Weblogic啓動中看到任何異常嗎? – coffeeaddict 2014-08-29 20:29:27

+0

你好,謝謝你的回覆。 我在Weblogic啓動時看不到異常。 如果我在Tomcat上部署「.war」沒有問題,並且應用程序可以正常工作。 – 2014-08-29 20:41:08

+0

下一個問題將是在lib文件夾中是什麼?它有包含MappingDispatchAction的jar嗎? – coffeeaddict 2014-08-29 20:44:17

回答

0

是否可以粘貼整個錯誤。在過去,我看到這可能是因爲你沒有所需的班級,但是由於班級衝突而發生了這種情況。

請驗證這些: 1.你有多個jar引用這個特定的類和/或你有多個版本的類文件嗎? 2.既然您使用10.3.6,您是否嘗試過使用wls-cat? 3.你的所有數據庫連接是否準確並且功能正常?請取消目標並重新定位您的所有數據源。

問題的解決會讓整個錯誤變得簡單很多,不幸的是,我無法評論,所以我不得不作出回答。當我看到整個錯誤時,我會盡快進行編輯。

+0

我只是通過添加總的錯誤編輯我的問題,你可以幫我嗎? – 2014-09-01 16:24:13

+0

你是否能夠驗證沒有衝突類文件,版本明智。還請看看這個http://stackoverflow.com/questions/12339696/java-lang-classnotfoundexception-org-apache-struts-action-actionservlet和http://www.mkyong。 COM /支柱/ JAVA琅ClassNotFoundException的-ORG-Apache的支柱作用,forwardaction / – 2014-09-01 18:10:44

相關問題