gpt4 book ai didi

java - Tomcat/TomEE 添加 "/localhost"到 servletContext.getResource ("myStaticFile")

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:26:45 25 4
gpt4 key购买 nike

我的 WAR 在正确的上下文根“/myApp”下在 TomEE 中正常部署,这样我就可以转到 http://localhost:8080/myApp

我在下面有一些静态文件:/myApp/WEB-INF/文件

从分解的 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”部分,但为什么要把它放在那里?

最佳答案

这看起来像是采用以下形式的 Tomcat 内部 jndi URL 之一:

jndi:/hostname/contextPath/pathInWebApp

看来您发现了 TomEE 错误。

关于java - Tomcat/TomEE 添加 "/localhost"到 servletContext.getResource ("myStaticFile"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20222426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com