That's a good question. Before I get to Java, let me say this:
In most cases, your best bet would actually be to study .NET and become at least minimally versed in it. At least in the US, the jobs in certain geographical regions tend to be very .NET oriented due to the nature of the large employers in those businesses. Being able to pass a C# interview is useful, and having studied Java (assuming your development skills are on par), the transition shouldn't be difficult.
If you are a US citizen, especially if you live in the east coast, find out if you are eligible for security clearance and try to obtain it. A lot of jobs in VA,MD,DC, and NJ require it, and these regions are also heavy with immigrants who can't get those jobs, so you'd have a competitive advantage.
As for Java, make sure you are really good at Java before you head out to learning APIs. Then figure out if you want to specialize in core Java, UI Java, or web-based Java. Most chances are that you would care about the latter. Learn SQL, then do SQL via Java, then learn Hibernate. Make sure you understand the concepts behind the spring framework since it comes together. I would then approach J2EE technologies individually. I personally think things like JMS and JSP are an important foundation before EJBs.
In the end, any developer can learn an API, but you have to be a good core developer to make the most out of it.