小编典典

如何在 Eclipse 中更改动态 Web 项目的上下文根?

all

我在 Eclipse 中开发了一个动态 Web 项目。我可以使用以下 URL 通过我的浏览器访问该应用程序:

http://localhost:8080/MyDynamicWebApp

我想将访问 URL 更改为:

http://localhost:8080/app

为此,我从项目“属性 | Web 项目设置 | 上下文根”中更改了上下文根。但是,Web 应用程序仍然具有相同的访问
URL。我已经在Tomcat上重新部署了应用程序并重新启动了Tomcat,但是访问URL和之前一样。

我发现该文件没有server.xml附加WAR文件。在没有server.xml附加文件的情​​况下,Tomcat 是如何确定我的 Web
应用程序的上下文根/MyDynamicWebApp并允许我通过此上下文根 URL 访问应用程序的?


阅读 56

收藏
2022-06-24

共1个答案

小编典典

我确定你现在已经继续前进了,但我想我还是会回答的。

其中一些答案提供了解决方法。实际上必须发生的是您清理并重新发布您的项目以“激活”新的
URI。这是通过右键单击您的服务器(在“服务器”视图中)并选择“清理”来完成的。然后你开始(或重新启动它)。这里的大多数其他答案都建议您做一些实际上可以做到这一点的事情。

正在更改的文件是workspace/.metadata/.plugins/org.eclipse.wst.server.core/publish/publish.dat除非,也就是说,您的工作区中有多个服务器,在这种情况下,它将publishN.dat位于同一路径上。

希望这可以帮助某人。


不确定这是否是适当的礼仪——我正在编辑这个答案,以便为 Eclipse Indigo 提供确切的步骤。

  1. 在项目的 _ Properties 中,选择 _ Web Project Settings

  2. 将上下文根 更改为 _ app_ 。

Eclipse 项目属性 Web 项目设置的屏幕截图

  1. 选择“ _ 窗口” >“显示视图”>“服务器”_。

  2. 通过单击红色方框(“停止服务器”工具提示)或上下文单击服务器列表以选择“停止”来停止服务器。

  3. 在您要使用的服务器上,右键单击以选择“清理”。

在此处输入图像描述

  1. 在此确认对话框中单击确定。

要求更新服务器配置以匹配更改的上下文根的对话框屏幕截图

现在您可以使用新的“app”URL 运行您的应用程序,例如:

http://localhost:8080/app/

在 Eclipse 之外,在您的生产服务器上执行此操作更加容易 –> 重命名 war 文件。将您的 Vaadin 应用程序导出为 WAR 文件( _ 文件 > 导出 > Web > WAR 文件)。将 WAR 文件移动到 Web 服务器的 servlet 容器,例如 Tomcat。重命名您的
WAR 文件,在本例中为 _ app.war
。当您启动 servlet 容器时,大多数(如 Tomcat)都会自动部署应用程序,其中包括将
war 文件扩展至文件夹。在这种情况下,我们应该看到一个名为 _ app_ 的文件夹。你应该很高兴。测试您的网址。对于诸如 *example.com
之类的域,这将是:

http://www.example.com/app/

如果使用可视化插件,Vaadin 工具包程序员可能需要重建他们的小部件集。

2022-06-24