2012-05-20 1 views
0

J'utilise JAX-RS pour construire l'application Web Restufl, j'ai un problème d'appeler un webservice avec la méthode post qui consomme un objet json. Je dois appeler le webservice en utilisant jquery
c'est la méthodeappel JAX-RS en utilisant jquery

@POST 
@Path("/client") 
@Consumes(MediaType.APPLICATION_JSON) 
public Response showClient(Client c){ 
    String name = c.getAdresseCl() + ""+ c.getEmailCl(); 
    ResponseBuilder builder = Response.ok(name); 
    builder.header("Access-Control-Allow-Origin", "*"); 
    builder.header("Access-Control-Max-Age", "3600"); 
    builder.header("Access-Control-Allow-Methods", "GET"); 
    builder.header(
      "Access-Control-Allow-Headers", 
      "X-Requested-With,Host,User-Agent,Accept,Accept-Language,Accept-Encoding,Accept-Charset,Keep-Alive,Connection,Referer,Origin"); 
    return builder.build(); 
} 

appel client jquery:

var data={'adressCl':'myAdress','emailCl':'[email protected]'}; 
$.ajax({ 
"type":"post", 
"dataType":"json", 
"data":data, 
"url":"http://localhost:9080/FournisseurWeb/jaxrs/clients/client", 
"success":function(res){ 
console.log(res); 
} 
});/* 
$.post("http://localhost:9080/FournisseurWeb/jaxrs/clients/client",data,function(res){ 
console.log(res); 
});*/ 

Je reçois cette erreur: « NetworkError: 415 Type de non prise en charge des médias s'il vous plaît aider et thx à l'avance

+1

Modérateurs ceci est une copie exacte de http://stackoverflow.com/questions/10679060/ajax-call-to-jax-rs-with-jquery-issue. Supprime s'il te plaît. – n4rzul

Répondre

0

De http://api.jquery.com/jQuery.ajax/contentType description du champ il semble que .ajax() envoie par défaut application/x-www-fo rm-urlencoded, pas json, donc vous devez définir correctement: application/json

Je n'ai jamais vérifié cela, mais j'utilise toujours "type": "POST" pas "type": "post", peut-être c'est le problème.

Questions connexes