我花了一个晚上的时间来安装GlassFish5.0.1服务器,配置jdbc连接池并部署应用程序。我经常遇到的问题是:无法从glassfish和glassfish连接池连接到jdbc连接池
在glassfish for mysql everywhere states中使用 Resource Type: javax.sql.DataSource
以及 Datasource Classname: com.mysql.jdbc.jdbc2.optional.MysqlDataSource
无论我把mysql连接器放在哪里,上述方法都不起作用 glassfish/lib
或者 domain/domain1/bin/lib
. 每次我都会删除我拥有的池,清除缓存并重新启动服务器。
最后我改成了 java.sql.Driver
以及 Driver Classname: com.mysql.jdbc.Driver
问题是如何使数据源工作?
另外,驱动程序和数据源之间有什么区别?
编辑
帕亚拉-5也有同样的问题。我正在把jar放进去 lib/ext
但司机也以同样的方式失败了,并在那里得到了解决。
为mysqlconnpool2 ping连接池失败。类名错误或未为设置类路径:com.mysql.jdbc.jdbc2.optional.mysqldatasource有关详细信息,请查看server.log。
2条答案
按热度按时间cmssoen21#
在5.0到8.0的发行说明中,提到包名从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进行了测试,它可以工作:-)
l5tcr1uw2#
我在glassfish 5.0上遇到了同样的问题
mysql-connector-8.0.16.jar
. 看一下玻璃鱼的文件我们不得不把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为mysql定义一个新的连接池com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
. 按照glassfish文档mysql server database type4驱动程序中的描述设置属性之后,我得到了一个成功的ping