2010-04-22 91 views
1

我刚刚开始使用JSF和Facelets,并且我已经放在一个非常简单的页面中,该页面只是从另一个文件中获取模板并插入一些文本(只是为了显示它从模板和呼叫页面中提取信息)Internet Explorer不会显示Facelets文件

但是,每当我尝试在Internet Explorer 7中查看该页面时,它都会尝试下载该页面,因为它不知道它是什么。环顾四周后,我了解到IE不呈现xhtml,这是导致问题的原因,所以我的问题是这样的。

如何让facelets在Internet Explorer中正常工作?

我试图改变面向各种东西(.html,.jsf,.magic,moreMagic等等)的扩展,但无济于事。我是否缺少一些非常基本的东西,或者我只需要找到不同的模板/自定义标记框架?为了记录,我运行JBoss-4.2.3.GA,Java EE 5,JSF 1.2,并使用IE 7和myEclipse 7.5。由于工作上的限制,我无法升级它们中的任何一个。

回答

2

好吧,它看起来像是一个更多的挖掘是我需要的,所以这里是任何人遇到同样的障碍的答案。

您仍然可以访问页面作为.faces,你的web.xml将实际上是通过从.faces将它传递给.xhtml并为您处理

+0

实际上,它是这样做的'FacesServlet'。 – BalusC 2010-07-15 19:07:13

+1

正确,但配置是在web.xml中(仅供将来的观众参考) – 2010-07-16 19:00:32

1

我的Internet Explorer 8和Glassfish 3.0.1遇到同样的问题。但是,解决方案是不同的。

就我而言,我不得不重新命名我的表登录表错误页面使用的.html延伸,而不是.xhtml。这解决了我的问题。所有其他页面都可以使用.xhtml扩展程序,而不会出现问题。这里是web.xml中的工作片段:

<login-config> 
    <auth-method>FORM</auth-method> 
    <realm-name>file</realm-name> 
    <form-login-config> 
    <form-login-page>/login.html</form-login-page> 
    <form-error-page>/loginError.html</form-error-page> 
    </form-login-config> 
</login-config> 

希望这有助于。