Как зарегистрировать пользовательский картограф исключений в Mule + Jersey + Spring? - PullRequest
3 голосов
/ 18 марта 2011

Я построил сопоставление исключений, используя JAX-RS ExceptionMapper:

@Provider
public class MyCustomExceptionMapper implements ExceptionMapper<MyException>{...}

Мне неясно, как его зарегистрировать, чтобы при возникновении MyException вызыватель автоматически вызывался.Я использую окружающую среду - Мул + Джерси + Весна.

Ответы [ 3 ]

4 голосов
/ 28 апреля 2011

Если вы используете 3.1.2-SNAPSHOT + или 3.2-SNAPSHOT +, вы можете сделать это:

<jersey:resources>
    <component class="org.mule.module.jersey.HelloWorldResource"/>
    <jersey:exception-mapper class="org.mule.module.jersey.exception.HelloWorldExceptionMapper" />
</jersey:resources>
2 голосов
/ 19 июля 2013

Mule 3.4.0 включает поддержку:

https://www.mulesoft.org/jira/browse/MULE-5458

<sub-flow name="RestServiceFlow">
    <jersey:resources>
        <component class="org.example.AResource"/>
        <component class="org.example.BResource"/>
        <jersey:exception-mapper class="org.example.AExceptionHandler" />
        <jersey:exception-mapper class="org.example.BExceptionHandler" />
    </jersey:resources>
</sub-flow>

Классы снабжены аннотацией @Provider, как описано в вопросе.

2 голосов
/ 25 июня 2011

Этот ответ говорит об использовании @Repository с Spring

JAX-RS Custom ExceptionMapper не перехватывает RuntimeException

...