Suppose you're familiar with JSF and trying to build something NEW and public (not an 'internal only' app).<p>Would you still consider using it?
If yes, why? If no, why not?<p>From what I can tell, JSF development is still popular with corporate app developers building in-house apps, etc. I'm not sure if this also holds true for the entrepreneurial hacker though, so I figured I"ll ask the best (You!). Thank you!
I've long since abandonned JSF in favor of Wicket to build what you call in-house apps: the latter being much more designer-and-developer-friendly imho.
But I wouldn't use Wicket (nor JSF for that matter) for a public facing site, because it relies too much on the session. It is possible to produce stateless pages in Wicket but it's not worth the hassle.
For such a use case, I would rather use a classic MVC-style framework. Something à la Stripes or Spring MVC, although I am not very happy with the prospect of using JSP (or Freemarker or Velocity) as the view layer.
I'm also experimenting with using JAX-RS, coupled with a templating library as a web framework. Didn't push the experiment too far though, but it's clear that it's a barebone solution compared to classic web frameworks.
Used it for an internal app last year at a certain big blue company. People claim it's light years better than struts, but I would never want to use it in a personal project.