Уже несколько дней ломаю голову над этим. Этот небольшой фрагмент работает нормально (используя Jersey 2.26-b03 на Tomcat).
@GET
@Path("/{code}")
public Response update(@PathParam("code") String code) {
System.out.println("!!!!!!!");
return Response.status(Response.Status.OK).build();
}
curl -i -X GET http://localhost:18270/nyx/rest/servervirtueel/SVM0000
HTTP/1.1 200 OK
Затем последовала куча трассировки Джерси, которую я включил. Но если я только изменю GET на PUT (точно такой же метод, просто измените аннотацию):
@PUT
@Path("/{code}")
public Response update(@PathParam("code") String code) {
System.out.println("!!!!!!!");
return Response.status(Response.Status.OK).build();
}
curl -i -X PUT http://localhost:18270/nyx/rest/servervirtueel/SVM0000
HTTP/1.1 405 Method Not Allowed
Затем HTML сообщает мне, что «Указанный метод HTTP не разрешен для запрошенного ресурса». Однако POST работает (снова меняя аннотацию).
@PUT
и развернете его на tomcat!. Для меня это хорошо работает с майкой2.26
на коте8.5.11
. - person Rishikesh Darandale   schedule 15.09.2017