2012-03-02 28 views
0

我有一个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。

下列文件存在于网络的根:

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

编辑: 我得到它的工作! 我需要删除浏览器缓存。我不知道为什么......但它有帮助。无论如何,谢谢你的回答!

+0

您是否尝试过使用index而不是index.jsf,因为您在index.html文件中有重定向 – jzworkman 2012-03-02 16:12:02

回答

1

我没有关于PrettyFaces部分的想法,但你也可以只改变从*.jsfFacesServlet映射*.xhtml然后用<welcome-file>index.xhtml</welcome-file>代替,摆脱那个哈克index.html。通过这种方式,您无需摆弄虚拟URL,而且您还可以从容器的内置欢迎文件设施中获益。

0

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