On 10 January 2014 10:45, Tobias Zatti <tobi.zatti@gmail.com> wrote: > Am 09.01.2014 21:44, schrieb Richard Quadling: > > On 9 January 2014 16:21, Tobias Zatti <tobi.zatti@gmail.com> wrote: >> >> Hi! >>> >>> I have written a small php library for some SOAP functions in a wsdl file >>> and it works perfectly with PHP 5.4.16. >>> However, with version 5.5 the connection won't work, I get the following >>> error: >>> >>> SOAP-ERROR: Parsing WSDL: Couldn't load from 'https:// >>> <myServer>/query.jws?WSDL' : failed to load external entity "https:// >>> <myserver>/query.jws?WSDL" >>> >>> My old code looks like this: >>> >>> $this->soap = new SoapClient($this->getAPIURL(QUERY)); >>> return $this->sendSOAP('hello', $params); >>> >>> and, as already said it works perfectly fine on PHP 5.4. >>> >>> Now I found that on version 5.5 there is a new option "ssl_method". It >>> looks like it has no effect whatsoever, because the result is always the >>> same, regardless which option I put. Also the default value is the same >>> as >>> in PHP 5.4. >>> However, I changed my code to this but without success: >>> >>> try >>> { >>> $this->soap = new SoapClient($this->getAPIURL(QUERY), >>> array ( >>> "ssl_method" => "SOAP_SSL_METHOD_SSLv23" >>> ) >>> ); >>> } >>> catch (SoapFault $f) >>> { >>> print $f->faultstring; >>> } >>> >>> I am using php 5.5.6 via XAMPP on my Windows machine. >>> Does anyone have any idea what I might do wrong? Or could it be a bug in >>> the newest PHP version? >>> >>> Thanks and best regards >>> Tobias >>> >>> >> Can you add the trace and enable the exceptions. >> >> And with the catch, can just just var_dump($f) rather than just looking at >> the faultstring. >> >> >> Hi, > > with var_dump and trace the error looks like this: > > #0 SymAPI->hello(Array ([Input] => it works!)) called at > [C:\xampp2\htdocs\api\example.php:20] object(SoapFault)#3 (9) { > ["message":protected]=> string(190) "SOAP-ERROR: Parsing WSDL: Couldn't > load from 'https://test-api.geotrust.com/webtrust/query.jws?WSDL' : > failed to load external entity "https://test-api.geotrust. > com/webtrust/query.jws?WSDL" " ["string":"Exception":private]=> string(0) > "" ["code":protected]=> int(0) ["file":protected]=> string(41) > "C:\xampp2\htdocs\api\symantec_api-1.0.php" ["line":protected]=> int(483) > ["trace":"Exception":private]=> array(2) { [0]=> array(6) { ["file"]=> > string(41) "C:\xampp2\htdocs\api\symantec_api-1.0.php" ["line"]=> > int(483) ["function"]=> string(10) "SoapClient" ["class"]=> string(10) > "SoapClient" ["type"]=> string(2) "->" ["args"]=> array(2) { [0]=> > string(53) "https://test-api.geotrust.com/webtrust/query.jws?WSDL" [1]=> > array(1) { ["ssl_method"]=> string(21) "SOAP_SSL_METHOD_SSLv3" } } } [1]=> > array(6) { ["file"]=> string(32) "C:\xampp2\htdocs\api\example.php" > ["line"]=> int(20) ["function"]=> string(5) "hello" ["class"]=> string(6) > "SymAPI" ["type"]=> string(2) "->" ["args"]=> array(1) { [0]=> &array(1) { > ["Input"]=> string(9) "it works!" } } } } ["previous":"Exception":private]=> > NULL ["faultstring"]=> string(190) "SOAP-ERROR: Parsing WSDL: Couldn't load > from 'https://test-api.geotrust.com/webtrust/query.jws?WSDL' : failed to > load external entity "https://test-api.geotrust. > com/webtrust/query.jws?WSDL" " ["faultcode"]=> string(4) "WSDL" } > BACKTRACE: > #0 SymAPI->hello(Array ([Input] => it works!)) called at > [C:\xampp2\htdocs\api\example.php:20] > > I'm not sure how to enable exceptions, and I couldn't find anything > specific googling. > I think the var dump doesn't help that much. But I know that the wsdl is > based on WebLogic and supports SSLv3 and TLS1.0, so it should work with the > SOAP_SSL_METHOD_SSLv3 setting. > > > -- > PHP Soap Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > -- Richard Quadling Twitter : @RQuadling EE : http://e-e.com/M_248814.html Zend : http://bit.ly/9O8vFY