在部署ear时,EntityManagerFactory在Weblogic中关闭

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

我有两个单独的ear文件,它们使用persistence.xml中定义的相同持久性单元。在Weblogic 12.2.1.3中部署第二个ear文件时,我收到以下错误:

weblogic.application.ModuleException:java.lang.IllegalStateException:尝试对已关闭的EntityManagerFactory执行操作。 at weblogic.application.internal.ExtensibleModuleWrapper.activate(ExtensibleModuleWrapper.java:123)at weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:114)at weblogic.application.internal.flow.ModuleStateDriver $ 2.next( ModuleStateDriver.java:212)在weblogic.app的weblogic.application.utils.StateMachineDriver $ ParallelChange.run(StateMachineDriver.java:83)的weblogic.application.internal.flow.ModuleStateDriver $ 2.next(ModuleStateDriver.java:207)。在weblogic.invocation.ComponentManager.runAs上的weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)的weblogic.work.SelfTuningWorkManagerImpl $ WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:670)中的ContextWrap.run(ContextWrap.java:46) (ComponentInvocationContextManager.java:337)at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)at weblogic.work.PartitionUtility.runWorkUnderContext(Partition) Utility.java:41)at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:644)at weblogic.work.ExecuteThread.execute(ExecuteThread.java:415)at weblogic.work.ExecuteThread.run(ExecuteThread.java:355 )

我在Weblogic中找不到有关EntityManagerFactory生命周期的任何信息。为什么可以从weblogic关闭EntityManagerFactory。任何人都可以提供有关问题的提示或我可以找到更多信息的链接。

ear文件包含标准的JEE7 SOAP Web服务,它使用JPA,JTA和eclipse链接2.5.2作为JPA引擎。

java weblogic eclipselink jpa-2.0 weblogic12c
2个回答
1
投票

这是weblogic错误。请参阅Oracle支持上的Doc ID 2502618.1。

Oracle支持的建议解决方案:

作为解决方案,应用补丁29154575作为解决方法:禁用并行部署应用程序模块功能。禁用此功能将确保按顺序激活各种应用程序模块,以避免竞争条件。


0
投票

Oracle支持指的是这是一个将在12.2.1.4中修复的错误。在此之前,补丁29154575仅在Weblogic版本为12.2.1.2.0时才有价值。作为一种解决方法,您可以在Weblogic的config.xml文件中禁用Parallel Deploy Application Module功能。

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