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

C++Builder Discussion :

WEB SERVICES: CX_ST_MATCH_ELEMENT:XSLT exception.System expected element


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 4
    Par d�faut WEB SERVICES: CX_ST_MATCH_ELEMENT:XSLT exception.System expected element
    Bonjour,

    Mon but est de consommer un WebService SAP dans une application C++.

    Ce WS renvoie simplement un String pour un param�tre donn�.

    Ci-dessous, l'interface g�n�r�e par le WSDL importer.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    __interface INTERFACE_UUID("{84315FF7-92AE-A15F-5A89-3820B28AEAB2}") ZQM_WEB_READMEASURE : public IInvokable
    {
    public:
      virtual char64          ZqmFmMeasuresRead(const int PMeaId) = 0; 
    };

    Et ci-apr�s, l'utilisation du WS.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    /*1*/_di_ZQM_WEB_READMEASURE SAP_WS_ReadMeasure;
    /*2*/SAP_WS_ReadMeasure = GetZQM_WEB_READMEASURE(true, "" , HTTPRIO1);
    /*3*/
    /*4*/lbledt_response->Text = SAP_WS_ReadMeasure->ZqmFmMeasuresRead(StrToInt(lbledt_meaID->Text));
    l'execution de la ligne 4 provoque l'exception suivante:
    CX_ST_MATCH_ELEMENT:XSLT exception.System expected element 'PMeaId'

    Un test de ce WS avec SoapUI est concluant, mais l'erreur est reproduisible par la mise en commentaire ci-dessous:

    <urn:ZqmFmMeasuresRead>
    <!--PMeaId>1</PMeaId-->
    </urn:ZqmFmMeasuresRead>

    J'ai execut� le m�me code avec C++ 2006, 2009 et 2010, avec le m�me r�sultat.
    J'ai �galement essay� plusieurs options d'import de l'outil WSDL importer, y compris le Unwind Literal Params.

    Tout conseil bienvenu!

    DBI

  2. #2
    Membre chevronn�

    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    531
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 531
    Par d�faut
    �a a l'air bon tout �a..
    un exemple chez moi:

    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
    __interface INTERFACE_UUID("{7E484425-2AEF-7032-7678-433F9EB9FEFB}") IiMyWS : public IInvokable
    {
    public:
      virtual UnicodeString   TestMessage(const UnicodeString aMessage) = 0; 
    };
    typedef DelphiInterface<IiMyWS> _di_IiMyWS;
     
    _di_IiMyWS GetIiMyWS(bool useWSDL=false, AnsiString addr="", THTTPRIO* HTTPRIO=0);
     
     
    };     // NS_IiMyWS
     
    #if !defined(NO_IMPLICIT_NAMESPACE_USE)
    using  namespace NS_IiMyWS;
    #endif
     
     
     
    #endif // IiMyWSH
    et l'appel:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    oid __fastcall TForm1::Button1Click(TObject *Sender)
    {
    AnsiString Message = "TATA";
    AnsiString Reponse;
    _di_IiMyWS Test;
     
    //Reponse = Test->TestMessage(Message);
    Reponse = GetIiMyWS()->TestMessage(Message);
    ShowMessage(Reponse);
    }
    vue que tu l'a int�gr� une fois tests avec useWSDL=false, je ne vois pas...

  3. #3
    Membre chevronn�

    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    531
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 531
    Par d�faut
    testes l'�criture suivante:

    lbledt_response->Text = GetZQM_WEB_READMEASURE()-> ZqmFmMeasuresRead(StrToInt(lbledt_meaID->Text));
    cela devrait fonctionner

    avec: GetZQM_WEB_READMEASURE(false (si m�thodes d�ja d�clar�es, "httpxxxx" si dynamique, HTTRIO ... ) si tu veux changer quelque chose sur les param�tres de l'interface.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 4
    Par d�faut
    Merci pour tes conseils FBartolo,

    Voici donc le code test�:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    lbledt_response->Text = GetZQM_WEB_READMEASURE(false, "" , HTTPRIO1)->ZqmFmMeasuresRead(StrToInt(lbledt_meaID->Text));
    Avec la m�me exception.
    Donc le sujet reste ouvert.
    C'est comme si durant la transformation par XLST, le param�tre PMeaId n'�tait par reconnu.

  5. #5
    Membre chevronn�

    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    531
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 531
    Par d�faut
    colles y directement un entier pour voir:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    lbledt_response->Text = GetZQM_WEB_READMEASURE()-> ZqmFmMeasuresRead(10);

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 4
    Par d�faut
    J'avais commenc� par �a, bien sur! Mais c'est similaire.

Discussions similaires

  1. Web Service et les Exceptions
    Par Kagami dans le forum D�buter
    R�ponses: 0
    Dernier message: 24/07/2013, 12h19
  2. R�ponses: 9
    Dernier message: 02/02/2009, 00h54
  3. [C#2.0] Comment rendre obligatoire un element dans un Web Service
    Par cosmos38240 dans le forum Services Web
    R�ponses: 1
    Dernier message: 02/03/2007, 16h27
  4. Spring remoting / Web services / Exceptions handling
    Par bidi dans le forum Services Web
    R�ponses: 2
    Dernier message: 04/07/2006, 11h07
  5. [vb.net]Gestion des exceptions avec les web services
    Par mvr dans le forum Windows Forms
    R�ponses: 2
    Dernier message: 05/12/2005, 22h41

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