【问题标题】:Where to add the jdbc driver on Netbeans/Glassfish in Windows?在 Windows 中的 Netbeans/Glassfish 哪里添加 jdbc 驱动程序?
【发布时间】:2015-01-20 13:58:09
【问题描述】:

我有一个在 Netbeans 6.8 中创建的企业应用程序,它与 Glassfish V3 服务器打包在一起。当我尝试部署和运行 EAR 项目时,我从服务器日志中收到以下异常:

SEVERE: jdbc.exc_cnfe_ds
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

通过谷歌搜索,常见的解决方案是将包含该类的 jar 文件(mysql-connector-java-5.1.6-bin.jar)复制到

$glassfish-v3-install-root/glassfish/domains/domain1/lib.

事实上,这就是它驻留在 Unix 服务器上的位置。但是,我正在 Windows 上对此进行测试,并且默认 glassfish 安装中不存在“domains/domain1”目录。我手动添加它们并添加了罐子,但没有任何区别。我还将 jar 作为变量添加到 windows 类路径中,但这也没有效果。

然后我尝试添加 jar 文件 $glassfish-v3-install-root/glassfish/lib,但产生了不同的错误:

严重:RAR5111:转换为 javax.sql.Datasource 时出错 java.lang.ClassCastException: com.mysql.jdbc.Driver 无法转换为 javax.sql.DataSource

我正在使用与服务器相同的 jar 文件。我猜罐子放错地方了?我不想把它放在项目中,因为这不是它在生产中的部署方式。任何帮助表示赞赏。

【问题讨论】:

    标签: java mysql netbeans jdbc glassfish


    【解决方案1】:

    将 jar 文件放入 $glassfish-v3-install-root/glassfish/lib 证明是正确的。

    "SEVERE: RAR5111 : Error casting to javax.sql.Datasource java.lang.ClassCastException: com.mysql.jdbc.Driver cannot be cast to javax.sql.DataSource"
    

    我相信,错误是由 glassfish 服务器上的 jdbc 池设置不正确引起的。但是转到管理控制台,可从 Netbeans“服务器”选项卡获得,转到“JDBC”、“连接池”,选择“java.sql.driver”作为资源类型和“com.mysql.jdbc.driver”因为驱动程序类名将摆脱强制转换问题。

    单击顶部附近的“Ping”按钮以确保您正在连接。

    【讨论】:

      猜你喜欢
      • 2017-10-10
      • 2014-09-27
      • 2014-08-31
      • 2018-11-30
      • 1970-01-01
      • 1970-01-01
      • 2015-06-26
      • 1970-01-01
      • 2019-02-28
      相关资源
      最近更新 更多