当我尝试在glassfish服务器上运行应用程序时,我的java EE应用程序出现以下错误。它说"资源无效:jdbc / busservice__nontx" 。我应该在哪里修复此错误?以前它用" jdbc / busservice__pm"给出了错误。一旦我创建了JDBC资源并连接了连接池,错误就消失了。但是我仍然会在" jdbc / busservice__nontx"
中收到错误 Info: PER02100: Could not load Toplink Essentials. Assuming this is an upgrade from V2. Switching Persistence Unit [BusReservationPU] to use [org.eclipse.persistence.jpa.PersistenceProvider] as JPA provider. If you intend to use Toplink Essentials, please ensure that it is visible to your application."
Severe: Exception while invoking class org.glassfish.persistence.jpa.JPADeployer prepare method
Severe: java.lang.RuntimeException: Invalid resource : jdbc/busservice__nontx
at com.sun.enterprise.connectors.ConnectorRuntime.lookupDataSourceInDAS(ConnectorRuntime.java:593)
at com.sun.enterprise.connectors.ConnectorRuntime.lookupNonTxResource(ConnectorRuntime.java:559)
at org.glassfish.persistence.common.PersistenceHelper.lookupNonTxResource(PersistenceHelper.java:59)
at org.glassfish.persistence.jpa.ProviderContainerContractInfoBase.lookupNonTxDataSource(ProviderContainerContractInfoBase.java:76)
at org.glassfish.persistence.jpa.PersistenceUnitInfoImpl.<init>(PersistenceUnitInfoImpl.java:109)
at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:142)
答案 0 :(得分:0)
不要将“jdbc / busservice__pm”添加到Glassfish JDBC资源中,只需将其添加为“jdbc / busservice”即可。它看起来像__pm和__nontx是一些内部名称,它在内部添加到你的jdbc名称的末尾,当你专门添加它会弄乱它并抛出该错误。