Re: [SOAP] SOAPClient authentication problem

[email protected] (David Zülke)
Newsgroups php.internals,php.soap
Message-ID <[email protected]>
On 24.07.2009, at 12:45, Davide Romanini wrote:

> David Zülke ha scritto:
>> Can do, but I wanted to figure out a way to create a reproduce case
>> first (I already have an idea).
>>
>> - David
>>
>>
>>
>> On 24.07.2009, at 12:20, Dmitry Stogov wrote:
>>
>>> Hi David,
>>>
>>> Please report a bug on bugs.php.net (assign it to dmitry).
>>> I'll look into it later.
>>>
>>> Thanks. Dmitry.
>>>
>>> David Zülke wrote:
>>>> This sounds like a serious issue, but I'm not sure if it's in  
>>>> libxml or

[ 8< ]

> It's really simple to reproduce. Take this example wsdl:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:sch="http://mycompany.com/hr/schemas"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:tns="http://mycompany.com/hr/schemas"
> targetNamespace="http://mycompany.com/hr/schemas">
>  <wsdl:types>
>    <xs:schema xmlns:hr="http://mycompany.com/hr/schemas"
> xmlns:xs="http://www.w3.org/2001/XMLSchema"
> elementFormDefault="qualified"
> targetNamespace="http://mycompany.com/hr/schemas">
>    <xs:import namespace="http://www.w3.org/XML/1998/namespace"
> schemaLocation="http://www.w3.org/2001/xml.xsd"/>

[ 8< ]

> </wsdl:definitions>
>
>
> The important part is
>
> <xs:import namespace="http://www.w3.org/XML/1998/namespace"
> schemaLocation="http://www.w3.org/2001/xml.xsd"/>
>
> I just copied this file in my local apache doc root and tried to run
> this script:
>
> <?php
> $client = new SoapClient("http://localhost/test/holiday.wsdl",
>                       array( 'trace' => TRUE,
>                              'login'=>'mylogin',
>                              'password'=>'secret'
>                            )
>                      );
> ?>
>
> And the output is:
>
> Warning: SoapClient::SoapClient(http://www.w3.org/2001/xml.xsd):  
> failed
> to open stream: HTTP request failed! HTTP/1.1 401 Authorization  
> Required
> in /home/romaz/tmp/soapFail.php on line 7
>
> Warning: SoapClient::SoapClient(): I/O warning : failed to load  
> external
> entity "http://www.w3.org/2001/xml.xsd" in /home/romaz/tmp/ 
> soapFail.php
> on line 7
>
> Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing
> Schema: can't import schema from 'http://www.w3.org/2001/xml.xsd' in
> /home/romaz/tmp/soapFail.php:7
> Stack trace:
> #0 /home/romaz/tmp/soapFail.php(7):
> SoapClient->SoapClient('http://localhos...', Array)
> #1 {main}
>  thrown in /home/romaz/tmp/soapFail.php on line 7
>
> Note that login and password here are completely useless, because on  
> my
> local apache I haven't any access restriction.
>
> Bye,
> Davide

Yes, thanks, I realize that, but I need to test it in a .phpt unit  
test, which is a bit trickier. But as I said, I already have an idea.  
Will do it this later and open a ticket.

- David
smime.p7s (application/pkcs7-signature, 2.4 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.