EJBs als Module in dWb+

vorhergehende Artikel in: Java dWb+
08.07.2016

Bereits seit längerer Zeit plante ich, dWb+ mit Java Enterprise Edition zu koppeln. Im letzten Monat gelang es mir: Nachdem ich dafür gesorgt hatte, dass das System mit Queues in JBoss Wildfly 10 kommunizieren konnte, habe ich mich der Verwendung von Enterprise JavaBeans als Module zugewandt

Dataflow Workbench dWb+ Im Geiste der Enterprise Integration, die ich hier schon verschiedentlich zum Thema machte, plante ich schon seit längerem, Enterprise JavaBeans als Module in dWb+ zu integrieren. Anfangs dachte ich darüber nach, diese ohne Entwicklungstätigkeit transparent als Module einsetzen zu können. Ich wollte dafür einen Browser ähnlich dem im Management Interface von Wildfly schaffen, aus dem man sich eine der deployten Beans wählen können sollte, die dann vollautomatisch zu einem Modul umgewandelt werden sollte. Nachdem ich einige zaghafte Versuche dahingehend unternommen hatte, habe ich diese Idee schnell wieder ad acta gelegt.

Im zweiten Anlauf habe ich das Herangehen geändert: Hat man ein Remote Interface einer EJB, kann man darauf aufbauend ein Modul entwickeln, das dieses Remote Interface kapselt. Die Dafür bereitgestellte Basisklasse kümmert sich um die Bereitstellung des Proxies und die Kommunikation mit dem Applikationsserver. Letztlich handelt es sich bei dem zu schaffenden Wrapper-Modul um ein ganz normales Modul für dWb+, das statt der Implementierung der gewünschten Funktionalität deren Durchführung einfach an die EJB delegiert.

Dieser Mechanismus wurde mit Stateful und Stateless SessionBeans ausprobiert. Des weiteren wurde die korrekte Funktion von Container Managed Persistence ebenfalls validiert. Die Tests wurden mittels leicht angepasster Beispiele von Wildfly 10 durchgeführt. Die Datenbank, die für die Persistierung von DAOs benutzt wurde, war eine PostgreSQL-Installation in der aktuellsten Version.

Wer sich jetzt überlegt, dass dieses beschriebene Feature keinen Mehrwert bringt - wegen der Aufwände der Einrichtung einer Entwicklungsumgebung nur wegen des Wunsches, eine EJB zu nutzen, der sei an folgendes erinnert: dWb+ verfügt über die Möglichkeit, auch Modulquelltexte als Module zu nutzen. Die Anwendung nutzt dazu BeanShell und interpretiert die Quelltexte des Moduls zur Laufzeit. Wer also nur mal schnell eine EJB aufrufen möchte, der kann das Modul schreiben und es über diesen Weg direkt nutzen, ohne den Compiler zu bemühen!

Artikel, die hierher verlinken

Aktualisierung Smack v4.2.1

02.12.2017

Ich habe eine der von mir benutzten Softwarekomponenten aktualisiert: die Jabber-Bibliothek Smack. Damit ist auch eine neue Version von dWb+ verfügbar.

Verschiedene Interaktionsmetaphern in dWb+

18.09.2016

Nach Fertigstellung einiger Module, die die Kommunikation zwischen Komponenten auf Dateiebene unterstützen, werde ich versuchen, verschiedene Interaktionsmetaphern bzw. Kommunikationsstrategien aus anderen datenflussgetriebenen Systemen in dWb+ nachzuvollziehen, um die Effizienz der Implementierung und die Vor- und Nachteile ihrer Anwendung diskutieren zu können.

Permissions zum Zugriff auf JBoss-EJBs

06.08.2016

Ich habe bereits darüber berichtet, dass die remote Nutzung von Queues auf einem JBoss-Server nicht einfach ist, wenn man einen SecurityManager benutzen möchte. Hier der Nachtrag zum Thema remot Nutzung von EJBs im selben Szenario...

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Multi-User-WebDAV, Docker, GitHub

    17.11.2019

    Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...

    Weiterlesen...

Neueste Artikel

  • Migration der Webseite und aller OpenSource Projekte

    In eigener Sache...

    Weiterlesen...
  • AutoHideToolbar für Java Swing

    Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.

    Weiterlesen...
  • Integration von EBMap4D in die sQLshell

    Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.