Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 部署ear时,EntityManagerFactory在Weblogic中关闭_Java_Weblogic_Eclipselink_Jpa 2.0_Weblogic12c - Fatal编程技术网

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

Java 部署ear时,EntityManagerFactory在Weblogic中关闭,java,weblogic,eclipselink,jpa-2.0,weblogic12c,Java,Weblogic,Eclipselink,Jpa 2.0,Weblogic12c,我有两个独立的ear文件,它们使用在persistence.xml中定义的相同持久性单元。在Weblogic 12.2.1.3中部署第二个ear文件时,出现以下错误: weblogic.application.ModuleException:java.lang.IllegalStateException:试图在关闭的EntityManagerFactory上执行操作。 位于weblogic.application.internal.ExtensibleModuleWrapper.activate

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

weblogic.application.ModuleException:java.lang.IllegalStateException:试图在关闭的EntityManagerFactory上执行操作。 位于weblogic.application.internal.ExtensibleModuleWrapper.activate(ExtensibleModuleWrapper.java:123) 在weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:114)中 位于weblogic.application.internal.flow.ModuleStateDriver$2.next(ModuleStateDriver.java:212) 位于weblogic.application.internal.flow.ModuleStateDriver$2.next(ModuleStateDriver.java:207) 位于weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83) 运行(ContextWrap.java:46) 在weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:670) 在weblogic.invocation.ComponentInvocationContextManager.\u运行方式(ComponentInvocationContextManager.java:352) 在weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337) 在weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)上 位于weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) 位于weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:644) 在weblogic.work.ExecuteThread.execute(ExecuteThread.java:415) 在weblogic.work.ExecuteThread.run(ExecuteThread.java:355)

我在Weblogic中找不到任何有关EntityManagerFactory生命周期的信息。为什么EntityManagerFactory可能从weblogic关闭。谁能给我一个关于这个问题的提示或者一个我可以找到更多信息的链接

ear文件包含一个标准的JEE7SOAPWeb服务,它使用JPA、JTA和EclipseLink2.5.2作为JPA引擎

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

Oracle支持部门建议的解决方案:

作为解决方案,请使用补丁29154575 作为解决办法:
禁用并行部署应用程序模块功能。禁用此选项将确保按顺序激活应用程序的各个模块,从而避免争用情况。

Oracle支持人员指出,这是一个将在12.2.1.4中修复的错误。在此之前,只有Weblogic版本为12.2.1.2.0时,补丁29154575才有价值。
作为一种解决方法,您可以在Weblogic的config.xml文件中禁用并行部署应用程序模块功能

谢谢你的回复。只是一些澄清。1) 此修补程序是为Oracle WebLogic Server 12.2.1.2.0设计的,不能应用于12.2.1.3。结果是它不需要。但问题仍然存在于12.2.1.3中。2) 当我们在config.xml中将属性从true设置为false时,一切正常。3) 是否可以从weblogic的UI控制台更改此属性?补丁29154575有一个通用分类,因此我认为它也可以应用于weblogic 12.2.1.3。在执行OPatch之前,您是否在shell中设置了正确的ORACLE_HOME?在12.2.1.3控制台中,我看不到任何域级UI项来设置ParallelDeployApplications。