【问题标题】:What are the __pm and __nontx suffixes?__pm 和 __nontx 后缀是什么?
【发布时间】:2015-01-26 17:42:18
【问题描述】:

当我尝试在 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)

【问题讨论】:

  • 我没有使用 Glassfish 的经验,但尝试在 Glassfish 和您的 persistence.xml 文件中将 DataSource 标记为 JTA(或至少属于同一类型:资源本地或 JTA) .
  • 如果您还没有解决问题,您应该将persistence.xml 添加到问题中。

标签: java jpa jdbc glassfish persistence


【解决方案1】:

不要将“jdbc/busservice__pm”添加到您的 Glassfish JDBC 资源中,只需将其添加为“jdbc/busservice”。看起来 __pm 和 __nontx 是一些内部名称,它们在内部添加到您的 jdbc 名称的末尾,当您专门添加它时,它会搞砸并抛出该错误。

【讨论】:

    猜你喜欢
    • 2022-08-10
    • 1970-01-01
    • 2014-01-19
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    • 2015-01-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多