Мой код Java выглядит следующим образом:
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
String jsonMember = strUrl;
String strMember = readUrl(jsonMember);
if (!Validator.isEmpty(strMember)) {
Object obj = parser.parse(strMember);
JSONObject jo = (JSONObject) obj;
JSONArray jsonArrayMember = (JSONArray) jo.get("member");
for (int j = 0; j < jsonArrayMember.size(); j++) {
JSONObject memberObj = (JSONObject) jsonArrayMember.get(j);
String name = memberObj.get("name").toString();
String age = memberObj.get("age").toString();
}
}
strUrl выглядит следующим образом:
{
"team": {
"team_id": "2",
"team_name": "volcanoe"
},
"member": [
{
"name": "Samantha",
"age": "20"
}
]
}
выдает ошибку, как показано ниже:
java.lang.ClassCastException: java.lang.Boolean cannot be cast to org.json.simple.JSONArray
для строки:
JSONArray jsonArrayMember = (JSONArray) jo.get("member");
Я пытался прочитать элемент member json, но странным образом получил логическую ошибку.Ни один из json не использует логические значения, они являются объектами json.
дополнительная информация: код отлично работает на сервере разработки, но при запуске в производство он вызвал вышеуказанную ошибку.Есть ли что-нибудь связанное с кодом или импортированной библиотекой / jdk?
любая помощь будет отличной.