1

我正在运行 Glassfish 3.1.2 Embedded 来对我的应用程序进行单元测试。我像这样设置了一个 ScatteredArchive:

archive.addClassPath(new File("target/classes"));
archive.addClassPath(new File("src/test/resources"));
archive.addMetadata(new File("src/main/webapp/WEB-INF/web.xml"));

通过这种方式,glassfish 可以找到 web.xml 中指定的 servlet。单元测试这些作品完美。但是,glassfish 无法找到任何 Web 内容,例如 javascript、图像等。

我如何告诉 ScattedArchive Web 内容在哪里?

4

1 回答 1

2

您可以为 ScatteredArchive 使用不同的构造函数:

ScatteredArchive(String name,ScatteredArchive.Type type,File topDir)

Oracle GlassFish Server 3.1.2 Embedded Server Guide for release 3.1.2中对此进行了非常简要的描述。topDir 参数用于指向存档的“顶部”,这将是您的 war 文件的根目录。那是您的网络内容通常所在的位置。

于 2012-04-27T22:00:25.763 回答