2012-04-27 24 views
2

我已經使用JSF 2.0開發了Web應用程序。它在IE 8和其他瀏覽器(firefox和谷歌瀏覽器)中工作正常。但它在IE9中不起作用。您能否介紹一下JSF的IE9兼容性以及如何完成這項工作,以便我的應用能夠在IE9中運行。JSF Web應用程序無法在IE9中工作。但它在IE8中正常工作

+0

也許你對某些JSF標籤有問題......你正在使用哪個JSF標籤? – choop 2012-04-27 09:46:38

+0

我正在使用等... – Thirumurthy 2012-04-27 13:54:26

+0

嘗試從XHTML文件中刪除並試一試.. – choop 2012-04-27 14:04:29

回答

1

我們對IE9也有一些問題,我們的解決方法是使用一個過濾器告訴IE9在兼容模式下工作。

請注意,這應該是最後的手段。在使用過濾器之前,您應該首先嚐試解決您的具體問題(在您的問題中未明確解釋)。

兼容模式導致IE9鬆動圓角。

@WebFilter("*.xhtml") 
public class CompatibilityFilter implements Filter { 

    public CompatibilityFilter() { } 

    public void doFilter(ServletRequest request, ServletResponse res, 
      FilterChain chain) throws IOException, ServletException { 
     HttpServletResponse resp = (HttpServletResponse) res; 
     resp.addHeader("X-UA-Compatible", "IE=EmulateIE8"); 
     resp.addHeader("Cache-Control", "no-cache, must-revalidate"); 
     chain.doFilter(request, resp); 
    } 

    public void destroy() { } 

    public void init(FilterConfig fConfig) throws ServletException { 
    } 
} 
+0

感謝您的回覆。我已經嘗試了你提到的方式。在過濾器中添加下面的標題和響應後,它的工作正常。 resp.addHeader(「X-UA-Compatible」,「IE = EmulateIE8」); 但按F12開發人員收費工具將打開。在這種情況下,當您將文檔模式更改爲IE9標準時,問題仍然存在。你能幫我嗎...??? – Thirumurthy 2012-04-27 10:46:37

+0

如果你已經擁有'@WebFilter'註解,'web.xml'註冊是不必要的。然而,URL模式是錯誤的。不應該是@WebFilter(「*。xhtml」)或者@WebFilter(servletNames = {「Faces Servlet」})'? – BalusC 2012-04-27 14:08:06

+0

@BalusC感謝您澄清。所以我們很幸運,儘管我們的配置錯誤,它仍然工作......更新了我的答案。 – 2012-04-28 14:59:19

0

我知道這是一個老問題,但你可能正經歷/經驗,我們也做了同樣的缺陷:

> <f:ajax/> not working at all in IE9 (normal mode) 
> Created: 18/May/11 
> Component/s: ajax 
> Affects Version/s: 2.1.1  
> Fix Version/s: 2.1.7, 2.2.0-m01 

見JIRA: https://java.net/jira/browse/JAVASERVERFACES-2063

的信號,這是問題是如果你得到:

「malformedXML:Unable to get val屬性'removeChild'的屬性: 對象爲null或未定義「。

在您的瀏覽器控制檯中。

解決方案將移至2.1.7或更高版本。

相關問題