gpt4 book ai didi

tomcat - 从 Intellij 在 tomcat 中将 Web 应用程序部署为 ROOT.war 应用程序

转载 作者:行者123 更新时间:2023-11-28 21:59:56 25 4
gpt4 key购买 nike

如何将应用程序作为 ROOT.war 部署到 Intellij 中的 tomcat?

我部署了 2 个应用程序,它们的页面都包含如下代码:

<c:url value="/someLink"/>

部署在上下文路径 / 上的应用程序给出以下结果:

/someLink

而部署在上下文路径 /something 上的其他应用程序给出以下结果:

http://localhost:8080/something/someLink

我如何确保部署在上下文路径 / 上的应用程序也能完成此操作?所以最终结果看起来像这样

http://localhost:8080/someLink

最佳答案

我找到了解决这个问题的方法。问题是 Intellij 在上下文 / 下部署了应用程序.

使用 <c:url> 时-具有以下值的标签 <c:url value="/someLink"/><c:url> -tag 将链接更改为 //someLink .当 URL 放在响应上时,它不会以主机名作为前缀。

我的解决方法是在war的META-INF目录下添加一个context.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<Context path="" />

这会导致 Intellij 在上下文 "" 下部署应用程序而不是 "/" .<c:url>标记然后将链接转换为 /someLink并放入包含主机名的响应。

您还必须确保您从 Intellij 部署的 war 被命名为 ROOT.war 以使其工作。

关于tomcat - 从 Intellij 在 tomcat 中将 Web 应用程序部署为 ROOT.war 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26463081/

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