Android - вызов getJSONArray, генерирующий исключение JSONException без отслеживания стека - PullRequest
1 голос
/ 07 апреля 2010

В настоящее время я работаю над приложением для Android, которое извлекает список форумов из канала JSON. Я пытаюсь проанализировать канал и сразу после вызова getJSONArray генерируется исключение JSON без трассировки стека. Возвращаемый JSON сохраняется в JSONObject jobj в следующем формате:

{
    "Forum":
        [
         {"ForumName":"CEC Employee Communications Forum","ForumId":"105"},
         {"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109"},
         {"ForumName":"See All...","ForumId":"0"}
        ]
}

Однако при выполнении следующего кода я получаю немедленное исключение без трассировки стека:

JSONArray jarray = new JSONArray();
jarray = jobj.getJSONArray("Forum");

Бег

jobj.GetJSONArray("Forum").toString();

возвращает корректный массив формата:

[
 {"ForumName":"CEC Employee Communications Forum","ForumId":"105"},
 {"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109"},
 {"ForumName":"See All...","ForumId":"0"}
]

Я тоже пытался

JSONArray jarray = new JSONArray(jobj.GetJSONArray("Forum").toString());

и немедленно было сгенерировано исключение.

1 Ответ

0 голосов
/ 07 апреля 2010

Так что-то подобное не помогает? Я сомневаюсь, что вы можете получить исключение без трассировки стека:

JSONarray jarray = null;
try {
   jarray = jobj.getJSONArray("Forum");
}
catch(JSONException je) { je.printStackTrace(); }
...