【问题标题】:Weblogic .ear deployment java.lang.ClassNotFoundExceptionWeblogic .ear 部署 java.lang.ClassNotFoundException
【发布时间】:2014-07-14 17:28:27
【问题描述】:

当我在 weblogic 12c 上部署 .ear 文件时,出现以下错误。

java.lang.ClassNotFoundException: com.abc.util.CustomUtility
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:335)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:302)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:180)


<Administration Console encountered the following error: weblogic.application.WrappedDeploymentException: com.abc.util.CustomUtility
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:335)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:302)

一旦我部署 .ear 文件,就会出现上述错误。它抱怨 ClassNotFoundException 是项目中用户定义的类。

我看到所有 .classes 都是 .ear 文件的一部分。还是为什么会出现这个问题?

请帮帮我。

【问题讨论】:

    标签: java weblogic12c


    【解决方案1】:

    当我在多个项目上定义了实用程序类时,我已经看到了这个问题。 .class 在 .ear 中,但应用程序找不到它。

    在我的情况下,将缺少的类项目添加到清单文件中解决了问题。

    【讨论】:

    • 感谢您提供的信息。我已将 .class 文件添加到 jar 并保存在 weblogic/userdomain/lib 文件夹中。错误消失了。由于我的 .ear 里面有多个 .jar 文件,我将这些 .jar 放在 weblogic/userdomain/lib 文件夹中。工作正常。这是正确的做法吗?
    • 我不确定这是否是最好的方法,但你可以在这里查看http://docs.oracle.com/cd/E21764_01/web.1111/e13706/classloading.htm
    【解决方案2】:

    接受的答案并没有解决我们的问题。我们通过将包(缺少的类)添加到 weblogic-application.xml 中的 prefer-application-packages 部分来解决它

        <!-- to load classes of the packages from application context first and not from server context.  -->
        <prefer-application-packages>
            <package-name>antlr.*</package-name>
            <package-name>org.apache.*</package-name>
            <package-name>org.hibernate.*</package-name>
            <package-name>org.springframework.*</package-name>
            <package-name>org.aopalliance.*</package-name>
            <package-name>org.objectweb.*</package-name>
            <package-name>net.sf.cglib.*</package-name>
            ...
        </prefer-application-packages>
    </weblogic-application>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-05
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      • 2013-01-20
      • 2013-02-06
      • 1970-01-01
      • 2012-03-17
      相关资源
      最近更新 更多