我试图运行一个非常简单的耳朵应用程序。我似乎碰到这个问题,但这里的讨论不为我工作JDBC resource name being modified by container (__pm
being appended to it)附加了__pm的JNDI资源名称。部署失败
在我的情况下,数据源名称也被__pm
追加。我不知道它来自哪里,但服务器日志指出这样一个事实,即不搜索databasename
它搜索databasename__pm
并且部署失败。
的persistence.xml: -
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="FCK-ejbPU" transaction-type="JTA">
<jta-data-source>FCKDatabase</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>
</persistence>
Glassfish的日志:
Error occurred during deployment: Exception while preparing the app : Invalid resource : { ResourceInfo : (jndiName=java:app/jdbc/FCKDatabase__pm), (applicationName=FCK) }. Please see server.log for more details.
Exception while invoking class org.glassfish.persistence.jpa.JPADeployer prepare method : java.lang.RuntimeException: Invalid resource : { ResourceInfo : (jndiName=java:app/jdbc/FCKDatabase__pm), (applicationName=FCK) }
Invalid resource : { ResourceInfo : (jndiName=java:app/jdbc/FCKDatabase__pm), (applicationName=FCK) }
正如你可以看到我的我的资源的JNDI名称appened与__pm
。
而且GlassFish服务器控制台上的资源被正确地显示为FCKDatabase而不是FCKDatabase_pm
任何想法,这__pm
从何而来?
系统:
- 的Netbeans 7.3
- GlassFish服务器3.1.2
我把连接器放在lib和ext文件夹中,但是我仍然遇到与部署我的战争相同的问题。 – Bardelman 2015-01-02 08:14:58
重新启动和刷新服务器应该可以解决问题。 – Omar 2016-05-20 23:07:23