What is the checkNotNull() checking for, and what does the JacksonFactory.createJsonParser() look like?
On Mon, Apr 6, 2015 at 3:01 PM Kevin Lynch <[email protected]> wrote: > I am trying to access the Picasa Web API with the java client using OAuth2 > and I am getting a NPE when trying to use the refresh_token to get an > access_token. I went to the OAuth 2.0 Playground and created > an access_token and a refresh_token and everything works fine on the > Playground and I can use the access_token in my java app with the > access_token from the Playground but the refresh token from the playground > does not seem to work. This is the simple code test: > > ACCESS_TOKEN test - Works: > > Credential credential = new GoogleCredential.Builder() > .setTransport(HTTP_TRANSPORT) > .setJsonFactory(JSON_FACTORY) > .setClientSecrets(CLIENT_ID, CLIENT_SECRET) > .build(); > credential.setAccessToken(ACCESS_TOKEN); // ACCESS_TOKEN from the > Playground > > REFRESH_TOKEN test - Fails: > > Credential credential = new GoogleCredential.Builder() > .setTransport(HTTP_TRANSPORT) > .setJsonFactory(JSON_FACTORY) > .setClientSecrets(CLIENT_ID, CLIENT_SECRET) > .build(); > credential.setRefreshToken(REFRESH_TOKEN); // REFRESH_TOKEN from the > Playground > credential.refreshToken(); // <- the exception occurs here > > with this stack trace: > > Exception in thread "main" java.lang.NullPointerException > at > com.google.api.client.repackaged.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:191) > at > com.google.api.client.util.Preconditions.checkNotNull(Preconditions.java:127) > at > com.google.api.client.json.jackson2.JacksonFactory.createJsonParser(JacksonFactory.java:92) > at > com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:85) > at > com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:81) > at > com.google.api.client.auth.oauth2.TokenResponseException.from(TokenResponseException.java:88) > at > com.google.api.client.auth.oauth2.TokenRequest.executeUnparsed(TokenRequest.java:287) > at > com.google.api.client.auth.oauth2.TokenRequest.execute(TokenRequest.java:307) > at > com.google.api.client.auth.oauth2.Credential.executeRefreshToken(Credential.java:570) > at > com.google.api.client.googleapis.auth.oauth2.GoogleCredential.executeRefreshToken(GoogleCredential.java:362) > at > com.google.api.client.auth.oauth2.Credential.refreshToken(Credential.java:489) > at PicasaV2.main(PicasaV2.java:49) > > The rest of the code in both cases is a simple test: > > PicasawebService myService = new PicasawebService(APP_NAME); > myService.setOAuth2Credentials(credential); > > URL feedUrl = new URL(" > https://picasaweb.google.com/data/feed/api/user/USEREMAIL?kind=album"); > > UserFeed myUserFeed = myService.getFeed(feedUrl, UserFeed.class); > > for (AlbumEntry myAlbum : myUserFeed.getAlbumEntries()) { > System.out.println(myAlbum.getTitle().getPlainText()); > } > > -- > You received this message because you are subscribed to the Google Groups > "Google Picasa Web Albums API" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to > [email protected]. > Visit this group at http://groups.google.com/group/google-picasa-data-api. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Google Picasa Web Albums API" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/google-picasa-data-api. For more options, visit https://groups.google.com/d/optout.
