私は GWTP プロジェクトを開発しています。以下のシナリオは、ローカル開発モードで正常にテストされています。
- OpenID と OAuth による認証と認可を受ける
- GoogleOAuthParameters オブジェクトを HttpSession に保存します。
- 別のアクション ハンドラは、セッションに保存されている GoogleOAuthParameters を再利用して、SpreadsheetService オブジェクトを取得します。
- SpreadsheetService を使用して、GDoc でスプレッドシートを操作します。
ただし、App Engine にデプロイされると、GDoc から何も読み取れず、エラーや警告も表示されず、返されるリストは常に空です。
spreadsheetService = new SpreadsheetService("test");
GoogleOAuthParameters oauthParameters = (GoogleOAuthParameters)sessionProvider.get().getAttribute(HttpSessionProvider.PARAM_OAUTH_PARAMETERS);
spreadsheetService.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer());
oauthParameters.setScope(SCOPE_SPREADSHEET);
SpreadsheetService を初期化するときに、以下のようにユーザー名/パスワードを明確に使用すると、GDoc からデータを取得できます。
SpreadsheetService sService = new SpreadsheetService("test");
sService.setUserCredentials("username", "password");
App Engine SDK 1.6.6 と gdata-spreadsheet-3.0 を使用しています。私が何か間違ったことをしたかどうかアドバイスしてください。ありがとう!