Anwendungen der EJB Version 3.x implementieren

Verwenden Sie diese Task, wenn sie Anwendungen der Enterprise JavaBeans (EJB) Version 3.x implementieren.

Informationen zu diesem Vorgang

Nach EJB-Spezifikation (Enterprise JavaBeans) sind Enterprise-Beans Java-Komponenten, die in der Regel die Geschäftslogik von JEE-Anwendungen (Java Platform, Enterprise Edition) und Zugriffsdaten implementieren. IBM WebSphere Application Server bietet eine umfassende Unterstützung für Enterprise-Beans, einschließlich der Spezifikationen Enterprise JavaBeans (EJB) 2.x und EJB 3.x. Die Spezifikation der EJB 3 vereinfacht die Entwicklung von Geschäftslogik und die Datenverarbeitung für Unternehmensanwendungen. Sie können die Beans mit einem der Assembliertools in ein oder mehrere Module der EJB Version 3.x assemblieren.

Die Spezifikation EJB 3.0 wird zu Recht als wichtigstes Upgrade für das Java™-EE-5-Programmiermodell bezeichnet. Die Spezifikation EJB 3.0 stellt eine Vereinfachung und Optimierung der in Java EE verwendeten Geschäftslogik und Persistenzprogrammiermodelle dar. Obwohl die JPA-Ersetzung (Java Persistence API) als Entitätsklasse bezeichnet wird, darf sie nicht mit Entity-Enterprise-Beans verwechselt werden. Eine JPA-Entität ist keine Enterprise-Bean und muss nicht in einem EJB-Container ausgeführt werden.

Die EJB-Spezifikation erfordert, dass lokale Clientsichten nur für EJBs, die in einer Anwendung gepackt sind, unterstützt werden. Das schließt lokale Home-Schnittstellen, lokale Geschäftsschnittstellen und Sichten ohne Schnittstellen ein. WebSphere Application Server lässt den Zugriff auf lokale Clientsichten für EJBs, die in einer eigenständigen Anwendung gepackt sind, mit folgenden Einschränkungen zu:
  • Die lokale Schnittstelle und alle Parameter-, Rückgabe- und Ausnahmetypen, die von der lokalen Schnittstelle verwendet werden, müssen sowohl für den Klassenlader der aufrufenden Anwendung als auch den Klassenlader der EJB-Zielanwendung sichtbar sein. Sie können das sicherstellen, indem Sie entweder eine gemeinsam genutzte Bibliothek, die einem Serverklassenlader zugeordnet ist, oder eine isolierte gemeinsam genutzte Bibliothek, die beiden Anwendungen zugeordnet ist, verwenden. Weitere Informationen finden Sie im Artikel "Gemeinsam genutzte Bibliotheken erstellen".
  • Wenn die EJB-Zielanwendung gestoppt ist, müssen alle zwischengespeicherten Referenzen auf die EJB aktualisiert werden. Sie können eine der folgenden Vorgehensweisen wählen:
    • Starten Sie die aufrufende Anwendung erneut. Am einfachsten ist es, die aufrufende Anwendung immer beim Neustart einer EJB-Zielanwendung, auf die sie sich stützt, erneut zu starten.
    • Rufen Sie eine neue Referenz aus JNDI ab. Standardmäßig werden JNDI-Suchvorgänge im Java-Namespace zwischengespeichert, und der Cache muss entweder inaktiviert oder gelöscht werden, wenn eine neue Referenz abgerufen werden soll. Weitere Informationen finden Sie im Artikel "Anwendungen entwickeln, die JNDI verwenden".

      Wenn die EJB-Anwendung gestoppt wurde, lösen EJB-Methodenaufrufe die Ausnahme com.ibm.websphere.ejbcontainer.EJBStoppedException aus. Wenn Sie die EJB-Referenz mit einer "@EJB"-Injektion oder einer JNDI-Suche in einer Instanzvariable zwischengespeichert haben, können Sie diese Ausnahme abfragen und die EJB-Referenz durch Ausführen einer nicht zwischengespeicherten Suche aktualisieren.

Führen Sie die folgende Prozedur aus, wenn Sie die Anwendung EJB 3.x in WebSphere Application Server einschließlich der Optimierungs- und Fehlerbehebungstipps implementieren möchten.

Vorgehensweise

  1. Enterprise-Bean-Code migrieren.
    1. Bei der Verwendung von Beans der EJB Version 3.x sollten keine Migrationsprobleme auftreten. Vorhandene Anwendungen sollten weiterhin unverändert ausgeführt und fehlerfrei kompiliert werden. In den Spezifikationen EJB 3.0 und 3.1 wurde die Verwendung von Entity-Bean im Stil von EJB 1.1 als veraltet gekennzeichnet. Es wird empfohlen, eine Migration auf Java™ Persistence API (JPA) oder JDBC als Ersatz für Entity-Beans durchzuführen.
  2. Anwendungen der EJB Version 3.x entwickeln.
    1. Entwerfen Sie eine Java-EE-Anwendung und die für diese erforderlichen Enterprise-Beans. Vor dem Entwickeln von Entity-Beans mit über Container realisierter Transaktionspersistenz sollten Sie den Artikel "Steuerung des gemeinsamen Zugriffs" lesen. Beachten Sie, dass Module der EJB Version 3.x keine Entity-Beans unterstützen. Entity-Beans müssen weiterhin in Module der Version EJB 2.x eingefügt werden.
  3. Anwendungen der EJB Version 3.x assemblieren.
    1. Assemblieren Sie ein Modul der EJB Version 3.x mit Enterprise-Beans und zugehörigen Codeartefakten. Gruppieren Sie Webkomponenten, Clientcode und Ressourcenadaptercode in separaten Modulen. Nach der Assemblierung des EJB-Moduls installieren Sie es als eigenständige Anwendung, oder kombinieren Sie es mit anderen Module in einer Unternehmensanwendung.
  4. Anwendungen der EJB Version 3.x implementieren.
    1. Wenn Sie ein EJB-Modul implementieren, installieren Sie dieses Modul in einem Server, dessen Konfiguration implementierte Module unterstützt. Assemblieren Sie ein oder mehrere EJB-Module, assemblieren Sie ein oder mehrere Webmodule, und assemblieren Sie diese zu einer Java-EE-Anwendung.
  5. Anwendungen der EJB Version 3.x verwalten.
    1. Sie können EJB-Container, Session-Beans und Entity-Beans verwalten.
  6. Anwendungen der EJB Version 3.x sichern.
    1. Enterprise-Bean-Methoden können durch die Zuordnung von Sicherheitsrollen geschützt werden. Vor dem Zuordnen von Sicherheitsrollen müssen Sie wissen, welche EJB-Methoden geschützt werden müssen und wie dieser Schutz realisiert werden soll.
  7. Anwendungen der EJB Version 3.x optimieren.
    1. Wenn Sie Anwendungen verwenden, die sich auf die Größe des EJB-Containercache auswirken, kann sich eine falsche Größeneinstellung auf die Leistung der Anwendungen auswirken. Es ist wichtig zu wissen, dass Entity-Beans in einem EJB-Modul der Version 3.x nicht unterstützt werden. Einer der Schritte bei der Optimierung Ihres EJB-Containers in Bezug auf die Leistung ist die Optimierung des EJB-Caches.
  8. Fehler in Anwendungen der EJB Version 3.x beheben.
    1. Verwenden Sie die folgenden Fehlerbehebungstipps für Probleme, die sich auf den Zugriff auf Enterprise-Beans beziehen.

Ergebnisse

Sie haben Anwendungen der EJB Version 3.x in WebSphere Application Server implementiert.

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_implement_ejb3x_apps
Dateiname:tejb_implement_ejb3x_apps.html