Как проникнуть в середину потока в муле и вернуть сообщение клиенту ..?
Вопрос
У меня есть поток в муле, как ниже:
<flow name="MetaService">
<http:inbound-endpoint address="http://localhost:8000/jcore/meta"
transformer-refs="HttpParams" responseTransformer-refs="JavaObjectToJson">
</http:inbound-endpoint>
<component class = "com.java.Meta">
<component class = "com.java.Meta2"
</flow>
Этот поток сначала входит в мой первый класс компонентов: "com.java.meta". А что угодно"возвращаться«Из этого класса Java становится входной вход для моего второго класса компонентов:»com.java.meta2".
Теперь я хочу сделать:
Я хочу что -нибудь проверить в "полезная нагрузка" в классе "Мета"И если его не существует, то я хочу вернуть Java Hashmap клиенту (в форме JSON), содержащем ошибка ключ.
И если он существует, то я хочу вернуть то же самое "полезная нагрузка"второй класс компонентов"Meta2".
Как я могу этого добиться .. ??
Решение
Оберните свой второй компонент в маршрутизатор Choice, возвращая текущее сообщение. Его полевая нагрузка карты содержит клавишу «ошибки».
Вы можете использовать отличное выражение:
#[groovy:payload.containsKey('error')]