JSON Parsing showing NullPointerException in android -


hi have json data , i'm getting through url using method,i need show sender,receiver,message in textview,i have created jsonparser class after running app showing caused by: java.lang.nullpointerexception: attempt invoke virtual method 'org.json.jsonarray org.json.jsonobject.getjsonarray(java.lang.string)' on null object reference.how fix issue.

here have tried

private static string url = "http://130.211.99.188/api/messages"; jsonarray _items = null;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);       t1 = (textview)findviewbyid(r.id.textview1);     t2 = (textview)findviewbyid(r.id.textview2);     t2 = (textview)findviewbyid(r.id.textview3);      if (utils.isnetconnected(this))     {          new parser().execute();      }      else         utils.showdialog(this); }   class parser extends asynctask < string, string, string > {       protected void onpreexecute() {         super.onpreexecute();         pdialog = new progressdialog(mainactivity.this);         pdialog.setmessage("please wait..");         pdialog.setindeterminate(false);         pdialog.setcancelable(true);         pdialog.show();     }      @override     protected string doinbackground(string... params) {         // todo auto-generated method stub          jsonparser jparser = new jsonparser();         jsonobject json = jparser.getjsondata(url);         try{                     _items = json.getjsonarray("_updated");                     for(int i=0;i<_items.length();i++){                                 jsonobject object = _items.getjsonobject(i);                                  sender = object.getstring("sender");                                 receiver = object.getstring("receiver");                                 message = object.getstring("message");                      }         }catch(jsonexception e){                     e.printstacktrace();         }         return message;        }//ending doinbackground                       @override        protected void onpostexecute(string result) {                                  super.onpostexecute(result);                                 pdialog.dismiss();                                  t1.settext(sender);                                 t2.settext(receiver);                                 t3.settext(message);                      }     }  } 

this json data

 {"_items": [{"_updated": "thu, 01 jan 1970 00:00:00 gmt", "sender":          "556a1233aca33b3c8158de0a", "timestamp": 1433018976, "receiver": "5569c6c5aca33b3c8158de07", "_links": {"self": {"href": "messages/556a2260aca33b3c8158de11", "title": "messages"}}, "message_created": "sat, 30 may 2015 20:49:36 gmt", "seen": false, "message": "hii", "_id": "556a2260aca33b3c8158de11", "_etag": "afa4fe57efec9abf7c5bc817a7e045a5b4467384", "_created": "thu, 01 jan 1970 00:00:00 gmt"}, 

this complete code, have @ data printed

import java.io.ioexception;  import org.apache.http.httpresponse; import org.apache.http.client.clientprotocolexception; import org.apache.http.client.httpclient; import org.apache.http.client.methods.httpget; import org.apache.http.client.methods.httppost; import org.apache.http.impl.client.defaulthttpclient; import org.apache.http.util.entityutils; import org.json.jsonarray; import org.json.jsonexception; import org.json.jsonobject;  import android.app.activity; import android.app.progressdialog; import android.os.asynctask; import android.os.bundle;  public class mainactivity extends activity {     progressdialog pdialog;     @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);         new postserver().execute();     }     public string postdata() throws jsonexception {         // create new httpclient , post header         string downloadedstring = null;          httpclient httpclient = new defaulthttpclient();         // registerhttps://te //          httppost httppost = new httppost("http://130.211.99.188/api/messages");             httpclient myclient = new defaulthttpclient();   //          httppost myconnection = new httpget("http://130.211.99.188/api/messages");              try { //              httpresponse  response = myclient.execute(myconnection);                 httpresponse httpresponse = httpclient.execute(new httpget("http://130.211.99.188/api/messages"));                 downloadedstring = entityutils.tostring(httpresponse.getentity(), "utf-8");              } catch (clientprotocolexception e) {                 e.printstacktrace();             } catch (ioexception e) {                 e.printstacktrace();             }             system.out.println("downloadedstring:in login:::"                     + downloadedstring);          return downloadedstring;     }      public class postserver extends asynctask<void, void, void> {         string jsonstring = null;          @override         protected void onpreexecute() {             // todo auto-generated method stub             super.onpreexecute();             pdialog = new progressdialog(mainactivity.this);             pdialog.setcancelable(false);             pdialog.setprogressstyle(progressdialog.style_spinner);             pdialog.setmessage("loading..");             pdialog.show();          }          @override         protected void doinbackground(void... params) {             // todo auto-generated method stub             try {                 jsonstring = postdata();             } catch (jsonexception e) {                 // todo auto-generated catch block                 e.printstacktrace();             }             return null;         }          @override         protected void onpostexecute(void result) {             // todo auto-generated method stub             super.onpostexecute(result);              try {                 if(pdialog!=null){                     pdialog.dismiss();                 }                 jsonobject mainobject = new jsonobject(jsonstring);                 jsonarray array=mainobject.getjsonarray("_items");                 for(int i=0;i<array.length();i++){                     system.out.println(array.getjsonobject(i).getstring("sender"));                     system.out.println(array.getjsonobject(i).getstring("receiver"));                     system.out.println(array.getjsonobject(i).getstring("message"));                 }               } catch (exception e) {                 // todo: handle exception                 if (pdialog != null) {                     pdialog.dismiss();                 }                 system.out.println(e.getmessage());             }          }     } } 

thanks


Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -