The Java language itself is not the problem, nor the JSP syntax or the JRE API packages. It’s what’s around the language that makes it so difficult to step into.
He suggest simple deployment model, dynamic reloading of classes, a simple web server GUI console and a Visual IDE GUI designer.
Sure, it's a great system for professionals managing large projects but what if I just want a 20 page interactive web site? Why can't I simply write a Servlet or JSP or even a single Java class, copy it to the server and execute it?
The fact is that if you are not a Java guru, then it will be almost impossible to perform the simple task of visually designing a form in NetBeans and then deploying it to a Tomcat or Jetty server.
One interesting comment by Ron Grimes which I pretty much agree to:
For me, the biggest drawback to being a newbie to Java is feeling like you're not a "real" Java developer unless you speak fluently about EJB and all the garbage that came before you decided to jump into the stream. A lot of developers feel like, in order to learn Java, you not only have to learn what is current (frameworks like Spring), but you also have to learn how to maintain all the legacy frameworks that came before it. And, maybe you don't have to learn all that, but you feel lost on Java forums because of all the antiquated features of Java that fewer and fewer people are using, but everyone still talks about.
I agree to a huge extent.
1. It is a nighmare to port a EAR on to different App Servers like WebLogic, WebSphere, JBoss etc especially when I am using data sources and JNDI lookups. I need to write all sorts of App Server specific descriptors.
2. The smallest of fixes in the servlet class forces me to redeploying the WAR again.
3. So many frameworks coming out(it is chaos) from all places and there is no standardization.
4. Cannot bank on one framework for long as it may be replaced by another one in less than an year
I hear Groovy/Grails a lot here ...