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

API standards et tierces Android Discussion :

Problème avec les services web rest sur android


Sujet :

API standards et tierces Android

  1. #1
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut Problème avec les services web rest sur android
    Bonjour à tous!

    Cela fait maintenant plusieurs jour que je plante sur un problème, que je ne comprend guère; Le pire étant que ne n'arrive pas à déboguer ou à avoir un message d'erreur. J'ai implémenté des web services REST (En utilisant un Stateless annoté avec @Path ..., les développeur Java EE comprenne de quoi je parle), que j'ai déployé sur Glassfish.

    Un test effectué avec mon navigateur pour les méthodes GET, fonctionne sans soucis. Mais j'ai du mal à consommer les même services web avec android dans mon code; aucune réponse n'est renvoyé! j'ai fini par découvrir que le navigateur de la tablette, ne faisait pas mieux, ce dernier me renvoie l'erreur 404; Mais, mais... j'utilise exactement la même uri que sur le navigateur de mon PC, qui lui me renvoi bien le resultat attendu; Ne me dite surtout pas que plante sur une mauvaise url depuis une semaine, rassurez vous j'ai même emprunté d'autres yeux pour cela . Cependant, ma tablette accède bien au serveur Glassfish sur les port 4848 et 8080, en m'affichant les interfaces d'administration de Glassfish. Quelqu'un y voit quelque chose? Même un hello world qui fonctionne avec le navigateur de mon PC ne fonctionne pas avec celui de ma tablette.
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Tu as testé cette URL à partir d'un ordinateur non lié au tien ?

    Je ne vois pas de raison pour que la tablette n'y arrive pas, mais qu'un ordinateur tiers (différent de celui utilisé pour baser le serveur et non lié à lui).
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Tu as testé cette URL à partir d'un ordinateur non lié au tien ?

    Je ne vois pas de raison pour que la tablette n'y arrive pas, mais qu'un ordinateur tiers (différent de celui utilisé pour baser le serveur et non lié à lui).
    Merci Hizin pour cette première réaction.

    J'ai testé l'URL, sur 4 poste (l'un sous linux) et il n'ya aucun soucis. Mon directeur technique l'a essayé sur son laptop et hop, tout vas bien, mais sur son smartphone (différent de ma tablette de test) erreur 404 . Si déjà le navigateur n'y voit rien comment mon code y arrivera? Très très surprenant... je l'affirme volontier
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  4. #4
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Points : 1 241
    Points
    1 241
    Par défaut
    Effectivement, c'est bizarre. plusieurs piste, le content type n'est peut-être pas supporté par le navigateur de la tablette, essayes avec les versions mobiles de firefox/chrome/opera. Le navigateur par défaut sous android n'est pas forcément génial...
    Sinon, ça viens peut-être du user-agent qui est filtré par le serveur. La plupart des navigateurs on un mode compatibilité PC qui modifie le user-agent.

    Pour ma part, je n'ai aucun problème à consommer un service REST sous android. J'utilise Apache HTTClient (et aussi JBoss Resteasy client mobile qui me permet d'avoir un client JAX-RS like mais qui est assez galère à ajouter au projet) et ça marche bien !

  5. #5
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut
    plusieurs piste, le content type n'est peut-être pas supporté par le navigateur de la tablette, essayes avec les versions mobiles de firefox/chrome/opera.
    Je compte justement essayer un autre navigateur, juste le temps de le télécharger.

    Par contre
    Sinon, ça viens peut-être du user-agent qui est filtré par le serveur. La plupart des navigateurs on un mode compatibilité PC qui modifie le user-agent.
    comment vérifier cela, avec Glassfish? Le fameux user-agent existe seulement pour le navigateur ou pour toute requête http, comme ceux de HTTClient sous android! Je rappel que c'est par ce que la chose coinçait avec le code android sans me renvoyer de message d'erreur que j'ai eu l'idée de tester sur le navigateur!

    Pour ma part, je n'ai aucun problème à consommer un service REST sous android.
    Aucune doc ne laisse justement penser le contraire, ce qui me gène donc d'avantage

    J'utilise Apache HTTClient (et aussi JBoss Resteasy client mobile qui me permet d'avoir un client JAX-RS like mais qui est assez galère à ajouter au projet) et ça marche bien !
    Si les avantages d'un tel client sont considérables, autant accepter un peu de galère, si on peut sourire pour le reste de la vie .

    vos réactions et propositions m’intéressent toujours
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  6. #6
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Il y a divers plugin permettant de changer de user-agent pour les navigateurs. Ca existe au moins pour Firefox et Chrome/Chromium.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  7. #7
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut
    OK! Je vous tiens informé après avoir testé tout ça!
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  8. #8
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut
    Voici quelque chose qui me porte à douter de la culpabilité des user-agent; en effet, lorsque je saisi ceci sur le navigateur de ma tablette
    J'ai la page par défaut de mon serveur Glassfish qui s'affiche, mais lorsque je saisi ceci:
    erreur 404 ; alors que sur mon poste de travail j'ai bien une JSP de Hello world qui s'affiche. Sauf si glassfish effectue son filtre pour les applications déployés.
    D'un autre côté, le problème n'est donc pas celui de la consommation de mes web services, mes de tout ce qui semble être web dans mon application.
    Cette histoire m'empêche d'avancer.
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  9. #9
    Membre habitué Avatar de JacNar6
    Homme Profil pro
    Développeur Java/Java EE/Android
    Inscrit en
    Mai 2012
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java/Java EE/Android

    Informations forums :
    Inscription : Mai 2012
    Messages : 163
    Points : 134
    Points
    134
    Par défaut
    Pardonnez moi pour tous ces dérangements. Même mes collègues de services, n'ont pas été à mesure de voir cela.

    Tout vient du mot gestion qui a été mal écrit (dans projetGesionT), dans l'url donnée plus haut, et comme il ne m'était "pas possible" de faire un copier collé sur ma tablette comme sur les autres postes, je l'écrivais donc normalement sur la tablette avec son T.

    Une fois de plus toutes mes excuses! et merci pour le soin accordé.
    Si vous avez de l'Amour, vous ne ferez du mal à personne et personne ne vous fera du mal. W M Branham

  10. #10
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Pas de souci.
    Dans un sens, vaut mieux cette "petite étourderie" plutôt qu'un bug d'Android
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Implémenter le design pattern Observer avec les services web
    Par Klemsy78 dans le forum Services Web
    Réponses: 1
    Dernier message: 12/02/2008, 16h51
  2. Problème avec un service Web
    Par matche dans le forum Services Web
    Réponses: 5
    Dernier message: 09/12/2007, 12h12
  3. Problèmes avec les Services Intenet windows(IIS)
    Par mikawell3000 dans le forum C#
    Réponses: 1
    Dernier message: 26/07/2007, 11h55
  4. Problèmes avec les services NT/Windows 2000
    Par newfsch dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 02/03/2006, 16h49

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