Here is my code
public void configureAccount() {
connectionConfiguration = new ConnectionConfiguration(“182.71.209.49”,
5222);
connectionConfiguration.setSASLAuthenticationEnabled(false);
connectionConfiguration.setSecurityMode(SecurityMode.disabled);
connectionConfiguration.setSendPresence(false);
//connectionConfiguration.setDebuggerEnabled(true);
//connectionConfiguration.setSecurityMode(securityMode);
xmppConnection = new XMPPConnection(connectionConfiguration);
}
public void connect() {
if (xmppConnection != null) {
try {
//xmppConnection.disconnect();
xmppConnection.connect();
registerNewUser();
// xmppConnection.login(“admin”, “icareadmin”);
} catch (XMPPException e) {
e.printStackTrace();
} catch (NoClassDefFoundError e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
private void login(){
if(xmppConnection.isConnected()){
if(xmppConnection!=null){
try {
xmppConnection.login(“abc”, “pwd”);
Log.d(TAG,“Logged in as abc”);
OfflinePacketFilter();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Log.d(TAG,"XMPPException "+e);
}
}
}else{
Log.d(TAG,“Not connected to server”);
//startConnection();
}
}
public void handleOfflineMessages(XMPPConnection connection)throws Exception {
try {
ServiceDiscoveryManager sdm= ServiceDiscoveryManager.getInstanceFor(connection);
OfflineMessageManager offlineMessageManager = new OfflineMessageManager(connection);
if (!offlineMessageManager.supportsFlexibleRetrieval()){ -------------------------i AM getting null pointer exception
Log.d(TAG,"does not supportsFlexibleRetrieval ");
return;
}
Log.d(TAG,"does it supportsFlexibleRetrieval "+offlineMessageManager.supportsFlexibleRetrieval()); */
//Log.d(TAG,"Message count " + offlineMessageManager.getMessageCount());
Iterator i = offlineMessageManager.getMessages();
if (!offlineMessageManager.supportsFlexibleRetrieval()){
Log.d(TAG,"does not supportsFlexibleRetrieval ");
return;
}
while (i.hasNext()) {
Message msg = i.next();
String fullJid = msg.getFrom();
String bareJid = StringUtils.parseBareAddress(fullJid);
String messageBody = msg.getBody();
if (messageBody != null) {
Log.d(TAG,“Retrieved offline message from " +bareJid+” -----"+messageBody);
}
}
offlineMessageManager.deleteMessages();
} catch (XMPPException e) {
e.printStackTrace();
return;
}
}
How to check if my openfire support flexible offline message retrieval. Please Please Help am struggling .if not how to get offline messages alternatively