Рассмотрим следующий простой Resteasy (JAXRS) Услуга:JAXRS интерфейс разметки и @Context инъекции
@Path("/example-service")
public interface ExampleService {
@Path("/ping")
@GET
public String ping(String message);
}
Я хочу, чтобы определить JAXRS особенности на интерфейс, а не класс, так что я могу использовать славная рамки клиента, то есть:
ExampleService client = ProxyFactory.create(ExampleService.class, "http://localhost:8080");
Все работает хорошо, за исключением случаев, когда я хочу представить некоторые из контекста инъекций Resteasy, то есть: @Context. Наивно, необходимо учитывать следующее:
@Path("/example-service")
public interface ExampleService {
@Path("/ping")
@GET
public String ping(@Context HttpServletRequest request, String message);
}
Это, очевидно, не имеет смысла, так как это @Context инъекция является ортогональным и не принадлежит на интерфейсе (более того, даже если я могу пройти мимо безобразия этого интерфейса от клиентская перспектива и минус null, в настоящее время существует ошибка, препятствующая этому работать: RESTEASY-311)
Как я могу использовать разметку JAXRS интерфейса (и, следовательно, использовать привлекательную среду клиента RESTEasy) и одновременно получать ортогональные инъекции @Context ?