【问题标题】:Deploy mysql .jar with GlassFish 3使用 GlassFish 3 部署 mysql .jar
【发布时间】:2011-05-18 15:19:16
【问题描述】:

我想开发一个数据库应用程序,我下载了最新的 mysql JDBC 驱动程序和 当我将mysql-connector-java-5.1.15-bin.jar 放入 glassfish_inst_dir/lib 或 进入我的 WEB-INF/lib 我总是这个错误:

找不到适合 jdbc:mysql://localhost:3306/users 的驱动程序

这是我的jsp代码:

<sql:setDataSource url="jdbc:mysql://localhost:3306/users" driver="com.mysql.jdbc.Driver"
  user="us" password="pw" var="ds"/>

<sql:query var="users" dataSource="${ds}" >
SELECT * FROM users</sql:query>

什么错误?

谢谢。

【问题讨论】:

  • 我不熟悉 glassfish,但我认为您必须在控制台中创建一个数据源。但首先,请检查此驱动程序是否与您的 mysql 版本兼容。

标签: java jsp jstl glassfish-3


【解决方案1】:

docs for GlassFish Server 3.1 表示应将 JDBC 驱动程序复制到您域的 lib 目录中,并在您执行此操作后重新启动服务器。

如果您使用的是标准安装中的 domain1,则域的 lib 目录(通常)是 glassfish3/glassfish/domains/domain1/lib。如果您在 Windows 上,您域的 lib 目录可能是 %HOME%/.netbeans/%NBVER%/GF3/domain1。

【讨论】:

  • 谢谢,但它不起作用!我也发现了这种奇怪的行为。首先,如果我使用 Java 代码部署一个 servlet,它就可以工作!!!然后,如果我从 lib 中取消部署 .jar,则 servlet 再次工作!!!
  • 好的,我找到了答案。 .jar 必须部署到 lib/etx 目录中。奇怪,因为服务器文档说它必须在库中!!!
  • 感谢“xdevel2000”。重申一下,必须在 /lib/ext 文件夹中复制数据库驱动程序,而不仅仅是 /lib 文件夹。这对我也有用。在所有 Glassfish 版本中都是如此。
  • 为什么数据库驱动应该进入/lib/ext 而 /lib?文档有误,还是这里有更微妙的地方?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-28
  • 1970-01-01
  • 2018-08-04
相关资源
最近更新 更多