NullPointerException при развертывании проекта в Weblogic 12.2.1

У нас есть приложение JSF, которое было в Weblogic 10.3.6 и которое мы пытаемся развернуть в Weblogic 12.2.1.
Для информации: нам удалось развернуть в Weblogic 12.1.3 без каких-либо изменений в проекте.
Мы сталкиваются с NullPointerException при развертывании на Weblogic 12.2.1:

.
.
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)

Как вы можете видеть в трассировке стека, все вовлеченные классы являются классами weblogic, а не классами из моего проекта.
У кого-нибудь есть идеи по этой проблеме?
Заранее спасибо


person Pcz5    schedule 30.12.2016    source источник
comment
Я также не вижу никаких классов jsf в соответствующих частях трассировки стека, поэтому это не связано с jsf. И это также не связано с java-se (можете ли вы воспроизвести с помощью простого pojo только с основным и только импортирующими классы из jdk?) И поскольку там, похоже, есть переупакованные классы Spring, пометка Spring имеет больше смысла.   -  person Kukeltje    schedule 30.12.2016


Ответы (1)


Наконец-то я получил решение от Oracle:

Причина
Исключение InvalidPointcutException возникло из-за сообщения java.lang.ClassCastException: "antlr.CommonToken не может быть приведен к antlr.Token". Причина в том, что jar antlr-2.7.6.jar, упакованный с файлом ear, конфликтует с загрузчиком классов по умолчанию.

Решение

  1. Добавьте параметр -DANTLR_USE_DIRECT_CLASS_LOADING=true к последнему вхождению JAVA_OPTIONS в файл setDomainEnv.cmd.
  2. Остановить все серверы
  3. переименуйте папки tmp и cache в каждом каталоге сервера.
  4. Перезапустите серверы.
  5. Развернуть приложение
person Pcz5    schedule 30.12.2016
comment
Где вы увидели InvalidPointcutException ? - person Do Will; 28.01.2019