0

我尝试运行jboss-springmvc-webapp的示例项目,但是配置数据源失败。

错误是:

JBAS014775:    New missing/unsatisfied dependencies:
  service jboss.jdbc-driver.mysql (missing) dependents: [service jboss.data-source.jboss/datasources/SpringQuickstartDS] 

我的 persistence.xml 是:

<persistence version="2.0"
xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
    http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
 <persistence-unit name="primary">
  <!-- If you are running in a production environment, add a managed 
     data source, this example data source is just for development and testing! -->
  <!-- The datasource is deployed as WEB-INF/spring-quickstart-ds.xml, you
     can find it in the source at src/main/webapp/WEB-INF/spring-quickstart-ds.xml -->
  <jta-data-source>java:jboss/datasources/SpringQuickstartDS</jta-data-source>
  <properties>
     <property name="jboss.entity.manager.factory.jndi.name" value="java:jboss/spring-quickstart/persistence" />

     <property name="hibernate.hbm2ddl.auto" value="create-drop" />
     <property name="hibernate.show_sql" value="false" />
  </properties>
</persistence-unit>
</persistence>

我的 datasource.xml 是:

<?xml version="1.0" encoding="UTF-8"?>

<datasources xmlns="http://www.jboss.org/ironjacamar/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_0.xsd">
<!-- The datasource is bound into JNDI at this location. We reference 
  this in META-INF/persistence.xml -->
<datasource jndi-name="java:jboss/datasources/SpringQuickstartDS"
  pool-name="kitchensink-quickstart" enabled="true"
  use-java-context="true">
<connection-url>jdbc:mysql://localhost:3306/testdb</connection-url>
<driver>mysql</driver> 
  <security>
     <user-name>root</user-name>
     <password></password>
  </security>
</datasource>
<drivers>
    <driver name="h2" module="com.h2database.h2">
            <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
    </driver>
            <driver name="mysql" module="com.mysql.jdbc">
                <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
            </driver>
            <driver name="postgresql" module="org.postgresql.jdbc">
                <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
            </driver>
        </drivers>
</datasources>
4

1 回答 1

0

如果你使用 jboss-springmvc-webapp 架构,那么它应该被配置为使用 H2 作为数据源。我会先回到那个配置来确认它是否有效。

然后,当您知道其他一切正常时,您可以设置 MySQL 数据源。你需要知道两件事。您一次只能指向一个数据源,因此您必须从上述文件中删除其他数据源。它只能有 MySQL 信息(如果那是您正在使用的数据源)。其次,您需要确保您拥有要使用的数据库的 JDBC 驱动程序。

JBoss 的每个版本都有很好的设置文档。您使用的是什么版本的 JBoss,我将发布文档页面?

于 2013-07-12T15:47:35.450 回答