2011-07-12 6 views
2

Smack(3.2.1)の最新バージョンを使用して2つのアカウント間でメッセージを送受信する簡単な例を記述しようとしています。JavaとJabber/Smack

Connection connection = new XMPPConnection("jabber.org"); 
connection.connect(); 
connection.login("username", "password"); 

しかし、私はログイン部分を通過することさえできません。上記のコードを実行すると、この例外が発生します。

Exception in thread "main" SASL authentication DIGEST-MD5 failed: invalid-authzid: 
at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java:337) 
at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:203) 
at org.jivesoftware.smack.Connection.login(Connection.java:348) 
at com.smack.TestSmack.main(TestSmack.java:19) 

ここでは何が起こっていますか?自分のIMクライアントを使用してログインできるので、私のユーザ名とパスワードが有効であると確信しています。

誰でも現在のSmackの例を教えていただけますか?これは、ドキュメントとライブラリが同期していないように見えるため、非常に不満です。

Thanks-

+2

SASLAuthentication.supportSASLMechanism("PLAIN", 0);

を使用して試してみたいことがすでにあることを行う場合あなたがパスワードを間違って入力したというコメントの中で見つけ出す必要があります。 :-) – Akku

+4

この質問は誤って入力されたパスワードに関するものなので、話題にはならないようです。 – madth3

答えて

6

は、あなたは、ユーザー名の末尾に「@ jabber.org」を追加していないことを確認してもらえますか?もしあなたがそうするなら、それはうまくいかないでしょう。

そうでなければ、あなたは私ので、私はちょうど1分を失ったとして、あなたは、あなたがこの質問を削除する必要があります

connection.login("username", "password");

+0

いいえ、私はユーザー名の最後に@ jabber.orgを持っていません。私はSASLAuthenticationの行を追加しようとした、と私はこのエラーを得た:スレッド内 – Jim

+0

例外は、「メイン」SASL認証PLAINに失敗しました:無効な-authzidはを: org.jivesoftware.smack.SASLAuthentication.authenticateで\t(SASLAuthentication.java:337) \t org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:203) \t at org.jivesoftware.smack.Connection.login(Connection.java:348) \t at com.smack.TestSmack.main(TestSmack.java :20) – Jim

+0

提案していただきありがとうございます。他のアイデア? – Jim