1

I hava a problem with establishing XMPPTCPConnection.

When I try to create a XMPP connection like this: connection=new XMPPTCPConnection("10.0.2.2");

Or with a another possible constructor : config.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled); connection = new XMPPTCPConnection(config);

It throws an ExceptionInInitializerError.

LOG :

java.lang.ExceptionInInitializerError
        at xmppServices.ConnectionManager.<init>(ConnectionManager.java:40)
        at app.messenger.patrikmaly.activities.LoginActivity.onCreate(LoginActivity.java:45)
        at android.app.Activity.performCreate(Activity.java:5104)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
        at android.app.ActivityThread.access$600(ActivityThread.java:141)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5041)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.ExceptionInInitializerError
        at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96)
        at org.jivesoftware.smack.AbstractXMPPConnection.<clinit>(AbstractXMPPConnection.java:85)
        at xmppServices.ConnectionManager.<init>(ConnectionManager.java:40)
        at app.messenger.patrikmaly.activities.LoginActivity.onCreate(LoginActivity.java:45)
        at android.app.Activity.performCreate(Activity.java:5104)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
        at android.app.ActivityThread.access$600(ActivityThread.java:141)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5041)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.ExceptionInInitializerError
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:217)
        at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:227)
        at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitialization.java:207)
        at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:164)
        at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:149)
        at org.jivesoftware.smack.SmackInitialization.<clinit>(SmackInitialization.java:117)
        at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96)
        at org.jivesoftware.smack.AbstractXMPPConnection.<clinit>(AbstractXMPPConnection.java:85)
        at xmppServices.ConnectionManager.<init>(ConnectionManager.java:40)
        at app.messenger.patrikmaly.activities.LoginActivity.onCreate(LoginActivity.java:45)
        at android.app.Activity.performCreate(Activity.java:5104)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
        at android.app.ActivityThread.access$600(ActivityThread.java:141)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5041)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.NoClassDefFoundError: javax.naming.directory.InitialDirContext
        at org.jivesoftware.smack.util.dns.javax.JavaxResolver.<clinit>(JavaxResolver.java:50)
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:217)
        at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:227)
        at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitialization.java:207)
        at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:164)
        at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:149)
        at org.jivesoftware.smack.SmackInitialization.<clinit>(SmackInitialization.java:117)
        at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96)
        at org.jivesoftware.smack.AbstractXMPPConnection.<clinit>(AbstractXMPPConnection.java:85)
        at xmppServices.ConnectionManager.<init>(ConnectionManager.java:40)
        at app.messenger.patrikmaly.activities.LoginActivity.onCreate(LoginActivity.java:45)
        at android.app.Activity.performCreate(Activity.java:5104)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
        at android.app.ActivityThread.access$600(ActivityThread.java:141)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5041)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
        at dalvik.system.NativeStart.main(Native Method)
Kenster
  • 23,465
  • 21
  • 80
  • 106
PaMaly
  • 11
  • 3
  • Have you added the jndi jar to the classpath?.http://stackoverflow.com/questions/19572795/could-not-find-class-javax-naming-directory-initialdircontext - could be useful. – BatScream Nov 10 '14 at 19:50
  • @BatScream i read that JNDI doesnt exist in Android [link](http://stackoverflow.com/questions/5633243/xmppconnection-error-in-android) but smack 4.1 runs native on android – PaMaly Nov 10 '14 at 20:06
  • It does run on Android, but you obviously added the wrong Smack artifacts to your Android project. Please read the 4.1 Readme – Flow Nov 11 '14 at 07:45

0 Answers0