Java is a nice language if you use it as a platform-dependant language like C or C++. If you start using it as a cross-platform thing it begins to suck really bad.
Personally I never quite understood why CGI existed. Why fork a new process for every page? Servelets handle it a little better but still pretty messy.
At the moment you really can't beat PHP when it comes to web-scripting.
BTW: the fact that that some major corporation uses a technology means nothing.
90% of the time it is an executive decision, taken by an suit who heard a cool sales-pitch but never actually touched the stuff.