3
我正在運行一個使用RichFaces 4.1.0,mojarra 2.0.2和apache tomcat 6.0.32的web應用程序。 我的應用程序在除IE9以外的所有不同瀏覽器上運行良好。 它在IE 9中停止工作,並且不會生成任何javascript錯誤或tomcat日誌。 只要發生a4j重新渲染操作,它就會失敗。 由於設計限制,我無法使用meta標籤來設置IE9的兼容模式。JSF - RichFaces - IE9重新渲染失敗
下面是我的代碼和web.xml:
<h:body>
<h:form>
<rich:tabPanel switchType="client">
<rich:tab header="Overview">
<span>Total Number of Applications</span>
</rich:tab>
<rich:tab header="Options" onheaderclick="refreshOptions();" >
<h:outputText value="Logging Level:" />
<rich:select id="optionsLogLevel"
value="#{optionsBean.logLevel}"
required="true"
requiredMessage="Logging Level is required">
<f:selectItems value="#{optionsBean.logLevelsList}" />
</rich:select>
</rich:tab>
</rich:tabPanel>
<a4j:jsFunction name="refreshOptions"
action="#{optionsBean.refreshOptions}"
render="optionsLogLevel" execute="@this" />
</h:form>
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.enableEarlyMissingResourceLibraryDetection</param-name>
<param-value>true</param-value>
</context-param>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>com.mitel.bpi.webadmin.model.BPIWebAdminContextListener</listener-class>
</listener>
什麼是設計約束?我會建議尋找可以幫助老年人IE瀏覽器(或IE9在compat模式)仍然正確顯示現代CSS的polyfills。 – 2012-03-15 21:36:44
在阿賈克斯和IE9的Mojarra有幾個問題。你可以嘗試目前的Mojarra版本2.1.7嗎? – fischermatte 2012-03-20 19:41:20