1. EJB's development complexity. Its easy to mess up things with EJB, if not designed and implemented in a very correct way. 2. Spring's superior architectural design. 3. Support for integration with existing popular frameworks and scopes for extensions.
EJB's one advatange that Spring misses is that EJB is a standard.
I would like to know your views.
Ashik Uzzaman Senior Software Engineer, TubeMogul, Emeryville, CA, USA.