Here are our simple reasons:
* The JVM is fast.
* The JVM can take proper advantage of multiple cores directly (no GIL).
* The JVM is efficient compared to other runtimes.
* Java is type-safe.
* There's a library for everything, and libraries are generally well-documented, unit-tested, and provide stable releases with binary/source-stable APIs.
* There are a number of alternative languages to choose from that can interoperate on the JVM (Scala, Clojure, JRuby, ...)
I've worked with plenty of JVM/Java-based projects that shipped quickly. There genuinely isn't anything else I would use server-side.