Vertx 3.6.3: сбой eventBus.send () с DeliveryOptions - PullRequest
0 голосов
/ 29 марта 2019

мой Groovy код:

class GatewayVerticle extends AbstractVerticle {
  DeliveryOptions HOP_OPTS = new DeliveryOptions( sendTimeout:5000 )
  // also tried
  //DeliveryOptions HOP_OPTS = new DeliveryOptions()
  //DeliveryOptions HOP_OPTS = new DeliveryOptions().setSendTimeout( 5000 )

  @Override
  void start() throws Exception {    
    vertx.eventBus().send( 'addr', [ aa:42 ], HOP_OPTS ){ println it }
  }
}

терпит неудачу с

java.lang.IllegalArgumentException: нет кодека сообщений для типа: класс java.util.LinkedHashMap в io.vertx.core.eventbus.impl.CodecManager.lookupCodec (CodecManager.java:101) в io.vertx.core.eventbus.impl.clustered.ClusteredEventBus.createMessage (ClusteredEventBus.java:180) в io.vertx.core.eventbus.impl.EventBusImpl.send (EventBusImpl.java:111)

Если я пропущу настройку sendTimeout, произойдет сбой с тем же исключением.

Следующая строка отлично работает:

vertx.eventBus().send( 'gateway', [ aa:42 ] ){ doSomeStuff() }

Чего мне не хватает?

ТИА

...