PrimceFaces 3.1 向后兼容 2.x 版本

发布于 2025-01-03 01:24:10 字数 170 浏览 1 评论 0原文

我正在使用 JSF 2.0 + PrimeFaces 2.2.1 开发一个 Web 应用程序 现在我认为PrimeFaces 3.x已经足够稳定了。 (3.1) 我可以替换库(PrimeFaces jar 文件)并继续开发吗?我知道 PrimeFaces 3.1 中重新发明了一些功能。 此更改会给我的应用程序带来任何问题吗?

I'm developing a web app using JSF 2.0 + PrimeFaces 2.2.1
Now I think PrimeFaces 3.x is stable enough. (3.1)
Can I replace the library (PrimeFaces jar file) and continue the development. I know some features have been re-invented in PrimeFaces 3.1.
Will this change make any problem to my app?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我喜欢麦丽素 2025-01-10 01:24:10

您可以在 PrimeFaces 2.2 中找到主要变化 --> PrimeFaces wiki 中的 3.0。以下是相关性的摘录:

一般变化

Taglib 命名空间更改为;

http://primefaces.prime.com.tr/ui -> http://primefaces.org/ui
http://primefaces.prime.com.tr/mobile -> http://primefaces.org/mobile

请注意,此更改适用于 3.0.M4 及更高版本。

组件事件现在已解耦并实现为 ajax 行为,以提高灵活性。在这里阅读更多内容。常见的 *Listener 和 *Update 属性现已删除,例如评级组件;

2.x;


3.x;


    

用户指南和Taglib文档(IDE完成)将提供组件的所有可用事件。

  • RequestContext 现在允许从支持 bean 执行 javascript(例如,决定保持对话框打开或隐藏它),在 2.x 中,回调上的条件 javascript 执行(如 oncomplete)是通过回调参数、execute("script here") 实现的与回调参数相比,实现相同的操作非常容易。请注意,回调参数仍然受支持,并且将来也会受支持,因为它们也在 PrimeFaces 内部使用。
  • 标记/属性文档在 Facelet taglib 中再次可用,以便通过 IDE 代码完成来利用快速文档。
  • Aristo 取代 Sam 作为内置主题,sam 可以在主题库中作为可下载的主题。

您可以找到 PrimeFaces 3.0 的主要变化 --> 3.1 在此PrimeFaces 博客。以下是相关性的摘录:

向后兼容性

关于向后兼容 3.0 有两点需要注意;

  • 组件引用现在与 JSF 规范保持一致,如果 PrimeFaces 找不到组件,则会抛出异常。自 PrimeFaces 2.2 以来,我们一直在记录一条信息消息,表明无法找到组件并回退到客户端 ID。如果您从 2.2 开始就没有忽略这些消息并修复您的代码,那么就不会有问题。如果没有,您需要更新对 findComponent 规范
  • primefaces.THEME_FORMS 设置已被删除,以支持纯 css,如果您需要重置输入组件上的主题感知样式,请添加重置 css。

You can find the main changes in PrimeFaces 2.2 --> 3.0 in the PrimeFaces wiki. Here's an extract of relevance:

General Changes

Taglib namespaces are changed as;

http://primefaces.prime.com.tr/ui -> http://primefaces.org/ui
http://primefaces.prime.com.tr/mobile -> http://primefaces.org/mobile

Note that this change applies 3.0.M4 and newer.

Component events are now decoupled and implemented as ajax behaviors to improve flexibility. Read more at here. Common *Listener and *Update attributes are now removed, an example is rating component;

2.x;

<p:rating value="#{ratingController.ratingValue}" rateListener="#{ratingController.handleRate}" update="messages"/>

3.x;

<p:rating value="#{ratingController.ratingValue}">
    <p:ajax event="rate" listener="#{ratingController.handleRate}" update="messages" />
</p:rating>

User's guide and Taglib docs(IDE completion) will provide all the available events of a component.

  • RequestContext now allows to execute javascript from backing beans (e.g. deciding to keep a dialog open or hide it), In 2.x this conditional javascript execution on callbacks like oncomplete are achieved via callback params, execute("script here") makes it very easy to implement the same compared to callback params. Note that callback params are still supported and will be in future as they are also used internally in PrimeFaces.
  • Tag/Attribute docs are available again in facelet taglib to take advantage of quick documentation via IDE code completion.
  • Aristo replaced Sam as the built-in theme, sam is available at theme gallery as a downloadable theme.

You can find the main changes in PrimeFaces 3.0 --> 3.1 in this PrimeFaces blog. Here's an extract of relevance:

Backward Compatibility

There are two points to note regarding backward compatibility with 3.0;

  • Component referencing is now aligned with JSF Spec, if PrimeFaces cannot find a component, it will throw an exception. Since PrimeFaces 2.2 we’ve been logging an info message that component cannot be found and falling back to the client id. If you haven’t ignored these messages and fixed your code since 2.2, there won’t be a problem. If not, you need to update your component referencing with respect to findComponent specification.
  • primefaces.THEME_FORMS setting is removed in favor of plain css, if you need to reset the theme aware styles on input components, add a reset css instead.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文