Brian Leathem

6 minute read

RichFaces

We have a feature complete release of RichFaces 4.5 available with the release of RichFaces 4.5.0.Alpha3. This is a full framework release with RichFaces 4.5.0.Alpha3, whereas previous 4.5 Alpha releases consisted of just the components. We’ve back-ported many of the improvements from RichFaces 5 Alphas into this release, while maintaining backward compatibility with the RichFaces 4.3 branch.

To try out this release: You can download the distribution directly, or for maven users, increment the RichFaces version in your pom.xml to 4.5.0.Alpha3. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

Significant improvements in this RichFaces 4.5.0.Alpha3 release over previous 4.3 releases include:

  • JSF 2.2 compatibility

  • Our replacement Extended PartialViewContext (PVC) that extends the JSF PVC (for better interoperability with other JSF-based frameworks)

  • A re-vamped build consisting of a single (multi-module) repository

  • Chart components developed as part of last year’s GSoC

  • The updated JSF 2.2 compatible RichFaces Fileupload component

  • A type-safe approach for attribute definitions (using interfaces rather than xml)

  • Page fragments for abstracting your functional tests

  • An simplified Asciidoc version of the docs

Bug

  • RF-11093 - UIDataAdaptor context variable backup broken (re-entrance problem)

  • RF-12108 - Components second tab changes are not rendered after performing some ajax action if attribute ajaxRendered="true" inside <rich:message /> located on first tab

  • RF-12132 - RichFaces queue not cleared after js error in oncomplete attribute

  • RF-13018 - a4j:commandButton wrong actions performed

  • RF-13200 - Tree: Uncaught TypeError: Object #<Object> has no method '$'

  • RF-13235 - Tree - Row key conversion fails (UITree should not have generated @rowKeyConverter, since it is fully implemented in AbstractTree)

  • RF-13361 - Placeholder inside calendar is not rendered

  • RF-13374 - RichFaces push registered as $.fn.push overrides jQuery function

  • RF-13498 - Photoalbum - shutting down server with deployed app will throw JdbcSQLException:

  • RF-13513 - CollectionDataModel API is not available on pre-JSF 2.1 that poses backward compatibility problem

  • RF-13518 - Action Listener - invoking from composite component does not work

  • RF-13520 - mediaOutput: NPE is thrown when used with CDI beans and JSF 2.2

  • RF-13559 - Backport RF-13018 (a4j:commandButton wrong actions performed) to RF 4

  • RF-13565 - RichFaces 4.5 not compilable because of FileUploadResourcesTest

  • RF-13580 - RichFaces 4.5.x branch doesn’t compile

  • RF-13581 - Remove components from the framework module

  • RF-13591 - RichFaces 4.5 integration tests are failing

  • RF-13609 - Showcase doesn’t build

  • RF-13610 - Resource loading error in the showcase

  • RF-13611 - RichFaces 5.0.0.Alpha3 doesn’t work with Weld 2.2.0.Final

  • RF-13614 - RichFaces 4.5 unit tests are failing

  • RF-13615 - ExtendedDataTable: double ajax request on scrolling

  • RF-13630 - RichFaces 4.5.x can not be built due to cyclic maven dependency

  • RF-13635 - rich:menuGroup: Menu node image is missing

  • RF-13640 - Autocomplete with custom layout: cant select item by mouse

  • RF-13644 - Rich:editor JS Error in IE11

  • RF-13646 - Fix resource optimization

  • RF-13647 - File Download throws exception when used with a commandButton of type="button"

  • RF-13649 - TogglePanel: fails to render meta-component '@header'

  • RF-13650 - ITResourceOptimization tests fail - no resource aggregation applied

  • RF-13656 - Table collapse after tab change

  • RF-13657 - Remove bootstrap, font-awesome and richwidgets from 4.5

  • RF-13658 - Component issues in 4.5

  • RF-13676 - InputNumberSpinner - Validation is not triggered by ajax when nested in iteration components

  • RF-13677 - InputNumberSlider & Spinner render does not work when nested in iteration components

  • RF-13678 - Render @all does not work for nested a4j:region in collapsibleSubTable

  • RF-13679 - PickList is missing styleClass attribute

  • RF-13680 - Editor JS API method blur does not work after upgrade of CKEditor

  • RF-13682 - Stateless view: CSS stylesheets not included in head after form submit

  • RF-13684 - GraphValidator with uiRepat does not validate numeric group correctly

  • RF-13685 - ExtendedPartialViewContext.release causes IllegalStateException

  • RF-13687 - TabPanel header is not updated after switching of tabs

  • RF-13692 - Photoalbum can not be deployed to WildFly 8.0.x or 8.1.x due to Weld exception

  • RF-13697 - fileupload: maxFilesQuantity + multiple select: can upload more files than the limit

  • RF-13698 - RF 4.5 Chart title does not render

  • RF-13699 - RF 4.5 Chart attribute 'zoom' does not work

  • RF-13701 - RF 4.5 Bar chart plotClick malfunctioning

  • RF-13706 - dequeued Ajax request not processed correctly if its source element has been updated

  • RF-13717 - Some integration tests within components/rich are using wrongly FrameworkDeployment class

Component Upgrade

  • RF-13571 - Upgrade Arquillian components: Core, Drone, Warp

  • RF-13641 - Upgrade CSSParser to 0.9.14

  • RF-13667 - Upgrade mojarra dependency Enhancement

  • RF-13027 - Warning when deploying showcase - using a private modules which can be removed in the future

  • RF-13160 - Refactor the InputNumber* components into abstract classes

  • RF-13307 - Support java.util.Collection in iteration components

  • RF-13505 - Refactor custom tree traversal logic in EPVCI in order to leverage VisitContextFactory (blocked by Mojarra issue)

  • RF-13514 - Support file upload progress tracking in Servlets >= 3.0 environment

  • RF-13612 - Document styling attributes for rich:dataTable

  • RF-13623 - Merge components/pom with components/parent/pom in 4.5.x

  • RF-13634 - Consolidate deployment classes for integration tests

  • RF-13675 - Showcase: chart component improvements

  • RF-13683 - Backport RF-13237 (Showcase: enable debugging tools (ui:debug, r:log) when in development mode) to RF 4.5 and 4.3 Showcase

  • RF-13713 - Create Smoke test(s) for chart in RF 4.5

Feature Request

  • RF-12292 - "this" in oncomplete of a4j:commandButton returns window object.

  • RF-13597 - Drag and drop support for file upload

  • RF-13620 - Port the RichFaces 5 re-write of xml attribute to interfaces

  • RF-13636 - Add List Impls to the resource serialization whitelist

  • RF-13638 - Upgrade CKEditor to 4.3

  • RF-13651 - Integration tests failing in chrome

  • RF-13664 - EDT firstChild call will return a text element when the source code is formatted to have one element per line

  • RF-13665 - RichFaces 4.5 should fail fast when used with un-patched Mojarra

  • RF-13670 - Update the "new" labels in the showcase

  • RF-13673 - Backport the plain skin fix from RF 5

Task

  • RF-13334 - Upgrade jQuery UI to 1.10.3

  • RF-13507 - Backport RF-13317 (EPVCI should specify correct ViewState)

  • RF-13582 - Revert the core package re-factoring

  • RF-13583 - Backport the chart components to RichFaces 4.5 components module

  • RF-13584 - Backport the RF 5 component fixes

  • RF-13585 - Re-factor the components demo

  • RF-13586 - Port the page fragments to RF 4.5

  • RF-13608 - Apply appropriate package and artifact names to the component poms

  • RF-13626 - Rename the BOM artifact

  • RF-13627 - Refactor the RF 4.5 components to make use of the type-safe handlerClass attribute

  • RF-13631 - Remove the components/dist module

  • RF-13632 - RF 4.5 - refactor Javascript namespaces

  • RF-13637 - Refresh the dist zip for RF 4.5

  • RF-13642 - Fork and re-factor the asciidoc-based docs from RF 5 to RF 4.5

  • RF-13652 - Forward port the 4.3.7 fixes into the 4.5.x branch

  • RF-13653 - Update component namespaces in 4.5 examples

  • RF-13654 - Port photoalbum changes from 4.3.x

  • RF-13672 - Framework tests: add profile for WildFly 8.1

  • RF-13694 - Update README files for RichFaces 4.5.x

  • RF-13709 - Remove the chart components from the RichFaces mobile showcase

Next steps

With RichFaces 4.5.0.Alpha3 being feature complete we will proceed with a series of stabilizing Betas, followed by CR and Final releases in the end-of-summer / early-fall time-frame. The post 4.5.0 story is a bit more complicated, and deserving of it’s own post.