2

我正在关注本教程,但我在设置 jdbc 连接时遇到了一些问题。

在我的 arquillian.xml 中,我写道:

...
<container qualifier="payara-remote" default="true">
    <configuration>
        <property name="resourcesXml">
            src/test/resources-payara-remote/glassfish-resources.xml
        </property>
    </configuration>
</container>
...

当我运行测试时,我收到此警告:

AVVERTENZA: Configuration contain properties not supported by the backing object org.jboss.arquillian.container.glassfish.remote_3_1.GlassFishRestConfiguration
Unused property entries: {resourcesXml=
            src/test/resources-payara-remote/glassfish-resources.xml
        }
Supported property names: [adminHttps, remoteServerHttpPort, libraries, type, remoteServerAddress, target, remoteServerAdminPort, remoteServerAdminHttps, adminUser, authorisation, adminPort, properties, adminHost, adminPassword]

所以我认为不支持“resourceXml”......我如何告诉 arquillian 使用该文件?

此外,在那个文件中我声明了一个 jdbc/test. 我必须在persistence.xml 中写什么才能使用该数据库连接?

先感谢您

更新

我希望在“src/test/resources-payara-remote/glassfish-resources.xml”中使用我的 test-db 声明 jdbc 连接(不在远程服务器中创建 jdbc 连接),但我不知道如何将 arquillian 设置为使用 .xml 文件中声明的 jdbc 连接。

4

1 回答 1

5

如果您想在远程 GlasFish/Payara 服务器上创建 JDBC 资源,最好的方法是glassfish-resources.xml在测试中打包到您的部署中(在@Deployment方法中,使用.addAsWebInfResource("glassfish-resources.xml"). 当服务器在应用程序的文件夹中找到此文件glassfish-resources.xmlWEB-INF,它将临时创建资源,直到 arquillian 测试套件取消部署应用程序。

GlassFish/Payara 远程 arquillian 连接器不提供从 xml 设置资源。此功能仅由glassfish-embedded连接器提供,该连接器在您的测试 JVM 中运行 GlassFish/Payara。嵌入式连接器是您所说的教程中使用的连接器。实际上,如果您想针对远程 GlassFish/Payara 服务器运行测试,您应该比较教程中针对远程 WildFly 进行测试的步骤。它还包括将带有资源的 XML 添加到部署中:.addAsWebInfResource("jbossas-ds.xml")

如果您想将 GlassFish 嵌入式连接器与 Payara 一起使用,只需在 maven pom.xml 中添加以下依赖项:

            <dependency>
                <groupId>org.jboss.arquillian.container</groupId>
                <artifactId>arquillian-glassfish-embedded-3.1</artifactId>
                <version>1.0.0.Final</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>fish.payara.extras</groupId>
                <artifactId>payara-embedded-all</artifactId>
                <version>4.1.1.163.0.1</version>
                <scope>test</scope>
            </dependency>
于 2016-11-03T12:52:17.320 回答