Re: parameters missing in WSDL!

From: Date: Tue, 16 Sep 2003 14:34:32 +0000
Subject: Re: parameters missing in WSDL!
References: 1  Groups: php.soap 
Request: Send a blank email to php-soap+get-1053@lists.php.net to get a copy of this message
Ok, I found that "any" WSDL type is not defined in parser, so I just copied case action from "element" in WSDL.php to get me my params! I also tweaked base.php to get xml attributes in my results. Anyone interested in updating/patching this library, let me know so I can send you diffs! Looka wrote:
Using WSDL on .NET (new SharePoint) server doesn't return me ALL available parameters for available methods! It kinda hangs after parameter type that is complex. Like this: My WSDL server returns this part:
      <s:element name="GetListItems">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="listName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="viewName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="query">
              <s:complexType mixed="true">
                <s:sequence>
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
            <s:element minOccurs="0" maxOccurs="1" name="viewFields">
              <s:complexType mixed="true">
                <s:sequence>
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
            <s:element minOccurs="0" maxOccurs="1" name="rowLimit" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="queryOptions">
              <s:complexType mixed="true">
                <s:sequence>
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>
And our SOAP client parses it like this: [name] => GetListItems
    [namespace] => s0
    [complex] => 1
    [elements] => Array
        (
            [listName] => Array
                (
                    [minOccurs] => 0
                    [maxOccurs] => 1
                    [name] => listName
                    [type] => string
                    [namespace] => s
                )
            [viewName] => Array
                (
                    [minOccurs] => 0
                    [maxOccurs] => 1
                    [name] => viewName
                    [type] => string
                    [namespace] => s
                )
            [query] => Array
                (
                    [minOccurs] => 0
                    [maxOccurs] => 1
                    [name] => query
                    [namespace] => s0
                )
        )
It 'hangs' after first complex (non-string) type, and happens on all methods! So i get only 3 available params instead of 6!!! I think it's bug in wsdl.php somewhere, and I'll look it up, but maybe someone knows what the problem is?? Thanks!
        Luka Jandric


« previous php.soap (#1053) next »