JBOSS 6.2 - 新的 missing/unsatisfied 依赖项(对于 mysql 驱动程序)
JBOSS 6.2 - New missing/unsatisfied dependencies (for mysql driver)
我已使用 reg 模式设置数据库并下载了 JOBSS 6.2 EAP。我想
为 JNDI 进行一些配置,所以我在 standalone.xml
中做了一些更改
standalone.xml
<datasource jta="false" jndi-name="java:jboss/jdbc.ds.reg.nontx" pool-name="java:jboss/jdbc.ds.reg.nontx_Pool" enabled="true" use-java-context="true" use-ccm="false">
<connection-url>jdbc:mysql://localhost:3306/reg</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver>mysql</driver>
<pool>
<min-pool-size>5</min-pool-size>
<max-pool-size>10</max-pool-size>
<prefill>true</prefill>
</pool>
<security>
<user-name>root</user-name>
<password>root</password>
</security>
<validation>
<validate-on-match>true</validate-on-match>
<background-validation>false</background-validation>
</validation>
</datasource>
我还在里面添加了module.xml & mysql-connector-java-5.1.28
%JBOSS_HOME%\modules\system\layers\base\com\mysql 文件夹
module.xml
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-5.1.28.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
但我在启动时仍然遇到此错误 jboss
New missing/unsatisfied dependencies: service jboss.jdbc-driver.mysql
(missing) dependents: [service
jboss.driver-demander."java:jboss/jdbc.ds.reg.nontx", service
jboss.data-source."java:jboss/jdbc.ds.reg.nontx"]
您错过了驱动程序部分,如错误所述:
New missing/unsatisfied dependencies: service jboss.jdbc-driver.mysql
(missing)...
在数据源部分还应该有一个驱动程序块
这是 oracle 数据库的示例(mysql 应遵循相同的模式):
<subsystem xmlns="urn:jboss:domain:datasources:1.1">
<datasources>
<datasource jta="false" jndi-name="java:/jdbc/doxee/staging_aggregation/dbsettings" pool-name="Doxee_sa" enabled="true" use-ccm="false">
<connection-url>jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=p4xd1-scan2.griffon.local)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=P4CRSIPRN.griffon.local)))</connection-url>
<driver>oracle</driver>
<security>
<user-name>DOXEE_SA</user-name>
<password>Z.3cv_7Auc</password>
</security>
<validation>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
<statement>
<share-prepared-statements>false</share-prepared-statements>
</statement>
</datasource>
<drivers>
<driver name="oracle" module="com.oracle.jdbc">
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
</driver>
</drivers>
</datasources>
</subsystem>
并在 module.xml
<resources>
<resource-root path="ojdbc6.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
如你所见
datasources -> datasource -> driver
指向由
定义的 oracle
datasources -> drivers -> driver -> name
我已使用 reg 模式设置数据库并下载了 JOBSS 6.2 EAP。我想 为 JNDI 进行一些配置,所以我在 standalone.xml
中做了一些更改standalone.xml
<datasource jta="false" jndi-name="java:jboss/jdbc.ds.reg.nontx" pool-name="java:jboss/jdbc.ds.reg.nontx_Pool" enabled="true" use-java-context="true" use-ccm="false">
<connection-url>jdbc:mysql://localhost:3306/reg</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver>mysql</driver>
<pool>
<min-pool-size>5</min-pool-size>
<max-pool-size>10</max-pool-size>
<prefill>true</prefill>
</pool>
<security>
<user-name>root</user-name>
<password>root</password>
</security>
<validation>
<validate-on-match>true</validate-on-match>
<background-validation>false</background-validation>
</validation>
</datasource>
我还在里面添加了module.xml & mysql-connector-java-5.1.28 %JBOSS_HOME%\modules\system\layers\base\com\mysql 文件夹
module.xml
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-5.1.28.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
但我在启动时仍然遇到此错误 jboss
New missing/unsatisfied dependencies: service jboss.jdbc-driver.mysql (missing) dependents: [service jboss.driver-demander."java:jboss/jdbc.ds.reg.nontx", service jboss.data-source."java:jboss/jdbc.ds.reg.nontx"]
您错过了驱动程序部分,如错误所述:
New missing/unsatisfied dependencies: service jboss.jdbc-driver.mysql (missing)...
在数据源部分还应该有一个驱动程序块
这是 oracle 数据库的示例(mysql 应遵循相同的模式):
<subsystem xmlns="urn:jboss:domain:datasources:1.1">
<datasources>
<datasource jta="false" jndi-name="java:/jdbc/doxee/staging_aggregation/dbsettings" pool-name="Doxee_sa" enabled="true" use-ccm="false">
<connection-url>jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=p4xd1-scan2.griffon.local)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=P4CRSIPRN.griffon.local)))</connection-url>
<driver>oracle</driver>
<security>
<user-name>DOXEE_SA</user-name>
<password>Z.3cv_7Auc</password>
</security>
<validation>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
<statement>
<share-prepared-statements>false</share-prepared-statements>
</statement>
</datasource>
<drivers>
<driver name="oracle" module="com.oracle.jdbc">
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
</driver>
</drivers>
</datasources>
</subsystem>
并在 module.xml
<resources>
<resource-root path="ojdbc6.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
如你所见
datasources -> datasource -> driver
指向由
定义的 oracledatasources -> drivers -> driver -> name