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

Windev Mobile Discussion :

[WM 20] Consommation d'un web service


Sujet :

Windev Mobile

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 24
    Points
    24
    Par défaut [WM 20] Consommation d'un web service
    Bonjour,
    J'essayé d'invoquer ce web service: http://www.webservicex.net/globalweather.asmx?wsdl dans mon application windev mobile android.

    Après avoir importé le web service, je fais l'appel avec ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    v1 est un GetWeather
    v2 est un  GetWeatherResponse
     
    v1.CountryName = "FRANCE"
    v1.CityName = "LYON"
     
    v2 = GetWeather(v1)
    SI ErreurDétectée ALORS
    	Erreur("echec",ErreurInfo())
    FIN
    SAI_SansNom1= v2.GetWeatherResult
    L'application fonctionne bien depuis le simulateur (sur PC), mais quand je la déploie sur un smartphone Samsung S3 j'aurai ce message d'erreur:

    Erreur interne du framework WDjava : org.ksoap2.transport.ServiceConnection.SetHostnameVerifier

    Est ce que vous connaissez déjà cette erreur?
    PS: L'erreur reste la même en absence de connexion

    Merci

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Avez-vous pu résoudre votre problème ?

    Je bloque sur exactement le même message, mais pour un autre webservice ...

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    J'ai trouvé un contournement pas trop clean, c'est d'utiliser des requêtes http comme dans l'exemple "WM FOOD" fourni avec WM20

    Un extrait du 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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    PROCEDURE AppelWS_RechercheProduit(sID est une chaîne)
     
    sUrl est une chaîne = gsURLOFF+"/api/v0/produit/%1.json"
     
    sUrl = ChaîneConstruit(sUrl,SansEspace(sID))
     
    stReponseTemp est un STREPONSE
    bufImage est un Buffer
    tabIngédrients est un tableau de chaîne
    sTMPRes est une chaîne
    nPos1 est un entier
    nPos2 est un entier
    nPos3 est un entier
     
    sUrl="http://fr.openfoodfacts.org/api/v0/produit/3560070718542.json"
    // Requête au WebService
    SI PAS HTTPRequête(sUrl,"","","","","","") ALORS
    	//ExécuteThreadPrincipal(CallbackWS,Vrai,"Impossible de contacter la base de données." + RC + "Vérifiez votre connexion à internet.")
    SINON
    	// Récupération du résultat
    	buf est un Buffer = HTTPDonneRésultat()
     
    	SI buf ~= "" ALORS
    		ExécuteThreadPrincipal(CallbackWS,Vrai,"Impossible de contacter la base de données." + RC + "Vérifiez votre connexion à internet.")
    	SINON
    		// Désérialisation
    		Désérialise(stReponseTemp,buf,psdJSON)
     
    		// Produit inconnu : propose de l'ajouter
    		SI stReponseTemp.status = 0 ALORS
    			ExécuteThreadPrincipal(CallbackProduitInconnu,sID)
    		SINON
    			SI stReponseTemp.product.image_url <> "" _ET_ HTTPRequête(stReponseTemp.product.image_url) ALORS
    				bufImage = HTTPDonneRésultat()
    			FIN
    			// Analyse des ingrédients
    			sTMPRes = stReponseTemp.product.ingredients_text
    			TANTQUE sTMPRes <> ""
    				nPos1 = Position(sTMPRes,",")
    				nPos2 = Position(sTMPRes,"(")
     
    				SI nPos1 > nPos2 _ET_ nPos2 > 0 ALORS
    					nPos3 = Position(sTMPRes,")")
    					nPos1 = Position(sTMPRes,",",nPos3)
    				FIN
     
    				SI nPos1 = 0 ALORS
    					TableauAjoute(tabIngédrients,SansEspace(sTMPRes))
    					sTMPRes = ""
    				SINON
    					TableauAjoute(tabIngédrients,SansEspace(sTMPRes[[1 A (nPos1-1)]]))
    					sTMPRes = sTMPRes[[(nPos1+1) A]]				
    				FIN
     
     
    			FIN	
    			// Affichage des ingrédients	
    			ExécuteThreadPrincipal(CallbackWS,Faux,"",stReponseTemp.product.product_name,bufImage,tabIngédrients)
    		FIN
     
     
    	FIN
    FIN

Discussions similaires

  1. Consommation d'un Web Service au secours !
    Par arkhamon dans le forum Services Web
    Réponses: 2
    Dernier message: 25/02/2011, 14h12
  2. Consommation d'un web service
    Par nouramin dans le forum Services Web
    Réponses: 0
    Dernier message: 19/08/2010, 16h00
  3. Consommation d'un web service. [Débutant]
    Par Rooswelt dans le forum Services Web
    Réponses: 18
    Dernier message: 22/02/2010, 15h19
  4. Problème sur un Web Service consommant un autre Web Service
    Par nicocomumumu dans le forum Services Web
    Réponses: 2
    Dernier message: 06/08/2009, 20h08
  5. Consommation d'un Web services
    Par mbinte dans le forum Services Web
    Réponses: 5
    Dernier message: 10/09/2008, 16h23

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