2017-05-13 2 views
1

in Eclipse IDE, wenn ich versuche, einen JavaEE Web-App in WebLogic Server mit geo2ip API zu veröffentlichen, erhalte ich die folgende Fehlermeldung:Fehler bei MaxMind geo2ip in Weblogic 12.2.1 und Maven

java.lang.Exception: Exception received from deployment driver. See Error Log view for more detail. 
    at oracle.eclipse.tools.weblogic.server.internal.DeploymentProgressListener.watch(DeploymentProgressListener.java:193) 
    at oracle.eclipse.tools.weblogic.server.internal.WlsJ2EEDeploymentHelper.startModule(WlsJ2EEDeploymentHelper.java:1178) 
    at oracle.eclipse.tools.weblogic.server.internal.WlsJ2EEDeploymentHelper.deployAutoGenerateEarApplication(WlsJ2EEDeploymentHelper.java:843) 
    at oracle.eclipse.tools.weblogic.server.internal.WeblogicServerBehaviour.publishWeblogicModules(WeblogicServerBehaviour.java:1452) 
    at oracle.eclipse.tools.weblogic.server.internal.WeblogicServerBehaviour.publishToServer(WeblogicServerBehaviour.java:944) 
    at oracle.eclipse.tools.weblogic.server.internal.WeblogicServerBehaviour.publishOnce(WeblogicServerBehaviour.java:735) 
    at oracle.eclipse.tools.weblogic.server.internal.WeblogicServerBehaviour.publish(WeblogicServerBehaviour.java:584) 
    at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:774) 
    at org.eclipse.wst.server.core.internal.Server.publishImpl(Server.java:3172) 
    at org.eclipse.wst.server.core.internal.Server$PublishJob.run(Server.java:345) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) 
Caused by: weblogic.management.DeploymentException: CDI deployment failure:class com.fasterxml.jackson.databind.ext.CoreXMLDeserializers$Std overrides final method deserialize.(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object; 
    at com.oracle.injection.integration.CDIAppDeploymentExtension.initCdi(CDIAppDeploymentExtension.java:95) 
    at com.oracle.injection.integration.CDIAppDeploymentExtension.activate(CDIAppDeploymentExtension.java:43) 
    at weblogic.application.internal.flow.AppDeploymentExtensionFlow.activate(AppDeploymentExtensionFlow.java:39) 
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:750) 
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) 
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:260) 
    at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:66) 
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165) 
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:90) 
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:627) 
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:171) 
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:121) 
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:151) 
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:347) 
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:901) 
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1456) 
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:456) 
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:181) 
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:217) 
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:14) 
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:69) 
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666) 
    at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) 
    at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) 
    at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) 
    at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) 
    at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640) 
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406) 
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:346) 
Caused by: java.lang.VerifyError: class com.fasterxml.jackson.databind.ext.CoreXMLDeserializers$Std overrides final method deserialize.(Lcom/fasterxml/jackson/core/JsonParser;Lcom/fasterxml/jackson/databind/DeserializationContext;)Ljava/lang/Object; 

    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at weblogic.utils.classloaders.GenericClassLoader.defineClassInternal(GenericClassLoader.java:1110) 
    at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:1043) 
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:1035) 
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:987) 
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:83) 
    at weblogic.utils.classloaders.GenericClassLoader.doFindClass(GenericClassLoader.java:608) 
    at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:540) 
    at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:493) 
    at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:470) 
    at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:53) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:348) 
    at com.oracle.injection.provider.weld.BasicResourceLoader.classForName(BasicResourceLoader.java:40) 
    at org.jboss.weld.bootstrap.AnnotatedTypeLoader.loadClass(AnnotatedTypeLoader.java:65) 
    at org.jboss.weld.bootstrap.AnnotatedTypeLoader.loadAnnotatedType(AnnotatedTypeLoader.java:60) 
    at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:97) 
    at org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:135) 
    at org.jboss.weld.bootstrap.BeanDeployment.createClasses(BeanDeployment.java:203) 
    at org.jboss.weld.bootstrap.WeldStartup.startInitialization(WeldStartup.java:375) 
    at org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(WeldBootstrap.java:76) 
    at com.oracle.injection.provider.weld.WeldInjectionContainer.initialize(WeldInjectionContainer.java:94) 
    at com.oracle.injection.integration.CDIAppDeploymentExtension.initCdi(CDIAppDeploymentExtension.java:80) 

Meine depency Hierarchie in der pom.xml ist:

[INFO] project:project:war:0.0.1-SNAPSHOT 
[INFO] +- com.maxmind.geoip2:geoip2:jar:2.9.0:compile 
[INFO] | +- com.maxmind.db:maxmind-db:jar:1.2.2:compile 
[INFO] | +- org.apache.httpcomponents:httpclient:jar:4.5.3:compile 
[INFO] | | +- org.apache.httpcomponents:httpcore:jar:4.4.6:compile 
[INFO] | | +- commons-logging:commons-logging:jar:1.2:compile 
[INFO] | | \- commons-codec:commons-codec:jar:1.9:compile 
[INFO] | \- com.fasterxml.jackson.core:jackson-databind:jar:2.8.8.1:compile 
[INFO] |  +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile 
[INFO] |  \- com.fasterxml.jackson.core:jackson-core:jar:2.8.8:compile 
[INFO] +- net.bootsfaces:bootsfaces:jar:1.0.2:compile 
[INFO] +- org.mybatis:mybatis:jar:3.4.2:compile 
[INFO] +- javax:javaee-api:jar:6.0:compile 
[INFO] \- junit:junit:jar:4.12:compile 
[INFO] \- org.hamcrest:hamcrest-core:jar:1.3:compile 

ich habe versucht, die com.fasterxml.jackson Abhängigkeit von der geo2ip Abhängigkeit ausgenommen, aber es hat nicht funktioniert. Ich habe viel nach diesem Problem geforscht, aber ich kann niemanden finden, der das gleiche Problem hat.

Antwort

0

Das klingt wie ein Abhängigkeitskonflikt. Weblogic erfordert wahrscheinlich eine ältere Version von Jackson, während geoip2 eine aktuelle Version benötigt. Sie könnten versuchen, zu einer älteren Version von geoip2 wie 2.4.0 wechseln, die mit älteren Versionen von Jackson funktionieren sollte.

+0

Ich habe versucht, Version 2.4.0, sogar mit Version 2.1.0, aber der gleiche Fehler erscheint immer wieder. – Cafe

+0

Wenn Sie die 'com.fasterxml.jackson.core: jackson-databind'-Abhängigkeit in' geoip2' ausgeschlossen haben, haben Sie den gleichen oder einen anderen Fehler von 'geoip2' selbst erhalten? –

Verwandte Themen