0

jboss eap 6 (AS7) に移行する Seam 2.2.2 アプリケーションがあります。テストは古い jboss 組み込みコンテナーにあったため、arquillian を使用し始めましたが、展開パッケージを作成するためのホットを発見できませんでした。

これは私の試みの1つです:

@Deployment
@OverProtocol("Servlet 3.0") 
public static Archive<?> createDeployment() throws IOException {

    // Build the ear with Maven by hand before run the test!
    final EnterpriseArchive ear = ShrinkWrap.createFromZipFile(
           EnterpriseArchive.class, new File("../Sin-ear/target/Sin.ear"));

    final JavaArchive testjar = ShrinkWrap.createFromZipFile(
           JavaArchive.class, new File("./target/test.jar"));
    //final JavaArchive testjar = ShrinkWrap.create(JavaArchive.class, "test.jar") //other attempt
    //     .addPackages(true, "com.miles.knowledge.test");

    ear.addAsModule(testjar);
    return ear;
}

テスト クラスを JUnit テストとして実行すると失敗します (エラーなしでアプリケーションの展開を確認できます)。

java.lang.ClassNotFoundException: com.miles.knowledge.test.GreeterTest from [Module "deployment.Sin.ear.Sin.war:main" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213)
    ...

テスト クラスを war パッケージにパッケージ化する必要があるようですが、ちょっと迷っています。助けが必要です。

4

1 に答える 1