我的 WAR 在 TomEE 中正确的上下文根“/myApp”下部署得很好,这样我就可以去http://localhost:8080/myApp
我有一些静态文件:/myApp/WEB-INF/files
通过查看分解的 WAR,文件肯定在那里。我的问题是,在我编写的代码中,servletContext.getResource("/WEB-INF/files/MyFile.json")
我收到一个找不到文件的错误,因为它显示日志中的实际路径是:
/localhost/myApp/WEB-INF/files/MyFile.json
当我在常规的 tomcat 服务器、Google App Engine 甚至 WebSphere 7 中安装应用程序时,这段代码实际上是有效的。在 TomEE 中,我不是在 webapps 下部署应用程序,而是在 wtpwebapps 下部署应用程序。我已经完成了上下文配置的搜索,但其中大多数都涉及使应用程序具有“”的上下文根(使其成为根应用程序)。
我可以编写一些代码来删除 URL 的“/localhost”部分,但为什么将它放置在那里?