我有一个JAX-RS项目POST
无效。我有@GET
个网址可以正常使用。除了@POST
之外,一切似乎都运行良好。
@POST
@Path("/json/insert")
@Produces(MediaType.APPLICATION_JSON)
@Consumes("application/x-www-form-urlencoded")
public String postJSONInsert(
@FormParam("instance") String instance,
@FormParam("db") String table) {
String json;
EDPObject edp_obj = new EDPObject();
try {
json = edp_obj.insert("json", instance, table);
} catch(Exception e) {
edp_obj.endSession();
json = handleJSONError(e);
}
return json;
}
在客户端尝试此操作时,在{2}中获取500 not yet connected
:
$.ajax('http://127.0.0.1:8070/sixaxis/webapi/json/insert', {
data: {
db: '17:2',
instance: 'shawn'
},
dataType: 'json',
type: 'POST'
});
答案 0 :(得分:4)
你试过了吗?
@Consumes(MediaType.APPLICATION_JSON)
因为你的jQuery是:
dataType:'json'
更新(感谢您的反馈): 那么方法至少应该是:
@POST
@Path("/json/insert")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public String postJSONInsert( Map<String,Object> params ){
// Your business logic
}