title: Why does starting StreamingContext fail with “IllegalArgumentException: requirement failed: No output operations registered, so nothing to execute”?
body: <p>I'm trying to execute a Spark Streaming example with Twitter as the source as follows:</p>
  
  <pre><code>public static void main (String.. args) {
  
      SparkConf conf = new SparkConf().setAppName("Spark_Streaming_Twitter").setMaster("local");
          JavaSparkContext sc = new JavaSparkContext(conf);       
          JavaStreamingContext jssc = new JavaStreamingContext(sc, new Duration(2));      
          JavaSQLContext sqlCtx = new JavaSQLContext(sc);     
  
  
          String[] filters = new String[] {"soccer"};
  
          JavaReceiverInputDStream&lt;Status&gt; receiverStream = TwitterUtils.createStream(jssc,filters);
  
  
  
           jssc.start();
           jssc.awaitTermination();
  
  }
  </code></pre>
  
  <p>But I'm getting the following exception</p>
  
  <pre><code>Exception in thread "main" java.lang.AssertionError: assertion failed: No output streams registered, so nothing to execute
      at scala.Predef$.assert(Predef.scala:179)
      at org.apache.spark.streaming.DStreamGraph.validate(DStreamGraph.scala:158)
      at org.apache.spark.streaming.StreamingContext.validate(StreamingContext.scala:416)
      at org.apache.spark.streaming.StreamingContext.start(StreamingContext.scala:437)
      at org.apache.spark.streaming.api.java.JavaStreamingContext.start(JavaStreamingContext.scala:501)
      at org.learning.spark.TwitterStreamSpark.main(TwitterStreamSpark.java:53)
  </code></pre>
  
  <p>Any suggestion how to fix this issue?</p>