2015-06-10 3 views
1

Я пытаюсь обрабатывать ошибки, используя int: poller без успеха. Я определил канал ошибки на poller, но когда возникает ошибка, к этому каналу ничего не происходит. Вот мой код. Есть идеи?Обработка ошибок с использованием poller

<int:channel id="auditRequestMessagesChannel"> 
    <int:queue /> 
</int:channel> 
<int:service-activator id="auditRequestMessages" input-channel="auditRequestMessagesChannel" ref="auditTaskBean" method="registerEvent" > 
    <int:poller fixed-rate="1000" error-channel="auditErrorChannel" /> 
</int:service-activator> 
<int:channel id="auditErrorChannel" /> 
<int:logging-channel-adapter id="auditErrorChannelLogger" channel="auditErrorChannel" expression="'[Audit] '+#this"/> 

ответ

0

Включите ведение журнала DEBUG и взгляните на журнал; если еще не ясно, что происходит, опубликуйте журнал где-нибудь.

+0

Гэри, я провел несколько базовых тестов и обнаружил, что ошибкаChannel неправильно установлена ​​poller. Я использовал улучшающий заголовок (установив errorChannel) перед активатором-сервисом и работал нормально. Может быть, что-то с poller? – gllambi

+0

Я только что проверил тест, и он работает точно так, как ожидалось для меня; какую версию Spring Integration вы используете? Вы не должны сами манипулировать заголовками; добавление «error-channel» в poller - правильный путь. –

Смежные вопросы