Dear Suresh,
I have recently took the Oracle EJB exam and I'm currently working with the IoC container Spring. These are two completely different worlds, one you are tied with the application server and web server but each vendor has it's own implementation. This is good because they provide services to a common application program interface and fight for some market share. And if they sell, programmers will have jobs if they learn to understand that application programming interface... Sounds like a
pattern huh?
The second, an Inversion of Control container that can with some hooks to the application server provide the same kind of services that EJB does. Further, both have equivalents in SOA and trends that are hot in the market (in my case, I do SOA using VRaptor, a Spring based framework, to expose REST services). They are both extremely powerful and robust technologies to develop both softwares related to the internet with open public or related to some corporation.
The myself of 2012 is moving toward something more simple and well defined, I think that Spring and http based technologies has something on their favor, not limiting itself to the will of a bunch of chairmans, that decide stuff based on their needs first over than what really needs to be done. I do like EJB and believe that with JSR 330, EJB 3.2 and frameworks that implements JAX-RS as RESTEasy or VRraptor it will guarantee a couple more years, or maybe it definitely changes the history of EJB.
Speaking of JSR 330, seek knowledge in the IoC area with technologies such Spring, Guice, Pico, Weld and so on.
Right now I'm studying for the Oracle JPA exam and aiming the architect certification, but I don't know if I should do it without the proper knowledge of the full stack webservices technology of
Java EE, what do you think?