java.lang.IllegalStateException: Attendu BEGIN_OBJECT mais a CHAÎNE de caractères à la ligne 1 de la colonne 62
Je suis confronté à un problème sur le GSON json à Java. J'ai regardé beaucoup de posts ici, mais je ne peux pas trouver la solution à ma question. Donc je liste mon problème ici.J'essaie d'obtenir les données, il s'agit d'une Carte en json, mais je ne suis pas en mesure de récupérer les données . Dans mon journal, je suis capable de voir que cette quantité de données est à venir, alors il lève l'exception . Quelqu'un merci de me guider un chemin à travers. Merci beaucoup !
Voici mes Données Json sur la frappe de l'URL à partir de l'appli Android, je suis en train de travailler sur
MODIFIER
{
"success" : true,
"messages" : {
"success" : [
"SEARCH_QUERY_SUCCESS"
]
},
"session" : {
"id" : "cn694ivr8bmqnrveh9n8841oh7",
"expire" : "",
"YII_CSRF_TOKEN" : "4fa0ae103b547836241f5278311839b407050919"
},
"metadata" : {
"product_count" : "4458",
"category_ids" : "3",
"results" : [{
"id" : "105089",
"data" : {
"sku" : "MA851AA10ZLX",
"name" : "Alexa Mid Rise Super Skinny Leg",
"new-product" : false,
"url" : "http:\/\/theiconic.bugfoot.de\/mobile-api\/Alexa-Mid-Rise-Super-Skinny-Leg-105089.html",
"simples" : {
"MA851AA10ZLX-406437" : {},
"MA851AA10ZLX-406438" : {},
"MA851AA10ZLX-406439" : {},
"MA851AA10ZLX-406440" : {},
"MA851AA10ZLX-406441" : {},
"MA851AA10ZLX-406442" : {},
"MA851AA10ZLX-406443" : {},
"MA851AA10ZLX-406444" : {
"meta" : {
"sku" : "MA851AA10ZLX-406444",
"price" : "149.99",
"caching_hash" : "78ddaaf930f8bd0e0bf595c25643683d",
"shipment_cost_item" : "0.00",
"shipment_cost_order" : "0.00",
"tax_percent" : "10.00",
"quantity" : "2",
"cost" : "64.09",
"size_brand" : "W31\/L34",
"size" : "W31\/L34",
"size_position" : "200",
"3hours_shipment_available" : true,
"estimated_delivery" : "",
"estimated_delivery_position" : ""
},
"attributes" : {
"sort_order" : "0",
"size" : "W31\/L34"
}
}
}
}
}
]
}
}
Modifier
C'est ma classe de réseau utilisé pour l'analyse
String jsonString = null;
try {
HttpGet httppost = new HttpGet(URL);
HttpClient httpClient = new DefaultHttpClient();
if (httpClient != null) {
HttpResponse response = httpClient.execute(httppost);
BufferedReader reader = new BufferedReader(
new InputStreamReader(
response.getEntity().getContent(), "UTF-8"));
jsonString = reader.readLine();
}
} catch (UnsupportedEncodingException e) {
//TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
//TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(jsonString);
if (jsonString != null) {
Bean obj=new Gson().fromJson(jsonString, Bean.class);
Message msg = new Message();
msg.obj = obj;
responseHandler.sendMessage(msg);
//obj can be sent to a handler
}
}
}
C'est de Simples Haricots classe contenant une Carte
public class Simples {
private Map<String, KeyMap> keyMap;
public Map<String, KeyMap> getKeyMap() {return keyMap;}
public void setKeyMap(Map<String, KeyMap> keyMap) {this.keyMap = keyMap;}}
C'est mon Clavier Bean classe
public class KeyMap {
private Meta meta;
private Attributes attributes;
public Meta getMeta() {
return meta;
}
public void setMeta(Meta meta) {
this.meta = meta;
}
public Attributes getAttributes() {
return attributes;
}
public void setAttributes(Attributes attributes) {
this.attributes = attributes;
}
}
Vous devez poster au moins la section de code où vous analysez la structure JSON.
Postez votre modèle de classe
d'abord votre format json n'est pas valide , l'autre chose, c'est que vous n'avez pas posté votre modèle de classes
salut je voudrais poster le soir, quand je rentre à la maison désolé pour le dérangement causé ..... désolé pour le retard s'il vous plaît garder avec moi
OriginalL'auteur karansingh1487 | 2013-12-04
Vous devez vous connecter pour publier un commentaire.
Fait votre devenaient erreur
BEGIN_OBJECT but was STRING
parce que gson m'attendais objet n'est pas la chaîne, c'est aussi un objet en json, vous avez mal mappé vos classes dans la classe d'Haricot, et vous n'avez pas posté le Haricot,classe Simple colle le code ici.Vous JSON classes de modèle peut être mappé comme ce
Enfin dé-sérialiser
Profiter 🙂
aussi Simples classe est mentionné ci-dessus .
mon simple haricot est à venir Null si je ne reçois pas une exception dans ce
OriginalL'auteur Asif Bhutto