The bare Java is not very fine as I see after comparing it with more concise languages, like Clojure.
The enterprise Java conventions are even worse, like a convention for mandatory getters/ setter.
Good framework in a good language can save a lot of work even for a big complex application.