(EJB) A server-side component architecture for writing reusable business logic and portable enterprise applications. EJB is the basis of Sun's Java 2 Platform, Enterprise Edition (J2EE).
Enterprise JavaBean components are written entirely in Java and run on any EJB compliant server. They are operating system, platform, and middleware independent, preventing vendor lock-in.
EJB servers provide system-level services (the "plumbing") such as transactions, security, threading, and persistence.
The EJB architecture is inherently transactional, distributed, multi-tier, scalable, secure, and wire protocol neutral - any protocol can be used: IIOP, JRMP, HTTP, DCOM etc. EJB 1.1 requires RMI for communication with components. EJB 2.0 is expected to require support for RMI/IIOP.
EJB applications can serve assorted clients: browsers, Java, ActiveX, CORBA etc. EJB can be used to wrap legacy systems.
EJB 1.1 was released in December 1999. EJB 2.0 is in development.
Sun claims broad industry adoption. 30 vendors are shipping server products implementing EJB. Supporting vendors include IBM, Fujitsu, Sybase, Borland, Oracle, and Symantec.
An alternative is Microsoft's MTS (Microsoft Transaction Server).