java - Strom must declare exactly one stream form last bolt in LinearDRPCTopology? -


i want data output kafka queue, write topology follow:

lineardrpctopologybuilder builder = new lineardrpctopologybuilder("xx"); builder.addbolt(new jdentryparsebolt(config), 2); builder.addbolt(new jdcrawlerbolt(config), 2).shufflegrouping(); builder.addbolt(new jdparsebolt(config), 2).shufflegrouping(); builder.addbolt(new kafkabolt<string, integer>(), 2).shufflegrouping();  config conf = new config(); map<string, string> map = new hashmap<>(); map.put("metadata.broker.list", "127.0.0.1:9092"); map.put("serializer.class", "kafka.serializer.stringencoder"); conf.put("topic", "jdquerycrawler"); conf.setmaxtaskparallelism(10);  localdrpc drpc = new localdrpc(); localcluster cluster = new localcluster(); cluster.submittopology("xx-drpc", conf, builder.createlocaltopology(drpc)); 

when submit topology, returns:

java.lang.runtimeexception: must declare 1 stream last bolt in lineardrpctopology             @ backtype.storm.drpc.lineardrpctopologybuilder.createtopology(lineardrpctopologybuilder.java:152) ~[storm-core-0.9.3.jar:0.9.3]             @ backtype.storm.drpc.lineardrpctopologybuilder.createlocaltopology(lineardrpctopologybuilder.java:87) ~[storm-core-0.9.3.jar:0.9.3]             @ com.ipin.jd.process.topology.testcrawlerdrpc.main(testcrawlerdrpc.java:58) ~[test-classes/:na] 

what "exactly 1 stream last bolt in lineardrpc" mean? not add more 1 stream.


Comments

Popular posts from this blog

javascript - AngularJS custom datepicker directive -

javascript - jQuery date picker - Disable dates after the selection from the first date picker -