Maybe try to increase the SmackConfiguration.setPacketReplyTimeout().
it takes +- 5seconds before the "join" call returns
On the one hand, that is strange, on the other hand did we experience similar long timeouts, when using BOSH. Do you use BOSH?