java - 为什么我收到错误显然 jsonStoreEnabled 未设置为 true ,而我确实将其设置为 true ?

标签 java json twitter4j

我是 Twitter4j 的新手,我正在尝试以 JSON 格式从 twitter 获取推文 形式 但我遇到了异常(exception)。 我运行了这段代码

public static void main(String[] args) throws IOException {
    BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
        try {
       //Establish Connection to Twitter App
            ConfigurationBuilder cb = new ConfigurationBuilder();
            cb.setJSONStoreEnabled(true);
            twitter=  new TwitterFactory(cb.build()).getSingleton();
            twitter.setOAuthConsumer(consumerKeyStr, consumerSecretStr);
            AccessToken accessToken = new AccessToken(accessTokenStr,
                    accessTokenSecretStr);
            twitter.setOAuthAccessToken(accessToken);
        //////
       ArrayList<String> JsonTweets =new ArrayList<String>();
             QueryResult result = twitter.search(new Query("abc"));
             List<Status> resulted_tweets = result.getTweets();
              for(Status tweet :resulted_tweets)
              {
                String json = TwitterObjectFactory.getRawJSON(tweet);
                JsonTweets.add(json);
              }
              System.out.println((Arrays.toString( JsonTweets.toArray())));


        }
            catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }}

我得到的只是

java.lang.IllegalStateException: Apparently jsonStoreEnabled is not set to true.
at twitter4j.TwitterObjectFactory.getRawJSON(TwitterObjectFactory.java:32)
at JavaTweet.main(JavaTweet.java:86)

虽然我确实在第 6 行将其设置为 true。 我计划使用 jsonString 将其添加到 json 对象,并在结果中获得的推文中查找一些属性

最佳答案

您没有配置正确的实例。您将配置传递给 TwitterService 类的新实例,然后从该实例获取单例......这是您从未配置过的另一个实例。

 twitter=  new TwitterFactory(cb.build()).getSingleton();

等于

  twitterFactory=  new TwitterFactory(cb.build());
  twitter= twitterFactory.getSingleton();

看到了吗?

<小时/>

已解决:

  twitterFactory =  new TwitterFactory(cb.build())
  twitter = twitterFactory.getInstance();
<小时/>

比较:http://twitter4j.org/en/configuration.html

关于java - 为什么我收到错误显然 jsonStoreEnabled 未设置为 true ,而我确实将其设置为 true ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45420187/

相关文章:

javascript - 如何将输出简化为每个副本只有一个值

java - 删除对象节点树中具有空值的 JSON 对象

java - android 上网,导致 twitter4j 异常?

java - 如何从 Twitter 流获取样本并打印到屏幕

java - 调用另一个类的 try catch block 中的方法

java - Collection.parallelStream() 是否暗示发生在关系之前?

java - 如何通过删除其标签和特殊字符来仅获取超链接?

json - 如何解决 jackson 中属性(property)的 setter/getter 定义冲突

java - Twitter4j 在 Android 4 中崩溃

java - Java 中的 MariaDB 动态列集成