Obviously, different tools are good for different things:
Microsoft ASP.NET are definitely good for alleviating the fear from those who don't know technology, and yet want a "safe bet" feeling, by relying on the big name. Managers, finance guys, and decision makers often fall into the never-ending spending spree as a result. But, beautiful user interface, and integration to Microsoft suite of applications are unquestionable.
If you want something scalable, secure, maintainable, capable of handling complicated logics/flow, suitable for large team development, then JSP, Struts, Java, and J2EE will be the definitely choice.
But, if simplicity, speed of development, and economy are important factors, then PHP should be the bet.
Anyone trying to hammer all things with the same hammer are doomed to fail.