Je suis en mesure de retourner un JSONP d'un objet java personnalisé sans problèmes (après ceci: http://www.concretepage.com/spring-4/spring-4-mvc-jsonp-example-with-rest-responsebody-responseentity), mais lorsque je tente de retourner une chaîne withing la JSONP la fonction d'emballage disparaitSpring - Retour chaîne ou JSONObject dans JSONP
ce que je fais:
@RequestMapping(value ="/book", produces = {MediaType.APPLICATION_JSON_VALUE, "application/javascript"})
public @ResponseBody ResponseEntity<String> bookInfo() {
JSONObject test = new JSONObject();
test.put("uno", "uno");
return new ResponseEntity<String>(test.toString(), HttpStatus.OK);
}
appel au service:
http://<server>:port//book?callback=test
Retours:
{"uno":"uno"}
Résultat attendu:
test({"uno":"uno"})
a également tenté de retourner directement le JSONObject ResponseEntity.accepted().body(test);
mais je m'y suis une erreur 406. Des idées?
I tr ied, mais quand je retourne le JSONObject la réponse est un code d'erreur 406 – EsteBusta
J'ai eu la même erreur quand je n'avais pas la classe 'JsonpAdvice' dans mon chemin de classe. Une fois cela fait, j'ai commencé à avoir 500 erreurs, car je n'ai pas configuré Spring pour sérialiser JSONObject. Donc je suis passé à HashMap, qui est facilement converti en Json. L'exemple déclare spécifiquement le type. Je mettrai à jour ma réponse pour contenir ceci. – James
Merci, en fait passer à la HashMap était la façon dont je l'ai utilisé, je recherche un peu plus et réalise que le JSONObject ne peut pas sérialiser comme vous le mentionnez, merci! – EsteBusta