JSF has been around for 10 years, if it was a bad framework, it will get lost in the jungle of web frameworks of Java. Various framework has reached their technology peek during past 10 years and started to fade away already. In JSF case, First Facelets saved it, JSF 2.0 fixed it along with JSF 2.2 and then PrimeFaces has given it a popularity boost. Clearly it solves a problem better than others which is creating web applications with an easy way to reach maximum productivity. With JSF 2.2, using HTML friendly markup and pass through attributes it caught up with latest trends as well. Add PrimeFaces on top of your stack and get a productivity boost.