HibernateでArquillian IN_CONTAINERモードでテストを実行する方法

私はEJB 3の第2版をmanningで読んでいて、IntelliJのソースでテストを実行するのに苦労しています

Test is: Full Source can be found here:

@RunWith(Arquillian.class)
@Run(RunModeType.IN_CONTAINER)
....
.....
    @Deployment
    public static Archive<?> createDeployment() {
        return ShrinkWrap.create(JavaArchive.class, "foo.jar").addClasses(OrderProcessor.class,
                OrderProcessorBean.class,
                ItemService.class,
                ItemServiceBean.class, Bid.class, Bidder.class, Item.class).addManifestResource("test-persistence.xml", ArchivePaths.create("persistence.xml"));
    }

persistence.xmlは次のとおりです:

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

   
      org.hibernate.ejb.HibernatePersistence
      jdbc/chapter2
      
         
         
      
   

テスト実行中のエラー:

WARNING: Could not obtain connection to query metadata
java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused.
    at com.sun.gjc.spi.base.DataSource.getConnection(DataSource.java:112)
    at org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider.getConnection(InjectedDataSourceConnectionProvider.java:71)

更新

domain.xmlはこちらにあります:

このエラーから、データベース接続を確立できなかったようです。しかし、なぜメモリダービーデータベースに接続できないのか分かりません。 domain.xmlは create = true プロパティを持つため、dbを作成するだけです。

1

1 答え

このエラーから、データベース接続を確立できなかったようです。しかし、どのデータベースに接続しようとしているのか分かりません。私はこのために自分のシステム上でデータベースを実行していません。

Do I need to have a database running specifically or will the test run a database on it's own?
If so, which one?

このテストでは、/test/resources/glassfish/config/domain.xml です。これ以上の設定は必要ありません。

Brian's comments at this arquillian doc suggest a couple of changes in arquillian.xml. Maybe worth a try.

0
追加された
ありがとう、それは物事をクリアする。私はまだ domain.xml を見落としましたが、名前空間を追加しても同じエラーが出ます。
追加された 著者 Omnipresent,