0
我正在构建一个应用程序来提取包括不同过滤器在内的每种情况(位置,语言,轨迹)中可能使用或不使用的推文。我使用了一个FilterQuery和几个TwitterStreamingListener。 基本上,我建立一个查询,包括每个听众的要求,然后我收集来自twitter流的推文。Twitter4j FilterQuery当没有提供位置时出现NullPointerException
twitterStream.filter(query);
它工作正常,除非没有任何监听器包含位置要求。然后,位置字段不使用,保持为空:
FilterQuery{count=0, follow=null, track=[party,night,house], locations=[null], language=[en]}
有没有问题,当其他领域仍然无效,但是在这种情况下,我得到这个错误:
Exception in thread "Twitter Stream consumer-18[Establishing connection]" java.lang.NullPointerException
ERROR [stderr] (Twitter Stream consumer-18[Establishing connection]) at twitter4j.FilterQuery.toLocationsString(FilterQuery.java:200)
ERROR [stderr] (Twitter Stream consumer-18[Establishing connection]) at twitter4j.FilterQuery.asHttpParameterArray(FilterQuery.java:182)
ERROR [stderr] (Twitter Stream consumer-18[Establishing connection]) at twitter4j.TwitterStreamImpl.getFilterStream(TwitterStreamImpl.java:306)
ERROR [stderr] (Twitter Stream consumer-18[Establishing connection]) at twitter4j.TwitterStreamImpl$7.getStream(TwitterStreamImpl.java:287)
ERROR [stderr] (Twitter Stream consumer-18[Establishing connection]) at twitter4j.TwitterStreamImpl$TwitterStreamConsumer.run(TwitterStreamImpl.java:488)
我就应该总是包含位置信息在我的FilterQuery?或者是否有任何其他表达方式被采用(而不是null)这意味着不需要位置?