【发布时间】:2015-07-23 16:15:08
【问题描述】:
是否可以让 kafka 源模块在 spring xd 运行时作为处理器模块工作?有代码示例吗?
我正在尝试实现这样的目标:http (xd source) | kafka源码(xd处理器)| kafka 消费者(xd 接收器)
我正在尝试这样做,因为我有来自 http 的流数据,我想使用 kafka 消息总线进行管理。
我的流定义是这样的:
stream create kafkaSourceTest --definition "http --outputType=application/json | kafka --zkconnect=localhost:2181 --topic=kafkaTestTopic | log " --deploy
将kafka源模块实现的开箱即用的实现放到spring xd的处理器模块中会导致如下错误:
2015-05-12 11:18:52,914 1.1.1.RELEASE ERROR pool-13-thread-4 http.NettyHttpInboundChannelAdapter - Error sending message
org.springframework.messaging.MessageDeliveryException: Dispatcher 没有频道 'admin:default,admin,singlenode,hsqldbServer:9393.kafkaSourceTest.0' 的订阅者。嵌套异常是 org.springframework.integration.MessageDispatchingException:调度程序没有订阅者 在 org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:81) 在 org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:277) 在 org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:239) 在 org.springframework.messaging.core.GenericMessagingTemplate.doSend(GenericMessagingTemplate.java:115) 在 org.springframework.messaging.core.GenericMessagingTemplate.doSend(GenericMessagingTemplate.java:45)
【问题讨论】:
标签: spring spring-xd http-streaming apache-kafka