如何在MSSQL数据库上运行Arquillian测试?

时间:2014-02-03 23:56:02

标签: jpa jboss7.x jboss-arquillian

我的Arquillian测试在嵌入式H2数据库上运行完美。我使用Jboss托管配置文件。

现在,我想在SQL Server上运行相同的测试。我准备好了数据库和驱动程序jar。我还创建了一个jboss-datasource:

<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">
<datasource
    jndi-name="jdbc/TestDS_MSSQL"
    pool-name="ExampleDS"
    enabled="true"
    use-java-context="true">
    <connection-url>jdbc:jtds:sqlserver://192.168.0.15:1433/My_DB</connection-url>
    <driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>
    <security>
        <user-name>sa</user-name>
        <password>PASS</password>
    </security>
</datasource>
</datasources>

但是我收到以下错误消息:

service jboss.jdbc-driver.com_microsoft_sqlserver_jdbc_SQLServerDriver (missing)

我不确定接下来要做什么......

1 个答案:

答案 0 :(得分:2)

试试这个,这可能会帮到你。 如果您使用的是JBOSS 7.x,请编辑st​​andalone.xml文件中的datasources元素。

            <datasources>
            <datasource jndi-name="java:/xxx" pool-name="xxx" enabled="true" use-java-context="true">
                <connection-url>jdbc:sqlserver://ORACLE-xxx:1433;DatabaseName=xxx</connection-url>
                <driver>sqlserver2008</driver>
                <pool>
                    <min-pool-size>5</min-pool-size>
                    <max-pool-size>50</max-pool-size>
                    <prefill>false</prefill>
                    <use-strict-min>false</use-strict-min>
                    <flush-strategy>FailingConnectionOnly</flush-strategy>
                </pool>
                <security>
                    <user-name>sa</user-name>
                    <password>pass</password>
                </security>
                <validation>
                    <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>
                </validation>
            </datasource>
            <drivers>
                <driver name="sqlserver2008" module="com.microsoft">
                    <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
                </driver>
            </drivers>
        </datasources>