Wildfly Remote EJB Aufruf

8

Ich versuche, eine zustandslose EJB aufzurufen, die auf einem Remote-Server implementiert ist. Ich kann die Bean aus meiner lokalen JBoss-Umgebung aufrufen, aber wenn ich remote.connection.default.host auf den Host des Remote-Rechners ändere, funktioniert mein Client-Code nicht.

Das ist mein jboss-ejb-client.properties :

%Vor%

Und mein Client-Code sieht so aus:

%Vor%

Bitte helfen Sie.

Danke allen. Jack.

    
Jack Ant 27.06.2014, 12:39
quelle

5 Antworten

3

Diese Antwort mag verspätet sein, aber ich hatte das gleiche Problem, keine der obigen Antworten hat mir geholfen, dieses Problem zu lösen, verweisen Sie auf Folgendes: Ссылка

Der Code, der für mich funktioniert, ist wie folgt:

%Vor%     
Ironluca 22.12.2014 17:17
quelle
1

Dummerweise glaubte ich, dass ich die EJB-Implementierung auf Wildfly verstand. Ich kämpfte mehrere Tage lang mit dem Remote-Aufruf meiner zustandslosen EJBs aus einem Servlet und probierte verschiedene Konfigurationen aus Codeschnipsel aus, die ich im Internet gefunden hatte. Kein Glück.

Ich stieß schließlich auf die folgenden Leitfaden von JBOSS das hatte meine Probleme in etwa 10 Minuten gelöst. Ich hatte meine Remote-Ausgangsverbindung falsch konfiguriert. Die Wildfly-Entwickler haben einen großartigen Java EE-Anwendungsserver geschrieben, aber sie sind schrecklich mit erklärenden Fehlermeldungen.

Das Handbuch ist für AS7.2, aber es war relevant für meine Wildfly 8.2.0 Plattform.

Hoffentlich wird dies jemanden die Trauer retten, die ich erlitten habe.

    
Steven Wolfe 18.08.2015 00:59
quelle
0

Ihr Client-Code muss EJB 3 standardisierten JNDI-Namen verwenden, um auf Ihre Beans zuzugreifen

%Vor%

Und überprüfen Sie WildFly server.log auf die exportierte JNDI-Bindung Ihrer Bean: java:jboss/exported/myapp/mymodule/myEjbName!my.own.package.EjbInterface

Um die Sicherheitsprüfungen zu bestehen, muss der Benutzername in ApplicationRealm definiert sein.

    
Yves Martin 27.11.2014 11:18
quelle
0

Was für mich funktioniert hat:

Mein Kunde war in einem eigenständigen Maven-Projekt. Alles was ich tun musste, war diese Abhängigkeit hinzuzufügen:

%Vor%

Ich bin zu dieser Lösung gekommen, indem ich mir das Beispiel ejb-remote angesehen habe .

    
Janez Kuhar 31.10.2016 15:58
quelle
-1

Normalerweise lassen Sie in Java EE den Container die Suche durchführen, anstatt es selbst zu tun. Aus dem Java EE 6-Lernprogramm :

  

Um einen Verweis auf die Remote-Business-Schnittstelle eines zu erhalten   Enterprise-Bean durch Dependency-Injektion, verwenden Sie die javax.ejb.EJB   Anmerkung und geben Sie die Remote-Business-Schnittstelle der Enterprise-Bean an   Name:

     

@EJB Example example;

Wenn es sich um eine JNDI-Suche handelt, lesen Sie dieses JBoss-Lernprogramm - es ist jedoch für Version 7 gedacht, aber vielleicht es ist hilfreich für Ihren Fall.

    
Alexander Rühl 30.06.2014 06:22
quelle