The three key traits/skills that I see as most important to a Java Developer are:
1. Passion for coding (not just a job)
2. Desire to learn (deeper understanding of programming and technology)
3. Personality/Humor (ability to discuss not attack/defend)
* I always suggest reading books on programming and Java development.
* It's also good to learn other languages outside of your core, such as Ruby, Groovy, Perl, etc. You will find things in these languages that you can take back with you.
* A writer, writes and a developer, develops... join/start an open source software project on your own time, write IDE plugins, etc
* read the core javadocs and the javadocs of libraries that you use often. I cant tell you the number of times it has saved me time.
* talk/listen to other developers above and below your level.