2012-03-19 31 views
1

私はsmack APIを使用してOpenfireサーバーに接続しようとしていますが、これはできません。Openfireサーバーに接続できません

がここにコードされています

public class Tests{ 

public static void main(String[] args) { 

    System.out.println("Starting IM client"); 

    // gtalk requires this or your messages bounce back as errors 
    ConnectionConfiguration connConfig = new ConnectionConfiguration("localhost", 5222); 
    XMPPConnection connection = new XMPPConnection(connConfig); 

    try { 
     connection.connect(); 
     System.out.println("Connected to " + connection.getHost()); 
    } catch (XMPPException ex) { 
     //ex.printStackTrace(); 
     System.out.println("Failed to connect to " + connection.getHost()); 
     System.exit(1); 
    } 
    try { 
     connection.login("[email protected]", "setup1"); 
     System.out.println("Logged in as " + connection.getUser()); 

     Presence presence = new Presence(Presence.Type.available); 
     connection.sendPacket(presence); 

    } catch (XMPPException ex) { 
     //ex.printStackTrace(); 
     System.out.println("Failed to log in as " + connection.getUser()); 
     System.exit(1); 
    } 
    connection.disconnect(); 
} 
} 

次が出力されます。

Starting IM client 
Connected to localhost 
Failed to log in as null 

サーバーに接続するが、ログインできないようです

答えて

2
connection.login("[email protected]", "setup1"); 

。あなたのサーバがlocalhost上で起動されている場合は、確実にexample.comドメインにログインすべきではありません。 だけ試してみてください。

connection.login("test", "setup1"); 

をしかし、それがログインできるようにすることを忘れないでください、あなたは有効なユーザ名とパスワードを持っている必要があります。つまり、サーバー上にパスワード "setup1"を使用してユーザー "test"を作成する必要があります。

+0

k ...これが動作します。サーバーが実際のドメインにある場合は、クライアントデバイスからログインするために[email protected]を使用する必要があります。 – frewper

+0

あなたはいつもユーザー名でログインできると思うが、[email protected]もまた動作するはずだ。 – Maggie

+0

XMPPインターフェイスでは、常にドメインが必要です。私はこのAPIがそれを必要としているかどうか分かりませんが、一貫性のために、とにかくドメインを使用することをお勧めします。 –

関連する問題