Java -Bohnen sind wiederverwendbare Komponenten und haben keine strengen Spezifikationen für Java -Bohnen. Da Java -Bohnen jedoch durch Behälter (wie Tomcat) erzeugt werden, sollten Java -Bohnen ohne Parameter einen Konstruktor haben. Java Bean entspricht tatsächlich einer lokalen In-Process-COM-Komponente im Microsoft COM-Modell und kann nicht über Prozesse hinweg zugegriffen werden. Enterprise Java Bean entspricht DCOM, dh verteilte Komponenten. Es basiert auf der RMI-Technologie (Remote Method Call) von Java, sodass auf EJB zugegriffen werden kann (Cross-Process, Cross-Computer). EJB muss jedoch in Containern wie WebSpere-, Weblogic- und EJB -Kunden eingesetzt werden, die nie direkt auf reale EJB -Komponenten zugreifen, sondern über ihre Container zugreifen. EJB -Container sind Agenten von EJB -Komponenten, und EJB -Komponenten werden von Containern erstellt und verwaltet. Der Client greift über den Container auf die reale EJB -Komponente zu.