2017-07-31 23 views
0

私はtwitter4jを新しくしていて、twitterからTwitterの フォームに のツイートを取得しようとしていますが、例外が発生しています。 私はこのコードなぜ私はエラーが表示されるどうやらjsonStoreEnabledはtrueに設定されていません。本当にtrueに設定しましたか?

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(); 
     }} 

を走ったと私が得るものすべては、私は、行番号6 私はそれを追加するjsonStringを使用することを計画していますでこれをtrueに設定した

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

althoughtですjsonオブジェクトを検索し、結果に表示されるつぶやきのプロパティを探します。

答えて

2

正しいインスタンスを設定していません。 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

+0

あなたはどのようなOPが変化しても問題を解決することができます示していくつかのコードを表示することができますか?解決


+0

これをどのように解決する必要がありますか?シングルトンを設定するメソッドがあります – AmrAyman

+0

私のtwitter変数にsetJSStoreEnabled(true)することができない方法はありませんか? – AmrAyman

関連する問題