【发布时间】:2016-02-06 12:08:13
【问题描述】:
我正在 WebLogic 12c (12.1.3.0) 上进行开发,它提供了 EclipseLink 2.5.2。
我为 PostgreSQL-DB 配置了一个连接池。
当我尝试访问包含 @PersistenceContext 的 @EJB (SLSB) 时,WebLogic 在尝试查找 JNDI 资源时退出并出现 StackOverflowError。我认为是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)
[...]
有人知道这种行为吗?
谢谢, 斯蒂芬
【问题讨论】:
-
堆栈中有什么东西导致了某种递归吗?请参阅stackoverflow.com/questions/214741/what-is-a-stackoverflowerror 了解堆栈溢出是什么,因为您没有提供足够的信息来显示代码有任何问题。很有可能,您只是没有为运行 WebLogic 的 JVM 分配足够的内存
-
感谢克里斯的评论。我解决了 StackOverflowError。看我的回答。
标签: jpa eclipselink jndi java-ee-6 weblogic12c