我尝试将netbeans中的J2EE项目从windows迁移到linux。我的项目功能在windows中,但当我在Ubuntu中启动它时,它给我
"Exception while preparing the app : Invalid resource : jndi_ubuntu__pm
com.sun.appserv.connectors.internal.api.ConnectorRuntimeException:
Invalid resource : jndi_ubuntu__pm"
我创建了数据源jndi_ubuntu但是我去Services -> Servers -> Glassfish -> Resources -> JDBC -> JDBC Resources我看不见!!它看起来像我创建了新的数据源,但它没有看到它们。
persistence.xml
:
<persistence-unit name="csm-catering-ejbPU" transaction-type="JTA">
<jta-data-source>jndi_ubuntu</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>
如何解决这个问题?
根据错误,应用程序正在尝试连接名为jndi_ubuntu__pm而不是jndi_ubuntu的数据源。您需要修改persistence.xml中的jta-data-source标记以匹配数据源JNDI名称:
<jta-data-source>jndi_ubuntu__pm</jta-data-source>
我解决了在HOME/GLASSFISH/CONFIG/DOMAINS/DOMAIN1中修改文件domain.xml的问题,就像在Windows上的相同文件一样。