This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I was enamored by EJB when I first started studying it for the SCBCD exam. Seeing the existing demand for J2EE in job postings for software developer positions, I was planning to hitch my career bandwagon to J2EE - of which EJB is a major part.
But then, I read the arguments about EJB being too bloated and the existence of more "lightweight" alternatives. Now I'm wondering what the future of EJB would be, and how advisable is it to invest in it as a career move.
I strongly encourage you to learn EJBs. They will not go away as corporations invested millions into software using the technology and most likely will embrace the next EJB3.0 which I doubt will be more useful and easier to use than current version.
Thanks for your suggestions. I suspected that EJBs will not go away very easily. I would like to study the alternatives too, though, to get a more complete perspective of the issues and possible solutions.
I agree that EJB is certainly not going away. Too many organizations have too much invested in the technology to scrap out at this point. However, more and more organizations are starting to recognize the benefits of non-EJB frameworkds such as Spring and Hibernate. Of course, when EJB 3.0 hits the town this could all change... but that isn't for another 18 - 24 months. My suggestion is to learn EJB inside and out since it is required knowledge in many organizations. Once you are comfortable with EJB, I would recommend that you begin evalutating and learning the various lightweight frameworks such as Spring, Hibernate, and JDO. Most importantly... have fun.
An alternative is to use Spring+Hibernate until EJB 3 becomes available, and then move to that standard. If you know that you'll want to be on EJB3, then the cleanest migration path is through Spring+Hibernate, or the JBoss group's preview technology.