EJB JNDI-lookup auf verschiedenen WebSphere-Servern
Habe ich zwei getrennte Installationen von WebSphere. (Eigentlich ein WebSphere Application Server V6.1 mit EJB 3.0 und Web Services feature packs, und der andere server WebSphere ESB Server V6.2). Ich weiß jedoch, dass der ESB ist wirklich gebaut, auf der Spitze WAR, so hat es alle Konfigurations-Einstellungen, eine regualr WAR-server hat.
In meinem ESB-server, den ich versuche zu entlarven ein service geschrieben, wie EJB 3.0, die eingesetzt werden, um die 6,1-server. Meine Frage ist nicht, wie man EJB-2.1-Aufrufe zu nennen, in ein EJB 3.0. Wir haben dies bereits getan. Meine Frage ist, wie call-in physischen VM. Der WebSphere Application Server ausgeführt wird, in seiner eigenen Zelle/node/server aus dem ESB-Server. Von dem, was ich gelesen habe, in der IBM-Dokumentation, es ist auch möglich, einen namespace binding-on WURDE auf eine remote-EJB auf einem anderen WAR-Instanz. So könnte man die Verwendung der JNDI-lookup eine Bohne auf einem Beispiel, das wirklich seinen Wohnsitz in einem anderen WAR-Instanz. Die Schönheit dieser Methode ist der Ort der EJB, die Sie wollen, ist abstrahiert, um die container-Ebene, und Sie nicht haben, um ziehen Sie, um Eigenschaften von Dateien die IP-Adressen und ports, die Sie benötigen Zugriff auf die bean sollte es änderungen an den Servern, etc. Sie stellen Sie einfach ein standard-JNDI-lookup zu einem remote EJB, und Sie bekommen es.
Klingt, wie es getan werden kann. (Unter folgenden links:
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/tnam_view_bindings.html) Vor allem, Folgen Sie den links auf EJB und Indirekte namespace-Bindungen.
Aber ich habe schlug meinen Kopf gegen diese für eine Weile. Es macht Sinn. Es sieht aus wie es getan werden kann. Und die Indirekte namespace binding sieht am vielversprechendsten sind. Aber ich kann nicht damit es funktioniert völlig Recht. Meinem ESB-server hält Sie beschweren sich über nicht finden, comp/env/ejb-in dem Kontext, in dem ich darum bat. Sehr verwirrt von diesem.
Nur Wundern, wenn irgendjemand das getan hat, diese Art der Sache vor. Können Sie mir ein konkretes Beispiel, wie Sie dies im, dies zu tun? Jede Hilfe ist willkommen
InformationsquelleAutor Chris Aldrich | 2009-08-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut, ich habe da gesprochen, mit IBM auf, wie dies zu tun, und war überrascht von Ihrer Antwort. Sie antwortete, dass, wenn Sie sprechen EJB EJB auf dem gleichen server oder server-cluster, dann verwenden EJB RMI über IIOP. Mit JNDI diese Zusammenfassungen, wo die bean tatsächlich ausgeführt wird (in einer Clusterumgebung).
Wenn Sie von einem server (oder server-cluster) zu einem anderen server (oder server-cluster) unabhängig davon, ob oder nicht das Ziel und die Quelle in der gleichen Zelle, IBM empfohlen, dass Sie die Nutzung von messaging-oder web-services. Sie fühlte, dass war eine bessere Methode der Abstraktion zwischen den Anwendungen zu halten Sie davor "gebunden" zu einander. Sie hat gesagt, dass Sie bekommen konnte, EJB ' s zu reden über RMI CORBA, sagte aber zu tun, NUR wenn es absolut notwendig ist. Und natürlich würden Sie brauchen, zu wissen, die IP-und die port-Nummer für kommen über CORBA (und das mal jedes cluster-Mitglieds, wenn Sie in einer Clusterumgebung).
Wieder, diese Art hat mich überrascht, aber es macht Sinn. Dachte nur, ich Teile diese Gedanken mit der Welt, vor allem, wenn Sie die Arbeit mit WebSphere.
InformationsquelleAutor Chris Aldrich
wie-Suche von tomcat
InformationsquelleAutor Hlex
Ich steckte mit dem gleichen problem. Nach dem Versuch, alle websphere-und ibm-orb Gläser fand diesen Artikel bei ibm
Wie lookup EJB und anderen Ressourcen in WebSphere Application Server mit einer Oracle-JDK-client - http://www-01.ibm.com/support/docview.wss?uid=swg21382740
hauptsächlich CNCtxFactory statt WsnInitialContextFactory
InformationsquelleAutor Alex Punnen