设置Glassfish数据源问题

时间:2018-05-22 12:08:42

标签: java mysql java-ee glassfish payara

我晚上花了大部分时间设置Glassfish 5.0.1服务器,配置JDBC连接池并部署应用程序。我一直遇到的问题是:Unable to Connect to JDBC Connection Pool from GlassfishGlassFish connection pool

在Glassfish for MySQL中,所有州都使用Resource Type: javax.sql.DataSourceDatasource Classname: com.mysql.jdbc.jdbc2.optional.MysqlDataSource

无论我把MySQL Connector jar glassfish/lib还是domain/domain1/bin/lib放在哪里,上面都没有用过。有时我删除了我的池,清除了缓存并重新启动了服务器。

我最终切换到java.sql.DriverDriver Classname: com.mysql.jdbc.Driver

问题是如何使数据源工作?

另外,Driver和Datasource有什么区别?

修改

与Payara-5相同的问题。我把jar放在lib/ext但是驱动程序以相同的方式失败并在那里解决了。

  

MySQLConnPool2的Ping连接池失败。类名错误或类路径未设置为:com.mysql.jdbc.jdbc2.optional.MysqlDataSource请查看server.log以获取更多详细信息。

2 个答案:

答案 0 :(得分:3)

5.0 to 8.0 release notes中,引用了从com.mysql.jdbc到com.mysql.cj的程序包名称的更改。在查看mysql-connector-java-8.0.12.jar时,数据包中的com.mysql.cj.jdbc.MysqlDataSource数据包似乎没有记录在案。

我已经通过管理控制台在Payara 5中使用com.mysql.cj.jdbc.MysqlDataSource进行了测试,并且可以:-)

答案 1 :(得分:0)

在使用mysql-connector-8.0.16.jar的glassfish 5.0上,我遇到了同样的问题。在Glassfish的文档中,我们不得不将mysql-connector-5.1.47-bin.jar放入domains / domain1 / lib目录。 8.0的连接器没有*-bin.jar文件。因此,我尝试将*5.1.47-bin.jar放入domain1 / lib目录。重新启动我的glassfish服务器之后,我尝试使用javax.sql.XADataSource和DataSourceName com.mysql.jdbc.jdbc2.optional.MysqlXADataSource为MySQL定义一个新的Connection-Pool。按照Glassfish文档MySQL Server Database Type 4 Driver中的描述设置属性后,我成功完成了ping