Интеграция Spring Inbound-Channel-Adapter запускается при пост-конструкции?
Предположим, у меня есть этот класс:
public class MyClass {
public String myMethod() {
//...
}
}
То, что я хочу, это когда мое приложение запускается, чтобы отправить результат, который myMethod()
возвращает к определенному каналу в Spring Integration. Что я пробовал:
<bean id="myClass" class="myPackage.MyClass"/>
<int:inbound-channel-adapter channel="channelINeedToSendTo" ref="myClass" method="myMethod">
<int:poller cron=""/> <!-- poller configuration -->
</int:inbound-channel-adapter>
Теперь, что я могу настроить в poller, это позвонить myMethod()
в определенное время, регулярно по определенному расписанию, но я хотел, чтобы запускался именно после запуска приложения (что-то вроде @PostConstruct
). Есть ли простой способ достичь этого без сложных методик АОП?
1 ответ
Решение
Вы можете добавить адаптер входящего канала событий, чтобы захватить ContextRefreshedEvent
Событие приложения; затем подключите этот адаптер к <service-activator/>
что вызывает myMethod()
; результат будет на output-channel
,