如何使用我自己的处理器模块在Spring-XD中创建一个水龙头

时间:2015-07-27 03:33:57

标签: spring-xd

我创建了一个名为vfs-od-fe-hb的流,其中源为vfs,处理器为odfe,接收器为hb。我想在fe的位置创建一个点按,并将结果存储到hdfs

我的shell命令是:

stream create --name vfs-od-fe-hb-tap-ib-hdfs --definition "tap:stream:vfs-od-fe-hb.fe > ib > hdfs" --deploy

ib是我的处理器,它可以成功处理来自fe的消息,但现在是错误的消息:

  

命令失败org.springframework.xd.rest.client.impl.SpringXDException:XD133E:(pos 34):'queue'或'topic'的预期通道前缀但找到'hdfs'

1 个答案:

答案 0 :(得分:2)

如果ib是处理器,则语法应为

tap:stream:vfs-od-fe-hb.fe > ib | hdfs

即。点击(命名频道)是ib的输入频道,我们正常输出其输出。

解析器正在对> hdfs作出反应,因为>只能位于命名通道与处理器或接收器之间。

(或在发送到指定频道的处理器之后 - queue:...topic:...)。