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

Services Web Discussion :

Retourner un fichier xml


Sujet :

Services Web

  1. #1
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut Retourner un fichier xml
    Salut,

    Mon web service marche très bien mais j'ai néanmoins un petit souci.

    En fait, je voudrais retourner au client le contenu d'une boite au lettre. Pour l'instant, j'envoi des valeurs séparé par des virgules mais le moyen le plus simple semble être la transmission d'un fichier xml que je verrais comme ceci :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <BAL>
      <NUMMSG>1</NUMMSG>
      <DEST>TOTO</DEST>
      <SUJET>TEST</SUJET>
    </BAL>

    Est-ce que cela est possible et comment y parvenir ?

    Merci par avance.

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Sur quel point du sèches ? renvoi d'une valeur ou format xml (donc un string) ou création de ce xml ?

  3. #3
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    Ben à vrai dire, sur l'ensemble. Je ne vois pas par ou commencer.

    Actuellement, ma fonction côté web service fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            intNbMsg = messages.Count
            If intNbMsg > 0 Then
     
                For intI = 0 To intNbMsg
                    strBAL = strBAL & messages(intI).ToString
                Next
            End If
     
            Return strBAL
    Comment faut-il modifier ?

  4. #4
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Pourquoi ne pas renvoyer une structure?

  5. #5
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    Ca peut être pas mal... comment faire ?

  6. #6
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public struct NomStruct
    {
        public string Blabla;
        public int Id;
    }
    Suffit que ton web service renvoie ce type d'objet ;-)

  7. #7
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    Ok, donc ça devrait être un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    public struct NomStruct
    {
        public string Blabla;
        public int Id;
    }
     
        <WebMethod(Description:="Lecture boite aux lettres")> _
        Public Function ReadBAL(ByVal id As String) As NomStruct
    Dim t_struct as nomstruct
     
    Return t_struct

    Le problème, c'est que j'ai plusieurs messages possibles. Je ne vais pas appeler la méthode pour chaque message ?

  8. #8
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Pourquoi ne pas retourner un Array de NomStruct ?

  9. #9
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Tu peux renvoyer NomStruct[] ;-)

  10. #10
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    ... ben si on peut .

    J'ai certainement une erreur de syntaxe sur NomStruct[] !

    Mon code s'est transformé comme suit :

    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
     
            Dim t_bal as NomStruct
     
            intNbMsg = messages.Count
            If intNbMsg > 0 Then
     
                For intI = 0 To intNbMsg
                '    strBAL = strBAL & messages(intI).ToString
     
                    with t_bal
                        .id = intI
                        .strMsg = messages(intI).ToString
                    End With
                Next
            End If
     
            Return NomStruct[]
    Je suis dans la bonne direction ?

  11. #11
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    Re,

    Personne peut me dire comment on fait ??? Je trouve pas .

  12. #12
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 61
    Points : 52
    Points
    52
    Par défaut
    Je te suggère de lire la doc avant de demander de l'aide aussi floue. Tu sembles être perdu dans les concepts de WebService. Il est possible de retourner n'importe quelle collection- SOAP s'occupe du reste.

    En fait, SOAP transforme tes collections VB en messages XML. Autant lors de l'envoi que de la réception des données. Il est donc possible d'utiliser n'importe quel langage des deux côté de ton application. (serveur-client).


    Liens pour te renseigner:piste- Utilise () au lieu de []. VB = ().
    Au plaisir

Discussions similaires

  1. Retourner un fichier xml
    Par clouddd dans le forum Services Web
    Réponses: 14
    Dernier message: 21/10/2009, 15h56
  2. Parcourir un fichier XML et retourner ses elements
    Par Ya7yaKech dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/02/2009, 00h41
  3. Lire un attribut dans un fichier XML en C++
    Par ti.k-nar dans le forum XML
    Réponses: 2
    Dernier message: 14/10/2002, 15h22
  4. [Kylix] Composant IBM pour fichiers XML
    Par Mister Nono dans le forum EDI
    Réponses: 1
    Dernier message: 29/09/2002, 20h28
  5. Balises HTML dans un fichier XML
    Par Bastet79 dans le forum XML/XSL et SOAP
    Réponses: 12
    Dernier message: 04/09/2002, 15h29

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