在Weblogic 12.2.1上部署项目时出现NullPointerException

时间:2016-12-30 09:54:50

标签: spring weblogic weblogic12c

我们在Weblogic 10.3.6上有一个JSF应用程序,我们尝试在Weblogic 12.2.1上部署。
有关信息,我们成功部署了Weblogic 12.1.3而没有对项目进行任何更改 在Weblogic 12.2.1上部署时,我们面临NullPointerException:

.
.
JAVA Memory arguments: -Xms256m -Xmx512m -XX:CompileThreshold=8000
.
CLASSPATH=C:\tools\java8\JDK18~1.0_1\lib\tools.jar;C:\BEA122~1.1\wlserver\server\lib\weblogic.jar;C:\BEA122~1.1\oracle_common\modules\net.sf.antcontrib_1.1.0.0_1-0b3\lib\ant-contrib.jar;C:\BEA122~1.1\wlserver\modules\features\oracle.wls.common.nodemanager.jar;C:\BEA122~1.1\oracle_common\modules\com.oracle.cie.config-wls-online_8.2.0.0.jar;C:\BEA122~1.1\wlserver\common\derby\lib\derbyclient.jar;C:\BEA122~1.1\wlserver\common\derby\lib\derby.jar;C:\PROGRA~2\INSTAN~1\ojdbc14.jar
.
PATH=C:\BEA122~1.1\USER_P~1\domains\myDomain\bin;;C:\BEA122~1.1\wlserver\server\native\win\x64;C:\BEA122~1.1\wlserver\server\bin;C:\BEA122~1.1\oracle_common\modules\org.apache.ant_1.9.2\bin;C:\tools\java8\JDK18~1.0_1\jre\bin;C:\tools\java8\JDK18~1.0_1\bin;C:\PROGRA~3\Oracle\Java\javapath;C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem;C:\Windows\System32\WINDOW~1\v1.0\;C:\PROGRA~2\QUICKT~1\QTSystem;C:\PROGRA~2\INSTAN~1\;C:\PROGRA~1\TORTOI~1\bin;C:\tools\org\apache\maven\maven\303812~1.3\bin;C:\tools\com\sun\java\jdk\6U23-W~1\bin;C:\PROGRA~2\NETCDF~1;C:\BEA122~1.1\wlserver\server\native\win\x64\oci920_8
.
***************************************************
*  To start WebLogic Server, use a username and   *
*  password assigned to an admin-level user.  For *
*  server administration, use the WebLogic Server *
*  console at http:\\hostname:port\console        *
***************************************************
Starting WLS with line:
C:\tools\java8\JDK18~1.0_1\bin\java -server -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n -Djava.compiler=NONE  -Xms256m -Xmx512m -XX:CompileThreshold=8000 -Dweblogic.Name=AdminServer -Djava.security.policy=C:\BEA122~1.1\wlserver\server\lib\weblogic.policy  -Xverify:none -Djava.system.class.loader=com.oracle.classloader.weblogic.LaunchClassLoader  -javaagent:C:\BEA122~1.1\wlserver\server\lib\debugpatch-agent.jar -ea -da:com.bea... -da:javelin... -da:weblogic... -ea:com.bea.wli... -ea:com.bea.broker... -ea:com.bea.sbconsole... -Dwls.home=C:\BEA122~1.1\wlserver\server -Dweblogic.home=C:\BEA122~1.1\wlserver\server      weblogic.Server
Listening for transport dt_socket at address: 8453
<30 déc. 2016 10 h 11 CET> <Info> <Security> <BEA-090905> <Disabling the CryptoJ JCE Provider self-integrity check for better startup performance. To enable this check, specify -Dweblogic.security.allowCryptoJDefaultJCEVerification=true.> 
<30 déc. 2016 10 h 11 CET> <Info> <Security> <BEA-090906> <Changing the default Random Number Generator in RSA CryptoJ from ECDRBG128 to HMACDRBG. To disable this change, specify -Dweblogic.security.allowCryptoJDefaultPRNG=true.> 
<30 déc. 2016 10 h 11 CET> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) 64-Bit Server VM Version 25.112-b15 from Oracle Corporation.> 
<30 déc. 2016 10 h 11 CET> <Info> <RCM> <BEA-2165021> <"ResourceManagement" is not enabled in this JVM. Enable "ResourceManagement" to use the WebLogic Server "Resource Consumption Management" feature. To enable "ResourceManagement", you must specify the following JVM options in the WebLogic Server instance in which the JVM runs: -XX:+UnlockCommercialFeatures -XX:+ResourceManagement.> 
<30 déc. 2016 10 h 11 CET> <Info> <Management> <BEA-141107> <Version: WebLogic Server 12.2.1.0.0 Tue Oct  6 10:05:47 PDT 2015 1721936> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING.> 
<30 déc. 2016 10 h 11 CET> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool.> 
<30 déc. 2016 10 h 11 CET> <Info> <WorkManager> <BEA-002942> <CMM memory level becomes 0. Setting standby thread pool size to 256.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Log Management> <BEA-170019> <The server log file weblogic.logging.FileStreamHandler instance=892551724
Current log file=C:\bea12.2.1\user_projects\domains\myDomain\servers\AdminServer\logs\AdminServer.log
Rotation dir=C:\bea12.2.1\user_projects\domains\myDomain\servers\AdminServer\logs
 is opened. All server side log events will be written to this file.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Security> <BEA-090946> <Security pre-initializing using security realm: myrealm> 
<30 déc. 2016 10 h 11 CET> <Notice> <Security> <BEA-090947> <Security post-initializing using security realm: myrealm> 
<30 déc. 2016 10 h 11 CET> <Notice> <Security> <BEA-090082> <Security initialized using administrative security realm: myrealm> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Log Management> <BEA-170036> <The Logging monitoring service timer has started to check for logged message counts every 30 seconds.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Log Management> <BEA-170027> <The server has successfully established a connection with the Domain level Diagnostic Service.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 127.0.0.1:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Warning> <Server> <BEA-002611> <The hostname "DSP0761974.atlas.edf.fr", maps to multiple IP addresses: 163.81.65.152, 0:0:0:0:0:0:0:1.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 163.81.65.152:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000331> <Started the WebLogic Server Administration Server "AdminServer" for domain "myDomain" running in development mode.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default[2]" is now listening on 0:0:0:0:0:0:0:1:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 127.0.0.1:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 163.81.65.152:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Notice> <Server> <BEA-002613> <Channel "Default[2]" is now listening on 0:0:0:0:0:0:0:1:7001 for protocols iiop, t3, ldap, snmp, http.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000360> <The server started in RUNNING mode.> 
<30 déc. 2016 10 h 11 CET> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING.> 
<30 déc. 2016 10 h 12 CET> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID "1668134555370" for task "0" on [partition-name: DOMAIN]. Error is: "weblogic.application.ModuleException: java.lang.NullPointerException"
weblogic.application.ModuleException: java.lang.NullPointerException
    at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:196)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:191)
    at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.NullPointerException
    at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
    at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.createSpringInstrumentorEngineIfNecessary(SpringClassPreprocessor.java:67)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.<init>(SpringClassPreprocessor.java:26)
    at weblogic.spring.monitoring.instrumentation.SpringInstrumentationUtils.addSpringInstrumentor(SpringInstrumentationUtils.java:87)
    Truncated. see log file for complete stacktrace
> 
<30 déc. 2016 10 h 12 CET> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application "MyProject-ear".> 
<30 déc. 2016 10 h 12 CET> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
weblogic.application.ModuleException: java.lang.NullPointerException
    at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:196)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:191)
    at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.NullPointerException
    at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
    at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.createSpringInstrumentorEngineIfNecessary(SpringClassPreprocessor.java:67)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.<init>(SpringClassPreprocessor.java:26)
    at weblogic.spring.monitoring.instrumentation.SpringInstrumentationUtils.addSpringInstrumentor(SpringInstrumentationUtils.java:87)
    Truncated. see log file for complete stacktrace

这是完整的堆栈跟踪:

weblogic.application.ModuleException: java.lang.NullPointerException
    at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:196)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:191)
    at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
    at weblogic.application.utils.StateMachineDriver.nextStateInParallel(StateMachineDriver.java:144)
    at weblogic.application.internal.flow.ModuleStateDriver.parallelPrepare(ModuleStateDriver.java:50)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:76)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:730)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:242)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:67)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:229)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:103)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:237)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:792)
    at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1306)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:264)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:177)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:643)
    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:617)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:397)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)
Caused By: java.lang.NullPointerException
    at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
    at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.createSpringInstrumentorEngineIfNecessary(SpringClassPreprocessor.java:67)
    at weblogic.spring.monitoring.instrumentation.SpringClassPreprocessor.<init>(SpringClassPreprocessor.java:26)
    at weblogic.spring.monitoring.instrumentation.SpringInstrumentationUtils.addSpringInstrumentor(SpringInstrumentationUtils.java:87)
    at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.doInstrumentation(WebAppInternalModuleExtension.java:113)
    at weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension.access$400(WebAppInternalModuleExtension.java:102)
    at weblogic.servlet.internal.WebAppInternalModuleExtension.prePrepare(WebAppInternalModuleExtension.java:57)
    at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:293)
    at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:285)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:109)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:196)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:191)
    at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83)
    at weblogic.application.utils.StateMachineDriver.nextStateInParallel(StateMachineDriver.java:144)
    at weblogic.application.internal.flow.ModuleStateDriver.parallelPrepare(ModuleStateDriver.java:50)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:76)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:730)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:242)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:67)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:229)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:103)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:237)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:792)
    at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1306)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:264)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:177)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:643)
    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:617)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:397)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)

正如您在stacktrace中看到的,所涉及的所有类都是weblogic的类,而我的项目中没有类。
有没有人对这个问题有所了解?
提前致谢

1 个答案:

答案 0 :(得分:8)

我终于得到了Oracle的解决方案:

<强>原因
由于java.lang.ClassCastException消息引发了InvalidPointcutException:“antlr.CommonToken无法强制转换为 antlr.Token”。 原因是包含ear文件的jar antlr-2.7.6.jar与默认类加载器冲突

<强>解决方案

  1. 将参数-DANTLR_USE_DIRECT_CLASS_LOADING = true添加到setDomainEnv.cmd文件中JAVA_OPTIONS的上次出现
  2. 停止所有服务器
  3. 重命名每个服务器目录下的tmp和缓存文件夹。
  4. 重启服务器。
  5. 部署应用程序