【问题标题】:URL mapping of servlets and JSP files with Tomcat and EclipseTomcat 和 Eclipse 的 servlet 和 JSP 文件的 URL 映射
【发布时间】:2012-01-22 09:38:06
【问题描述】:

我在 Eclipse 中有一个配置为部署到本地 Tomcat 服务器的 Web 应用程序项目。我们将网络应用程序称为 Blah。这里有两个问题——我肯定遗漏了一些非常简单的东西,但是我找不到一种简单的方法来在 Eclipse 中更改这些设置,而无需摆弄 Tomcat 配置文件。

1。 部署应用程序后,我可以用来浏览某些 servlet/JSP 的 URL 是localhost:port/Blah/servlet。我想去掉 Blah 前缀。

2。 我想为一些 JSP 文件设置重定向以“隐藏” .jsp 扩展名。例如,我希望 localhost:port/loginlocalhost:port/login.jsp 提供服务,最好不要让浏览器看到 30x 重定向状态代码。

3。 我想设置默认 URL,即localhost:port/,以重定向到特定的 JSP 或 servlet(同样,最好不发出重定向状态代码)。

任何帮助,包括相关资源的链接,将不胜感激。请注意,如果可能的话,我正在寻找一种在 Eclipse 中配置这些东西的方法。 (如果不可能,我想对可怕的 Tomcat XML 文件做最少的更改。)

【问题讨论】:

    标签: eclipse jsp tomcat servlets


    【解决方案1】:
    1. 这意味着您需要将应用程序部署为根应用程序。这很容易通过将您的战争文件命名为 ROOT.WAR(或您展开的战争目录 ROOT),或通过 defining a context for your web app 使用空字符串作为 path 属性来完成。

    2. 那么您不需要重定向,而是需要转发。或者您只是想将 JSP(它是一个 servlet)映射到给定的路径。在 web.xml 文件中定义一个 servlet 和一个 servlet 映射,就像对 servlet 类一样,但使用 <jsp-file> 而不是 <servlet-class>

    3. 这是使用 web.xml 中的 <welcome-file-list> 元素完成的。

    【讨论】:

    • 谢谢,这些是我害怕我不得不做的事情。不过,很高兴得到确认并感谢您的链接。如果没有更好的建议,我会标记为答案:-)
    • 你为什么害怕?在一个文件中添加几行 XML 并自动完成,这是一项可怕的任务吗?
    • 显然我在比喻地说“害怕”。但是,在使用 Eclipse 时,我想尽量减少对配置文件所做的更改。例如,我更喜欢通过 Eclipse 向导添加一个 servlet,而不是向我的项目添加一个类,然后(单独)将它配置为一个 servlet。我认为这是个人喜好问题,并已在我的问题中明确说明...
    • 您可以使用向导创建一个servlet,并选择“使用现有的类或JSP”。其余的将需要您使用键盘。
    猜你喜欢
    • 2018-11-24
    • 2016-10-28
    • 2013-10-11
    • 2017-02-01
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 2019-11-09
    相关资源
    最近更新 更多