未设置将MySQL数据库连接到Glassfish类路径或类名错误

Ran*_*num 23 mysql eclipse glassfish java-ee

我正在换掉一个用于MySQL的德比数据库.我以前一切都工作但是在我认为正确的配置之后我得到了错误:

引起:javax.resource.ResourceException:类名错误或类路径未设置为:com.mysql.jdbc.jdbc2.optional.MysqlDataSource

控制台的完整错误输出:

Caused by: javax.resource.ResourceException: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource
at com.sun.gjc.common.DataSourceObjectBuilder.getDataSourceObject(DataSourceObjectBuilder.java:292)
at com.sun.gjc.common.DataSourceObjectBuilder.constructDataSourceObject(DataSourceObjectBuilder.java:114)
at com.sun.gjc.spi.ManagedConnectionFactory.getDataSource(ManagedConnectionFactory.java:1292)
at com.sun.gjc.spi.DSManagedConnectionFactory.getDataSource(DSManagedConnectionFactory.java:148)
at com.sun.gjc.spi.DSManagedConnectionFactory.createManagedConnection(DSManagedConnectionFactory.java:101)
at com.sun.enterprise.resource.allocator.LocalTxConnectorAllocator.createResource(LocalTxConnectorAllocator.java:87)
Run Code Online (Sandbox Code Playgroud)

我已经仔细检查了一些名称,连接池和其他资源.我还在两个项目中将MySQL驱动程序.jars添加到glassfish库中.数据库肯定通过eclipse正常工作,因为我能够查看表并在eclipse的数据库上下文中显示资源.所以我知道至少那些司机正在正确地工作.persistence.xml文件看起来也不错.它引用了jdbc/mydatabase jndi引用,并且默认选择JTA作为manament类型.

有人有另一个建议吗?谢谢

Bal*_*usC 38

我还在两个项目中将MySQL驱动程序.jars添加到glassfish库中.

显然做得不对.JAR必须进入/glassfish/domains/[domainname]/lib/extGlassfish安装的文件夹,[domainname]通常默认为domain1.您可以而且不应该从Eclipse端配置它.


小智 23

看起来我很晚才回复,但是那些指代这个主题的人可能会发现以下信息很有用.所以我在这里发帖子:

  1. http://dev.mysql.com/downloads/connector/j/5.0.html下载连接器Jar
  2. 解压缩包并复制mysql-connector-java-verno-bin.jar
  3. 在[GlassFish安装目录]/domains/[域名]/lib文件夹中过去相同
  4. 重新启动域并ping并检查JDBC连接池中的连接

你去吧 如果您的MySql正在运行,那么它将成功ping数据库

  • 重新启动域并未刷新连接池的所有其他属性.(在我复制jar之前我创建了池.)有人知道你应该在复制jar之后重新创建池,这可能会有所帮助.在我这样做之后,一切都为我工作. (3认同)

wei*_*wei 5

我将jar文件复制到了$glassfish_install_folder\glassfish\lib,之后就可以了.我用glassfish 4.0.

从oracle 查看此链接.