When I was a developer on CNET's Download.com site, I spent most of my time coding in Java/JSP. But I was just doing mostly regular old Java stuff, not the fancy-shmancy J2EE stuff. Then some recent articles from our regular Java contributor Harshad Oak got me to thinking maybe I should try to learn a bit more about this J2EE thing. So I set out on a journey to see what resources are available to me in order to figure it out.
I don't know about you but when I first started hearing the term J2EE, I imagined some huge monolithic thing: a monstrous swamp of documentation that I'd have to wade thru before I could emerge on the other side and say, I know J2EE.
The reality is that J2EE is not like that, though Sun's marketing people might have you believe it is some big, miraculous monolith that will cure all your IT development woes. The truth of the matter is that it's really a bunch of related, but separate technologies all swept together under the J2EE umbrella. You can tackle the technologies one at a time so you don't get overwhelmed. There's no need to dive into the deep end on day one; you can start in the kiddie pool first.
And a good place to start is Sun's own J2EE tutorial. There's also a version of the tutorial for the latest J2EE 1.4 specification. The nice thing about the J2EE 1.4 tutorial is that if you need to peruse it offline there's a downloadable version available as well.
Another great way to learn is, of course, from your peers. Sun maintains some community forums of its own, but my favorite resource for sharing Java knowledge with fellow developers is TheServerSide.com.
Of course, as long as you're trying to learn J2EE piecemeal, I've got some pieces of the puzzle covered right here on Builder.com.
For example, if you're wondering about Enterprise Java Beans (EJB), we've got articles that explain how EJB encapsulates business logic and information on the latest EJB certifications from Sun, such as the Sun Certified Business Components Developer and Sun Certified Enterprise Architect for J2EE. Though if you're going to study for that Enterprise Architect certification, I'd recommend you avoid this study guide like the plague.
If you're interested in tackling the JSP side of J2EE, Builder has got you covered there as well. There's a good intro to JSP that covers everything from the basic JSP syntax to using JavaBeans. I find learning by example is useful, so have a look at articles like how to build pie charts with JSP and how to populate forms with JSP and XML.
Books and white papers
Now if reading content online isn't your style, there are a lot of books and white papers available instead. For example, it's not just Sun making tools for J2EE development—Macromedia has published a white paper describing how to program in J2EE with its development tools. And BEA has a white paper comparing its (for-profit) J2EE servlet engine against popular open source engines such as Tomcat.
As for books, our own Harshad Oak has contributed a chapter to the J2EE 1.4 Bible. You can download his chapter from the book, and if you like what you see, you can check out the best prices online. Another book that one of my colleagues here at CNET recommends is the Enterprise JavaBeans book from O'Reilly. The older second edition is available now; a new edition is due soon but not yet available.
The J2EE/.NET crusades
While I consider myself a religious person, I do not like getting involved in the religious wars that so often seem to fill the computer arena. You know, like J2EE vs. .NET. But if you are interested in some compare-and-contrast between the two marketing strategies pretending to be end-to-end technology solutions, our friends at TechRepublic offer some background. Here at Builder, we've tended to take the pragmatic view that both technologies serve a purpose and whichever you use is a personal decision, like Coke vs. Pepsi. One isn't better than the other, they just appeal to different tastes, though some Builder readers might beg to differ.
I'd like to acknowledge the generous assistance of Peter Connolly, Distinguished Software Engineer, and Matthew McEachen, Senior Software Engineer. These two colleagues of mine at CNET pointed me at several valuable J2EE learning resources that I incorporated into this article.