Here’s a very interesting eWeek.com article covering the keynote panel from last month’s TheServerSide Java Symposium in Las Vegas, NV consisting of luminaries such as Rod Johnson, Bruce Tate, Floyd Marinescu, and more as they discussed the future of Java, the role scripting/dynamic languages may play, Spring, EJB 3/Java Persistence API, open source innovations vs. standards, and more.
There’s clearly pressure being put on the Java community. But of late, it’s not primarily from Microsoft and .NET. Instead, it’s from Ruby on Rails and to some extent PHP, both attacking Java’s “underbelly”: The Web-tier.
The Java Web-tier is seemingly weak as many even in Java have turned to Ruby on Rails for a simpler solution than what Struts and other Java Web Frameworks apparently offer. And the evolution of Java-based scripting/dynamic languages such as Groovy and JRuby have been slow in coming. Long-term, Rod predicts that Java Web Frameworks will be dead in 3-5 years (also mentioned in this keynote panel, but missing in this article). He probably believes that these could be replaced by Ruby on Rails, but also JRuby (with Rails integration) and other Java-based scripting/framework solutions for the Web-tier such as Groovy, BeanShell, Rhino, Jython, etc.
If Java is to indeed endure, it must continue to evolve, especially in its weakest or perceived weakest area, the Web-tier. And the evolution of Java-based dynamic/scripting languages and accompanying frameworks appears to be key. We’ll see what happens. The Spring Framework, for example, is already making inroads to support and integrate future Java-based scripting solutions. Etc.



grails at codehaus is the java answer to ruby on rails. it can plug in spring services and hibernate objects and you script them in groovy which is an official scripting language of the java virtue marchine. grails the framework copies a load of 'programming by convention' ideas from ruby and has their handy features such as the flash scope. it is a no brainer that if something can be done well then it can be done well on the java platform...