Tuesday, May 27, 2014

RichFaces 4.3.7.Final Release Announcement

RichFaces

The RichFaces stable branch receives an update with the release of RichFaces 4.3.7.Final. This most recent micro release of the RichFaces 4.3 release series provides a number of bug fixes while we concurrently work on getting a JSF 2.2 compatible RichFaces 4.5 released.

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.3.7.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

This release resolves 13 issues, making RichFaces 4.3.5 a small bug-fix release. Hopefully this reflects well on the stability of the framework! The issues themselves address fixes for the tab, popupPanel, push, contextMenu, pickList and showcase. Full details of the fixes included are available in the release notes below.

Bug

  • RF-11417 - Tab: investigate why @action does not work

  • RF-11427 - rich:tab - actionListener

  • RF-11736 - rich:popupPanel x domElementAttachment="parent"

  • RF-13569 - Photoalbum: the change of users avatar doesn’t work

  • RF-13592 - a4j:push doesn’t work after rendering

  • RF-13613 - ContextMenu doesn’t show on mouseover

  • RF-13616 - PopupPanel autosize with togglePanel doesn’t resize

  • RF-13629 - popupPanel - minWidth, minHeight, maxWidth, maxHeight are not ignored when autosize == true

Component Upgrade

  • RF-13364 - Upgrade Mojarra to 2.1.28 in RichFaces 4.3.x

Enhancement

  • RF-13478 - VDL documentation typos

  • RF-13506 - Incorrect information on showcase fileUpload sample page (maxRequestSize description)

  • RF-13564 - rich:pickList shows an outline when clicked

Task

  • RF-13512 - Photoalbum: port fix from RF-13498 to RF4 photoalbum

Moving forward

We are finishing off work on our RichFaces 4.5 release to address JSF 2.2 compatibility with the RichFaces 4.x branch. This has necessitated we put RichFaces 5 development on hold, but we feel will be worth it to get JSF 2.2 support in a stable release sooner rather than later.


Friday, April 11, 2014

RichFaces Security Advisory CVE-2014-0335

RichFaces

A security vulnerability has been uncovered and resolved in RichFaces 4. Details of the vulnerability can be found in this Red Hat Errata document released for our WFK product. We have released a community micro release addressing this vulnerability, so please update your applications ASAP. Read below for a summary of the problem and some additional minor fixes included in this release.

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

The issue

The issue was reported and resolved through community efforts in RF-13250. Much thanks to Marcel Šebek for both investigating and patching this issue!

The vulnerability

The vulnerability manifests itself when malformed Atmosphere requests cause RichFaces to leak memory. This memory leak can be exploited via a large number of requests to a push-enabled RichFaces application leading to an out-of-memory error, and a corresponding DDoS on the underlying application server.

This 4.3.6.Final release of RichFaces no longer leaks memory leak when receiving malformed Atmosphere requests. Users are encouraged to update their deployed RichFaces applications, particularly those that are push-enabled.

Note: while we have included the patch in RichFaces 5, we have not shipped an update to the RichFaces 5.0.0.Alpha3 release. The fix will be present in an upcoming 5.0.0.Alpha4 release.

Other fixes

Check out the 4.3.6.Final release notes for a complete list of issues resolved in this release. The issues for the most part are stabilizations to our Photoalbum demo. However some noteworthy issues include:

  • RF-13531: selects: cannot select option on IE11

  • RF-13559: a4j:commandButton wrong actions performed

  • RF-13540: Websphere incarnation of MyFaces renders optimized resources multiple times

Next Steps

We are hard at work putting out a RichFaces 4.5 release to address JSF 2.2 compatibility with the RichFaces 4.x branch. This has necessitated we put RichFaces 5 development on hold, but we feel will be worth it to get JSF 2.2 support in a stable release sooner rather than later.


Monday, January 27, 2014

RichFaces 4.3.5.Final Release Announcement

RichFaces

We are happy to release an update to our stable branch with the release of RichFaces 4.3.5.Final. This 5th micro release of the RichFaces 4.3 release series provides a number of bug fixes while we concurrently work on RichFaces 5.

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.3.5.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

This release resolves 50 issues, making RichFaces 4.3.5 a substantial bug-fix release. The issues themselves span a number of components and features, offering an overall increase in framework stability.

With this release we have brought back the Photoalbum demo from the RichFaces 3 project. We’ve enhanced the demo offering social media tie-ins to facebook and google plus. Check out the source code on github.

Bug

  • RF-11469 - autocomplete method does not resolve bean if ui:included and only one parameter provided

  • RF-11973 - rich:contextMenu - after ajax re-render of table contextMenu no longer works

  • RF-12811 - VDL Documentation: rich:calendar is missing attribute "maxlength"

  • RF-12813 - rich:panelMenuItem executes action even if disabled attribute evaluates to true

  • RF-13172 - rich:toolbarGroup location="right" doesn’t work if toolbarGroup location="left" contains not rendered values

  • RF-13208 - Push: error "not well-formed" appears in browser console in Firefox - make messages a valid XML

  • RF-13220 - Quickstart - Remove references to AS 7.1 in the RichFaces quickstarts

  • RF-13239 - Popup panel: CSS class rf-pp-hdr contains invalid property repeat-x

  • RF-13252 - a4j:ajax includes jsf.js script twice

  • RF-13257 - PhotoAlbum: uploading and deleting images

  • RF-13266 - mediaOutput not working anymore on Glassfish3 and EAP6.1

  • RF-13287 - rich:extendedDataTable column resizing with ajax loading not working properly

  • RF-13292 - Autocomplete: up and down arrow keys not working in Opera

  • RF-13298 - Richfaces BOM manages a non Maven Central dependency

  • RF-13342 - archetype-simpleapp: facelet with name title is not defined in template, but it is used in the sample

  • RF-13358 - rich:panelMenuGroup allowing actions executions even if originally disabled

  • RF-13455 - The rich:tabPanel no longer visits tab header facets while rendering a response.

  • RF-13464 - Photoalbum: bad positioning of progressBar for G+/FB login on Firefox

  • RF-13465 - Photoalbum: cannot run album slideshow when an image has been added

  • RF-13466 - Photoalbum: editor for creating comments has not visible toolbar

  • RF-13467 - Photoalbum: wrong selector in js function when selecting album from multiple album groups

  • RF-13468 - Photoalbum build fails with JDK 6

  • RF-13471 - Photoalbum: search: option for search in own albums is not visible when logged in

  • RF-13473 - Photoalbum: cannot open help for fileUpload and dataScroller

  • RF-13485 - Photoalbum: cannot login with FB account

  • RF-13486 - Photoalbum: viewing g+ albums improvements

  • RF-13487 - Photoalbum: viewing FB albums improvements

  • RF-13497 - Photoalbum: cannot add album via contextMenu

  • RF-13500 - Photoalbum: viewing Facebook albums throws exception

  • RF-13501 - PhotoAlbum: sharing a photo does not work, can not choose album

  • RF-13502 - Photoalbum: editing uploaded photo throws NPE

Component Upgrade

  • RF-13277 - Upgrade Atmosphere to 1.0.18

  • RF-13310 - Upgrade Graphene and Warp in 4.3 branch Enhancement

  • RF-13274 - Use QSTools:archetypeSync to keep the kitchensink archetype synchronized with the kithensink-rf quickstart

  • RF-13314 - Deprecate reslib resource files

  • RF-13439 - Photoalbum - update help section

  • RF-13462 - Photoalbum: improvements for adding album and album groups

  • RF-13463 - Photoalbum: improvements for adding images

  • RF-13479 - Re-organize files/folders in the top-level webapp folder

  • RF-13480 - Java package re-structure for the photoalbum demo

Epic

  • RF-13047 - Implement improvements to the photoalbum application

Feature Request

  • RF-12793 - Photoalbum improvements

  • RF-12949 - Create a set of Photoalbum smoke tests which will verify it starts and that the basic features works

  • RF-13227 - Prepare the RichFaces 4.3.x photoalbum for release

  • RF-13305 - Autocomplete: i must press button twice for popup window

  • RF-13306 - Autocomplete: initialize value from DOM (was: ignored API call .setValue(''))

Patch

  • RF-13268 - Typo in LookAheadObjectInputStream.java Task

  • RF-13404 - Port the RichFaces 5 improvements back to RichFaces 4.3

  • RF-13405 - Merge the photoalbum fixes from QE

  • RF-13509 - Add Photoalbum sources to RichFaces distribution

Moving forward

You will likely have noticed no mention of JSF 2.2 in this announcement. We are not at this time introducing JSF 2.2 support into our stable branch, but are rather doing so in the upcoming 5.0.0.Alpha3 release of RichFaces. Progress on RichFaces 5 has continued while we prepared the 4.3.5 release, and we have already committed a number of JSF 2.2 related fixes. Look for this release in the next week or two.


Tuesday, September 17, 2013

RichFaces 4.3.4.Final Release Announcement

RichFaces

I am excited to announce the release of RichFaces 4.3.4.Final. This 4th minor release of the RichFaces 4.3 release series is conservative in scope focusing on providing bug fixes to our stable release branch while we concurrently work on RichFaces 5.

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.3.4.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

With 47 issues resolved, RichFaces 4.3.4 is a substantial bug-fix release, offering improvements in a number of components including the select components, extendedDataTable, popup panels, and a4j:log.

Additionally we upgraded our Atmosphere dependency to the latest release (1.0.17) to ensure RichFaces Push continues to work with the upcoming JBoss EAP 6.1.1 release. A big shout out to @jfarcand and his Atmosphere community for accepting our pull request and getting an updated release out in a timely manner. Working with Atmosphere as an upstream project is truly an example of OSS at it’s best!

Bug

  • RF-11275 - showcase - rich:popup - Sample Modal panel - after changing the size of popup there is double shadow

  • RF-11691 - [rich:select] value disappears if you click between list and value

  • RF-12345 - JS error when pressing ESC on an open inplaceSelect in IE

  • RF-12853 - rich:inplaceSelect: JS API bugs

  • RF-12929 - PickList change event not firing correctly when ordering objects in target area

  • RF-12943 - ExtendedDataTable: clearing of filter input doesnt work correctly

  • RF-12989 - Documentation for togglePanelItem is wrong and 4.2.2 components are not working anymore in 4.3.0.Final

  • RF-13010 - Popup panel inside popup panel: button not rendered in IE10

  • RF-13017 - richfaces-bom 4.3.2.Final, JSF-API 2.1.0 not compatible

  • RF-13035 - Simpleapp Archetype: mobile version shows modal dialog

  • RF-13046 - EDT in EDT: when @frozenColumns is equal to number of columns then there is no vertical scroller in EDT

  • RF-13053 - Showcase: push doesn’t work on EAP 6.1

  • RF-13057 - Kitchensink Archetype: update enterprise version of JBoss BOM

  • RF-13058 - Kitchensink Archetype: JSF community site link doesn’t work

  • RF-13059 - Richfaces quickstart README files contain links that to be updated

  • RF-13060 - Issue in initializing the list of selected items in a Picklist

  • RF-13086 - Popup panel: button’s label is invisible in IE8

  • RF-13094 - Wrong extendedDataTable header widths when narrowing columns

  • RF-13098 - Regression: mediaOutput broken for CDI MediaData beans

  • RF-13102 - rich:calendar with date pattern- input gets cleared on click

  • RF-13106 - Quickstart names in the POM files are not consistent and often are not clear

  • RF-13107 - ajaxRenderer component are renderer even though they are in non-active switchable panel, causing JSF to fail to update DOM

  • RF-13117 - ExtendedDataTable Sorting resets $(window).resize Events

  • RF-13119 - kitchensink-rf test-ds.xml does not use a unique datasource JNDI name

  • RF-13125 - a4j:log swallows the message from jsf.js’s sendError method

  • RF-13133 - ExtendedDataTable: filterType=custom doesn’t work when mixing custom and built-in filter columns

  • RF-13136 - a4j:log with mode=console doesn’t take log level into consideration

  • RF-13137 - a4j:log - wrong log levels in attribute description

  • RF-13140 - PopupPanel: Hide @visualOptions and @keepVisualState options which weren’t implemented yet

  • RF-13142 - Showcase: mediaOutput sample is not working with MyFaces

  • RF-13149 - a4j:push in Metamer doesn’t have subtopic name

  • RF-13161 - rich:notifyMessages CSS incorrect on MyFaces 2.x

  • RF-13174 - Correct the WFK version of the JBoss BOM used in the archetypes

  • RF-13195 - Showcase: Unauthorized deserialization attempt with MyFaces

  • RF-13205 - Photoalbum: Hibernate error during deployment

Component Upgrade

  • RF-13132 - Upgrade JBoss Java EE BOMs to 3.0.2.Final

  • RF-13154 - Upgrade Atmosphere to 1.0.17 (a4j:push fails with CNFE for org.apache.coyote.http11.upgrade.UpgradeInbound on latest EAP 6) Enhancement

  • RF-12784 - Showcase readme - update deployment from eclipse part

  • RF-13097 - showcase: update readme with password for jbas7 profile

  • RF-13150 - Remove JMS functionality from the RichFaces showcase

  • RF-13153 - Update version.compiler.plugin and jboss.maven.plugin versions in the quickstart POM files

  • RF-13169 - Replace hardcoded version in Arquilian FundamentalTestConfiguration with project version property - from pom file

Feature Request

  • RF-13038 - Command button/link: attribute tabindex missing

  • RF-13063 - RichFacesInputNumberSlider setValueByDragging

  • RF-13159 - Add Maven compiler properties and remove Maven plugin from the the quickstart POM files

  • RF-13185 - Quickstarts: Modify GAV to use org.jboss.quickstarts.rf

Sub-task

  • RF-13189 - Update jquery-atmosphere.js to 1.0.17 in 4.3.x

Moving forward

We are actively working on RichFaces 5.0.0.Alpha2 that will feature some re-worked components taking advantage of our new decoupled component architecture and making use of standalone javascript widgets to provide a more robust client-side implementation of RichFaces components. Look forward this a new Alpha release in the coming weeks.


Tuesday, July 16, 2013

RichFaces Security Advisory CVE-2013-2165

RichFaces

We have fixed a security vulnerability in RichFaces 3, 4 and 5. Details of the vulnerability can be found in this Red Hat Errata document released for our WFK product. We have released community micro releases addressing this vulnerability, so please update your applications ASAP. Read below for a summary of the problem and an explanation of how to use the fix in your applications.

Download RichFaces 3.3.4.Final or RichFaces 4.3.3.Final and use them in your applications to protect yourself from this vulnerability.

The vulnerability

The vulnerability consists of using RichFaces resource deserialisation to trigger the deserialisation methods of any class deployed in the server. The extent of the vulnerability is limited by the classes available, but could potentially let the attacker cause a denial-of-service condition or — in extreme cases — to inject arbitrary code [1].

The fix

The fix involved creating a whitelist of classes that are available to participate in the RichFaces resource deserialisation process. Details of the implementation of the fix are well described in this article on Look-ahead Java deserialization in the IBM developerworks.

The whitelist that ships with RichFaces 3, 4, 5 consist of the classes for the primitive tpyes, as well as classes that implement the following interfaces:

  • RichFaces 3

    • org.ajax4jsf.resource.InternetResource

    • org.ajax4jsf.resource.SerializableResource

    • javax.el.Expression

    • javax.faces.el.MethodBinding

    • javax.faces.component.StateHolderSaver

    • java.awt.Color

  • RichFaces 4, or RichFaces 5

    • javax.faces.application.Resource

    • javax.el.Expression

    • org.richfaces.resource.SerializableResource

    • javax.faces.component.StateHolderSaver

Notice the SerializableResource interface - this is an interface you can implement in your classes to allow them to participate in Richfaces resource deserialisation. This however is not something you will have to do unless you have gotten into some serious resource customisation.

Alternatively, you can copy the resource-serialization.properties file into your own application (using the same package) and add additional interface/class names to the whitelist. This will enable you to have your classes participate in the deserialisation process without needing to compile.

Note: while we have included the patch in RichFaces 5, we have not shipped an update to the RichFaces 5.0.0.Alpha1 release. The fix will be present in an upciming 5.0.0.Alpha2 release.


Thursday, May 16, 2013

RichFaces 4.3.2.Final Release Announcement

RichFaces

I am excited to announce the release of RichFaces 4.3.2.Final. - This 2nd minor release of the RichFaces 4.3 release series provides a number of bug fixes further increasing the stability of the framework.

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.3.2.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

This release of the RichFaces framework is not accompanied by a release of the CDK. The 4.3.2.Final release of RichFaces was created with the 4.3.1.Final version of the RichFaces CDK. Future RichFaces 4 releases will only be accompanied by a RichFaces CDK release when a CDK fix was required to enable the framework release.

With fixes to the extendedDataTable, tab panel, autocomplete, fileuplaod and popup panel, as well as some fixes addressing compatibility with the latest Mojarra release, you’ll definitely want to move your applications to this release and take advantage of these improvements. Refer to the release notes below for a complete listing of what has been fixed in this release.

Bug

  • RF-12193 - rich:extendedDataTable is blank on show

  • RF-12765 - Rich:tabPanel not possible to switch tabs when only dynamic tabs are present

  • RF-12812 - Autocomplete does not hide popup on tabbing to the next field

  • RF-12827 - Showcase - switching among dynamically created panels, tabs cease to function

  • RF-12839 - Toggle panels: ajax-related attributes do not work

  • RF-12846 - a4j:commandLink accesskey attribute missing

  • RF-12847 - Fix quickstart license and white space issues exposed by qstool report

  • RF-12848 - Error "source is not defined" after richfaces-jsf-event.js merge

  • RF-12850 - Popup panel: button's label is invisible in IE10

  • RF-12851 - The RichFaces kitchensink-rf quickstart/archetype incorrectly depend on the AS google guava module

  • RF-12858 - rich:calendar dateselect event is fired twice

  • RF-12868 - Update the Summary of the RichFaces kitchensink quickstart

  • RF-12893 - Partial response not ended correctly on exception

  • RF-12928 - ExtendedDataTable: columnsOrder doesnt work after changing order

  • RF-12931 - rich:fileupload broken with jsf.js changes in Mojarra 2.1.21

  • RF-12933 - rich:tooltip replace 'defaultContent' facet in docs and examples with 'loading'

  • RF-12958 - Popup panel opened from inside popup panel doesn't work

  • RF-12969 - rich:tabPanel: Click on already selected rich:tab causes JavaScript error

  • RF-12975 - rich:extendedDataTable - can not change order of columns

Component Upgrade

  • RF-12688 - Upgrade Guava from 11.02 to 13.0.1

  • RF-12780 - Upgrade to Mojarra 2.1.19

  • RF-12898 - Tie RichFaces 4.3 to CDK 4.3.1.Final

Enhancement

  • RF-12784 - Showcase readme - update deployment from eclipse part

  • RF-12786 - Showcase - rewrite readme to markdown

  • RF-12964 - Create appropriate push timeouts for the showcase

Feature Request

  • RF-12810 - Introduce profiles for verification of fundamental tests on Tomcat 6 and 7, TomEE 1.5 and GlassFish 3.1

  • RF-12849 - Showcase - update readme - remove obsolete, add new

  • RF-12935 - Fix resolution of framework tests' artifacts with version enforced

  • RF-12937 - Introduce a profile for running framework tests against JBoss EAP

  • RF-12938 - Update Shrinkwrap

  • RF-12940 - Showcase: fix path to outputPanel - compositeMessages sample source

  • RF-12941 - Showcase: ProgressBar demo - remove obsolete attribute and make the progress smoother

Task

  • RF-12843 - Apply unix style line-endings to the entire codebase

Moving forward

We’ve finished development of RichFaces - 5.0.0.Alpha1, and our QA team is currently working on stabilizing for a release. So stay tuned for an exciting announcement of the availability of our first RichFaces 5 Alpha!


Wednesday, May 1, 2013

RichFaces 4.3.2.CR1 Release Announcement

RichFaces

We’ve taken a break from our RichFaces 5 development to deliver a micro release of RichFaces 4.3. Today we are announcing that the first candidate release of this micro release is now available: RichFaces 4.3.2.CR1.

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.3.2.CR1. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Notes

The issues addressed in this CR release are detailed in the 4.3.2 Release notes. The issues address bug fixes, library upgrades, and improvements to our testing infrastructure.

Please take the release for a spin, and let us know how it works for your application. Our extensive QA test suite is currently underway, we’ll release the final release shortly provided no blocking issues are uncovered.

Onwards

With this 4.3 micro release nearly complete, we’ll be shifting focus back to RichFaces 5. We hope to get the first Alpha release of RichFaces 5 out within a week or so – so stay tuned!


Thursday, March 7, 2013

RichFaces 4.3.1.Final Release Announcement

RichFaces

The final release of RichFaces 4.3.1 (4.3.1.Final) has been released. This micro release addresses some bugs present in the 4.3.0.Final release, and offers some improvements on the new features introduced in that same release. Have a look at the 4.3.1.Final Release Notes for a complete listing if what was included in this release.

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.3.1.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Release Highlights

Perhaps the most significant change introduced in this release is in issue RF-12803, where we’ve included the <a4j:ajax> JavaScript service extension in <f:ajax> execution. This service allows RichFaces components to serve and execute JavaScript after the page content is loaded, leading to improved page performance. As we’ve continued to use this service more extensively throughout our components, we realized we had to integrate the extension with the JSF 2 <f:ajax> behaviour, or we would forever be reminding people to use <a4j:ajax> instead (which you should be using anyway for all sorts of additional reasons).

The RichFaces push component has been upgraded to use the latest release of the Atmosphere library, with the resolution of RF-12689. If you haven’t yet started using the easy-to-use RichFaces push component in your application (with optional CDI and JMS integration) be sure to follow these 4 simple steps for RichFaces Push.

Moving forward

With RichFaces 4.3.1 out, we will next shift gears back into RichFaces 5 development, working on the new consolidated RichFaces 5 repository. Stay tuned for a first RichFaces 5 milestone release!


Thursday, February 28, 2013

RichFaces 4.3.1.CR1 Release Announcement

RichFaces

The first candidate release of RichFaces 4.3.1 (4.3.1.CR1) has been released. This micro release addresses some bugs present in the RichFaces 4.3.0.Final release, and offers some improvements on the new features introduced in that same release. Have a look at the 4.3.1.CR1 Release Notes for a complete listing of what has been included in this release.

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.3.1.CR1. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

Concurrent testing efforts

Normally we leave RichFaces releases in our Nexus staging server until the RichFaces QE team has fully verified the release. With this release however, we are trying something new.

We have promoted the RichFaces 4.3.1.CR1 artifacts out of staging having only undergone a smoke test. In this way we are enabling the community to try out the latest fixes concurrent to our execution of our extensive automated test suite, and the remainder of our QA process.

So please do take this candidate release out for a spin, and report any issues you uncover so we can address them before the 4.3.0.Final release.

Friday, February 1, 2013

RichFaces 4.3.0.Final Release Announcement

RichFaces

I’m very excited to announce the availability of the final release of RichFaces 4.3 (4.3.0.Final). This release is minor in version increment only, as it packs quite a significant number of features and improvements. We’ve covered many of these features in blogs already, we’ll summarize them again here, and provide links to where you can find additional details.

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.3.0.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

New components

We’ve delivered some new components with this release. These are components that were originally contributed by Bernard Labno via the RichFaces Sandbox. The new components we shipped are:

  • <rich:focus> – used to manipulate the cursor focus on a page. The component is integrated with the JSF life-cycle to enable validation-aware focus capabilities.
    Blog Read the rich:focus component blog post for more details.
  • <rich:placeholder> – pre-fills form inputs with text, similar to the HTML 5 placeholder attribute.
    Blog Learn more about it in the rich:placeholder component blog post.

New Features

Aside from the new components, a number of existing components have seen some significant feature additions. The <rich:extendedDataTable> for instance has added support for built-in sorting and filtering, and table-state saving.
Blog We have a blog dedicated to the EDT improvements in RichFaces 4.3.

New with RichFaces 4.3 is the ability to define child toggle panels with the <a4j:repeat> tag. This offers developers additional flexibility when defining child toggle panels when <c:forEach> is insufficient.
Blog Check out the Dynamic Panels with a4j:repeat blog for more details.

Testing

Automated testing has always been central to RichFaces. We have a great QE team behind the framework that works hard to help us deliver solid releases. But with RichFaces 4.3 we’ve taken our automated tests to the next level.

We’ve developed the Arquillian extensions Warp and Graphene to enable us to author real tests, running in real containers, with real browsers. Through the magic of Arquillian and Shrinkwrap, these tests are still fast both to author and to execute.
Blog Read more about it in this deep dive to testing in RichFaces 4.3.

CDK improvements

Early on in our RichFaces 4.3 efforts we delivered a number of improvements to our Component Development Kit (CDK) which we used throughout this release to reduce our developer turnaround time in creating new components and features. In addition to enriching the CDK templating language, we introduced an incremental build feature in the CDK. This incremental build has proven to be so beneficial that is one of the primary drivers behind the RichFaces 5 build redesign.

Blog Refer back to this blog for further details on Incremental build with the RichFaces CDK

Bug fixes

With so many shiny new features to look at, it would be easy to overlook the number of bugs fixed in the release. In total 242 issues were addressed in this release. An epic effort for an epic release!

Path forward

As I just hinted, our steps forward are on the path to RichFaces 5. We’ve already started working on the new consolidated RichFaces 5 repository. Feel free to comment with where you’d like to see the project head in RichFaces 5 in the RichFaces developer forum thread.