Добавьте бобы весны в RestEasy - PullRequest
7 голосов
/ 26 января 2012

Можно ли добавить бобы Spring в класс RestEasy @Path? Мне удалось сделать это с Джерси, с аннотацией @InjectParam, но по некоторым другим причинам мне нужно переключиться на RestEasy, и я не могу найти способ сделать это (попробовал хороший javax.inject.Inject но ничего).

EDIT

Это решение работает: http://www.mkyong.com/webservices/jax-rs/resteasy-spring-integration-example/

но это не инъекция ... Я бы все-таки предпочел что-нибудь более элегантное.

Ответы [ 4 ]

3 голосов
/ 25 февраля 2012

Просто аннотируйте свой класс RestEasy с помощью Spring's @Component, а затем внедрите свои компоненты с помощью Spring's @Autowired.Не забудьте включить элементы annotation-config и component-scan в конфигурацию Spring.

2 голосов
/ 05 ноября 2013

Существует рабочий пример интеграции RestEasy с Spring, просто попробуйте spring-resteasy .

0 голосов
/ 25 ноября 2012

Я полностью согласен с ответом Питера, но есть и другой способ сделать это: вы делаете все свои компоненты экспозиции (RESTEasy или JAX-WS, которые не являются компонентами Spring), расширяя SpringBeanAutowiringSupport.

таким образом вы можете легко внедрить свои Spring Services с помощью аннотации @Autowired в этих классах.

0 голосов
/ 26 января 2012

Вы можете использовать аннотацию @Configurable, чтобы сделать нормальный класс (созданный new) пружинным Бином. Затем вы можете использовать обычную аннотацию Spring для вставки всего в этом классе / экземпляре, как в «обычном» Spring Bean.

Но для этого нужен AspectJ!

@ См. Справочник по Spring. Глава 7.8.1. Использование AspectJ для создания зависимостей для вставки объектов домена с Spring

...