Spring Integration - Исходящий шлюз - Цепочка - PullRequest
0 голосов
/ 28 февраля 2020

У меня есть событие FileUpload, которое следует отправить на URL-адрес загрузки http:outbound. Чтобы сделать это, я должен сначала аутентифицировать URL-адрес входа в систему, получить ответ и установить идентификатор сеанса для URL-адреса исходящей загрузки для выполнения. В моем случае у меня есть прослушиватель событий, который прослушивает приложение, чтобы опубликовать sh событие загрузки файла. После того, как он опубликован, мой слушатель может взять и выполнить поток. Я пытаюсь понять, как это можно реализовать, потому что объект File Upload должен сохраняться до тех пор, пока не будет получен ответ Login. Спасибо!

1 Ответ

0 голосов
/ 28 февраля 2020

Для этой цели мы предлагаем шаблон Header Enricher. Таким образом, вы помещаете этот объект «FileUpload Event» в некоторый заголовок и восстанавливаете его обратно в полезную нагрузку, когда получаете ответ с идентификатором сеанса.

Итак, вы добавляете Header Enricher перед первым HTTP Outbound Gateway. После этого шлюза вы реорганизуете свое сообщение, чтобы поместить этот заголовок обратно в полезную нагрузку и сделать что-то с идентификатором сеанса. (Заголовок, я думаю?). И только после этого у вас будет другой HTTP Outbound Gateway для загрузки вашего файла.

...