php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #28985 __getTypes() returning nothing on complex WSDL
Submitted: 2004-07-01 17:26 UTC Modified: 2004-07-19 16:56 UTC
From: jp dot gouigoux at free dot fr Assigned: dmitry
Status: Closed Package: SOAP related
PHP Version: 5.0.0RC3 OS: Win2000
Private report: No CVE-ID:
 [2004-07-01 17:26 UTC] jp dot gouigoux at free dot fr
Description:
------------
I have two web services implemented in ASP.NET: number one uses only primitive types, number two uses arrays of specific objects. The WSDL generated for both is valid and correct. When I use var_dump($client->__getTypes()); for the first one, I indeed get the generated description of objects used by the web service. As for the second web service, nothing appears and the execution of my php page is stopped...

Reproduce code:
---------------
$client = new SOAPClient('http://localhost/SimpleService.asmx?WSDL',array('trace'=>1));
var_dump($client->__getTypes());

$client = new SOAPClient('http://localhost/ComplexTypeService.asmx?WSDL',array('trace'=>1));
var_dump($client->__getTypes());



Expected result:
----------------
array(10) { [0]=>  string(17) "struct Coucou { }" [1]=>  string(47) "struct CoucouResponse { string CoucouResult; }" [2]=>  string(38) "struct RenvoiSimple { string texte; }" [3]=>  string(59) "struct RenvoiSimpleResponse { string RenvoiSimpleResult; }" [4]=>  string(41) "struct StoreInSession { string valeur; }" [5]=>  string(64) "struct StoreInSessionResponse { boolean StoreInSessionResult; }" [6]=>  string(30) "struct RetrieveFromSession { }" [7]=>  string(73) "struct RetrieveFromSessionResponse { string RetrieveFromSessionResult; }" [8]=>  string(28) "struct RetrieveSessionId { }" [9]=>  string(69) "struct RetrieveSessionIdResponse { string RetrieveSessionIdResult; }" } 

THEN THE SAME THING FOR THE SECOND WEB SERVICE

Actual result:
--------------
array(10) { [0]=>  string(17) "struct Coucou { }" [1]=>  string(47) "struct CoucouResponse { string CoucouResult; }" [2]=>  string(38) "struct RenvoiSimple { string texte; }" [3]=>  string(59) "struct RenvoiSimpleResponse { string RenvoiSimpleResult; }" [4]=>  string(41) "struct StoreInSession { string valeur; }" [5]=>  string(64) "struct StoreInSessionResponse { boolean StoreInSessionResult; }" [6]=>  string(30) "struct RetrieveFromSession { }" [7]=>  string(73) "struct RetrieveFromSessionResponse { string RetrieveFromSessionResult; }" [8]=>  string(28) "struct RetrieveSessionId { }" [9]=>  string(69) "struct RetrieveSessionIdResponse { string RetrieveSessionIdResult; }" } 

(ONLY...)

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2004-07-06 09:50 UTC] dmitry@php.net
I cannpt reproduce the BUG.
Please, post your WSDL file here.
 [2004-07-12 08:47 UTC] jp dot gouigoux at free dot fr
Here is the first WSDL (the one that works fine):

<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://tempuri.org/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://tempuri.org/" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
      <s:element name="Coucou">
        <s:complexType />
      </s:element>
      <s:element name="CoucouResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="CoucouResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="RenvoiSimple">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="texte" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="RenvoiSimpleResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RenvoiSimpleResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="StoreInSession">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="valeur" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="StoreInSessionResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="StoreInSessionResult" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="RetrieveFromSession">
        <s:complexType />
      </s:element>
      <s:element name="RetrieveFromSessionResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RetrieveFromSessionResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="RetrieveSessionId">
        <s:complexType />
      </s:element>
      <s:element name="RetrieveSessionIdResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RetrieveSessionIdResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </types>
  <message name="CoucouSoapIn">
    <part name="parameters" element="s0:Coucou" />
  </message>
  <message name="CoucouSoapOut">
    <part name="parameters" element="s0:CoucouResponse" />
  </message>
  <message name="RenvoiSimpleSoapIn">
    <part name="parameters" element="s0:RenvoiSimple" />
  </message>
  <message name="RenvoiSimpleSoapOut">
    <part name="parameters" element="s0:RenvoiSimpleResponse" />
  </message>
  <message name="StoreInSessionSoapIn">
    <part name="parameters" element="s0:StoreInSession" />
  </message>
  <message name="StoreInSessionSoapOut">
    <part name="parameters" element="s0:StoreInSessionResponse" />
  </message>
  <message name="RetrieveFromSessionSoapIn">
    <part name="parameters" element="s0:RetrieveFromSession" />
  </message>
  <message name="RetrieveFromSessionSoapOut">
    <part name="parameters" element="s0:RetrieveFromSessionResponse" />
  </message>
  <message name="RetrieveSessionIdSoapIn">
    <part name="parameters" element="s0:RetrieveSessionId" />
  </message>
  <message name="RetrieveSessionIdSoapOut">
    <part name="parameters" element="s0:RetrieveSessionIdResponse" />
  </message>
  <portType name="Service1Soap">
    <operation name="Coucou">
      <input message="s0:CoucouSoapIn" />
      <output message="s0:CoucouSoapOut" />
    </operation>
    <operation name="RenvoiSimple">
      <input message="s0:RenvoiSimpleSoapIn" />
      <output message="s0:RenvoiSimpleSoapOut" />
    </operation>
    <operation name="StoreInSession">
      <input message="s0:StoreInSessionSoapIn" />
      <output message="s0:StoreInSessionSoapOut" />
    </operation>
    <operation name="RetrieveFromSession">
      <input message="s0:RetrieveFromSessionSoapIn" />
      <output message="s0:RetrieveFromSessionSoapOut" />
    </operation>
    <operation name="RetrieveSessionId">
      <input message="s0:RetrieveSessionIdSoapIn" />
      <output message="s0:RetrieveSessionIdSoapOut" />
    </operation>
  </portType>
  <binding name="Service1Soap" type="s0:Service1Soap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="Coucou">
      <soap:operation soapAction="http://tempuri.org/Coucou" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="RenvoiSimple">
      <soap:operation soapAction="http://tempuri.org/RenvoiSimple" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="StoreInSession">
      <soap:operation soapAction="http://tempuri.org/StoreInSession" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="RetrieveFromSession">
      <soap:operation soapAction="http://tempuri.org/RetrieveFromSession" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="RetrieveSessionId">
      <soap:operation soapAction="http://tempuri.org/RetrieveSessionId" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <service name="Service1">
    <port name="Service1Soap" binding="s0:Service1Soap">
      <soap:address location="http://gouigoux-jp/TestPHPSoap/Service1.asmx" />
    </port>
  </service>
</definitions>

And here is the second one, that generates the bug:

<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://tempuri.org/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://tempuri.org/" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
      <s:element name="LoginMGDIS">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iUserLogin" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iUserId" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iUserPassword" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iProfilId" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="LoginMGDISResponse">
        <s:complexType />
      </s:element>
      <s:element name="GetIdentification">
        <s:complexType />
      </s:element>
      <s:element name="GetIdentificationResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetIdentificationResult" type="s0:ArrayOfAnyType" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfAnyType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="anyType" nillable="true" />
        </s:sequence>
      </s:complexType>
      <s:element name="RollbackCurrentTransaction">
        <s:complexType />
      </s:element>
      <s:element name="RollbackCurrentTransactionResponse">
        <s:complexType />
      </s:element>
      <s:element name="GetListeProfil">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iUserLogin" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iUserPassword" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MGCodeLibelle">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Libelle" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Defaut" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="Tag" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfMGCodeLibelle">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MGCodeLibelle" nillable="true" type="s0:MGCodeLibelle" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetListeProfilResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetListeProfilResult" type="s0:ArrayOfMGCodeLibelle" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetListeValCodif">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfMGCodif">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MGCodif" nillable="true" type="s0:MGCodif" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MGCodif">
        <s:complexContent mixed="false">
          <s:extension base="s0:MGCodeLibelle" />
        </s:complexContent>
      </s:complexType>
      <s:element name="GetListeValCodifResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetListeValCodifResult" type="s0:ArrayOfMGCodif" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="TestPhpSoap">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="entree" type="s0:MGCodif" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="TestPhpSoapResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="TestPhpSoapResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetListeCodif">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="iGetListeValeur" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MGCodifGrp">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TypeCodif" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LibCodif" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ListeCodifs" type="s0:ArrayOfMGCodif" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfMGCodifGrp">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MGCodifGrp" nillable="true" type="s0:MGCodifGrp" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetListeCodifResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetListeCodifResult" type="s0:ArrayOfMGCodifGrp" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DroitCreation">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iObjet" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iProfil" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DroitCreationResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="DroitCreationResult" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ListeDroitCreation">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iListeObjet" type="s0:ArrayOfString" />
            <s:element minOccurs="0" maxOccurs="1" name="iProfil" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="ListeDroitCreationResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ListeDroitCreationResult" type="s0:ArrayOfAnyType" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetDroitsObjetProtege">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iObjet" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iProfil" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iUtilisateur" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MGDroitsObjetProtege">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="LbUti" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LbProf" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LbServ" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LbDir" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="isProtected" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="ListeDroitsAcces" type="s0:ArrayOfMGDroitAcces" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfMGDroitAcces">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MGDroitAcces" nillable="true" type="s0:MGDroitAcces" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MGDroitAcces">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="IdProfil" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Lecture" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="Modification" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="Suppression" type="s:boolean" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetDroitsObjetProtegeResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetDroitsObjetProtegeResult" type="s0:MGDroitsObjetProtege" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetPrivileges">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iIdSupport" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="iIdForme" type="s:int" />
            <s:element minOccurs="0" maxOccurs="1" name="iProfil" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetPrivilegesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPrivilegesResult" type="s0:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetLibelleProfil">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iIdProfil" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetLibelleProfilResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetLibelleProfilResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetValeurRecherche">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iChampSource" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iTable" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iOrderByClause" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetValeurRechercheResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetValeurRechercheResult" type="s0:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetValeurRechercheWithClauseWhere">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="iChampSource" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iTable" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iClauseWhere" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="iOrderByClause" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetValeurRechercheWithClauseWhereResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetValeurRechercheWithClauseWhereResult" type="s0:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetEnvironnement">
        <s:complexType />
      </s:element>
      <s:complexType name="MGEnvironnement">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="RepBureautique" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RepBureautiqueImage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RepBureautiqueDoc" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetEnvironnementResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetEnvironnementResult" type="s0:MGEnvironnement" />
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </types>
  <message name="LoginMGDISSoapIn">
    <part name="parameters" element="s0:LoginMGDIS" />
  </message>
  <message name="LoginMGDISSoapOut">
    <part name="parameters" element="s0:LoginMGDISResponse" />
  </message>
  <message name="GetIdentificationSoapIn">
    <part name="parameters" element="s0:GetIdentification" />
  </message>
  <message name="GetIdentificationSoapOut">
    <part name="parameters" element="s0:GetIdentificationResponse" />
  </message>
  <message name="RollbackCurrentTransactionSoapIn">
    <part name="parameters" element="s0:RollbackCurrentTransaction" />
  </message>
  <message name="RollbackCurrentTransactionSoapOut">
    <part name="parameters" element="s0:RollbackCurrentTransactionResponse" />
  </message>
  <message name="GetListeProfilSoapIn">
    <part name="parameters" element="s0:GetListeProfil" />
  </message>
  <message name="GetListeProfilSoapOut">
    <part name="parameters" element="s0:GetListeProfilResponse" />
  </message>
  <message name="GetListeValCodifSoapIn">
    <part name="parameters" element="s0:GetListeValCodif" />
  </message>
  <message name="GetListeValCodifSoapOut">
    <part name="parameters" element="s0:GetListeValCodifResponse" />
  </message>
  <message name="TestPhpSoapSoapIn">
    <part name="parameters" element="s0:TestPhpSoap" />
  </message>
  <message name="TestPhpSoapSoapOut">
    <part name="parameters" element="s0:TestPhpSoapResponse" />
  </message>
  <message name="GetListeCodifSoapIn">
    <part name="parameters" element="s0:GetListeCodif" />
  </message>
  <message name="GetListeCodifSoapOut">
    <part name="parameters" element="s0:GetListeCodifResponse" />
  </message>
  <message name="DroitCreationSoapIn">
    <part name="parameters" element="s0:DroitCreation" />
  </message>
  <message name="DroitCreationSoapOut">
    <part name="parameters" element="s0:DroitCreationResponse" />
  </message>
  <message name="ListeDroitCreationSoapIn">
    <part name="parameters" element="s0:ListeDroitCreation" />
  </message>
  <message name="ListeDroitCreationSoapOut">
    <part name="parameters" element="s0:ListeDroitCreationResponse" />
  </message>
  <message name="GetDroitsObjetProtegeSoapIn">
    <part name="parameters" element="s0:GetDroitsObjetProtege" />
  </message>
  <message name="GetDroitsObjetProtegeSoapOut">
    <part name="parameters" element="s0:GetDroitsObjetProtegeResponse" />
  </message>
  <message name="GetPrivilegesSoapIn">
    <part name="parameters" element="s0:GetPrivileges" />
  </message>
  <message name="GetPrivilegesSoapOut">
    <part name="parameters" element="s0:GetPrivilegesResponse" />
  </message>
  <message name="GetLibelleProfilSoapIn">
    <part name="parameters" element="s0:GetLibelleProfil" />
  </message>
  <message name="GetLibelleProfilSoapOut">
    <part name="parameters" element="s0:GetLibelleProfilResponse" />
  </message>
  <message name="GetValeurRechercheSoapIn">
    <part name="parameters" element="s0:GetValeurRecherche" />
  </message>
  <message name="GetValeurRechercheSoapOut">
    <part name="parameters" element="s0:GetValeurRechercheResponse" />
  </message>
  <message name="GetValeurRechercheWithClauseWhereSoapIn">
    <part name="parameters" element="s0:GetValeurRechercheWithClauseWhere" />
  </message>
  <message name="GetValeurRechercheWithClauseWhereSoapOut">
    <part name="parameters" element="s0:GetValeurRechercheWithClauseWhereResponse" />
  </message>
  <message name="GetEnvironnementSoapIn">
    <part name="parameters" element="s0:GetEnvironnement" />
  </message>
  <message name="GetEnvironnementSoapOut">
    <part name="parameters" element="s0:GetEnvironnementResponse" />
  </message>
  <portType name="MGServiceNoyauNETSoap">
    <operation name="LoginMGDIS">
      <input message="s0:LoginMGDISSoapIn" />
      <output message="s0:LoginMGDISSoapOut" />
    </operation>
    <operation name="GetIdentification">
      <input message="s0:GetIdentificationSoapIn" />
      <output message="s0:GetIdentificationSoapOut" />
    </operation>
    <operation name="RollbackCurrentTransaction">
      <input message="s0:RollbackCurrentTransactionSoapIn" />
      <output message="s0:RollbackCurrentTransactionSoapOut" />
    </operation>
    <operation name="GetListeProfil">
      <input message="s0:GetListeProfilSoapIn" />
      <output message="s0:GetListeProfilSoapOut" />
    </operation>
    <operation name="GetListeValCodif">
      <input message="s0:GetListeValCodifSoapIn" />
      <output message="s0:GetListeValCodifSoapOut" />
    </operation>
    <operation name="TestPhpSoap">
      <input message="s0:TestPhpSoapSoapIn" />
      <output message="s0:TestPhpSoapSoapOut" />
    </operation>
    <operation name="GetListeCodif">
      <input message="s0:GetListeCodifSoapIn" />
      <output message="s0:GetListeCodifSoapOut" />
    </operation>
    <operation name="DroitCreation">
      <input message="s0:DroitCreationSoapIn" />
      <output message="s0:DroitCreationSoapOut" />
    </operation>
    <operation name="ListeDroitCreation">
      <input message="s0:ListeDroitCreationSoapIn" />
      <output message="s0:ListeDroitCreationSoapOut" />
    </operation>
    <operation name="GetDroitsObjetProtege">
      <input message="s0:GetDroitsObjetProtegeSoapIn" />
      <output message="s0:GetDroitsObjetProtegeSoapOut" />
    </operation>
    <operation name="GetPrivileges">
      <input message="s0:GetPrivilegesSoapIn" />
      <output message="s0:GetPrivilegesSoapOut" />
    </operation>
    <operation name="GetLibelleProfil">
      <input message="s0:GetLibelleProfilSoapIn" />
      <output message="s0:GetLibelleProfilSoapOut" />
    </operation>
    <operation name="GetValeurRecherche">
      <input message="s0:GetValeurRechercheSoapIn" />
      <output message="s0:GetValeurRechercheSoapOut" />
    </operation>
    <operation name="GetValeurRechercheWithClauseWhere">
      <input message="s0:GetValeurRechercheWithClauseWhereSoapIn" />
      <output message="s0:GetValeurRechercheWithClauseWhereSoapOut" />
    </operation>
    <operation name="GetEnvironnement">
      <input message="s0:GetEnvironnementSoapIn" />
      <output message="s0:GetEnvironnementSoapOut" />
    </operation>
  </portType>
  <binding name="MGServiceNoyauNETSoap" type="s0:MGServiceNoyauNETSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="LoginMGDIS">
      <soap:operation soapAction="http://tempuri.org/LoginMGDIS" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetIdentification">
      <soap:operation soapAction="http://tempuri.org/GetIdentification" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="RollbackCurrentTransaction">
      <soap:operation soapAction="http://tempuri.org/RollbackCurrentTransaction" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetListeProfil">
      <soap:operation soapAction="http://tempuri.org/GetListeProfil" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetListeValCodif">
      <soap:operation soapAction="http://tempuri.org/GetListeValCodif" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="TestPhpSoap">
      <soap:operation soapAction="http://tempuri.org/TestPhpSoap" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetListeCodif">
      <soap:operation soapAction="http://tempuri.org/GetListeCodif" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="DroitCreation">
      <soap:operation soapAction="http://tempuri.org/DroitCreation" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="ListeDroitCreation">
      <soap:operation soapAction="http://tempuri.org/ListeDroitCreation" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetDroitsObjetProtege">
      <soap:operation soapAction="http://tempuri.org/GetDroitsObjetProtege" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetPrivileges">
      <soap:operation soapAction="http://tempuri.org/GetPrivileges" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetLibelleProfil">
      <soap:operation soapAction="http://tempuri.org/GetLibelleProfil" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetValeurRecherche">
      <soap:operation soapAction="http://tempuri.org/GetValeurRecherche" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetValeurRechercheWithClauseWhere">
      <soap:operation soapAction="http://tempuri.org/GetValeurRechercheWithClauseWhere" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetEnvironnement">
      <soap:operation soapAction="http://tempuri.org/GetEnvironnement" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <service name="MGServiceNoyauNET">
    <port name="MGServiceNoyauNETSoap" binding="s0:MGServiceNoyauNETSoap">
      <soap:address location="http://localhost/SoapSrvSOFI/MGServiceNoyauNET.asmx" />
    </port>
  </service>
</definitions>

Thanks for the help,

JP
 [2004-07-19 16:56 UTC] dmitry@php.net
Fixed in CVS HEAD.
 [2013-07-23 08:00 UTC] ab@php.net
Automatic comment on behalf of ab
Revision: http://git.php.net/?p=php-src.git;a=commit;h=9b6aa268a3ab431b7dcd592b922dbc399202e58d
Log: fixed bug #65311 testsuite failure due to incomplete fix to bug28985.phpt
 
PHP Copyright © 2001-2014 The PHP Group
All rights reserved.
Last updated: Thu Apr 17 03:01:55 2014 UTC