ID:               40922
 User updated by:  php dot ajr at vitalphone dot net
 Reported By:      php dot ajr at vitalphone dot net
-Status:           Feedback
+Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: Mandriva Linux 2007.0
 PHP Version:      5.1.6
 Assigned To:      dmitry
 New Comment:

Hello,

Thanks for your response. My ticket laies down as a real fact. We are
study the source code before open it.

We are look the parse_packet_soap.c code and it decodes the packet from
the .Net Webserver in using the WSDL schema and none the schema into
this packet.

If you want to test it. We have an URL to a sample PHP module. Please
send me an e-mail to forward this URL and give me an public IP address
if you want test this module at your office.

Best regards.

JR ATHANASE


Previous Comments:
------------------------------------------------------------------------

[2007-04-04 11:27:53] [EMAIL PROTECTED]

Nor WSDL neither webservice, that you provided, work for me.
Please provide full-functional example, that I'll able to test
locally.

BTW I don't think ext/soap will so smart to support such feature
automatic. Do you know any W3C or MSFT standards about it?


------------------------------------------------------------------------

[2007-03-31 16:10:48] php dot ajr at vitalphone dot net

Best category about this bug or featur

------------------------------------------------------------------------

[2007-03-26 15:00:43] php dot ajr at vitalphone dot net

Removed version at the first time.

------------------------------------------------------------------------

[2007-03-26 14:42:11] php dot ajr at vitalphone dot net

Description:
------------
Hi,

Our script are using PHP5/SOAP functionality. It interoperates with
.Net Webservices. The server WSDL does not content the description of
object properties. The Microsoft Server return the XML Schema for the
object properties into the response with the data in the "Diffgr"
contener like :

<xs:element name="InfoEligibilite">
-<xs:complexType>
--<xs:sequence>
---<xs:element name="offercode" type="xs:string"/>
---<xs:element name="bandwidthadsl1" type="xs:string"/>
---<xs:element name="bandwidthadsl2plus" type="xs:string"/>
---<xs:element name="upload" type="xs:string"/>
---<xs:element name="accesstype" type="xs:string"/>
--</xs:sequence>
-</xs:complexType>
</xs:element>

and

<diffgr:diffgram>
-<WSSignup_Dataset>
--<InfoEligibilite diffgr:id="InfoEligibilite1" msdata:rowOrder="0">
---<offercode>DSLFMTIF</offercode>
---<bandwidthadsl1>6048</bandwidthadsl1>
---<bandwidthadsl2plus>14528</bandwidthadsl2plus>
---<upload>256</upload>
---<accesstype>SHARED</accesstype>
--</InfoEligibilite>
--<InfoEligibilite diffgr:id="InfoEligibilite2" msdata:rowOrder="1">
---<offercode>DSLFMDTTIF</offercode>
---<bandwidthadsl1>6048</bandwidthadsl1>
---<bandwidthadsl2plus>14528</bandwidthadsl2plus>
---<upload>256</upload>
---<accesstype>FULL</accesstype>
--</InfoEligibilite>
-</WSSignup_Dataset>
</diffgr:diffgram>

The parse_packet_soap.c programm decodes the object properties only
from the WSDL schema, see the lines between 257 and 342. For the
compatibility with all webservice form, it is necessary to add the
property decoding from the response XML schema.


Reproduce code:
---------------
    $client = new 
SoapClient('http://test.isdbwssignup.telecomitalia-entreprises.fr/WSSignup.asmx?WSDL',
                    array('trace' => 1, 'soap_version'  => SOAP_1_1));

    $resultat = $client->GetInfoEligibility($parametres);
    //
    // Affichage du resultat
    //
    echo '</br />Analyse du resultat</br />';
    var_dump($resultat);


Expected result:
----------------
<diffgr:diffgram>
-<WSSignup_Dataset>
--<InfoEligibilite diffgr:id="InfoEligibilite1" msdata:rowOrder="0">
---<offercode>DSLFMTIF</offercode>
---<bandwidthadsl1>6048</bandwidthadsl1>
---<bandwidthadsl2plus>14528</bandwidthadsl2plus>
---<upload>256</upload>
---<accesstype>SHARED</accesstype>
--</InfoEligibilite>
--<InfoEligibilite diffgr:id="InfoEligibilite2" msdata:rowOrder="1">
---<offercode>DSLFMDTTIF</offercode>
---<bandwidthadsl1>6048</bandwidthadsl1>
---<bandwidthadsl2plus>14528</bandwidthadsl2plus>
---<upload>256</upload>
---<accesstype>FULL</accesstype>
--</InfoEligibilite>
-</WSSignup_Dataset>
</diffgr:diffgram>


Actual result:
--------------
object(stdClass)#3 (1) { ["GetInfoEligibilityResult"]=> 
object(stdClass)#4 (1) { ["any"]=>  string(10418)
"DSLFMTIF604814528256SHAREDDSLFMDTTIF604814528256FULL" } } 


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=40922&edit=1

Reply via email to