Richfaces collapsiblePanel随机导致Chrome中的javascript错误

时间:2017-03-21 12:07:47

标签: javascript google-chrome jsf-2 richfaces

我在JBoss EAP 6.4上使用RichFaces 4.5.13.Final和JSF 2.1开发复杂的Web应用程序。一些页面包含像此一样的collapsiblePanel

            <h:form id="myForm">
             <rich:collapsiblePanel id="myPanel" header="Header" switchType="client">
              <h:outputText value="Test" />
             </rich:collapsiblePanel>
            </h:form>

在谷歌浏览器中(经过版本57.0.2987.110(64位)测试)我们注意到页面加载后出现了一个奇怪的javascript错误。此错误随机发生,但并非总是如此:

Uncaught TypeError: Cannot read property 'getItems' of undefined
at init (togglePanelItem.js:43)
at new init (collapsiblePanelItem.js:32)
at HTMLDocument.<anonymous> (collapsiblePanel.js:52)
at fire (jquery.js?amp;v=4.5.13.Final:3232)
at Object.fireWith [as resolveWith] (jquery.js?amp;v=4.5.13.Final:3362)
at Function.ready (jquery.js?amp;v=4.5.13.Final:3582)
at HTMLDocument.completed (jquery.js?amp;v=4.5.13.Final:3617)

例如,如果我重新加载页面10次,则此错误将发生在5次左右。在Firefox等其他浏览器中,此错误永远不会发生。

看起来javascript文件是随机加载的。所以我已经尝试通过将org.richfaces.resourceOptimization.enabled设置为true来为RichFaces使用压缩文件,但错误仍然存​​在。

我想解决这个问题,但我不知道如何本地化这个问题。

修改

经过一段时间的调试后,我发现https://issues.jboss.org/browse/RF-13780存在一些相似之处,因为element[rf.RICH_CONTAINER]由于某些原因有时rf.component未定义。

0 个答案:

没有答案