none
Http Call ? Problème de compréhension

    Question

  • Bonjour,

    Je dois réaliser une application (WS) afin de récupérer des données XML et ensuite les mapper pour les charger dans Sap.

    Pour les mapper et les chargées dans Sap pas de problème je sais comment réaliser cette partie.
    Par contre là ou je galère c'est sur la réception des données XML.

    Les données me sont envoyer via un "Http Call" que je devrais lire en .Net.
    C'est là que je suis perdu, qu'est ce qu'un "Http Call" ?
    On m'a conseillé d'utiliser un HttpHandler, ok je dis pas le contraire ... mais comment récupérer les données ? via la context ?
    Est-ce qu'en fait c'est un Web Service ?

    Je suis un perdu, et je me doute que ma question n'est pas super claire, vraiment désolé.
    Si vous pouviez déjà m'éclairer sur l'Http Call.

    Merci d'avance,
    Youri

    samedi 8 décembre 2012 10:31

Réponses

  • Re ;-)

    Pour ma part, j'utilise les HTTPHandler pour réaliser des tests sur les paramètres de l'url et des données métier, puis je redirige la requête vers une page .aspx.

    Si je comprend bien ton besoin, un système externe doit te fournir un fichier XML que tu vas traiter pour injecter les données dans SAP.

    Il faut en savoir un peu plus sur comment cet envoi sera réalisé :

    1/ Un utilisateur va dans ton application, sélectionne un fichier sur son disque dur et ce fichier est envoyé sur ton serveur web.

    2/ C'est un programme (un batch par exemple) qui récupère ou génère un fichier et envoi ce fichier vers ton serveur web.

    Dans le cas 1, il suffit de mettre en place une page d'upload de fichier. C'est assez classique.

    Dans le cas 2, il vaut mieux passe à mon avis par un web service. Pour ce faire, tu trouveras sur le web une multitude d'exemples en googlant "WCF transfert file" ou "WCF upload file" ou encore "WCF streming file". En fait, il faut que le programme appelant envoi le contenu du fichier via le webservice.

    Cordialement.


    samedi 8 décembre 2012 16:16
  • Effectivement, il y a bien transfert du contenu, mais tu peux très bien prendre ce contenu "brut" est le mettre sous la forme de fichier directement sans en faire l'analyse.

    Voici un sample Microsoft qui me paraît pertinent et assez simple pour traiter ta demande : http://msdn.microsoft.com/en-us/library/ms751463.aspx.

    Cordialement.


    lundi 10 décembre 2012 11:28

Toutes les réponses

  • Après quelques recherches ...

    En fait je pense que je dois faire un Web Service, avec un HttpHandler.
    Lorsqu'on passe une url par exemple de type *.xml je passe dans mon Handler.

    Et c'est là que je ne sais pas trop comment récupérer les données :
    http://localhost:58286/Service1.asmx/WSTest/test.xml

    Comment je peux lire le contenu de test.xml ?
    Via le context :

        public class MyHandler : IHttpHandler
        {
    
            public void ProcessRequest(HttpContext context)
            {
                HttpResponse response = context.Response;
                response.Write("My Handler");
            }
    
            public bool IsReusable
            {
                get { return true; }
            }
    
        }

    Merci d'avance pour votre aide.
    Youri

    samedi 8 décembre 2012 10:53
  • Re ;-)

    Pour ma part, j'utilise les HTTPHandler pour réaliser des tests sur les paramètres de l'url et des données métier, puis je redirige la requête vers une page .aspx.

    Si je comprend bien ton besoin, un système externe doit te fournir un fichier XML que tu vas traiter pour injecter les données dans SAP.

    Il faut en savoir un peu plus sur comment cet envoi sera réalisé :

    1/ Un utilisateur va dans ton application, sélectionne un fichier sur son disque dur et ce fichier est envoyé sur ton serveur web.

    2/ C'est un programme (un batch par exemple) qui récupère ou génère un fichier et envoi ce fichier vers ton serveur web.

    Dans le cas 1, il suffit de mettre en place une page d'upload de fichier. C'est assez classique.

    Dans le cas 2, il vaut mieux passe à mon avis par un web service. Pour ce faire, tu trouveras sur le web une multitude d'exemples en googlant "WCF transfert file" ou "WCF upload file" ou encore "WCF streming file". En fait, il faut que le programme appelant envoi le contenu du fichier via le webservice.

    Cordialement.


    samedi 8 décembre 2012 16:16
  • Merci pour ton aide.

    A mon avis c'est plus le 2/
    Car il n'y aucun transfert de fichier, j'aurais bien aimé en fait ...

    Apparemment c'est via un Soap Message que je vais recevoir le contenu XML.

    lundi 10 décembre 2012 10:00
  • Effectivement, il y a bien transfert du contenu, mais tu peux très bien prendre ce contenu "brut" est le mettre sous la forme de fichier directement sans en faire l'analyse.

    Voici un sample Microsoft qui me paraît pertinent et assez simple pour traiter ta demande : http://msdn.microsoft.com/en-us/library/ms751463.aspx.

    Cordialement.


    lundi 10 décembre 2012 11:28
  • Bonjour,

    Pouvons-nous considérer que vous avez résolu votre problème avec les scénarios proposés ? Dans l'affirmative, pourriez-vous partager avec nous la solution, afin que d'autres personnes avec le même problème puissent profiter de cette solution ?

    Désormais, nous marquons les solutions proposées. N'hésitez pas à revenir et supprimer la réponse marquée si la solution n’est pas correcte. Merci !

    Cordialement,

    Aurel


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mardi 11 décembre 2012 10:18
    Propriétaire