N.B. I never actually said anything negative about Java...
>The JVM that is kept running as a of part of the server.
In a Java application server the JVM is running the whole show, no JVM no Webapp full stop. Which is fine if your application is meaty enough to warrant having an application server around... if you're doing what probably 90% of PHP scripts do, which is replacing variables with text from a MySQL database, you probably don't need a whole Java EE stack around. ;)
> Everything with regards to the actually assembly of the response is passivated to cache
That depends on your application/application server... again, nothing against Java (I've been building a large application on top of Glassfish for the last year..) the exact same things exist for PHP. Look at xcache for example.
> The inertia people experience with Java comes in the first part of a deployment,
Yes, all the deployment stuff is nice in Java/<Insert some application server here>, but you don't need that stuff for most of what PHP is used for.
> where heavily used classes still needs to be JIT'ed and translated into
> native machine code.
I'm not sure that any JVM has the ability to compile all code down to machine code. From what I've read Sun's hotspot compiler does stuff like unrolling loops, and does compile "hotspots" down to native code where it can, but it's still a great leap away from being 100% native code. That's not to say you can't compile Java down to machine code,.. but not really in this scope. PHP does nothing clever and basically boils down to a great being switch statement that calls a bunch of FOSS libraries, but for a good deal of web 2.oh no applications that's all you need.
Anyhow, after all that... where did I say anything about Java being slow?