Don't know if this is the best place, but don't know where else to post I guess...

I've been a Microsoft guy for a long time (since 1992), mostly C++/Windows, but more recently (past 5 years) ASP.NET/C#.
I am thinking of switching my career focus to Java/C++/JSP (I guess) but wonder if I have too much invested in MS and .Net and wonder if I can get up to speed quick enough and bag a job comparable to my current position (I am a consultant making about $80.00 in NJ working for the Military, Web Dev.).

Is there anyone out there who has been in my position, and actually switched?