OAuth認証 リクエストトークン入手について

931 views
Skip to first unread message

arton

unread,
Jun 24, 2011, 3:42:30 AM6/24/11
to Twitter4J J
はじめまして。artonです。

Twitter4j 2.2.3を使ってoauth認証を行おうとしているのですが、
リクエストトークンの取得がうまくいきません。

Twitter twitter = null;
RequestToken requestToken = null;
ConfigurationBuilder confbuilder = new ConfigurationBuilder();
confbuilder.setOAuthConsumerKey(CONSUMER_KEY).setOAuthConsumerSecret(CONSUMER_SERCRET);
twitter = new TwitterFactory(confbuilder.build()).getInstance();
String CALLBACK_URL = "myapp://oauth";
try {
requestToken = twitter.getOAuthRequestToken(CALLBACK_URL);
} catch (TwitterException e) {
e.printStackTrace();
}


twitter.getOAuthRequestToken
のところでexceptionになってしまいます。
twitterのサイトでアプリの登録を行い、コンシューマーキーとシークレットもちゃんと取得しています。
android のバージョンは2.1 update にしています。
AVD上でブラウザにインターネットに接続もできています。
AVD内でネットワーク設定は全く手をつけていません。
twitter4j.propertiesは使用していません。

exceptionが発生したときのログは以下になります。
どうぞよろしくお願いします。

06-24 07:35:59.719: WARN/System.err(221): Permission denied (maybe
missing INTERNET permission)Relevant discussions can be on the
Internet at:
06-24 07:35:59.729: WARN/System.err(221): http://www.google.co.jp/search?q=10f5ada3
or
06-24 07:35:59.729: WARN/System.err(221): http://www.google.co.jp/search?q=d4636531
06-24 07:35:59.738: WARN/System.err(221):
TwitterException{exceptionCode=[10f5ada3-d4636531 10f5ada3-d4636507],
statusCode=-1, retryAfter=-1, rateLimitStatus=null,
featureSpecificRateLimitStatus=null, version=2.2.3}
06-24 07:35:59.738: WARN/System.err(221): at
twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:
204)
06-24 07:35:59.749: WARN/System.err(221): at
twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:
65)
06-24 07:35:59.759: WARN/System.err(221): at
twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:
102)
06-24 07:35:59.759: WARN/System.err(221): at
twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:
121)
06-24 07:35:59.769: WARN/System.err(221): at
twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:
104)
06-24 07:35:59.779: WARN/System.err(221): at
twitter4j.TwitterBaseImpl.getOAuthRequestToken(TwitterBaseImpl.java:
271)
06-24 07:35:59.779: WARN/System.err(221): at
com.android.twitter.TwitFriendsSearch
$MyClickAdapter.onClick(TwitFriendsSearch.java:104)
06-24 07:35:59.789: WARN/System.err(221): at
android.view.View.performClick(View.java:2364)
06-24 07:35:59.799: WARN/System.err(221): at
android.view.View.onTouchEvent(View.java:4179)
06-24 07:35:59.799: WARN/System.err(221): at
android.widget.TextView.onTouchEvent(TextView.java:6541)
06-24 07:35:59.809: WARN/System.err(221): at
android.view.View.dispatchTouchEvent(View.java:3709)
06-24 07:35:59.819: WARN/System.err(221): at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-24 07:35:59.829: WARN/System.err(221): at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-24 07:35:59.829: WARN/System.err(221): at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-24 07:35:59.839: WARN/System.err(221): at
android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-24 07:35:59.849: WARN/System.err(221): at
com.android.internal.policy.impl.PhoneWindow
$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659)
06-24 07:35:59.859: WARN/System.err(221): at
com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:
1107)
06-24 07:35:59.859: WARN/System.err(221): at
android.app.Activity.dispatchTouchEvent(Activity.java:2061)
06-24 07:35:59.869: WARN/System.err(221): at
com.android.internal.policy.impl.PhoneWindow
$DecorView.dispatchTouchEvent(PhoneWindow.java:1643)
06-24 07:35:59.879: WARN/System.err(221): at
android.view.ViewRoot.handleMessage(ViewRoot.java:1691)
06-24 07:35:59.879: WARN/System.err(221): at
android.os.Handler.dispatchMessage(Handler.java:99)
06-24 07:35:59.889: WARN/System.err(221): at
android.os.Looper.loop(Looper.java:123)
06-24 07:35:59.899: WARN/System.err(221): at
android.app.ActivityThread.main(ActivityThread.java:4363)
06-24 07:35:59.899: WARN/System.err(221): at
java.lang.reflect.Method.invokeNative(Native Method)
06-24 07:35:59.909: WARN/System.err(221): at
java.lang.reflect.Method.invoke(Method.java:521)
06-24 07:35:59.918: WARN/System.err(221): at
com.android.internal.os.ZygoteInit
$MethodAndArgsCaller.run(ZygoteInit.java:860)
06-24 07:35:59.918: WARN/System.err(221): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
06-24 07:35:59.929: WARN/System.err(221): at
dalvik.system.NativeStart.main(Native Method)
06-24 07:35:59.929: WARN/System.err(221): Caused by:
java.net.SocketException: Permission denied (maybe missing INTERNET
permission)
06-24 07:35:59.949: WARN/System.err(221): at
org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocketImpl(Native
Method)
06-24 07:35:59.959: WARN/System.err(221): at
org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocket(OSNetworkSystem.java:
187)
06-24 07:35:59.968: WARN/System.err(221): at
org.apache.harmony.luni.net.PlainSocketImpl.create(PlainSocketImpl.java:
266)
06-24 07:35:59.968: WARN/System.err(221): at
java.net.Socket.checkClosedAndCreate(Socket.java:872)
06-24 07:35:59.979: WARN/System.err(221): at
java.net.Socket.connect(Socket.java:1019)
06-24 07:35:59.989: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:
62)
06-24 07:35:59.989: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionManager
$ConnectionPool.getHttpConnection(HttpConnectionManager.java:145)
06-24 07:36:00.019: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionManager.getConnection(HttpConnectionManager.java:
67)
06-24 07:36:00.039: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getHTTPConnection(HttpURLConnection.java:
821)
06-24 07:36:00.049: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:
807)
06-24 07:36:00.049: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.sendRequest(HttpURLConnection.java:
1224)
06-24 07:36:00.079: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequestInternal(HttpURLConnection.java:
1558)
06-24 07:36:00.099: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequest(HttpURLConnection.java:
1551)
06-24 07:36:00.109: WARN/System.err(221): at
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:
1145)
06-24 07:36:00.119: WARN/System.err(221): at
twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:
162)

Yusuke Yamamoto

unread,
Jun 24, 2011, 3:46:14 AM6/24/11
to twitt...@googlegroups.com
こんにちは。

Twitter4JというかAndroidのパッケージングの問題で、アプリケーションのパーミッションでネットワーク接続を有効にしていないためではないかと思います。
AndroidManifest.xml に
<uses-permission android:name="android.permission.INTERNET">
</uses-permission>
と追記すると動くと思います。
--
山本 裕介
yus...@mac.com

このメールは: [x] ブログ/Twitterへ転載可能 [ ] 私信
Twitter でフォロー : http://twitter.com/yusukey
blogを購読: http://samuraism.jp/

> --
> Twitter4J の最新情報をフォロー: http://twitter.com/t4j_news
> 現在のバージョン - 安定: 2.2.3, 開発中: 2.2.4-SNAPSHOT
> http://twitter4j.org/jira/secure/IssueNavigator.jspa?requestId=10030
> バグトラッキング: http://twitter4j.org/jira/browse/TFJ
>
> このメールは次の Google グループの参加者に送られています: Twitter4J J
> このグループにメールで投稿: twitt...@googlegroups.com
> このグループから退会する: http://groups.google.com/group/twitter4j-j?hl=ja

arton

unread,
Jun 24, 2011, 4:04:32 AM6/24/11
to Twitter4J J
無事に取得できるようになりました。
認証という以前の問題だったとは・・・
どうもありがとうございました。

ligerdave

unread,
Jul 8, 2011, 3:23:52 PM7/8/11
to Twitter4J J
問題はPROXYの可能性も高いですね

I had the same issue in eclipse because I am behind the firewall and
to resolve it, I had to manually configure the JVM proxy settings.

-Dhttp.proxyHost=proxyhostURL
-Dhttp.proxyPort=proxyPortNumber
-Dhttp.proxyUser=someUserName
-Dhttp.proxyPassword=somePassword
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionManager.getConnection(HttpConnectionM...
> 67)
> 06-24 07:36:00.039: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getHTTPConnection(HttpURLConnecti...
> 821)
> 06-24 07:36:00.049: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:
> 807)
> 06-24 07:36:00.049: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.sendRequest(HttpURLConnection.java:
> 1224)
> 06-24 07:36:00.079: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequestInternal(HttpURLConnecti...
> 1558)
> 06-24 07:36:00.099: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequest(HttpURLConnection.java:
> 1551)
> 06-24 07:36:00.109: WARN/System.err(221): at
> org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection...
Reply all
Reply to author
Forward
0 new messages