Конфигурация контейнера на основе Java для определения Spring Integration

Ранее я использовал конфигурацию на основе XML для своего приложения Spring.

Теперь я хочу использовать ТОЛЬКО конфигурацию контейнера на основе Java с использованием @Bean, @Configuration и т. д.

Как преобразовать эти две части конфигурации XML в конфигурацию на основе Java?

<outbound-channel-adapter channel="emailChannel" ref="messageHandler">
    <poller>
            <interval-trigger interval="60000"/>
    </poller>
</outbound-channel-adapter>

 <tx:annotation-driven transaction-manager="transactionManager"/>

person srivaradhan    schedule 28.02.2012    source источник
comment
не могли бы вы опубликовать конфигурацию bean-компонента messageHandler?   -  person omnomnom    schedule 29.02.2012
comment
@PiotrekDo codemessageHandlercode — это простой bean-компонент, который расширяется от Spring AbstractMessageHandler и настраивается с использованием @Bean. Моя трудность связана только с адаптером исходящего канала.   -  person srivaradhan    schedule 05.03.2012


Ответы (1)


В отличие от простого синтаксиса ‹bean/› для Spring Beans, который можно легко заменить конфигурацией @Bean java, Spring Integration XML DSL обеспечивает богатую абстракцию над компонентами Spring Integration.

Для того, чтобы заменить

<outbound-channel-adapter/> 

выше, вам нужно будет покопаться в NamespaceHandlers и парсерах XML, чтобы определить эквивалентный набор bean-компонентов, необходимых для определения эквивалентных @Beans. Контекст определяет, какие bean-компоненты генерируются (например, является ли emailChannel каналом с возможностью подписки или опросом).

Для ‹tx:annotation-driven/› можно использовать новые аннотации @Enable... Spring 3.1...

http://blog.springsource.org/2011/06/10/spring-3-1-m2-configuration-enhancements/

http://static.springsource.org/spring/docs/3.1.1.RELEASE/spring-framework-reference/html/new-in-3.1.html

person Gary Russell    schedule 01.03.2012
comment
Спасибо за ссылку на аннотации 3.1 M2. Я узнаю, что могу переместить весь код инициализации весны из web.xml в конфигурацию Java. Я до сих пор не могу полностью определить адаптер исходящего канала, поэтому пока импортирую эту часть из дополнительного файла контекста xml. - person srivaradhan; 05.03.2012