The Decisive Moment in the History of JSF
Company Blogs September 18, 2015 By Neil Griffin Staff
JavaServer™ Faces (JSF) is one of the standards developed under the Java Community Process (JCP) and was first introduced with Java EE 1.4. The first version of JSF had its share of proponents, but also had its share of criticism. Over the years it has been continuously improved by JCP Expert Groups (EGs) and extended by 3rd-party libraries like PrimeFaces, ICEfaces, RichFaces, OmniFaces, BootsFaces, AngularFaces, ADF Faces, OpenFaces, MyFaces Tomahawk, MyFaces Trinidad, and Liferay Faces.
In a recent poll of over 1,000 respondents, JSF ranked as the most popular webapp framework (just ahead of Spring MVC). Over the years I've asked myself the question -- What is the main reason for the longevity of JSF? Also, why do so many developers continue to use JSF in new projects? Here are some possible reasons:
- The expertise of Amy Fowler in bringing Swing-like ideas to JSF in the web tier?
- The leadership of Ed Burns as a Spec Lead since the very beginning?
- The helpful answers by EG members Bauke Scholtz (a.k.a BalusC) and Arjan Tijms at StackOverflow?
- The variety of JSF books published over the years?
- The industry backing of Oracle/Sun, RedHat/JBoss, IBM, PrimeTek, ICEsoft, and Liferay?
- The tooling provided by IDEs like NetBeans, Eclipse, and IntelliJ IDEA?
- The advocacy by EG member Kito Mann of JSF Central?
- The open source nature of Mojarra, MyFaces Core, and the many JSF component suites?
- The talents of developers like Ryan Lubke and Manfred Riem of Mojarra?
- The commitment of Martin Marinschek and Leonardo Uribe of Irian to MyFaces?
- The integration efforts made by JBoss developers like Stan Silvert, Gavin King, Pete Muir, Wesley Hales, Lincoln Baxter III, and Ken Finnigan?
- The contributions made by developers like Adam Winer and Andy Schwartz of ADF Faces?
- The solutions by developers like Ken Pausen of JSF Templating and Jacob Hookom of Facelets?
- The creativity of developers like Ted Goddard, Deryk Sinotte, and Mark Collette at ICEsoft?
- The ingenuity of developers like Alexander Smirnov, Jay Balunas, Ilya Shaikovsy, and Brian Leathem of RichFaces?
- The innovation by developers like Çağatay Çivici, Mert Çalışkan, and Thomas Andraschko of PrimeFaces?
Perhaps all of these reasons combined may be the answer.
But I think there is a decisive moment in the history of JSF that is the primary reason why the technology is still popular in new projects today. Here is a brief chronological list of some possibilities:
|1.||11 Mar, 2004||JSF 1.0 is released under JSR 127, Spec Leads: Craig McClanahan and Ed Burns.|
|2.||27 May, 2004||JSF 1.1 is released under JSR 127, Spec Leads: Craig McClanahan and Ed Burns.|
|3.||09 June, 2004||Hans Bergsten (expert group member of JSR 127/252) publishes an article titled Improving JSF by Dumping JSP claiming that a view technology other than JSP would be necessary to fully take advantage of JSF.|
|4.||28 June, 2004||Ed Burns posts a blog announcement that Sun Microsystems has released the source code of the JSF RI (later to be named Mojarra).|
|5.||13 Apr, 2005||Apache MyFaces 1.0.9 is released as an alternative implementation to the JSF RI.|
|6.||17 Aug, 2005||Jacob Hookom (member of the JSR 252 EG) publishes the first of a three-part series of articles titled Inside Facelets on JSF Central which describes the Facelets templating language as an alternative view technology for JSF.|
|7.||21 Apr, 2006||Ken Paulsen makes one of the first CVS commits to the JSF Templating project.|
|8.||11 May, 2006||JSF 1.2 is released under JSR 252, Spec Leads: Ed Burns and Roger Kitain.|
|9.||14 Nov, 2006||ICEsoft announces in a press release that ICEfaces is made available under an open source license.|
|10.||29 Mar, 2007||Red Hat and Exadel announce a partnership that makes RichFaces available under an open source license.|
|11.||29 Oct, 2008||Çağatay Çivici makes the first commit to PrimeFaces.|
|12.||01 Jul, 2009||JSF 2.0 is released under JSR 314, Spec Leads: Ed Burns and Roger Kitain.|
|13.||22 Nov, 2010||JSF 2.1 is released under JSR 314, Spec Leads: Ed Burns and Roger Kitain.|
|14.||13 Jan, 2011||Portlet 2.0 Bridge for JSF 1.2 is released under JSR 329, Spec Lead: Mike Freedman.|
|15.||21 May, 2013||JSF 2.2 is released under JSR 344, Spec Lead: Ed Burns.|
|16.||09 Sep, 2014||Ballot to begin work for JSF 2.3 is approved under JSR 372 with Ed Burns and Manfred Riem as co-spec-leads.|
|17.||21 Jul, 2015||Ballot to begin work for Portlet 3.0 Bridge for JSF 2.2 is approved under JSR 378.|
Which event do I think was the decisive moment in the history of JSF?
#6: 17 Aug, 2005: Jacob Hookom publishes the first of a three-part series of articles titled Inside Facelets on JSF Central.
Why do I think that is the case? Well as Rick Hightower once wrote: "Facelets fits JSF like a glove." And as Gavin King once said in an interview: "I think Facelets is by far the best templating engine I have ever worked with."
It is my opinion that the widespread usage and adoption of JSF can likely be traced back to Jacob's article at JSF Central, which led to the widespread usage of jsf-facelets.jar in JSF 1.2 webapps and the eventual inclusion of Facelets in the JSF 2.0 standard under JSR 314.
I would like to thank everyone mentioned in this article, everyone who has worked on the JSF EGs over the years, as well as the Faces of JSF for their dedication and hard work.