Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
WebLogic 12c上的EclipseLink JPA导致堆栈溢出错误_Jpa_Eclipselink_Jndi_Java Ee 6_Weblogic12c - Fatal编程技术网

WebLogic 12c上的EclipseLink JPA导致堆栈溢出错误

WebLogic 12c上的EclipseLink JPA导致堆栈溢出错误,jpa,eclipselink,jndi,java-ee-6,weblogic12c,Jpa,Eclipselink,Jndi,Java Ee 6,Weblogic12c,我正在开发WebLogic12C(12.1.3.0),它提供了EclipseLink 2.5.2 我配置了一个到PostgreSQL数据库的连接池 当我尝试访问包含@PersistenceContext的@EJB(SLSB)时,WebLogic会在尝试查找JNDI资源时退出并发出堆栈溢出错误。我认为它是persistence.xml的JTA数据源 java.lang.StackOverflowError at java.security.AccessController.doPrivil

我正在开发WebLogic12C(12.1.3.0),它提供了EclipseLink 2.5.2

我配置了一个到PostgreSQL数据库的连接池

当我尝试访问包含
@PersistenceContext
@EJB
(SLSB)时,WebLogic会在尝试查找JNDI资源时退出并发出堆栈溢出错误。我认为它是persistence.xml的JTA数据源

java.lang.StackOverflowError
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.naming.internal.VersionHelper12.getContextClassLoader(VersionHelper12.java:185)
    at com.sun.naming.internal.ResourceManager.getFactory(ResourceManager.java:418)
    at javax.naming.spi.NamingManager.getURLObject(NamingManager.java:592)
    at javax.naming.spi.NamingManager.getURLContext(NamingManager.java:550)
    at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:339)
    at javax.naming.InitialContext.lookup(InitialContext.java:411)
    at weblogic.jndi.internal.ApplicationNamingNode.resolveObject(ApplicationNamingNode.java:169)
    at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:886)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:219)
    at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:131)
    at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:253)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:426)
    at weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(ReadOnlyContextWrapper.java:45)
    at weblogic.jndi.internal.ApplicationNamingNode.resolveObject(ApplicationNamingNode.java:170)
[...]
有人知道这种行为吗

谢谢,
Stefan

我通过增加WebLogic服务器的调试输出解决了我的问题。 在那里,我意识到JDBC查找的JNDI地址错误。 持久化上下文似乎试图使用
非jta数据源
而不是
persistence.xml的
jta数据源
。由于单元测试的目的,它们是不同的。
我删除了该条目,现在JPA上下文的初始化工作正常。

我通过增加WebLogic服务器的调试输出解决了我的问题。 在那里,我意识到JDBC查找的JNDI地址错误。 持久化上下文似乎试图使用
非jta数据源
而不是
persistence.xml的
jta数据源
。由于单元测试的目的,它们是不同的。
我删除了该条目,现在JPA上下文的初始化工作正常。

堆栈中是否有导致某种递归的东西?请参阅以了解堆栈溢出是什么,因为您没有提供足够的信息来显示代码有任何错误。很可能,您没有足够的内存分配给运行WebLogic的JVM。谢谢Chris的评论。我解决了堆栈溢出错误。看看我的答案。堆栈中是否有导致某种递归的东西?请参阅以了解堆栈溢出是什么,因为您没有提供足够的信息来显示代码有任何错误。很可能,您没有足够的内存分配给运行WebLogic的JVM。谢谢Chris的评论。我解决了堆栈溢出错误。请参阅我的答案。如果正常错误导致服务器中出现StackOverflower错误,则还需要处理其他基于资源的问题。如果正常错误导致服务器中出现StackOverflower错误,则还需要处理其他基于资源的问题。