2012-02-20 2 views
0

Я только что начал использовать Twitter4j и стараюсь, чтобы мое первое приложение работало. Я зарегистрировал свое приложение на странице приложений Twitter и ввел информацию OAuth в файл twitter4j.properties. Однако каждый раз, когда я пытаюсь запустить приложение, я получаю сообщение об ошибке «OAuth Consumer Key/Secret Not Set». Я включил код с этим сообщением.Twitter4j: потребительский ключ OAuth/секретный не установлен

Любая помощь была бы принята с благодарностью.

Спасибо заранее, Aonghus

import java.util.logging.Logger; 
import twitter4j.Query; 
import twitter4j.QueryResult; 
import twitter4j.Status; 
import twitter4j.Tweet; 
import twitter4j.Twitter; 
import twitter4j.TwitterException; 
import twitter4j.TwitterFactory; 
import twitter4j.auth.AccessToken; 
import twitter4j.auth.RequestToken; 


public class test { 
    private final Logger logger = Logger.getLogger(test.class.getName()); 
    public static void main(String[] args) { 
     new test().publish(); 
    } 

    private void publish(){ 

     String message="Twitter application using Java http://www.java-tutorial.ch/architecture/twitter-with-java-tutorial"; 

     try { 
      Twitter twitter = new TwitterFactory().getInstance(); 
      try { 
       RequestToken requestToken = twitter.getOAuthRequestToken(); 
       AccessToken accessToken = null; 
       while (null == accessToken) { 
        logger.fine("Open the following URL and grant access to your account:"); 
        logger.fine(requestToken.getAuthorizationURL()); 
        try { 
         accessToken = twitter.getOAuthAccessToken(requestToken); 
        } 
        catch (TwitterException te) { 
         if (401 == te.getStatusCode()) { 
          logger.severe("Unable to get the access token."); 
         } else { 
          te.printStackTrace(); 
         } 
        } 
       } 
       logger.info("Got access token."); 
       logger.info("Access token: " + accessToken.getToken()); 
       logger.info("Access token secret: " + accessToken.getTokenSecret()); 
      } 
      catch (IllegalStateException ie) { 
       // access token is already available, or consumer key/secret is not set. 
       if (!twitter.getAuthorization().isEnabled()) { 
        logger.severe("OAuth consumer key/secret is not set."); 
        return; 
       } 
      } 
      Status status = twitter.updateStatus(message); 
      logger.info("Successfully updated the status to [" + status.getText() + "]."); 
     } 
     catch (TwitterException te) { 
      te.printStackTrace(); 
      logger.severe("Failed to get timeline: " + te.getMessage()); 
     } 
    } 
} 
+0

Это может помочь, возможно, . Используйте класс построителя конфигурации. – Pete

ответ

0

Вам нужно установить потребительский ключ/secret.You должны получить эти ключи от Twitter Developers

+0

где он должен установить потребительский ключ/секрет в своем коде ??? – maximus

3

вам нужно создать файл в проекте, который будет выглядеть

debug=false 
oauth.consumerKey=************** 
oauth.consumerSecret=************************************ 
oauth.accessToken=**************************************** 
oauth.accessTokenSecret=*******************************