Ne pouvait pas trouver MessageBodyWriter pour objet de réponse de type: java.util.LinkedHashMap de media type: application/json
J'ai ce service REST qui renvoie du code JSON :
@GET
@Path("/mypath")
@Produces(MediaType.APPLICATION_JSON)
public Response getS() {
Map<String, String> map = new LinkedHashMap<String, String>();
map.put(key1, val1);
map.put(key2, val2);
return Response.ok(map, MediaType.APPLICATION_JSON).build();
}
Ce service est déployé dans un serveur Tomcat. Je suis à l'aide de RESTeasy en tant que cadre. Lorsque vous essayez d'accéder au service, je rencontre ce:
Ne pouvait pas trouver MessageBodyWriter pour objet de réponse du type:
java.util.LinkedHashMap de media type: application/json.
Je n'ai pas compris quel est le problème.
Merci d'avance
docs.jboss.org/resteasy/docs/2.3.3.Final/userguide/html_single/...
Avez-vous essayé de retourner directement
cela peut vous aider: community.jboss.org/thread/191022?_sscc=t
Flavio : oui j'ai essayé de revenir directement Map<String, String> au lieu de la Réponse, mais j'ai eu le même problème.
J' résolu le problème Tomcat par les modifications que j'ai trouvé dans ce lien. L'auteur a écrit comment il avait récupéré une carte en JSON. Mais je rencontre toujours le même problème dans JBOSS
Avez-vous essayé de retourner directement
Map<String, String>
, au lieu d'un Response
objet?cela peut vous aider: community.jboss.org/thread/191022?_sscc=t
Flavio : oui j'ai essayé de revenir directement Map<String, String> au lieu de la Réponse, mais j'ai eu le même problème.
J' résolu le problème Tomcat par les modifications que j'ai trouvé dans ce lien. L'auteur a écrit comment il avait récupéré une carte en JSON. Mais je rencontre toujours le même problème dans JBOSS
OriginalL'auteur tun_eng | 2012-08-27
Vous devez vous connecter pour publier un commentaire.
Comment déployer votre application? Ce serveur d'applications utilisez-vous? Quelle est la version de RestEasy? Ce RestEasy configuration avez-vous spécifié(dans web.xml ou une Application de classe)?
Resteasy s'appuie sur des fournisseurs pour la sérialisation/désérialisation des objets.
Ces fournisseurs de contenus dans le classpath de votre JAX-RS de l'application. En fonction de votre construction, de l'application de l'emballage et de l'environnement d'exécution de ces fournisseurs pourrait être absent. En outre, la découverte de providres peut être configuré, par exemple, automatiquement découvrir tous les privoders dans le classpath, ou seulement de ceux qui sont explicitement mentionnés dans la résolution conf. Communément utilisé des fournisseurs avec l'application/json capacités sont resteasy-jackson-fournisseur, resteasy-larguer-fournisseur. Vérifiez qu'au moins un de ces est disponible dans votre classpath.
OriginalL'auteur yntelectual