Рассмотрим <int:gateway/>
как шлюз от устаревшего Java-кода в поток сообщений.
public interface MyGate {
Bar fooToBar(Foo foo);
}
Затем в унаследованном Java-коде (например, REST-контроллере) вы «отправляете» Foo, завернутый в сообщение, и поток возвращает полосу в полезной нагрузке ответа, и инфраструктура разворачивает ее для вас.
Код клиента не знает, что он взаимодействовал с системой обмена сообщениями.
Конец потока, например, может вызвать <ws:outbound-gateway/>
.
Итак, шлюз абстрагируется от обмена сообщениями с точки зрения клиента.