Today I have spoken at the OIO J2EE and Opensource conference. As beeing this years last session on this topic (and last session at all ;-)) I think it is time write down some thoughts…
Looking back to the last sessions I held on this topic I could see more and more listeners already deploying JSF apps. Many satisfied struts application developers as well. There were some folks trying to use both worlds in the same project, but they did not look so happy at all. There were too much people that did not know what model-2 web architecture was (I found this quite surprising), and many people were surprised on how I use the tiles action controller as a very nice way of implementing the navigation front controller pattern. Some of the JSF projects were even using the myfaces tiles implementation, which the other way around, surprised me.
As far as I can see from here now, the answer to this question seems definitely to be “if you can, use JSF”.
After all, maybe it would have been better to ask the question “should we use Spring MVC or JSF”. As far as I had a look at Spring MVC it is similar to Struts as beeing a request-response based web application framework based on all those nice non invasive, inversion of control and dependency injection concepts.
Another nice talk I got in after one of the sessions was about which client technology to use at all. Full fledged rich client app (swing or eclipse rcp/ swt/jface) or some of those neat web 2.0 technologies (ajaxcified jsf components, macromedia flex, openlaszlo, some UTC ultra thin client product). I really should take some time to write down some words on this one… ;-)
Finally speaking, I can say I had some very interesting talks before and after my sessions to this topic and I had very interesting and inquisitive listeners.
Thanks to all listeners and article readers for the great feedback.