项目: 我正在使用Arquillian 1.0.0.4-ALPHA和Embedded Glassfish 3.1-b28。我的项目有一个arquillian.xml,没有domain.xml,我的数据源的sun-resources.xml和一个persistence.xml。我正在尝试对EJB3 / JPA2应用程序进行单元测试。
我已经做了什么: 我的第一个单元测试甚至工作。但是一旦我开始使用@Deployment批注和返回webArchive的静态方法开发多个类,就会抛出异常。原因是,第一个类的war文件未正确取消部署,因此无法部署下一个测试文件。我读到这是一个bug并升级到更新版本的glassfish来解决这个bug。
问题: 现在较新版本的glassfish会导致配置问题。我可以通过在这里提到的glassfish中设置tmpDir来解决这个问题:
http://java.net/jira/browse/EMBEDDED_GLASSFISH-122
问题是现在,我可以如何设置这些设置? arquillian.xml似乎不对。我不想在这种情况下使用domain.xml。最好是sun-resources.xml,但这似乎也不合适。 asadmin没有意义,因为它是一个自动运行的单元测试。谁能告诉我如何配置?
答案 0 :(得分:0)
arquillian.xml中的正确条目是:
<?xml version="1.0" encoding="UTF-8"?>
<arquillian xmlns="http://jboss.com/arquillian"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gfembed="urn:arq:org.jboss.arquillian.container.glassfish.embedded_3">
<gfembed:container>
...
<gfembed:instanceRoot>\tmp</gfembed:instanceRoot>
</gfembed:container>
</arquillian>