IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Problème avec une GData Request token


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut Problème avec une GData Request token
    Bonjour à tous,

    je vous expose mon problème:

    après avoir récupéré l'AccessToken pour accéder aux données du Google Account d'un utilisateur, je souhaite récupérer la liste de ses contacts. Je passe donc par la librairie "com.google.gdata-contacts".
    Le problème est lorsque j'arrive au niveau de l'appel de la fonction ContactService.getFeed(), je recois sur mon navigateur l'exception suivante :java.lang.NullPointerException
    com.google.gdata.client.authn.oauth.OAuthUtil.normalizeParameters(OAuthUtil.java:163)
    com.google.gdata.client.authn.oauth.OAuthUtil.getSignatureBaseString(OAuthUtil.java:81)
    com.google.gdata.client.authn.oauth.TwoLeggedOAuthHelper.addCommonRequestParameters(TwoLeggedOAuthHelper.java:79)
    com.google.gdata.client.authn.oauth.TwoLeggedOAuthHelper.addParametersAndRetrieveHeader(TwoLeggedOAuthHelper.java:121)
    com.google.gdata.client.authn.oauth.TwoLeggedOAuthHelper.getAuthorizationHeader(TwoLeggedOAuthHelper.java:112)
    com.google.gdata.client.GoogleAuthTokenFactory$OAuthToken.getAuthorizationHeader(GoogleAuthTokenFactory.java:204)
    com.google.gdata.client.http.HttpGDataRequest.<init>(HttpGDataRequest.java:331)
    com.google.gdata.client.http.GoogleGDataRequest.<init>(GoogleGDataRequest.java:456)
    com.google.gdata.client.http.GoogleGDataRequest$Factory.createRequest(GoogleGDataRequest.java:93)
    com.google.gdata.client.http.HttpGDataRequest$Factory.getRequest(HttpGDataRequest.java:165)
    com.google.gdata.client.Service.createRequest(Service.java:760)
    com.google.gdata.client.GoogleService.createRequest(GoogleService.java:525)
    com.google.gdata.client.Service.createFeedRequest(Service.java:1156)
    com.google.gdata.client.Service.getFeed(Service.java:997)
    com.google.gdata.client.GoogleService.getFeed(GoogleService.java:631)
    com.google.gdata.client.Service.getFeed(Service.java:1017)
    controller.ConsumerController.doGet(ConsumerController.java:216)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)



    Voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    if(request.getParameter("contact")!=null)
     		{GoogleOAuthParameters oauthParameters = new GoogleOAuthParameters();
     	 		oauthParameters.setScope("http://www.google.com/m8/feeds/contacts/default/full");
     	 		oauthParameters.setOAuthConsumerKey(consumer.getConsumerKey());
     	        oauthParameters.setOAuthConsumerSecret(consumer.getConsumerSecret());
     	        GoogleOAuthHelper oauthHelper = new GoogleOAuthHelper(new OAuthHmacSha1Signer());
     	        try {
    				String token = oauthHelper.getAccessToken(oauthParameters);
    				System.out.println("here");
    			} catch (OAuthException e2) {
    				// TODO Auto-generated catch block
    				e2.printStackTrace();
    			}
     
     	        oauthParameters.setOAuthType(OAuthType.TWO_LEGGED_OAUTH);
    	 		oauthParameters.setOAuthToken(consumer.getToken());
    	        oauthParameters.setOAuthTokenSecret(consumer.getTokenSecret());
     
     	 		ContactsService myService = new ContactsService("GoogleAccountProject");
     
     
     	 		myService.setHeader("Authorization", "Bearer " + accessToken);
     	 		try {
    				myService.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer());
    			} catch (OAuthException e1) {
    				// TODO Auto-generated catch block
    				e1.printStackTrace();
    			}
     
     	 		 // Request the feed
     	 	     URL feedUrl = new URL("https://www.google.com/m8/feeds/contacts/default/full");
     
     
    				ContactFeed resultFeed;
    				try {
    					resultFeed = myService.getFeed(feedUrl, ContactFeed.class);
    					System.out.println(resultFeed.getTitle().getPlainText());
    				} catch (ServiceException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}

  2. #2
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    la trace de l'exception n'est pas complète...
    N'y a t-il pas quelque chose entre le java.lang.NullPointerException et le reste de la stackTrace donnée ?
    Un message du genre java.lang.NullPointerException: No authentication header information, ou quelque chose d'autre ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut
    J'ai bien mis tout le message de l'exception. Avant d'avoir cet exception ci, j'ai effectivement eu l'exception "No authentication header" mais c'est parce que j'avais oublié la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myService.setHeader("Authorization", "Bearer " + accessToken);

Discussions similaires

  1. Problème avec une UDF
    Par kanmaber dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/08/2004, 23h42
  2. [JBOSS] [Struts] Problème avec une application
    Par Tiercel dans le forum Wildfly/JBoss
    Réponses: 5
    Dernier message: 13/07/2004, 13h50
  3. Problème avec une instruction OUTER /Postgres
    Par Volcomix dans le forum Langage SQL
    Réponses: 14
    Dernier message: 21/04/2004, 16h56
  4. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  5. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo