【问题标题】:com.sun.appserv.connectors.internal.api.ConnectorRuntimeException: Invalid resource : javaee__pmcom.sun.appserv.connectors.internal.api.ConnectorRuntimeException:无效资源:javaee__pm
【发布时间】:2015-10-19 12:21:14
【问题描述】:

我有一个小型 JavaEE JSF 应用程序,它通过持久性 JPA 访问 mysql 数据库,它在我的 netbeans 和 glassfish 环境中运行良好。问题是,在具有相同配置(netbeans、glasfish、相同数据库)的其他机器上克隆它之后,它不会运行。我猜是数据库配置造成的,但是我尝试在新机器上配置它,它是无望的。它总是给出同样的错误:

GlassFish Server 4.1, deploy, null, false
/home/alvarob/NetBeansProjects/WordPracticeJavaEE/nbproject/build-impl.xml:1032: The module has not been deployed.
See the server log for details.
BUILD FAILED (total time: 0 seconds)

这是 GlassFish 日志的一部分:

[2015-10-19T14:47:13.556+0300] [glassfish 4.1] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=44 _ThreadName=admin-listener(4)] [timeMillis: 1445255233556] [levelValue: 1000] [[
    Exception while preparing the app : Invalid resource : javaee__pm
    com.sun.appserv.connectors.internal.api.ConnectorRuntimeException: Invalid resource : javaee__pm
    at org.glassfish.jdbcruntime.service.JdbcDataSource.validateResource(JdbcDataSource.java:81)
    at org.glassfish.jdbcruntime.service.JdbcDataSource.setResourceInfo(JdbcDataSource.java:62)
    at org.glassfish.jdbcruntime.JdbcRuntimeExtension.lookupDataSourceInDAS(JdbcRuntimeExtension.java:136)
    at com.sun.enterprise.connectors.ConnectorRuntime.lookupDataSourceInDAS(ConnectorRuntime.java:589)
    at com.sun.enterprise.connectors.ConnectorRuntime.lookupPMResource(ConnectorRuntime.java:517)
    at org.glassfish.persistence.common.PersistenceHelper.lookupPMResource(PersistenceHelper.java:63)
    at org.glassfish.persistence.jpa.ProviderContainerContractInfoBase.lookupDataSource(ProviderContainerContractInfoBase.java:71)
    at org.glassfish.persistence.jpa.PersistenceUnitInfoImpl.<init>(PersistenceUnitInfoImpl.java:108)
    at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:142)
    at org.glassfish.persistence.jpa.PersistenceUnitLoader.<init>(PersistenceUnitLoader.java:107)
    at org.glassfish.persistence.jpa.JPADeployer$1.visitPUD(JPADeployer.java:223)
    at org.glassfish.persistence.jpa.JPADeployer$PersistenceUnitDescriptorIterator.iteratePUDs(JPADeployer.java:510)
    at org.glassfish.persistence.jpa.JPADeployer.createEMFs(JPADeployer.java:230)
    at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:168)
... *it continues*

这是我的 .gitignore(也许我错过了一些重要的文件?)

nbproject/private/
build/
nbbuild/
dist/
nbdist/
nbactions.xml
nb-configuration.xml
.nb-gradle/

*.class

.mtj.tmp/

*.janr
*.war
*.ear

【问题讨论】:

  • @BalusC 你为什么要这样修改我的标题?我总是看到标题是关于一个问题的问题或摘要。而是修改我的标题,你能帮我解决这个问题吗?
  • 您遇到了异常。这就是问题所在。我只是将具体问题放在标题中。如果出现异常,程序员通常会在谷歌上搜索异常+消息以找到答案/线索。将它们放在标题中可以更轻松地找到它们(也为您...)
  • 好吧,我没有意识到这是使用标题的方式,每天我都会学到一些新东西。谢谢。
  • Glassfish 找不到指定的 JDBC 资源“javaee”(您的数据库)。您是否在 glassfish 服务器上配置了资源/mysql?如果有,请向我们展示配置。至少有3种配置方式

标签: jakarta-ee jpa resources glassfish


【解决方案1】:

我终于解决了这个问题,在目标机器上创建了一个 JDBC 池和 JSBC 资源,其名称和配置与我的计算机中完全相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 2023-03-12
    • 2017-03-19
    • 2016-07-07
    • 1970-01-01
    • 2016-03-24
    • 2014-12-25
    相关资源
    最近更新 更多