отправка не поддерживается, так как канал запроса не настроен - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь настроить поток интеграции со шлюзом.Использование Java DSL на kotlin.

Конфигурация шлюза:

@MessagingGateway(name = "tdiOutSenderGateway")
interface TdiOutSenderGateway {
    fun send(packet: PhasorEnricher.Packet)
}

Конфигурация потока:

@Bean
open fun tdiOutSendFlow() = IntegrationFlows
    .from(TdiOutSenderGateway::class.java)
    .transform(tdiOutSenderRouter())
    .get()!!

got send is not supported, because no request channel has been configured docs: канал запроса будет автоматически сконфигурирован.

Есть ли какие-то дополнительные настройки, которые я пропустил?

1 Ответ

0 голосов
/ 05 августа 2019
  1. Конечно, преобразование должно что-то возвращать, должно быть route или handle.

  2. Но даже я исправил # 1, с которым я столкнулся: Пустые функции котлина возвращают Unit.Spring Integration проверяет Unit == null, что является false, пытается найти следующий канал и выдает ошибку.Исправление заключается в использовании kotlin lambda и явном возвращении null.

  3. После работы с Spring Integration и kotlin в течение этих 8 месяцев я решил попробовать создать Kotlin DSL для Spring Integration (https://github.com/spring-projects/spring-integration/issues/3016)

Kotlin Единица: https://kotlinlang.org/docs/reference/functions.html#unit-returning-functions


PS: Конечно, я решил это раньше, а не через 8 месяцев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...