weblogic 12.2.1部署问题
weblogic 12.2.1 deployment issue
我在 WL 12.2.1 服务器中尝试部署 ear 文件时收到 NPE。在 Weblogic 12.1.3 中可以毫无问题地部署 ear。这是错误日志。
几天来一直试图解决这个问题,但没有成功。知道为什么 NPE 来自 WebLogic 包吗?
Error:: "Deployer BEA-149265 Failure occurred in the execution of
deployment request with ID "17802533653132"for task "1" on
[partition-name: DOMAIN].
Error is: "weblogic.utils.ErrorCollectionException:
[java] WLST-WLS-1529953358794:
[java] WLST-WLS-1529953358794: There are 2 nested errors:
[java] WLST-WLS-1529953358794:
[java] WLST-WLS-1529953358794: weblogic.application.ModuleException: java.lang.NullPointerException
[java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:192)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:187)
[java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
[java] WLST-WLS-1529953358794: at weblogic.work.ContextWrap.run(ContextWrap.java:46)
[java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666)
[java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348)
[java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333)
[java] WLST-WLS-1529953358794: at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54)
[java] WLST-WLS-1529953358794: at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
[java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640)
[java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406)
[java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)"
"Caused by: java.lang.NullPointerException
[java] WLST-WLS-1529953358794: at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
[java] WLST-WLS-1529953358794: at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
[java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.createSpringInstrumentorEngineIfNecessary(SpringClassPreprocessor.java:67)
[java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.(SpringClassPreprocessor.java:26)
[java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringInstrumentationUtils.addSpringInstrumentor(SpringInstrumentationUtils.java:87)
[java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.doInstrumentation(WebAppInternalModuleExtension.java:113)
[java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.access0(WebAppInternalModuleExtension.java:102)
[java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension.prePrepare(WebAppInternalModuleExtension.java:57)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:293)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:285)
[java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:109)
[java] WLST-WLS-1529953358794: ... 13 more
[java] WLST-WLS-1529953358794:
[java] WLST-WLS-1529953358794: and
[java] WLST-WLS-1529953358794:
[java] WLST-WLS-1529953358794: weblogic.application.ModuleException: java.lang.NullPointerException
[java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:192)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:187)
[java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
[java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextStateInParallel(StateMachineDriver.java:144)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.parallelPrepare(ModuleStateDriver.java:46)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:75)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:55)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.BaseDeployment.next(BaseDeployment.java:727)
[java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:239)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:66)
[java] WLST-WLS-1529953358794: at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:65)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:229)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:103)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:241)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:794)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1340)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:267)
[java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:177)
[java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:186)
[java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access[=10=]0(DeploymentReceiverCallbackDeliverer.java:14)
[java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.run(DeploymentReceiverCallbackDeliverer.java:47)
[java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666)
[java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348)
[java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333)
[java] WLST-WLS-1529953358794: at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54)
[java] WLST-WLS-1529953358794: at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
[java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640)
[java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406)
[java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)"
终于找到了解决方案,问题是 antlr-2.7 的 jar 文件。6.jar 打包的 ear 文件与默认的 class 加载器冲突。
解决方案:-更改 weblogic.xml 以添加要从应用程序而不是默认 class 加载程序加载的 antlr 包。
另一个解决方案:添加
set JAVA_OPTIONS=%JAVA_OPTIONS% -DANTLR_USE_DIRECT_CLASS_LOADING=true
… setDomainEnv.cmd
也为我工作
我在 WL 12.2.1 服务器中尝试部署 ear 文件时收到 NPE。在 Weblogic 12.1.3 中可以毫无问题地部署 ear。这是错误日志。 几天来一直试图解决这个问题,但没有成功。知道为什么 NPE 来自 WebLogic 包吗?
Error:: "Deployer BEA-149265 Failure occurred in the execution of deployment request with ID "17802533653132"for task "1" on [partition-name: DOMAIN].
Error is: "weblogic.utils.ErrorCollectionException: [java] WLST-WLS-1529953358794: [java] WLST-WLS-1529953358794: There are 2 nested errors: [java] WLST-WLS-1529953358794: [java] WLST-WLS-1529953358794: weblogic.application.ModuleException: java.lang.NullPointerException [java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:192) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:187) [java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83) [java] WLST-WLS-1529953358794: at weblogic.work.ContextWrap.run(ContextWrap.java:46) [java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666) [java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) [java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) [java] WLST-WLS-1529953358794: at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) [java] WLST-WLS-1529953358794: at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) [java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640) [java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406) [java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)"
"Caused by: java.lang.NullPointerException [java] WLST-WLS-1529953358794: at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011) [java] WLST-WLS-1529953358794: at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006) [java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.createSpringInstrumentorEngineIfNecessary(SpringClassPreprocessor.java:67) [java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.(SpringClassPreprocessor.java:26) [java] WLST-WLS-1529953358794: at weblogic.spring.monitoring.instrumentation.SpringInstrumentationUtils.addSpringInstrumentor(SpringInstrumentationUtils.java:87) [java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.doInstrumentation(WebAppInternalModuleExtension.java:113) [java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.access0(WebAppInternalModuleExtension.java:102) [java] WLST-WLS-1529953358794: at weblogic.servlet.internal.WebAppInternalModuleExtension.prePrepare(WebAppInternalModuleExtension.java:57) [java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:293) [java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:285) [java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) [java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:109) [java] WLST-WLS-1529953358794: ... 13 more [java] WLST-WLS-1529953358794: [java] WLST-WLS-1529953358794: and [java] WLST-WLS-1529953358794: [java] WLST-WLS-1529953358794: weblogic.application.ModuleException: java.lang.NullPointerException [java] WLST-WLS-1529953358794: at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:192) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.next(ModuleStateDriver.java:187) [java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83) [java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextStateInParallel(StateMachineDriver.java:144) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.ModuleStateDriver.parallelPrepare(ModuleStateDriver.java:46) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:75) [java] WLST-WLS-1529953358794: at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:55) [java] WLST-WLS-1529953358794: at weblogic.application.internal.BaseDeployment.next(BaseDeployment.java:727) [java] WLST-WLS-1529953358794: at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) [java] WLST-WLS-1529953358794: at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:239) [java] WLST-WLS-1529953358794: at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:66) [java] WLST-WLS-1529953358794: at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:65) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:229) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:103) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:241) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:794) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1340) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:267) [java] WLST-WLS-1529953358794: at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:177) [java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:186) [java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access[=10=]0(DeploymentReceiverCallbackDeliverer.java:14) [java] WLST-WLS-1529953358794: at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.run(DeploymentReceiverCallbackDeliverer.java:47) [java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666) [java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) [java] WLST-WLS-1529953358794: at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) [java] WLST-WLS-1529953358794: at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) [java] WLST-WLS-1529953358794: at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) [java] WLST-WLS-1529953358794: at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640) [java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406) [java] WLST-WLS-1529953358794: at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)"
终于找到了解决方案,问题是 antlr-2.7 的 jar 文件。6.jar 打包的 ear 文件与默认的 class 加载器冲突。 解决方案:-更改 weblogic.xml 以添加要从应用程序而不是默认 class 加载程序加载的 antlr 包。
另一个解决方案:添加
set JAVA_OPTIONS=%JAVA_OPTIONS% -DANTLR_USE_DIRECT_CLASS_LOADING=true
… setDomainEnv.cmd
也为我工作