0

我有使用 tomcat 在本地开发和运行的 Web 应用程序,路由已配置,一切正常。现在,我需要使用 JUnit 和 Jetty 运行一些集成测试(计划是在部署之前运行这些测试),因为我正在使用以下代码:

server = new Server(2020);
    WebAppContext webapp = new WebAppContext();
        webapp.setContextPath("/projectName");
        webapp.setWar("build/libs/myWarFile.war");
        server.setHandler(webapp);

        server.start();

Jetty 服务器启动得很好,现在的问题是我的链接都没有工作。因此,例如在 tomcat 上运行项目时,我可以访问如下页面:

http://localhost:8080/projectName/page

但从测试访问同一页面会返回错误代码 404:

http://localhost:2020/projectName/page

我浏览了一下,发现唯一“工作”的页面是http://localhost:2020/

它显示了我的 WebContent 文件夹的内容(两个文件夹 META-INF 和 WEB-INF,两者都无法访问)。所以我觉得我错过了配置的一些重要部分,有什么帮助吗?

4

1 回答 1

0

我已经处理了这个问题,结果证明代码是正确的(除了setContextPath指向我的那个(现在编辑))。问题出在 .war 文件中,该文件是在 gradle 中生成的(由于某种原因缺少很多东西,因此必须使用 Eclipse 工具构建它Export -> WAR File

于 2013-07-24T10:43:41.273 回答