Let me introduce two simple and fun components from among our recently released Liferay Faces Alloy tags, alloy:selectStarRating and alloy:selectThumbRating. Following the example set by our friends on the AlloyUI team, we packaged their rating component as a JSF component.

Both of these components are written to be used in the manner of JSF's selectOneRadio, and they simply default to use the bootstrap theme with FontAwesome star and thumb icons available in Liferay. Speaking of the bootstrap theme, you may also want to follow my colleague's post here that shows how to use Liferay's built in bootstrap themes and generate your own.

Look forward to greater things from our team as we tackle the portlet 3 specification and the new bridge specification. The community has decided, portals are here to stay with another round of new features and new standards to implement.

Continuing in the spirit of Juan Gonzalez’s excitement over the new portal components, let me introduce a new Liferay Faces Alloy component which will be included in the the upcoming GA release. Following the example set by our friends on the AlloyUI team, we packaged their toggler as a JSF component.

Q: What advantages does JSF bring to the table?

A: All the power you would expect from the Java EE standard webapp UI framework.

But I also wanted to mention some cool new features that the gurus of Liferay Faces have been working on. These new features can be gleaned from the parent pom in the master branch, so let's take a look:

First <faces.spec.version>2.2</faces.spec.version><mojarra.version>2.2.5</mojarra.version>

This release was about doing lots of hard work to get things that are just nice to have. Or rather, lots of hard work to get things to the point that you do not have to have them anymore, like zero configuration of those silly listeners we always had to declare in the bottom of every web.xml whenever we wanted to simply publish a new portlet.

But yet this release was also more great icing on the cake that we did not expect to get done. Indeed, some things that many developers do not expect to get done ... like Documentation.

Near and dear to many developers is that special kind of documentation that is complete, thorough, and even readable to the point that it looks like it was painful to create, but then on closer inspection, you see that it is complete because it was more automated than painful.

And then, you realize that you may benefit from this documentation even more than when you were simply thinking of it as a reference, because now you see that the tool they used to automate their documentation is useful on your current faces apps. You too can get that same bling that your project desperately needs.

Yes, that's what I am talking about: useful documentation, and useful tools for making documentation. Take a look at the View Decoration Language tool Vdldoc.

For those of you egg heads who have been wondering where the support for Context and Dependency Injection is, well this is your day. Liferay now has support for your favorite annotations like: @Named and @Inject.