com.sun.appserv.connectors.internal.api.ConnectorRuntimeException:无效资源:javaee__pm

时间:2015-10-19 12:21:14

标签: java-ee jpa resources glassfish

我有一个小的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

1 个答案:

答案 0 :(得分:0)

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