Я пытаюсь запустить топологию с Windowed Bolt, но получаю следующее исключение:
Exception in thread "main" java.lang.NullPointerException
at org.apache.storm.topology.WindowedBoltExecutor.declareOutputFields(WindowedBoltExecutor.java:309)
at org.apache.storm.topology.TopologyBuilder.getComponentCommon(TopologyBuilder.java:432)
at org.apache.storm.topology.TopologyBuilder.createTopology(TopologyBuilder.java:120)
at Main.main(Main.java:23)
Я создал специальный оконный болт, расширив BaseWindowedBolt.
Код топологии:
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("integer", new RandomIntegerSpout(), 1);
builder.setBolt("tumblingsum", new CustomTumblingSumWindow().withTumblingWindow(new Duration(10, TimeUnit.SECONDS)),1).shuffleGrouping("integer");
builder.setBolt("final", new ResultBolt(),1).shuffleGrouping("tumblingsum");
Config config = new Config();
config.put(Config.TOPOLOGY_WORKERS, 1);
StormSubmitter.submitTopology("Test-Windowing-Topology", config, builder.createTopology());
Версия Storm - 1.2.2
Если я использую топологию без WindowedBolt, значит, она работает.
Я что-то упустил?
Спасибо