我正在使用JSF 2.0 + PrimeFaces 2.2.1开发一个Web应用程序 现在我认为PrimeFaces 3.x足够稳定。 (3.1) 我可以替换库(PrimeFaces jar文件)并继续开发。我知道PrimeFaces 3.1中已经重新发明了一些功能。 这个改变会不会给我的应用带来任何问题?
答案 0 :(得分:3)
您可以在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行为实现,以提高灵活性。在这里阅读更多内容。 Common * Listener和* Update属性现在被删除,一个例子是评级组件;
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>
用户指南和Taglib文档(IDE完成)将提供组件的所有可用事件。
- RequestContext现在允许从后台bean执行javascript(例如决定保持对话框打开或隐藏它),在2.x中,这些条件javascript执行回调就像oncomplete一样是通过回调参数,执行(“脚本在这里”)实现的与回调参数相比,使它更容易实现。请注意,仍然支持回调参数,将来它们也会在PrimeFaces内部使用。
- 标签/属性文档在facelet taglib中再次可用,以便通过IDE代码完成快速获取文档。
- Aristo取代Sam作为内置主题,sam在主题库中可用作可下载的主题。
您可以在PrimeFaces 3.0中找到主要更改 - &gt; 3.1 PrimeFaces blog。以下是相关摘录:
向后兼容性
关于与3.0的向后兼容性,有两点需要注意;
- 组件引用现在与JSF Spec对齐,如果PrimeFaces找不到组件,它将引发异常。从PrimeFaces 2.2开始,我们一直在记录一条信息消息,即无法找到组件并回退到客户端ID。如果您从2.2开始没有忽略这些消息并修复了代码,那么就不会有问题。如果没有,则需要根据findComponent specification更新组件引用。
如果您需要重置输入组件上的主题感知样式,则删除primefaces.THEME_FORMS
设置以支持普通css,而是添加重置css。