Spring and EJB 3 are like Django, Rails, and their ilk: big bloated frameworks that include everything you need to build multi tier apps, plus or minus a few features here and there. Convergent evolution is a wondrous thing.
Feels more like enterprise architecture jargon bingo. I never understood (the point of) EJB. Shamefacedly admit I was once a huge Hibernate fan. But I got over it. Can't speak to Django nor Rails. --- Prior joke: Spring is an stacktrace obfuscation framework. New joke: NodeJS is a control-flow obfuscation framework.
Entity beans were always a disaster, and Stateful Session Beans had scaling problems, but Stateless Session beans by the time of EJB3 were an easy way to push logic out to the network while getting a whole bunch of stuff (pooling, scaling, failover, transaction management, security, etc) for free.
These days they'd be calling them micro services.
The main problem was combining everything into the big ball of mud that is J2EE. If they had let each component live and die on its own merits I think the ecosystem would be in a much better state today.