仅显示具有漂亮面孔的域名

时间:2012-03-02 16:08:40

标签: jsf-2 url-rewriting prettyfaces

我有一个JSF2应用程序,我想在浏览器中只显示每个页面的域名。例如:

http://www.example.com/index.jsfhttp://www.example.com

因此,我将PrettyFaces配置为:

<url-mapping id="index">
    <pattern value="/" />
    <view-id value="/index.jsf"/>
</url-mapping>

但是,我收到404错误消息“请求的资源(/index.jsf/)不可用。”

如果我尝试使用“/ test”作为模式,那么它适用于www.example.com/test。

以下文件存在于web-root中:

index.xhtml
index.html

index.html包含重定向

<meta http-equiv="Refresh" content="0; URL=index.jsf">

非常感谢。

PS:PrettyFaces 3.3.2,JSF 2,PrimeFaces 3.1.1

编辑: 我搞定了! 我需要删除浏览器缓存。我不知道为什么......但它有所帮助。无论如何,谢谢你的答案!

2 个答案:

答案 0 :(得分:1)

我不知道PrettyFaces部分,但您也可以将FacesServlet映射从*.jsf更改为*.xhtml,然后使用<welcome-file>index.xhtml</welcome-file>代替并删除那个hacky index.html。这样您就不需要使用虚拟URL,也可以从容器的内置欢迎文件工具中获益。

答案 1 :(得分:0)

浏览器经常缓存301重定向,以便将来不需要联系旧地址。清除浏览器缓存是强制浏览器再次联系原始URL的唯一方法。