Today I read this very interesting article by Chris Schalk – responsible for the Web application development features within Oracle JDeveloper- TheServerSide.com – Building Custom JSF UI Components. Chris explains in a step by step overview how you can develop your own JSF UI Components, how you can register them with JSF and as JSP TagLibrary. He starts out with a very simple example of a read-only UI widget but moves on to a widget with a lot more functonality – button, input field, display-field on the client side and interaction with a WebService on the server side. I have not actually tried it out myself, but this seems like an ideal starting point for building your own UI components. I am wondering whether it is easy/supported/useful to extend UI Components built by others. Anyway, this article strongly suggests to me that there will be a thriving market of JSF UI Components, many open source components. The threshold for creating JSF UI Components is very low and it is rather easy to incorporate such components from external sources. That sounds like ideal for open source reusable component development. Besides, JSF Components will probably be more en vogue or classy or J2EE-ish than the Custom Tag Libraries are – although the concepts are pretty closely related.
Chris also suggests introductory articles for people entirely new to JSF:
For those who are still new to JSF development, readers are highly recommended to first consult JSF application tutorials such as Rick Hightower’s article on basic JSF development:
http://www-106.ibm.com/developerworks/library/j-jsf1/
Or my earlier JavaPro article, which also introduces JSF:
http://www.fawcette.com/javapro/2004_01/magazine/features/cschalk/