Sto lavorando a un'app GWT che sta ricevendo una stringa JSON e sto riscontrando un periodo di difficoltà con i valori di ciascun oggetto. Sto provando a trasferire la stringa JSON in arrivo in una serie di oggetti.GWT: gestione della stringa JSON in entrata
Ecco il JSON (dalla scheda di risposta Firebug), la "D" è una cosa NET (Web Service consumata è C#.
{
"d": [
{
"__type": "Event",
"ID": 30,
"Bin": 1,
"Date": "\/Date(1281544749000)\/",
"Desc": "Blue with white stripes.",
"Category": "1"
},
{
"__type": "Event",
"ID": 16,
"Bin": 3,
"Date": "\/Date(1281636239000)\/",
"Desc": "Yellow with pink stripes",
"Category": "1"
}
]
}
Sto cercando di analizzare il JSON in oggetti, e poi inserirli in un array. sono in grado di utilizzare Window.alert
e ottenere l'intero oggetto "d" per eco. Tuttavia, quando si tenta di accedere agli elementi della matrice, GWT debugger appena si blocca.
//My GWT array to receive JSON Array
ArrayList<Item> itemInfo = new ArrayList<Item>();
//Getting response JSON into something I can work with.(THIS FAILS)
JSONArray jsonValue = JSONParser.parse(incomingJsonRespone);
//Just trying to verify I'm getting values
for (int i=0; i<jsonValue.size(); i++) {
JSONValue jsonItem = = JsonValue.get(i).getString();
Window.alert(jsonItem);
itemInfo.add(jsonItem);
}
Penso di aver ristretto il problema a dove è stata creata l'istanza JSONArray
. C'è qualcosa di vistosamente sbagliato nel modo in cui sto provando a farlo, perché non sto ottenendo molto aiuto in termini di messaggi di errore?
Si potrebbe voler dare un'occhiata a questa domanda: http://stackoverflow.com/questions/3449099/parse-json-with-gwt-2-0/ Se ti fidi della tua fonte, dovresti sicuramente usare JavaScript Overlay Types. L'analisi di JSON tramite JSONParser è un PITA (ma necessario, quando la fonte non è attendibile: /). –