2017-07-12 1 views
-1

Obtenir NullPointerException lors de la configuration prenom dans vcard quand je suis son surnom mise prenom bien, mais lors de la mise travail se NullPointerExceptionNullPointerException tout en fixant prenom dans vcard en smack

J'utilise ce code

VCard vCard = null; 
VCardManager vCardManager = VCardManager.getInstanceFor(conn); 
try { 
    vCard = vCardManager.loadVCard(); 
    try { 
     vCard.setNickName(imageurl); 
     vCard.setFirstName("Scheller"); 
     vCard.save(conn); 
    } 
    catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

catch (SmackException.NoResponseException e) { 
    e.printStackTrace(); 
} 

catch (XMPPException.XMPPErrorException e) { 
    e.printStackTrace(); 
} 

catch (SmackException.NotConnectedException e) { 
    e.printStackTrace(); 
} 

sur setFirstName son plantage à cette exception

java.lang.NullPointerException exception. Cannot evaluate org.jivesoftware.smackx.vcardtemp.packet.VCard.toString() 
+0

Je ne suis pas familier avec smack, mais dans cette ligne 'vCard.setFirstName', cela semble très irrégulier. –

+0

Toujours afficher la pile complète lorsque vous demandez la cause d'une exception! – Flow

Répondre

0

1.instead de:

VCard vCard = null; 

essayer de créer un nouvel objet de VCard:

VCard vCard = new VCard(); 

2.Also au lieu de ces 2 lignes:

VCardManager vCardManager = VCardManager.getInstanceFor(conn); 
vCard = vCardManager.loadVCard(); 

le faire comme ceci:

vCard.load(conn); 

voir si cela aide votre problème

+0

Pas de chance, j'ai déjà essayé ce – suthar

+0

j'ai mis à jour ma réponse voir si cela fonctionne;) –