0
私はsmack 4.2.1を使用していて、ejabberdサーバに接続しようとしています。 サーバーはauthからのプレーンSASLメカニズムを使用します。smackプレーンSASL to jabberd
バブルのような別のライブラリを使用すると認証できます。 しかし、私は運がありません。私は
Exception in thread "main" java.lang.NullPointerException
at org.jivesoftware.smack.util.stringencoder.Base64.encode(Base64.java:64)
at org.jivesoftware.smack.util.stringencoder.Base64.encode(Base64.java:60)
at org.jivesoftware.smack.util.stringencoder.Base64.encodeToString(Base64.java:42)
at org.jivesoftware.smack.sasl.SASLMechanism.authenticate(SASLMechanism.java:212)
at org.jivesoftware.smack.sasl.SASLMechanism.authenticate(SASLMechanism.java:170)
at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java:202)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.loginInternal(XMPPTCPConnection.java:386)
at org.jivesoftware.smack.AbstractXMPPConnection.login(AbstractXMPPConnection.java:493)
at org.jivesoftware.smack.AbstractXMPPConnection.login(AbstractXMPPConnection.java:467)
私のコード下記の例外を取得しておく
はどれ提案がappricaitedされるだろう
XMPPTCPConnectionConfiguration c = XMPPTCPConnectionConfiguration.builder().setHost("api.coredial.com")
.setHostAddress(InetAddress.getByName("api.coredial.com")).setDebuggerEnabled(true).setPort(5222)
.setXmppDomain(String.valueOf(JidCreate.bareFrom("api.coredial.com")))
.setUsernameAndPassword(userName,password)
.setHostnameVerifier(new HostnameVerifier() {
public boolean verify(String s, SSLSession sslSession) {
return true;
}
}).build();
XMPPTCPConnection con = new XMPPTCPConnection(c);
// Connect to the server
con.connect();
//con.login();
con.login(userName,password);
です。
実際には、2017年にプロジェクトにjarファイルを追加しないでください。Mavenの成果物を消費するビルドシステムを使用してください。それで、なぜあなたはたんぱく質の一部だけが初期化されているのか疑問に思いません。 – Flow