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
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!
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.
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.
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...
Certstream, InfluxDB, Grafana und Netflix
16.04.2019
Nachdem ich vor kurzem über mein erstes Spielen mit dem certstream berichtete, habe ich weitere Experimente gemacht und die Daten zur besseren Auswertung in eine InfluxDB gepackt, um sie mit Grafana untersuchen zu können.
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Git(lab|hub) Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Die sQLshell hat eine weitere Integration erfahren - obwohl ich eigentlich selber nicht viel dazu tun musste: Es existiert ein Projekt/Produkt namens steampipe, dessen Slogan ist select * from cloud; - Im Prinzip eine Wrapperschicht um diverse (laut Eigenwerbung mehr als 140) (cloud) data sources.
Weiterlesen...Nach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2024 folgt hier gleich die nächste:
Weiterlesen...Da ich seit nunmehr einem Jahr bei meinem neeun Arbeitgeber beschäftigt und damit seit ungefähr derselben Zeit für Geld mit Python arbeite, haben sich gewisse Antipathien gegenüber Python vertieft (ich kann mit typlosen Sprachen einfach nicht umgehen) - aber auch einige meiner Gründe, Python zu lieben sind ebenso stärker geworden. Einer davon ist der Fakt, dass eine Methode in Python mehr als einen Wert zurückgeben kann.
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, muß 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 GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.