java.lang.IncompatibleClassChangeError:实现类weblogic 12c

问题描述 投票:0回答:1

我正在尝试在weblogic 12c(支持Java 6,7,8)中部署我的旧应用程序,但是每次显示java.lang.IncompatibleClassChangeError:实现类时,我都无法理解什么是确切的问题,如何解决这个问题,有人可以帮助我吗?在weblogic 10(支持Java 4,6,7)中,已成功部署

例外

<Dec 6, 2019 12:10:10,555 PM GMT> <Error> <HTTP> <WL-101216> <Servlet: "JerseyRESTService" failed to preload on startup in Web application: "CDMWeb.war".
A MultiException has 1 exceptions.  They are:
1. java.lang.IncompatibleClassChangeError: Implementing class

    at org.jvnet.hk2.internal.Utilities.justCreate(Utilities.java:1085)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.create(ServiceLocatorImpl.java:978)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize(ServiceLocatorImpl.java:1082)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize(ServiceLocatorImpl.java:1074)
    at org.glassfish.jersey.server.ApplicationHandler.createApplication(ApplicationHandler.java:385)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.IncompatibleClassChangeError: Implementing class
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:839)
    at com.oracle.classloader.PolicyClassLoader.innerDefineClass(PolicyClassLoader.java:686)
    at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:669)
    Truncated. see log file for complete stacktrace
> 
CDMGenericJobListener:contextDestroyed Event
<Dec 6, 2019 12:10:10,708 PM GMT> <Error> <Deployer> <WL-149265> <Failure occurred in the execution of deployment request with ID "43494609412439500" for task "3" on [partition-name: DOMAIN]. Error is: "weblogic.application.ModuleException: java.lang.IncompatibleClassChangeError: Implementing class"
weblogic.application.ModuleException: java.lang.IncompatibleClassChangeError: Implementing class
    at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:233)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:228)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.IncompatibleClassChangeError: Implementing class
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:839)
    at com.oracle.classloader.PolicyClassLoader.innerDefineClass(PolicyClassLoader.java:686)
    at com.oracle.classloader.PolicyClassLoader.defineClass(PolicyClassLoader.java:669)
    Truncated. see log file for complete stacktrace
> 
java weblogic
1个回答
0
投票
我可以看到您的应用正在使用Jersey框架。请参考此页https://docs.oracle.com/middleware/1213/wls/RESTF/use-jersey20-ri.htm#RESTF290

如果仍然遇到问题,请尝试使用Jersey框架的更新版本。在这种情况下,请注意,您必须修改web.xml文件以起诉正确的servlet类:

<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>

© www.soinside.com 2019 - 2024. All rights reserved.