Чтобы настроить конечную точку API REST в Java EE, создать класс и назвать его RestAppConfig или RestApplicationConfig, именование не имеет значения, и в коде должно быть следующее:
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("/api")
public class RestAppConfig extends Application {
}
Класс может бытьempty.
Затем создайте класс, который определит все методы API:
import javax.ws.rs.GET;
import javax.ws.rs.Consumes;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
@Path("customer")
public class MyAPI {
@Path("{customerId}")
@GET
@Produces({"application/json"})
public Response getCustomer(@PathParam("customerId") int customerId){
...
//define your other methods here
}
Тогда ваши методы API будут доступны через: / context / api / customer / {customerId}
Джерси определенно разрешает нескольким различным методам Http получать доступ к одному и тому же URL.
Если он все еще не работает или у вас уже была эта конфигурация, попробуйте удалить два метода, чтобы у вас остался только один,и попробуйте проверить это снова, это дает вам те же исключения?Тогда проблема может быть связана с сервером или реализацией, попробуйте заменить вашу зависимость от Джерси в вашем pom.xml.
Также, по соглашению, методы GET не должны ничего потреблять, в то время как методы PUT и DELETE не должныпроизводить что угодно.