VCard Timeout

Hi all,

I would really appreciate some help on this as it is an issue that has been

bugging me for a while!

Occasionally, i get the following error when trying to load a vcard:

Timeout getting VCard information: request-timeout(408) Timeout getting

VCard information

at

org.jivesoftware.smackx.packet.VCard.doLoad(VCard.java:532)

at

org.jivesoftware.smackx.packet.VCard.load(VCard.java:507)

I need to avoid this by what ever means possible. If it means extending the

timeout, fine. How do I do that? I am wiling to consider any hack to avoid

this, presently; everything just grinds to a halt. I have tried putting an additional

vcard.load() in the catch statement block but this also fails. I simply cannot

have this error anymore as my program relies on the vCard successfully loading,

but i cannot see how to remove this issue or mitigate against it. 98% of the

time there is no issue at all. However, every so often this issue occurs for no

apparent reason at all.

Any advice at all would be great!

Thanks loads

Steven

Hey Steven,

Do you know why the server is taking too long to answer the vcard? You may want to inspect the root cause if at all possible. Otherwise, you will need to increase the packet timeout in Smack (see SmackConfiguration#setPacketReplyTimeout(int)).

Regards,

– Gato

I had this issue. To load a vCard for someone with

public void VCard.

load(XMPPConnection connection, String user)

you have to pass the username + “@” + domain as the user.

e.g. I was just passing the username “test1” when I should have been passing "test1@mydomain.org"

Its is the same thing you pass as the first argument to create a new Message object.