2

由于PickList组件中的性能错误,我最近将PrimeFaces3.4升级到3.4.2 。此次升级后,我的向导组件已停止运行。

我正在使用自定义按钮进行导航,使用widgetVar,next()prev()用户指南 3.4 定义的。

<p:wizard widgetVar="wiz" flowListener="#{wizard.onFlowProcess}"
            showStepStatus="false" showNavBar="false">

<p:commandButton value="Weiter" onclick="wiz.next()" update="dialogRespHeader">

这在 3.4 版中有效。单击按钮后更新后,无论我等待多长时间,都会显示等待进度动画,并且没有任何反应。没有对服务器的挂起请求:单击按钮后立即发送请求,响应也随之而来。它看起来正确:

<partial-response>
<changes>
<update id="mainForm:j_id1831660928_7d431f69"> [some content]
<extension ln="primefaces" type="args">{"currentStep":"internUserTab"}</extension>
<extension ln="primefaces" type="args">{"currentStep":"internUserTab"}</extension>
</changes>
</partial-response>

所以问题是:这个版本之间有什么变化?这是一个错误,还是 API 更改(我找不到有关此组件的 api 更改的任何信息)。

更新 FireBug 控制台显示错误:

SyntaxError: JSON.parse: unexpected non-whitespace character after JSON data

它会是 jQuery 1.8.2 中的错误吗?这是这些版本之间最大和最危险的变化。

4

1 回答 1

0

这是PrimeFaces 中的一个错误,它通过浏览器缓存资源。

jQuery 的版本发生了变化,但资源的名称保持不变,因此浏览器将从缓存中加载旧版本的 jQuery,直到您清除缓存

从 3.4 迁移到 3.5 多次复制。在各种组件的所有情况下都会发生,摆脱它的唯一方法是向所有用户发送信息,并附上清理浏览器缓存的说明。

于 2014-02-21T10:58:45.823 回答