gpt4 book ai didi

java - 在 Openshift Tomcat 6 上获取 WEB-INF 路径 - JBoss EWS 1.0

转载 作者:行者123 更新时间:2023-11-28 23:37:10 35 4
gpt4 key购买 nike

我之前使用以下方法在 Tomcat-5.0.28 及更早版本上获取我的上下文路径: String context_path = context.getRealPath("/WEB-INF/");这有助于返回该文件夹的路径。但是在 OpenShift(Tomcat 6 - JBoss EWS 1.0)上这会返回

/var/lib/openshift/53.*context_id_here*..18/jbossews/null

null 应该是:

work/Catalina/localhost/_/WEB-INF

如何使用 JBOSS/Tomcat 获取 OpenShift 上 WEB-INF 文件夹的路径?

一些背景信息:当我在自己的 Tomcat 服务器上运行这个 struts webapp 时,我在 webapps 目录中部署了一个 appname.war 文件并等待它展开(因为我已经在 server.xml 文件中设置了该选项).然后我将一个文件夹移动到 webapps/appname/文件夹,其中包含我需要读取和写入以使我的应用程序正常工作的 xml 文件。在 OpenShift 上,我使用 jar xvf appname.war 手动提取 war 文件(因为这是默认设置,我不知道如何更改它),然后移动文件夹(与我的 war 文件位于同一目录) git 添加和推送后的文件夹)工作/Catalina/localhost/_/WEB-INF/当我尝试使用如上所示的路径时,这会导致 NullPointerException。

最佳答案

我认为您应该使用 getServletContext 或 getRealPath 之类的东西,并从 Web 根目录读取它,而不是尝试在物理磁盘上查找文件。这样你的 war 文件就可以毫无问题地在任何地方运行。尝试同时查找这两者,看看是否有一个适合您的用例。

关于java - 在 Openshift Tomcat 6 上获取 WEB-INF 路径 - JBoss EWS 1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23627130/

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