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

Bibliothèques et frameworks PHP Discussion :

[Web Service] Problèmes ComplexType imbriqués


Sujet :

Bibliothèques et frameworks PHP

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

    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [Web Service] Problèmes ComplexType imbriqués
    Bonjour à tous,

    Je ne connais rien aux webservices et à XML et je galère depuis plusieurs jours pour essayer d'envoyer des données à un web service. La connection se fait sans problème, mais quelque soit la technique que j'utilise le serveur me renvoi toujours un message du type
    Invalid number of payload elements: 21 in ....

    Je pense que je n'ai pas le bon nombre de champs
    Voici le WDSL

    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
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    - <definitions name="ManifestationService" targetNamespace="XXX:portail-manifestations:service" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="region-paca:portail-manifestations:model" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="XXX:portail-manifestations:service" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    - <types>
    + <xs:schema targetNamespace="XXX:portail-manifestations:service" version="1.0" xmlns:ns1="XXX:portail-manifestations:model" xmlns:tns="XXX:portail-manifestations:service" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:import namespace="XXX:portail-manifestations:model" /> 
      <xs:element name="importer" type="tns:importer" /> 
      <xs:element name="importerResponse" type="tns:importerResponse" /> 
    - <xs:complexType name="importer">
    - <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="evenement" type="ns1:evenement" /> 
      </xs:sequence>
      </xs:complexType>
    - <xs:complexType name="importerResponse">
    - <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="resultat" type="ns1:resultat" /> 
      </xs:sequence>
      </xs:complexType>
      </xs:schema>
    - <xs:schema targetNamespace="region-paca:portail-manifestations:model" version="1.0" xmlns:tns="region-paca:portail-manifestations:model" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    + <xs:complexType name="evenement">
    + <xs:sequence>
      <xs:element minOccurs="0" name="dateModification" type="xs:dateTime" /> 
      <xs:element minOccurs="0" name="indicateurSupprime" type="xs:boolean" /> 
      <xs:element minOccurs="0" name="titre" type="xs:string" /> 
      <xs:element minOccurs="0" name="dateDebut" type="xs:dateTime" /> 
      <xs:element minOccurs="0" name="dateFin" type="xs:dateTime" /> 
      <xs:element maxOccurs="unbounded" minOccurs="0" name="codeInsee" type="xs:string" /> 
      <xs:element minOccurs="0" name="adressePostale" type="xs:string" /> 
      <xs:element minOccurs="0" name="adresseWeb" type="xs:string" /> 
      <xs:element minOccurs="0" name="typeEvenement" type="tns:typeEvenement" /> 
      <xs:element minOccurs="0" name="contact" type="tns:contact" /> 
      <xs:element minOccurs="0" name="descriptif" type="xs:string" /> 
      <xs:element minOccurs="0" name="adresseImage" type="xs:string" /> 
      <xs:element minOccurs="0" name="copyrightPhoto" type="xs:string" /> 
      <xs:element minOccurs="0" name="adresseOffice" type="xs:string" /> 
      <xs:element maxOccurs="unbounded" minOccurs="0" name="adressesReservation" type="xs:string" /> 
      <xs:element minOccurs="0" name="indicateurImportant" type="xs:boolean" /> 
      </xs:sequence>
      <xs:attribute name="identifiant" type="xs:ID" use="required" /> 
      </xs:complexType>
    + <xs:complexType name="contact">
    - <xs:sequence>
      <xs:element name="nom" type="xs:string" /> 
      <xs:element minOccurs="0" name="prenom" type="xs:string" /> 
      <xs:element minOccurs="0" name="telephone" type="xs:string" /> 
      <xs:element minOccurs="0" name="adresseMail" type="xs:string" /> 
      <xs:element minOccurs="0" name="adresseWeb" type="xs:string" /> 
      </xs:sequence>
      </xs:complexType>
    + <xs:complexType name="resultat">
    + <xs:sequence>
      <xs:element name="succes" type="xs:boolean" /> 
      <xs:element minOccurs="0" name="message" type="xs:string" /> 
      </xs:sequence>
      <xs:attribute name="identifiant" type="xs:ID" use="required" /> 
      </xs:complexType>
    + <xs:simpleType name="typeEvenement">
    - <xs:restriction base="xs:string">
      <xs:enumeration value="Aucun" /> 
      <xs:enumeration value="Danse" /> 
      <xs:enumeration value="Musique" /> 
      <xs:enumeration value="TheatreEtSpectacle" /> 
      <xs:enumeration value="CultureEtArt" /> 
      <xs:enumeration value="ManifestationSportive" /> 
      <xs:enumeration value="ManifestationCommerciale" /> 
      <xs:enumeration value="TraditionEtFolklore" /> 
      <xs:enumeration value="NatureEtDetente" /> 
      <xs:enumeration value="ArtTerroirEtGastronomie" /> 
      <xs:enumeration value="PatrimoineEtHistoire" /> 
      <xs:enumeration value="Stages" /> 
      </xs:restriction>
      </xs:simpleType>
      </xs:schema>
      </types>
    + <message name="Manifestation_importerResponse">
      <part element="tns:importerResponse" name="importerResponse" /> 
      </message>
    + <message name="Manifestation_importer">
      <part element="tns:importer" name="importer" /> 
      </message>
    + <portType name="Manifestation">
    - <operation name="importer" parameterOrder="importer">
      <input message="tns:Manifestation_importer" /> 
      <output message="tns:Manifestation_importerResponse" /> 
      </operation>
      </portType>
    + <binding name="ManifestationBinding" type="tns:Manifestation">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
    - <operation name="importer">
      <soap:operation soapAction="" /> 
    - <input>
      <soap:body use="literal" /> 
      </input>
    - <output>
      <soap:body use="literal" /> 
      </output>
      </operation>
      </binding>
    + <service name="ManifestationService">
    - <port binding="tns:ManifestationBinding" name="ManifestationPort">
      <soap:address location="http://127.0.0.1:8080/XXX-WebServices/ManifestationService" /> 
      </port>
      </service>
      </definitions>
    et voici un exemple de code qui me créé l'erreur (dans ce morceau là je construit un tableau "contact" qui est passé en parametre dans le tableau " evenement" suivant.

    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
    $contact = array(
                             'nom'=>$contact,
                             'prenom'=>'',
                             'telephone'=>$telephone,
                             'adresseMail'=>$courriel,
                             'adresseWeb'=>$web,
                             );
     
     
     
    $evenement= array(
                 'dateModification'=>$date_modif,
                 'indicateurSupprime'=>$supprime,
                 'titre'=>$titre,
                 'dateDebut'=>$date_debut,	
                 'dateFin'=>$date_fin,
                 'codeInsee'=>$commune,
                 'adressePostale'=>$Lieu,
                 'adresseWeb' =>$web,
                 'typeEvenement'=>'NatureEtDetente',					'contact'=>$contact,					'descriptif'=>$description_evenement,
                 'adresseImage'=>$image,
    	'copyrightPhoto'=>'',	
                 'adresseOffice'=>'',						'adressesReservation'=>'',						'indicateurImportant'=>'',
                 'identifiant'=>$id,
                 'nom'=>$contact,
                 'prenom'=>'',
                 'telephone'=>$telephone,
                 'adresseMail'=>$courriel,
                 'adresseWeb'=>$web,
    	);
     
    $options = array('trace' => 1);
     
    try { 	$client->__soapCall('importer',$evenement, $options, $header );
     
    		} catch (SoapFault $soapFault) {
          			echo "Erreur : ".$soapFault;
    		}
    Je crois avoir à peu près tout essayer. Il y a certainement quelque chose qui m'échappe.

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

    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Une petite idée?
    Est-ce que quelqu'un saurait si je dois inclure les données de contact dans evenement ou bien si elles doivent être passées à la suite?

Discussions similaires

  1. Projet Web + .Net, Web services : problème d'arguments
    Par Freud44 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 19/08/2009, 10h03
  2. Web Service : problème de serialisation d'objets
    Par cfeltz dans le forum Silverlight
    Réponses: 2
    Dernier message: 25/05/2009, 15h10
  3. [Web Service][SOAP] complextype : SOAP-ERROR: Encoding: Violation of encoding
    Par maximep dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 02/04/2009, 11h32
  4. Réponses: 10
    Dernier message: 26/08/2008, 10h00
  5. Web Services - Problème de communication serveur/client
    Par vern's dans le forum Web & réseau
    Réponses: 9
    Dernier message: 27/08/2007, 10h06

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