I'm getting a NullPointerException when I try to parse JSONArray to ListAdapter. I tried to Log the item array count and still same error. I don't know if I'm omitting something or not. Any help would be appreciated. Thanks My code is below:
public void parseJsonFeed(JSONArray jArr){
Log.d("jsonArr", jArr.toString());
try {
//JSONArray jar = jArr.getJSONArray(0);
for (int i = 0; i < jArr.length(); i++) {
JSONObject rest = (JSONObject) jArr.get(i);
String check = rest.getString("delivered");
PendingTrackItem item = new PendingTrackItem();
String sourceAdrress, sourceCity, destinationCity, destinationAddress;
sourceAdrress = rest.getString("source");
destinationAddress = rest.getString("destination");
if (check.equals("false")) {
item.setId(rest.getString("order_id"));
item.setNumber(rest.getString("number"));
if (sourceAdrress.isEmpty()) {
item.setSourceAddress(rest.getString("destination"));
item.setSourceName(rest.getString("destination_name"));
} else if (destinationAddress.isEmpty()) {
item.setSourceAddress(rest.getString("source"));
item.setSourceName(rest.getString("source_name"));
} else {
item.setSourceAddress(rest.getString("source"));
item.setSourceName(rest.getString("source_name"));
}
trackItems.add(item);
}
Log.d("ITEm", String.valueOf(trackItems.size()));
}
listAdapter.notifyDataSetChanged();
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
My Log is below
09-15 11:09:36.039: E/AndroidRuntime(15926): FATAL EXCEPTION: main
09-15 11:09:36.039: E/AndroidRuntime(15926): Process: com.deliveryscience.pod, PID: 15926
09-15 11:09:36.039: E/AndroidRuntime(15926): java.lang.NullPointerException
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.deliveryscience.pod.fragments.PendingFragment.parseJsonFeed(PendingFragment.java:101)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.deliveryscience.pod.handlers.OrderDataRetrieval.getResults(OrderDataRetrieval.java:154)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.deliveryscience.pod.handlers.OrderDataRetrieval.handleResponse(OrderDataRetrieval.java:118)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.deliveryscience.pod.handlers.OrderDataRetrieval$1.onResponse(OrderDataRetrieval.java:48)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.deliveryscience.pod.handlers.OrderDataRetrieval$1.onResponse(OrderDataRetrieval.java:1)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
09-15 11:09:36.039: E/AndroidRuntime(15926): at android.os.Handler.handleCallback(Handler.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at android.os.Handler.dispatchMessage(Handler.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at android.os.Looper.loop(Looper.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at android.app.ActivityThread.main(ActivityThread.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at java.lang.reflect.Method.invokeNative(Native Method)
09-15 11:09:36.039: E/AndroidRuntime(15926): at java.lang.reflect.Method.invoke(Method.java:515)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
09-15 11:09:36.039: E/AndroidRuntime(15926): at dalvik.system.NativeStart.main(Native Method)
0 comments:
Post a Comment