2015-08-18 4 views
1

Я использую интеграцию с весной для отправки запросов конечной точке веб-службы (также настроенной с использованием интеграции) с использованием данных, генерируемых элементами интеграции. В моем рабочем процессе есть часть, которую я должен сам программировать. Обычно я создаю объект/интерфейс шлюза, Autowire и использую его для отправки/получения данных из рабочего процесса интеграции. Я хотел бы сделать что-то подобное, но вместо того, чтобы использовать общий шлюз, я хотел бы использовать исходящий шлюз веб-службы. Есть идеи, как это сделать?Весна Интеграция: программно отправить запрос на исходящий шлюз

ответ

1

Как вы заметили уже первый класс гражданина является MessageChannel и логика в потоке интеграции основан на Message отправки от одной конечной точки к другой по тем MessageChannel с.

Итак, как вы догадались, прямо сейчас, чтобы отправить запрос на номер <int-ws:outbound-gateway>, вы должны использовать его request-channel и отправить ему Message<?>. Для этой цели Framework предоставляет вам MessagingTemplate, который вы можете использовать из собственного кода в обход абстракции gateway. И есть удобный метод по этому вопросу - convertAndSend(). Также обратите внимание на утилиту MessageBuilder, чтобы упростить жизнь сообщений.

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