5

JAVA EE アプリケーション サーバーのビジネス コード内に問題があります。src/main/resourcesフォルダー内のいくつかのファイルにアクセスします

  InputStream inputStream = Thread
                .currentThread()
                .getContextClassLoader()
                .getResourceAsStream(filePath);

本番環境ではこれは機能しますが、arquillian テスト内でこの機能を使用するコードの一部をテストしたいと思います。

を生成するためにシュリンクラップを使用していますtest.war

 WebArchive testArchive = ShrinkWrap.create(WebArchive.class, "test.war")
                .addPackages(true, "ch.microtronic.evending")
                .addAsWebInfResource("wildfly-ds.xml")
                .setWebXML(new File("src/main/webapp/WEB-INF/web.xml"))
                .addAsResource("test-persistence.xml", "META-INF/persistence.xml");

src/main/resourcesからにリソースを追加するのに問題がありtest.warます。

からのみファイルを追加できますsrc/test/resources

ディレクトリ構造は次のようになります。

src
 |__main
 |   |__java
 |   |__resources
 |   |__webapp
 |   
 |__test
     |__java
     |__resources

私がしなければならないこと?

4

3 に答える 3

4

にないファイルを追加したい場合src/test/resourcesaddAsResource(File, String)addAsResource(String, String). あなたの例は次のようになります:

.addAsResource(new File("src/main/resources/test-persistence.xml"),"META-INF/persistence.xml");

コードで同様の問題を解決したばかりなので、このアプローチは間違いなく機能します。

于 2016-12-26T09:47:54.113 に答える