Well, I had thought that I was going to go with JSF due to popularity and such, but I have had a change of heart. Partly due to my own devices, but mainly cause I am not worried about what is popular, but what works best. Instead I am going to go with Wicket.
Wicket may not be the most popular framework, but it melds with the way I think, and since this is code that I am going to write and maintain, well I am going to go with something that I like. If I wanted to get it done super quickly I would go with PHP, but then when it comes to maintainability I would be lost. There are people out there that might disagree, but for me and my way of thinking Java works better. This is not to bash Microsoft’s .NET implementation, but I do not have those tools or services at my disposal.
I have a project at work that I have to implement. It is a web based site that I have to put together. Technically, I could use almost any technology that I want, provided that it will run on a Linux/Solaris platform. So I could write this app using PHP, perl, Python, or Java. For reasons that would take to long to explain at this moment, the option was chosen to go with Java.
Now like PHP there are about 9342 different frameworks that could be chosen for developing a web application in Java. Of all the technologies out there wee are mainly looking at JSF 2.0 using JFaces or some other tech to add AJAX support. From the looks of it there are both pluses and minuses to using JSF. One main factor in the decision was dealing with the popularity of JSF. Once the prototyping starts we will see.