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.