If you are curious about things you should learn in the long run, refer to a post I made last week to someone else:
http://www.javaprogrammingforums.com...tml#post132696 (post #7)
The stuff I mention is far above the java basics, they are things which businesses currently use. Will they use them a few years in the future? There is no way to know. But, after you have a good grasp of the java basics, you should consider looking into some of that. At the very least, knowing the buzz-words can help you in job interviews.
You mention java gui development. That is good to learn, but might not be something that you will find many businesses using in the future. Server-side is the direction java is headed (as well as Android dev, which covers client and server side). Swing is fantastic for quick and dirty applications to keep your java skills sharp, but those are not the type of enterprise applications most businesses are creating.