by this you mean the frameworks like Spring, Struts or the buzzwords like JMS, EJBs?
by this you mean the frameworks like Spring, Struts or the buzzwords like JMS, EJBs?
And it is easy to use Java EE components like these without the need for frameworks like Spring - if anything I think they just obscure what's really going on. Again I'd like to re-iterate I'm not a highly experienced developer but I've learnt how to use most of the Java EE technologies in my applications rather quickly.
Take a look for example at the family of spring MVC controllers (http://static.springsource.org/spring/docs/2.5.x/api/org/spr...) : before doing any development, should you have to study such a family to know which controller should fit everyone of your use cases ? That, for me is the very definition of bloat.
Furthermore, the documentation is terrible, IMHO. That said, I have been spoiled by months of Django development, maybe it is not that bad according to Java Standards.
More generally, the main problem with Java is the emphasis on architecture astronautism, not the language itself, which is ok, if not very powerful (no function as first class objects, really ? ).
http://www.adobocode.com/spring/adding-crud-capability-to-sp...
I'm personally into much simpler stuff like Stripes & Guice.
There are two things I really like about Java in the broad sense: the excellent Eclipse environment, and the multitude of quality open source libraries.
avoid IDE's -- or at least, anything that causes your team to need an IDE just to counter-act some other linguistic or procedural vomit you often encounter in the typical Enterprise Java shop
avoid abstraction-for-the-sake-of-abstraction -- the Java ecosystem, not necessarily the language, is notorious for this