【问题标题】:JBoss AS7 deployment error relate with datasource missing dependentsJBoss AS7 部署错误与缺少依赖的数据源有关
【发布时间】:2012-12-18 08:45:42
【问题描述】:

我在 JBoss AS7 中部署了一个 war 文件,当我启用它时,它给了我以下错误,

14:00:05,700 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015876: Starting deployment of "JSPServletPoc.war"
14:00:29,749 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-5) JBAS010404: Deploying non-JDBC-compliant driver class com.mysql.jdbc.Driver (version 5.1)
14:00:30,156 INFO  [org.jboss.as.server] (HttpManagementService-threads - 7) JBAS015870: Deploy of deployment "JSPServletPoc.war" was rolled back with failure message {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.JSPServletPoc.JSPServletPoc.env.jdbc.MySQLDSJndijboss.naming.context.java.jboss.resources.jdbc.MySQLDSJndiMissing[jboss.naming.context.java.module.JSPServletPoc.JSPServletPoc.env.jdbc.MySQLDSJndijboss.naming.context.java.jboss.resources.jdbc.MySQLDSJndi]"]}
14:00:30,437 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015877: Stopped deployment JSPServletPoc.war in 236ms
14:00:30,437 INFO  [org.jboss.as.controller] (HttpManagementService-threads - 7) JBAS014774: Service status report
JBAS014775:    New missing/unsatisfied dependencies:
      service jboss.naming.context.java.jboss.resources.jdbc.MySQLDSJndi (missing) dependents: [service jboss.naming.context.java.module.JSPServletPoc.JSPServletPoc.env.jdbc.MySQLDSJndi] 

我已经将数据源配置为 MySQLDSJndi 并启用它。

我没有发现将数据源设置为 MySQLDSJndi 并将 JNDI 名称设置为 java:/MySQLDSJndi 的数据源有任何问题。此外,我将用户名和密码以及连接 url 指定为 jdbc:mysql://localhost:3306/testdb

我也怀疑为什么会出现错误消息,

JBAS010404: Deploying non-JDBC-compliant driver class com.mysql.jdbc.Driver (version 5.1)

我在 jar 中检查了名为“META-INF/services/java.sql.Driver”的文件,因为该文件使 jar 成为 JDBC 兼容的 jar 文件并且它也存在。

【问题讨论】:

  • 您是如何将 JDBC 驱动程序安装到 AS7 的?你是如何定义你的数据源的(即你是使用 WebConsole 还是 CLI)。还有你使用的是哪个 MySQL JAR?
  • 我直接把mysql-connector-java-5.1.15.jar放在$JBOSS_HOME/standalone/deployments中。我通过管理 web 控制台定义数据源

标签: java jboss


【解决方案1】:

驱动程序版本不兼容,您需要先将驱动程序注册为模块。

通读将 JDBC 驱动程序作为模块安装部分@How to configure datasource in Jboss As7

【讨论】:

    【解决方案2】:

    MySQL 驱动程序不兼容,因为它doesn't support SQL-92。 AFAIK 复制到 $JBOSS_HOME/standalone/deployments only works for compliant drivers, non-compliant drivers need to be deployed as a module

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-28
      • 2013-02-06
      • 1970-01-01
      • 2014-06-17
      • 1970-01-01
      • 1970-01-01
      • 2011-12-25
      相关资源
      最近更新 更多