Конфигурация перехватчиков CXF для разных конечных точек - PullRequest
0 голосов
/ 08 февраля 2019

Текущая конфигурация CXF:

<jaxrs:server id="rest" address="/path">
    <jaxrs:serviceBeans>
        <ref bean="myService" />
    </jaxrs:serviceBeans>
    <jaxrs:providers>
        <bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider" />
    </jaxrs:providers>
    <jaxrs:inInterceptors>
        <ref bean="restLogInterceptor" />
    </jaxrs:inInterceptors>

и упор пружины:

@Produces({ MediaType.APPLICATION_JSON })
@Consumes({ MediaType.APPLICATION_JSON })
@Path("path")
public interface Service {

    @GET
    @Path("{id}")
    Response inquire(@PathParam("id") String id);

    @GET
    @Path("{id}\aaa")
    Response inquire(@PathParam("id") String id);

    @GET
    @Path("{id}\bbb")
    Response inquire(@PathParam("id") String id);

    @POST
    @Path("{id}")
    Response update(@PathParam("id") String id, Instruction instruction);

Любой способ, как

  1. иметь различные конфигурации перехватчиков для GET и POSTконечные точки с одинаковым путем?
  2. имеют другую конфигурацию перехватчиков для конечных точек с переменной пути?использовать маску типа "/ path / * / aaa"?

1 Ответ

0 голосов
/ 19 февраля 2019

Я не совсем понимаю, что вы хотите в первом вопросе.Но если вы хотите объявить методы GET и POST с одинаковым путем, это работает.JAX-RS имеет аннотацию @PathParam, которая получает параметр из пути в запросе.Используя это с оператором if, вы можете создать другую логику.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...