【问题标题】:URL pattern of a web application running on TOMCAT 7在 TOMCAT 7 上运行的 Web 应用程序的 URL 模式
【发布时间】:2011-08-19 15:54:25
【问题描述】:

我有一个简单的 Web 应用程序,其中包含一些静态页面。浏览器地址栏中的 URL 仅取决于项目中的文件位置。 http://computername:8080/mylogin/ is my home URL.

以下是我单击主页时出现的几个 URL。

http://computername:8080/mylogin/ssis/api.jsf
http://computername:8080/mylogin/ssis/dev.jsf

我正在实施面包屑。为了生成它,我使用了 Justin Whitford 的 javascript。 问题是这个面包屑使用浏览器 URL 来生成它。所以我的 URL 应该采用一些常见的方式/模式才能正确实现面包屑。

我想控制这些 URL。我想让它们变成这样。 主页:http://myLogin/

子页面:

http://mylogin/ssis/api/
http://mylogin/ssis/dev/

所有这一切我都希望有一个适当的面包屑实现。

【问题讨论】:

  • 问题是这个面包屑使用浏览器 URL 来生成它 为什么这是个问题?
  • @BalusC:我提到面包屑作为问题的上下文。所以我必须在Tomcat中注册一个域名。我还有 1 件事要问,如何将 url 'mylogin/ssis/dev.jsf' 更改为 'mylogin/ssis/dev'

标签: url jsf tomcat7 breadcrumbs


【解决方案1】:

您可以通过完全删除 Tomcat 的默认 /webapps/ROOT 文件夹并将您的 webapp 的 mylogin.war 文件重命名为 ROOT.war 来将您的 webapp 部署到上下文根目录。

这样你就有http://computername:8080/

您可以通过将 Tomcat 配置为侦听默认 HTTP 端口 80 来摆脱端口 8080。打开 Tomcat 的 /conf/server.xml,找到 <Connector port="8080"> 元素并在其中编辑端口。

现在你有http://computername/

您可以在平台属性中更改计算机名称或在hosts config file 中添加转发。在 Windows 上,它是 system32/drivers/etc/hosts 文件。只需添加以下行:

127.0.0.1 mylogin

现在您有了http://mylogin/(请注意,这仅适用于本地环境!)

至于在/foo 上映射/foo.jsf 等各个页面,您可以为此使用filter。这是一项相当乏味的工作。与其重新发明轮子,不如看看PrettyFaces


我完全不知道如何更改主机名、端口和上下文名称与生成面包屑相关。您可能夸大了具体问题或以错误的方式使用它。

【讨论】:

    猜你喜欢
    • 2013-03-26
    • 2012-08-04
    • 1970-01-01
    • 1970-01-01
    • 2015-10-31
    • 2019-01-03
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    相关资源
    最近更新 更多