Maillot peut produire une Liste<T>, mais ne peut pas la Réponse.ok(List<T>).build()?
Maillot de 1,6 peut produire:
@Path("/stock")
public class StockResource {
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Stock> get() {
Stock stock = new Stock();
stock.setQuantity(3);
return Lists.newArrayList(stock);
}
}
Mais ne peut pas faire la même chose avec:
@Path("/stock")
public class StockResource {
@GET
@Produces(MediaType.APPLICATION_JSON)
public Response get() {
Stock stock = new Stock();
stock.setQuantity(3);
return Response.ok(Lists.newArrayList(stock)).build();
}
}
Qui donne l'erreur: A message body writer for Java class java.util.ArrayList, and Java type class java.util.ArrayList, and MIME media type application/json was not found
Ce empêcher l'utilisation de code d'état HTTP et les en-têtes.
- Ici est la meilleure solution [enter description du lien ici][1] [1]: stackoverflow.com/questions/27341788/...
Vous devez vous connecter pour publier un commentaire.
Il est possible d'incorporer un
List<T>
dans une Réponse de la manière suivante:Le client à utiliser les lignes suivantes pour obtenir le
List<T>
:new ArrayList
etadd
en Java pur.Pour une raison quelconque, le GenericType correctif ne fonctionnait pas de moi. Toutefois, étant donné le type d'effacement est fait pour les Collections, mais pas pour les Tableaux, cela a fonctionné.
ma solution pour les méthodes qui utilisent AsyncResponse