Пользовательский посредник WSO2 EI прекращает выполнение последовательности
Я создал собственный пустой посредник, код которого выглядит следующим образом:
public class ExampleMediator extends AbstractMediator {
public boolean mediate(MessageContext context) {
return true;
}
}
На следующих шагах я экспортировал медиаторный проект в качестве развертываемого архива и вставил его в каталог EI_HOME\lib.
Я использую этот пользовательский медиатор в последовательности следующим образом:
<inSequence>
<log level="full"/>
<class name="com.example.ExampleMediator"/>
<log level="custom">
<property name="message" value=""After custom mediator""/>
</log>
</inSequence>
Когда я отправляю запрос GET в мой REST API, вызывая эту последовательность, я не вижу второго входа в консоль, последовательность завершается, а следующие посредники никогда не выполняются. Ответ от этого посредника - пустое сообщение.
Я ожидаю, что следующие посредники должны быть выполнены после возврата true в методе mediate(). Что не так в моем подходе?
1 ответ
Все выглядит хорошо для меня, за исключением того, что я не вижу объявление пакета com.example поверх кода.
Может быть, ESB не видит этого посредника (исключение должно быть в журналах com.example.ExampleMediator не найдено) или есть другой пример в распределении esb (я не уверен, но это возможно, конфликт имен) того же примера посредник com.example.ExampleMediator. Это общее название для примеров. Лучше предоставить уникальный пакет и имя класса.