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 :

Attaquer le web service CRM


Sujet :

Services Web

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 47
    Points : 41
    Points
    41
    Par défaut Attaquer le web service CRM
    Bonjour a tous.

    En ce moment je teste le web service de Microsoft CRM. Je suis donc aller faire un tour du coté de la MSDN. J'ai trouvé d'excellentes infos, dont un tutoriel très intéressant qui explique comment récuperer des infos dans la CRM a cette adresse : MSDN.

    J'ai suivi a la lettre ce qui y est indiqué, j'ai bien réferencer mon web service. Mais Ca ne compile pas. Je reçois l'erreur : "System.Web.Services.Protocols.SoapException: Server was unable to process request.

    Voila 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
     
    using System.Web.Services;
    using CrmWebService;
     
     
    public partial class crm : System.Web.UI.Page
    {
     
     
        protected void Page_Load(object sender, EventArgs e)
        {
            string message ;
     
            new_collaborateur collaborateur = new new_collaborateur();
            CrmWebService.CrmService cService = new CrmService();
            //cService.Url = "http://datasrv2001:5555/mscrmservices/2006/crmService.asmx";
            cService.Credentials = System.Net.CredentialCache.DefaultCredentials;
            Guid contactId = new Guid("F0884FCF-B3CC-DB11-B254-0007E9710AA5");
     
            ColumnSet c = new ColumnSet();
            c.Attributes = new string[]{"firstname"};
     
            try
            {
                cService.Retrieve("contact", contactId, c);
            }
            catch(Exception ex)
            {
               message = ex.ToString();
            }
    EN effet, ca plante a l'appel de la methode Retrieve.

    cService.Retrieve("contact", contactId, c);


    Je ne comprend pas très bien le role du 3 eme argument .

    Quand je tape l'adresse du web service, je tombe bien sur la page du web service avec l'ecplication des méthodes. L'entité dont j'essai de récuperer les infos existe bien et le GIUD je les récuperer dans la base.

    Je ne comprend pas pourqoui ca ne marche pas. SI quelqu'un a une idée.

    merci

  2. #2
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 47
    Points : 41
    Points
    41
    Par défaut
    Salut

    J'ai trouvé mon erreur.

    je me suis inspiré d'un post trouvé dans google.com/microsoft

    J'ai donc modifier mon catch afin d'utiliser SoapException.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    try
            {
            collaborateur = (new_collaborateur)cService.Retrieve("new_collaborateur", contactId, c);
            }
            catch (SoapException ex)
            {
                message = ex.Detail.InnerText;
            }
    Le message est devenu beaucoup plus clair. L'entité n'existait pas dans la CRM. Et oui c'était tout simple.

    merci a tous

  3. #3
    Membre confirmé Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Points : 606
    Points
    606
    Par défaut
    L'erreur soap appartient au namespace System.Web.Services.Protocols donc oui si une erreur de web service est levée, l'exception soap est la plus claire.

    Utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    System.Web.Services.Protocols.SoapException soapExc;
     
    soapExc.Detail.InnerText;
    soapExc.StackTrace;

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

Discussions similaires

  1. web service CRM Microsoft Dynamics
    Par kevdep dans le forum Autres langages pour le Web
    Réponses: 0
    Dernier message: 24/02/2011, 18h58
  2. Oracle CRM on Demand et Web Services
    Par ljt2000 dans le forum CRM
    Réponses: 0
    Dernier message: 18/01/2011, 14h48
  3. Web Service et CRM 4.0 Microsoft
    Par ommenetti dans le forum Services Web
    Réponses: 1
    Dernier message: 22/01/2009, 15h19
  4. [Web Service][SOAP] Comment attaquer facilement un service web en PHP ?
    Par lr dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 29/02/2008, 16h29
  5. Web services dans CRM ou ISU
    Par _steph_ dans le forum SAP
    Réponses: 2
    Dernier message: 21/06/2007, 14h41

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