In my work we use Java 99% of the time. And the C++ guys i know can't work without the proprietary ide C++ builder - really pathetic. And i'm talking about guys with over 5 years C++ experience. Morons with a lot of programming "copy-paste" experience.
Yeah you have a point swing sucks. That is one reason why i no longer want anything to do with swing gui projects. In my humble opinion, C# gui will run rings around swing. But on the server side i have no need for C# - java can do it all.