Maillot MessageBodyWriter pas trouvé le type de support=text/plain
Je suis en train de suivre le Maillot docs pour permettre à un non-réponse de 200 si une erreur s'est produite (https://jersey.java.net/documentation/latest/representations.html#d0e3586)
Mon code ressemble à ceci :
@POST
@Produces(MediaType.TEXT_PLAIN)
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public ResponseBuilder getData(@FormParam("one") String one,@FormParam("two") String two,@FormParam("three") String three) {
if(one.isEmpty() || two.isEmpty() || three.isEmpty()) {
logger.error("Missing params for getData");
throw new WebApplicationException(501);
}
return Response.ok();
}
}
Ce qui malheureusement génère l'erreur suivante :
[2015-02-01T16:13:02.157+0000] [glassfish 4.1] [GRAVE] [] [org.glassfish.jersey.message.interne.WriterInterceptorExecutor] [tid: _ThreadID=27 _ThreadName=http-listener-1(2)] [timeMillis: 1422807182157] [levelValue: 1000] [[
MessageBodyWriter pas trouvé le type de support=text/plain, type=classe org.glassfish.jersey.message.interne.OutboundJaxrsResponse$Builder, genericType=classe javax.ws.rs.de base.Réponse$ResponseBuilder.]]
OriginalL'auteur Little Code | 2015-02-01
Vous devez vous connecter pour publier un commentaire.
Le problème, c'est le type de retour de votre méthode. Il doit être
Response
au lieu deResponseBuilder
.Changer votre code à la suivante et cela devrait fonctionner:
Dans le cas où il ne l'aide pas. - Je retourner la Réponse.
OriginalL'auteur unwichtich