eleanor
eleanor

Reputation: 1534

android - XMPP client cannot connect to XMPP localhost server

I have the following code in android - I'm using asmack API.

 public XMPPManager(String server, int port) {
    this.server = server;
    this.port = port;

    SmackConfiguration.setPacketReplyTimeout(packetReplyTimeout);
    config = new ConnectionConfiguration(server, port);
    config.setSASLAuthenticationEnabled(false);
    config.setSecurityMode(SecurityMode.disabled);
    connection = new XMPPConnection(config);
    try {
      connection.connect();
      connection.login(user, pass);
    } catch (XMPPException e) {
      Log.w("Cannot connect to server.", "0");
      e.printStackTrace();
    }
    if (connection.isAuthenticated()) {
      AccountManager manager = connection.getAccountManager();
      try {
        manager.createAccount("test", "test");
      } catch (XMPPException e) {
        Log.w("Cannot create new user -----" + " on the XMPP server.", "0");
      }
    }

  }

I'm creating an instance of the XMPPManager class in an XMPPClient activity like this:

public class XMPPClient extends Activity {
  private String username = "user";
  private String password = "pass";
  private String host     = "127.0.0.1";
  private int    port     = 5222;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    try {
      super.onCreate(savedInstanceState);

      XMPPManager xmppManager = new XMPPManager(host, port);
    } catch (Exception e) {

    }
  }

}

The problem I'm getting is the following:

W/Cannot connect to server.( 1052): 0
W/System.err( 1052): XMPPError connecting to 127.0.0.1:5222.: remote-server-error(502) XMPPError connecting to 127.0.0.1:5222.
W/System.err( 1052):   -- caused by: java.net.ConnectException: /127.0.0.1:5222 - Connection refused
W/System.err( 1052):    at org.jivesoftware.smack.XMPPConnection.connectUsingConfiguration(XMPPConnection.java:562)
W/System.err( 1052):    at org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:991)
W/System.err( 1052):    at company.games.boxer.XMPPManager.<init>(XMPPManager.java:45)
W/System.err( 1052):    at company.games.boxer.XMPPClient.onCreate(XMPPClient.java:17)
W/System.err( 1052):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
W/System.err( 1052):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
W/System.err( 1052):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
W/System.err( 1052):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)
W/System.err( 1052):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
W/System.err( 1052):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1052):    at android.os.Looper.loop(Looper.java:123)
W/System.err( 1052):    at android.app.ActivityThread.main(ActivityThread.java:4627)
W/System.err( 1052):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1052):    at java.lang.reflect.Method.invoke(Method.java:521)
W/System.err( 1052):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
W/System.err( 1052):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
W/System.err( 1052):    at dalvik.system.NativeStart.main(Native Method)
W/System.err( 1052): Nested Exception:
W/System.err( 1052): java.net.ConnectException: /127.0.0.1:5222 - Connection refused
W/System.err( 1052):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:254)
W/System.err( 1052):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:533)
W/System.err( 1052):    at java.net.Socket.connect(Socket.java:1055)
W/System.err( 1052):    at java.net.Socket.connect(Socket.java:997)
W/System.err( 1052):    at org.jivesoftware.smack.proxy.DirectSocketFactory.createSocket(DirectSocketFactory.java:28)
W/System.err( 1052):    at org.jivesoftware.smack.XMPPConnection.connectUsingConfiguration(XMPPConnection.java:550)
W/System.err( 1052):    at org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:991)
W/System.err( 1052):    at company.games.boxer.XMPPManager.<init>(XMPPManager.java:45)
W/System.err( 1052):    at company.games.boxer.XMPPClient.onCreate(XMPPClient.java:17)
W/System.err( 1052):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
W/System.err( 1052):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
W/System.err( 1052):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
W/System.err( 1052):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)
W/System.err( 1052):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
W/System.err( 1052):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1052):    at android.os.Looper.loop(Looper.java:123)
W/System.err( 1052):    at android.app.ActivityThread.main(ActivityThread.java:4627)
W/System.err( 1052):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1052):    at java.lang.reflect.Method.invoke(Method.java:521)
W/System.err( 1052):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
W/System.err( 1052):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
W/System.err( 1052):    at dalvik.system.NativeStart.main(Native Method)

Any ideas why I'm receiving the "Cannot connect to server." error? Thank you in advance.

Upvotes: 2

Views: 6296

Answers (2)

Nilesh
Nilesh

Reputation: 6155

Check whether your xmpp server is configured properly and you are able to connect to it. You can use any other 3rd party xmpp client to connect & test your server.

Upvotes: 0

user370305
user370305

Reputation: 109257

I think this line,

private String host = "127.0.0.1";

is cause exception.. So try..

private String host = "10.0.2.2"; or System's public IP

Bco'z Android doesn't understand 127.0.0.1 ip of your system as a local host, this ip is for emulator itself..(loop back address)

Upvotes: 6

Related Questions