Thursday, October 18, 2012

RichFaces 4.2.3.Final Release Announcement


RichFaces 4.2.3.Final has been released. This Final release is a re-tag of the 4.2.3.CR1 release as no blocking issues were found by either our QE team, nor by the community.

The RichFaces 4.2.3.Final release is purely a bug-fix release, with a focus on compatibility between RichFaces and the JBoss Portlet Bridge. I’ll refer you to the RichFaces 4.2.3.CR1 release blog for details of the release, with a special highlight paid to the contributions from the JBoss Portal Bridge team, and contributions from community members.

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

Release Notes:

To re-cap, the changes in the 4.2.3.Final release compared to the 4.2.2.Final release include:


  • [RF-10758] – Input fields in popupPanel lose focus
  • [RF-10980] – Impossible to set tabindex of input inside rich:popupPanel
  • [RF-11051] – a4j.version does not work
  • [RF-11104] – rich:inputNumberSlider slider position is affected by css position attribute of containing element
  • [RF-12113] – rich:inputNumberSpinner minValue and maxValue being ignored after second request
  • [RF-12114] – Richfaces 4.2 rich:autocomplete don't fire ajax on blur event
  • [RF-12221] – rich:orderingList: fix VDL-DOC of @listHeight, @maxListHeight, @minListHeight, @listWidth
  • [RF-12256] – DragAndDrop + position: absolute results in broken positioning
  • [RF-12273] – rich:fileUpload does not work in portlets because it does not utilize javax.faces.encodedURL for the XmlHttpRequest URL
  • [RF-12424] – Showcase contains Servlet specific code
  • [RF-12425] – Showcase fails to load SyntaxHighlighter scripts when Require.js is present
  • [RF-12476] – Resource Name in mapping for two menu images is incorrect


  • [RF-12343] – Problem when saving form with rich picklist inside composite component

This is very much a community driven release. Thanks guys, you rock!

Stay Tuned for 4.3.0.M2

The QA process for the 4.3.0.M2 release is about to begin, with a release as soon as QA is done. So stay tuned, as there is lots more great stuff to come!

Tuesday, May 15, 2012

RichFaces 4.2.2.Final Release Announcement

RichFaces 4.2.2.Final is available, the second RichFaces 4.2 micro release. This release was originally intended to focus on changes required to better align with the upcoming JBoss AS 7.1.2 release. However we had some community members step forward with some fixes, and those contributions ended up turning this release into a reasonable bug fix release!

I would like to give a big shout out to Luca Nardelli, Adrian Gonzalez, and Jason Porter. These are RichFaces users who contributed back to the project with bug fixes and new features; improving the quality of the JSF component framework we all use to build applications on a daily basis. Three cheers for OSS, and our community contributors! If you would also like to get involved and contribute code to the project, check out our ContributorGettingStartedGuide wiki page!

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

What’s new with 4.2.2.Final?

The rich:tooltip has seen a number of improvements centered around changing the javascript implementation to use the RichFaces Javascript Service feature, and defer javascript loading until all components are rendered. Nice catch Luca! Specific issues resolved with this approach include:

  • [RF-10839] – tooltip: attachment using target not works if tooltip defined before the component to which it attaches.
  • [RF-11370] – rich:toolTip: targetted example causes NPE for some IDs
  • [RF-12198] – rich:tooltip does not work inside a4j:commandButton
  • [RF-12199] – rich:tooltip does not work inside h:graphicImage

For those migrating from RichFaces 3, Adrian has contributed improvements to the Xcss2Ecss conversion utility:

  • [RF-11994] – Xcss2EcssConverter error handling f:importResource
  • [RF-12010] – ecss hot reloading

A number of other fixes are seen with:

  • rich:dataTable and rich:extendedDataTable
  • validation and messages
  • dependency updates, matching changes in the upcoming JBoss AS 7.1.2 release

Lastly I’ll mention a simple feature, but one which I’m sure many will find useful. The a4j:log component has a new mode of operation, the console mode, allowing a4j:log messages to be output to the browser javascript error console.

What’s Next?

We’ll shortly begin our 4.3.0.M1 sprint which will focus on MyFaces compatibility issues and some CDK improvements in this first milestone. Concurrent to this, we will be working in the RichFaces Sandbox to deliver our next-generation component set. Should any of the above initiatives appeal to you, feel free to get involved, and help move the project forward!

Tuesday, April 17, 2012

RichFaces 4.2.1.Final Release Announcement

We’ve released RichFaces 4.2.1.Final – the first micro release for the 4.2 release train. Since the CR1 release we’ve primarily addressed bugs with the Richfaces showcase and the RichFaces archetypes. CR1 itself focused on bug fixes and stability improvements throughout 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.2.1.Final. For more information on setting up a RichFaces 4 application, refer to our getting started guide.

What’s in 4.2.1.Final?

One noteworthy issue to take note of:

  • [RF-11940] – Our ajax push component (a4j:push) was not receiving pushes from the server on Android devices. We identified a bug in the Atmosphere framework which powers our push technology, a bug which we fixed and pushed back upstream (OSS for the win!).

Be sure to check out the 4.2.1.CR1 release blog for a more complete picture of what we addressed with this micro release.

New with this release, we are once again deploying the showcase on new infrastructure. The OpenShift Express service has been unified with OpenShift Flex to deliver a single service now simply referred to as OpenShift (see this FAQ entry). The end result for us is a simplified deployment and management console, and an easier ability to host multiple applications.

Moving Forward

We’re currently focused on improving the JSF testing and RichFaces mobile stories. However we’ll shortly begin our 4.3.0.M1 sprint which will focus on MyFaces compatibility issues. Concurrent to all this, we will working in the RichFaces Sandbox to deliver our next-generation component set. Should any of the above initiatives appeal to you, feel free to get involved and help move the project forward!

Thursday, February 23, 2012

RichFaces 4.2.0.Final Release Announcement

Richfaces 4.2.0.Final is now available for download! A quick follow on to our 4.1 release, Richfaces 4.2 delivers some “missing” components migrated from RichFaces 3, and provides usability and API improvements for resource loading optimizations and the push API. Documentation was a huge effort for this release; we are delivering an updated and complete VDL taglib doc, along with our more well established Developer Guide, and Components Reference.

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

What’s new in Richfaces 4.2

For details on what’s new in 4.2, have a look at the 4.2.0.CR1 release announcement, where we cover:

  • New components (ported from RichFaces 3)
  • Push (a4j:push) API changes
  • Resource Loading improvements
  • Skinning changes
  • A number of miscellaneous fixes.

Additionally, Lukas Fryc, has a few blogs out with further details on the developer impact of some of these features:

Looking Ahead

It’s now time to buckle down and focus on 4.3/4.Future efforts. The themes we will be focusing on are narrowing down to:

  • Continued improvement of the RF 4 core components
    • Further feature migration from RichFaces 3 (as required)
    • Bug fixes, performance enhancements
  • A re-work of our testing infrastructure
    • Bridge the gap between what we do to test our framework, and what devs do testing their applications
  • A new set of components
    • Improving our turnaround time, by leveraging existing javascript “widgets”
  • CDK improvements
    • Further simplifying the process for creating new components, while improving the turnaround time of component development

If you are interested in these efforts, and in the details behind them, chime in (or just follow along) to our RichFaces 4.3/4.Next planning discussion.

Tuesday, December 13, 2011

RichFaces 4.1.0.Final Release Announcement

I’m thrilled to announce the release of RichFaces 4.1.0.Final. It’s been a long road from 4.0 to 4.1, with a significant train of milestone releases along the way. The journey was worth it though, with a significant 4.1 release building on top of the successful 4.0.0.Final release, providing: additional components migrated from the RichFaces 3 component set, altogether new components, and significant enhancements to the framework feature set.

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

Let’s dive in, and look at some of the details of what’s new in RichFaces 4.1!

h3.New Components

We’ve delivered a number of new components in this release:

Not only have we migrated forward more RichFaces 3.x components, but we’re also providing an altogether new component – the notify component – put together by Bernard Labno, a RichFaces community member.

Mobile Compatible Components

We’ve leveraged HTML 5 and CSS 3 to create a set of resources that make the existing RichFaces components mobile compatible. Check out the results yourself in our mobile showcase with your webkit-based mobile phone, (or checkout the mobile showcase directly with your desktop browser).

We’ve put together a comprehensive guide detailing how you can take advantage of this approach with your own applications, and deliver a modern mobile application today – leveraging your existing skillset and investments in both JSF and Richfaces.

Not all the components make sense in a mobile environment, and not all mobile browsers are equally capable. Be sure to also take a look at our mobile design document, outlining the choices and compromises we had to make.


Along with this new mobile face, the Richfaces showcase has undergone a number of additional significant changes.

We’ve deployed the showcase to OpenShift, Red Hat’s PasS offering. The OpenShift Java EE 6 support provides a great platform to take your application all the way from development with Express (free!) to production with Flex (highly scalable!). For the RichFaces project, this gives us the chance to showcase our components in a Java EE environment, where our framework really shines!

We’ve also included samples for the new components listed above, as well as a rich:push component sample, keeping it straightforward to incorporate advanced RichFaces components in your application. Lastly, a number of bug fixes and simple improvements throughout the showcase have overall improved the user experience of the showcase itself.

Individual component improvements

I’d like to single out a few component enhancements from this release:

Push has been de-coupled from JMS, allowing RichFaces users to take advantage of push technology in non-JMS (ie. servlet) environments
A CDI API has been provided for firing push events – aligning the push component with the standardized Java EE programming model
Some events that were missing from the 4.0 release have been added, including the onclear event
drag and drop
A bug with dynamically rendering of drag sources and drop targets has been resolved, improving drag/drop functionality in components like the rich:tree
For those creating RichFaces skins, you’ll be happy to hear we replaced the cellpadding and cellspacing attributes of the extended datatable with CSS equivalents, allowing skins to override the values

For a complete listing of issues resolved, refer to the release notes of each of the milestone releases: 4.1.0.M1, 4.1.0.M2, 4.1.0.M3, 4.1.0.M4, 4.1.0.CR1, 4.1.0.CR2, 4.1.0.Final

Resource packaging

Another great feature with this release is the Resource packaging and minification. An absolute necessity when developing for mobile applications, this feature can provide performance improvements to your desktop applications as well by dramatically reducing the number of javascript and CSS files the browser client has to download. Read the docs to see how you can activate this for your applications.

For those looking for the RichFaces 3 LOAD_NONE capability, you can use this resource minification configuration to achieve the same results.

Source hosted on github

A significant achievement early in the 4.1 development process was the migration of our source code version control system from svn to git, specifically hosted on We noticed significant advantages to using git, both within our team, and in our collaboration with community members. Git’s ability to enable a sophisticated workflow, and encourage community contribution in the form of pull requests has made “bit management” a pleasurable task.

Other noteworthy items

It’s worth pointing out that RichFaces 4.1 ships with an updated jQuery release (v. 1.6.4). Keeping the jQuery release version up-to-date facilitates RichFaces inter-operability with other jQuery plugins.

RichFaces 4.1 works with a number of modern browsers, however it currently requires Internet explorer 9 to be run in compatibility mode, due to an upstream mojarra issue.


Lastly, I’d like to remind everyone of the availability of the RichFaces documentation:

These docs are a great resource detailing how to make use of the RichFaces framework in your application. They are however an ongoing effort, with some specific areas that need improvement. Specifically we need to flesh out the descriptions of the VDL tag library doc (note: the attribute listing is complete), and we need to vet the migration guide. This is a great way to get involved, should you want to contribute to the project!

Looking Forward

In a recent blog post, I laid out a strategy for the future of the RichFaces project, and extended an invitation to all who would like to have a say in future directions in our development forum. While RichFaces 4.1 undoubtedly provides some great fixes and features, we are excited about the future direction of the project, and what we can offer moving forward!

Tuesday, August 16, 2011

Seam Faces 3.0.2.Final released

(cross posted from :

Great news, Seam Faces 3.0.2.Final has been released! It is available for download via the JBoss Nexus repository. Primarily a bug fix release, Seam Faces 3.0.2.Final resolves some compatibility issues with MyFaces, thanks to contributions from Christian Kaltepoth. Additionally, José Freitas has contributed some fixes to issues with the UIInputContainer. A full list of the bugs fixed is available here.

I’m very excited about the community involvement in this release, and with more community members coming forward with features they’d like to see implemented/improved. If you have you’re own itches you’d like to scratch, feel free to comment in the forums, file an issue in JIRA, or drop in on IRC. Then it’s stratight to the source to fork the project on github! You’re pull requests are very much appreciated!


Brian Leathem