Frage

Ok, das Problem sollte trivial sein, aber ich kann nicht auf den Grund gehen.

Ich habe zwei Benutzer A & B

Ihre JIDs für dieses Beispiel sind ein@123 und B@123, wobei 123 die IP des Servers ist.

Ich sende eine Nachricht von A-> B mit dem folgenden Code:

   chat = chatmanager.createChat(username,
   new MessageListener() {
      public void processMessage(Chat chat, Message message) {}});
   String sendUsername = username + "@123";
   Message msgObj = new Message(sendUsername, Message.Type.chat);
   msgObj.setBody(message);

   chat.sendMessage(msgObj);

Ich habe die IP so gutcodiert, dass ich zu 100% sicher bin, dass ich die "@123" am Ende des Spitznamens anhege, sodass es keine falschen Jids gibt.

Also sendet A@123 MSGOBJ an B@123. So habe ich XMPP -Messaging verstanden, um zu arbeiten. Dass Sie nicht von a-> b senden können, aber es muss ein@123 -> B@123 sein.

Mein Server scheint jedoch etwas anderes zu denken. Es informiert mich kontinuierlich über den folgenden Fehler:

 2010.12.27 19:02:52 [org.jivesoftware.openfire.session.LocalOutgoingServerSession
 .createOutgoingSession(LocalOutgoingServerSession.java:258)] Error trying to 
 connect to remote server: A(DNS lookup: A:5269) 
 java.net.UnknownHostException: A 

Sowohl im A- als auch im B -Kader auf dem OpenFire -Server haben sie einander als Kontakt mit den richtigen JIDs (Benutzername@123).

Kann jemand Einblick geben? Ich bin verloren.

Bearbeiten

Ich versuche, Wireshark zu verwenden, um den an und vom OpenFire -Server gesendeten XML zu fangen, um festzustellen, ob der Empfänger der Nachricht ordnungsgemäß benannt ist (@@123 anstelle von a).

Nachdem ich Wireshark benutzte, erhielt ich dies als die XML, die übertragen wurde:

\302\3469\223\341\3429\000\000\000\000\377\377

Ich habe SSL deaktiviert, ich habe mich sicherlich verbunden. Ich bin mir nicht sicher, warum ich SSL Typ XML bekomme. Ist es das, was es ist?

War es hilfreich?

Lösung

Es stellte sich heraus, dass die Antwort auf dieses Problem nur übersehen wurde.

In der ersten Codezeile:

 chat = chatmanager.createChat(username, new MessageListener() {
            public void processMessage(Chat chat, Message message) {}
      });

Ich habe die Variable "Benutzername" nicht die richtige IP -Erweiterung haben. Es war also nur "ein" statt "a@123"

"Sendususername" nach oben bewegt und "Benutzername" in "sendUerername" wechselt, macht alles großartig :)

Dummer Fehler.

Andere Tipps

Die Verwendung von IP -Adressen ist fast immer verwirrender als Sie denken.

Es besteht eine gute Chance, dass Sie offene fehlkonfigurierte OpenFire haben, damit die IP -Adresse kein gültiges Hostname ist. Gehen Sie unter "Systemeigenschaften" in die Administratorkonsole und stellen Sie sicher, dass die xmpp.domain Die Eigenschaft ist auf Ihre IP -Adresse eingestellt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top