My question is based on the following question: Choosing a Java Web Framework now? ..only one year later.
The reason for my question is that plenty has happened in one year, play framework has matured etc., and I want to know whats the hot thing today. What are the advantages and disadvantages of todays frameworks.
focusing on Java frameworks, it depends on your aim (as everything in IT!)
On products for big companies, you either go with Java EE or the standard Struts/Spring/Hibernate. They are proven stacks, the scalability needs in that environment are meet by those stacks and being stateful can be relevant in that environment. Besides, they apply a new version of "No one was fired by buying IBM" with the apps (Play, Scala, what's that?)
For your personal projects, no commercial aim, just or fun, any framework you like. Lift, Play, whatever.
For a startup, I would recommend either Lift or Play. I personally like Play more, but YMMV. Both are agile frameworks that simplify development and give a quick turnaround. Perfect match for a startup. The differences (stateless vs stateful, etc) are what you should check before deciding.
On Scala vs Java, again it depends. Unless you are lucky, you won't be allowed to use Scala in a corporate environment (slowly being spread though). For your own project, it doesn't matter. For startup, choose the one you know the best. I know, learning is appealing, but if you have 6 months experience as hobbyist in Scala and 5 years of commercial Java experience, the time and pain on creating your project in Scala won't be worth it.