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

Jpa 如何在MSSQL数据库上运行Arquillian测试?,jpa,jboss7.x,jboss-arquillian,Jpa,Jboss7.x,Jboss Arquillian,我的Arquillian测试在EmbbedH2数据库上运行得很好。我使用Jboss管理的配置文件 现在,我想在SQL Server上运行相同的测试。我已经准备好了数据库和驱动程序jar。我还创建了一个jboss数据源: <datasources xmlns="http://www.jboss.org/ironjacamar/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="

我的Arquillian测试在EmbbedH2数据库上运行得很好。我使用Jboss管理的配置文件

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

<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>

我真的不知道下一步该做什么…

试试这个,这可能会帮到你。 如果您使用的是JBOSS 7.x,请编辑standalone.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>

jdbc:sqlserver://ORACLE-xxx:1433;DatabaseName=xxx
sqlserver2008
5.
50
假的
假的
仅连接失败
sa
通过
com.microsoft.sqlserver.jdbc.SQLServerDriver

请提及JBOSS AS版本和您定义数据源的完整配置文件。我使用的是JBOSS AS 7.1.1.Final。standalone.xml是默认的,因为我正在Arquillian上运行测试,Arquillian可以动态下载、解包和启动服务器实例,所以我不能依赖对standalone.xml所做的更改。错误表明您的类路径上没有正确的SQL server驱动程序,请先在项目的类路径中放置正确的驱动程序。
            <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>