나머지 서비스는 처음입니다. 클라이언트에서 json 문자열을 받아들이는 서비스를 만들려고합니다. 내가 JQuery를 사용하여이 서비스를 호출 할 때 405 오류가 발생합니다. 다음은 ws에 대한 Java 코드입니다.POST 요청을하는 동안 405 메소드가 허용되지 않는 이유는 무엇입니까
이것은 JERSEY POST RESTFUL Webservice에 요청을 게시하는 방법입니다.
var orderinfo = {'ordersplitjson': ordersplitjson, 'customer_id': cust_id , 'homedelivery': homedelivery, 'seatnum' :seatnum , 'locationname':location_nam , 'rownum':rownum};
var json_data = JSON.stringify(orderinfo);
var ajaxcallquery = $.ajax({
type:'POST',
dataType: 'jsonp',
data: json_data,
contentType: "application/json; charset=utf-8",
url:url+'/OMS/oms1/orderinsertservice',
jsonpCallback:'jsonCallback',
jsonp:false,
success: function(response)
{
},
error: function(jqxhr, status, errorMsg) {
alert('Failed! ' + errorMsg);
}
});
public class OrdersInsertService
{
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces("application/json")
public String getData(OrderInfo order,@Context HttpServletResponse serverResponse)
throws JSONException
{
serverResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD");
serverResponse.addHeader("Access-Control-Allow-Credentials", "true");
serverResponse.addHeader("Access-Control-Allow-Origin", "*");
serverResponse.addHeader("Access-Control-Allow-Headers", "Content-Type,X-Requested-With");
serverResponse.addHeader("Access-Control-Max-Age", "60");
}
}
package com.util;
public class OrderInfo {
String ordersplitjson;
public String getOrdersplitjson() {
return ordersplitjson;
}
public void setOrdersplitjson(String ordersplitjson) {
this.ordersplitjson = ordersplitjson;
}
public String getCustomer_id() {
return customer_id;
}
public void setCustomer_id(String customer_id) {
this.customer_id = customer_id;
}
public String getHomedelivery() {
return homedelivery;
}
public void setHomedelivery(String homedelivery) {
this.homedelivery = homedelivery;
}
public String getSeatnum() {
return seatnum;
}
public void setSeatnum(String seatnum) {
this.seatnum = seatnum;
}
public String getLocationname() {
return locationname;
}
public void setLocationname(String locationname) {
this.locationname = locationname;
}
public String getRownum() {
return rownum;
}
public void setRownum(String rownum) {
this.rownum = rownum;
}
String customer_id;
String homedelivery;
String seatnum;
String locationname;
String rownum;
}
아무도 나를 해결하는 방법을 알려 주시기 바랍니다 수이
내가 당신의 클래스가 사진
에 hwon으로 이클립스 나에게 compiltion 오류를주고 사용하는 경우 나, 뉴저지 1 사용하고 있습니다
방금 jsonp를 json으로 바꿨습니다. 'Access-Control-Allow-Origin'헤더가 없습니다. ent를 요청한 자원에 적용합니다. 따라서 원본 'null'은 액세스가 허용되지 않습니다. – Pawan
jsonp와 관련된 모든 것을 제거하십시오. jsonp는 자동으로 GET (405)을합니다. POST가있는 jsonp는 좋지 않습니다. –
jsonp를 json으로 수정했을 때 요청한 리소스에 'Access-Control-Allow-Origin'헤더가 없습니다. 따라서 원본 'null'은 액세스가 허용되지 않습니다. – Pawan