Tengo una llamada jquery ajax simple a un servicio de descanso. Estoy configurando contentType como "application/json" y el resto del recurso está configurado para aceptar "MediaType.APPLICATION_JSON". Este es un método POST. Con esta configuración, aparece el mensaje "Tipo de medio no admitido".llamada jquery ajax rest - Tipo de medio no admitido
La información de la cabecera muestra "aplicación Content-Type/JSON; charset = UTF-8" en el encabezado de la solicitud
Respuesta muestra: Informe de estado: se admite el tipo de medios El servidor rechazó esta solicitud porque la entidad de solicitud está en un formato no compatible con el recurso solicitado para el método solicitado (Tipo de medio no admitido).
Proporcione algunos consejos para resolver este problema.
Aquí es el fragmento de código:
Recursos Resto
@POST
@Produces({MediaType.APPLICATION_JSON,MediaType.TEXT_HTML})
@Consumes({MediaType.APPLICATION_JSON,MediaType.TEXT_HTML})
public Response addPerson(MyJSONObj myObj) {
//...
// ...
//...
}
jQuery
$(document).ready(function() { /* put your stuff here */
$("#Button_save").click(function(){
var firstName = $('firstName').val();
var lastName = $('lastName').val();
var person = {firstName: firstName, lastName: lastName};
$.ajax({
url:'http://localhost:8080/sampleApplication/resources/personRestService/',
type: 'POST',
data: person,
Accept : "application/json",
contentType: "application/json",
success:function(res){
alert("it works!");
},
error:function(res){
alert("Bad thing happend! " + res.statusText);
}
});
});
});
encabezados como se muestra en FF Firebug
encabezados de respuesta
Content-Length 1117
Content-Type text/html;charset=utf-8
Date Thu, 05 Apr 2012 09:44:45 GMT
Server Apache-Coyote/1.1
cabeceras de solicitud
Accept */*
Accept-Encoding gzip, deflate
Accept-Language en-us,en;q=0.5
Connection keep-alive
Content-Length 97
Content-Type application/json; charset=UTF-8
Host localhost:8080
Referer http://localhost:8080/sampleApplication/
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko/20100101 Firefox/11.0
X-Requested-With XMLHttpRequest
Probado el @Options y parece que no funciona, también el encabezado debe establecerse en la respuesta –
¿podría proporcionar más información que error? Porque uso este código en todos mis proyectos. –