5 Replies Latest reply on Sep 15, 2017 4:51 AM by Abdul Hannan

    Smack 4.2.0 suddenly started crashing in Android

    Sarthak Mittal

      cause of error is this line:

       

      XMPPTCPConnectionConfiguration.builder()

       

      The error message is this:

       

      java.lang.ExceptionInInitializerError

      java.lang.IllegalArgumentException: U_IDNA_ZERO_LENGTH_LABEL_ERROR

       

      Is this due to some changes made to 4.2.0?

      Please let me know how to resolve this issue.

      Thanks in advance.

        • Re: Smack 4.2.0 suddenly started crashing in Android
          Nischal Manandhar

          I also got same problem.

          App kept on crashing after i rebuild the project in android studio.The error is in the line:

           

               XMPPTCPConnectionConfiguration.builder();

           

          The error message is :

           

          E/AndroidRuntime: FATAL EXCEPTION: Thread-2

                                           java.lang.ExceptionInInitializerError

                                           ......................................................

                                    Caused by: java.lang.IllegalArgumentException: Invalid input to toASCII: .

                                           .....................................................

                                     Caused by: Found zero length lable after NamePrep.. line:  0. preContext:  . postContext:

                                           .......................................................

           

          I have added the following in my app gradle:

              compile 'org.igniterealtime.smack:smack-android-extensions:4.2.0'

              compile 'org.igniterealtime.smack:smack-tcp:4.2.0'

                                                            

           

           

           

            • Re: Smack 4.2.0 suddenly started crashing in Android
              Abdul Hannan

              Very weird! I am also getting same issue when I build my smack project early today but the build I made yesterday is working fine without any exceptions!

               

              I am also using Smack 4.2.0 and also tried 4.2.1-SNAPSHOT but no luck

               

              compile "org.igniterealtime.smack:smack-android-extensions:4.2.0"
              compile "org.igniterealtime.smack:smack-experimental:4.2.0"
              compile("org.igniterealtime.smack:smack-tcp:4.2.0")

               

               

               

               

               

              java.lang.ExceptionInInitializerError

                                                                                         at de.measite.minidns.DNSName.from(DNSName.java:287)

                                                                                         at de.measite.minidns.dnssec.DNSSECClient.<clinit>(DNSSECClient.java:48)

                                                                                         at de.measite.minidns.hla.DnssecResolverApi.<init>(DnssecResolverApi.java:47)

                                                                                         at de.measite.minidns.hla.DnssecResolverApi.<init>(DnssecResolverApi.java:38)

                                                                                         at de.measite.minidns.hla.DnssecResolverApi.<clinit>(DnssecResolverApi.java:31)

                                                                                         at org.jivesoftware.smack.util.dns.minidns.MiniDnsResolver.<clinit>(MiniDnsResolve r.java:54)

                                                                                         at java.lang.Class.classForName(Native Method)

                                                                                         at java.lang.Class.forName(Class.java:400)

                                                                                         at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.j ava:218)

                                                                                         at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitializati on.java:198)

                                                                                         at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitializatio n.java:168)

                                                                                         at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitializatio n.java:153)

                                                                                         at org.jivesoftware.smack.SmackInitialization.<clinit>(SmackInitialization.java:11 9)

                                                                                         at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96 )

                                                                                         at org.jivesoftware.smack.provider.ProviderManager.<clinit>(ProviderManager.java:1 21)

                                                                                         at org.jivesoftware.smack.provider.ProviderManager.addExtensionProvider(ProviderMa nager.java:259)

               

              Caused by: java.lang.IllegalArgumentException: Invalid input to toASCII: .

                                                                                         at java.net.IDN.toASCII(IDN.java:112)

                                                                                         at java.net.IDN.toASCII(IDN.java:134)

                                                                                         at de.measite.minidns.idna.DefaultIdnaTransformator.toASCII(DefaultIdnaTransformat or.java:19)

                                                                                         at de.measite.minidns.idna.MiniDnsIdna.toASCII(MiniDnsIdna.java:18)

                                                                                         at de.measite.minidns.DNSName.<init>(DNSName.java:103)

                                                                                         at de.measite.minidns.DNSName.<clinit>(DNSName.java:59)

               

              Caused by: Found zero length lable after NamePrep.. line:  0. preContext:  . postContext:

                                                                                   

                                                                                         at android.icu.impl.IDNA2003.convertToASCII(IDNA2003.java:185)

                                                                                         at android.icu.impl.IDNA2003.convertIDNToASCII(IDNA2003.java:275)

                                                                                         at android.icu.text.IDNA.convertIDNToASCII(IDNA.java:652)

            • Re: Smack 4.2.0 suddenly started crashing in Android
              Flinky

              I got the same problem and I could solve it by adding this line:

               

              SmackConfiguration.addDisabledSmackClass("org.jivesoftware.smack.util.dns.minidns.MiniDnsResolver")

               

              It is disabling the MiniDNSResolver, which is causing the problem.

              I hope it helps.

              • Re: Smack 4.2.0 suddenly started crashing in Android
                dams

                I got this issue too.

                 

                The issue comes from one dependency de.measite.minidns that pushed a update with a bug. So I fixed it like that by excluding to auto-dependency and including the last stable release. It fixed my problem. Hope it works for you guys

                 

                compile ('org.igniterealtime.smack:smack-android:4.2.0') {

                  exclude  group:'de.measite.minidns'
                }

                compile ('org.igniterealtime.smack:smack-tcp:4.2.0') {

                  exclude  group:'de.measite.minidns'
                }

                compile group: 'de.measite.minidns', name: 'minidns-hla', version: '0.2.2'

                2 of 2 people found this helpful