php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #52081 SOAPClient makes calls, throws weird Exception anyway
Submitted: 2010-06-14 14:38 UTC Modified: 2010-06-14 22:26 UTC
From: jeroen at asystance dot nl Assigned:
Status: Not a bug Package: SOAP related
PHP Version: 5.3.2 OS: Linux (Debian/Ubuntu)
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: jeroen at asystance dot nl
New email:
PHP Version: OS:

 

 [2010-06-14 14:38 UTC] jeroen at asystance dot nl
Description:
------------
I'm trying to get a SOAPClient call to work which HAS worked (about half a year ago), but which now throws weird Exceptions, even though the call is made. Unzip http://jayvee.nl/soaptest.zip and open soaptest.php. (Note that the WSDL specifies a URL for the service which is on our development environment. You can use this URL if you want.)

The script tries to call the same operation four times. The different scenarios are:
a) WSDL specifies output, SOAPClient uses SOAP_WAIT_ONE_WAY_CALLS feature
b) WSDL specifies output, SOAPClient does NOT use SOAP_WAIT_ONE_WAY_CALLS feature
c) WSDL specifies NO output, SOAPClient uses SOAP_WAIT_ONE_WAY_CALLS feature
d) WSDL specifies NO output, SOAPClient does NOT use SOAP_WAIT_ONE_WAY_CALLS feature

In each case, a call IS MADE. However, in cases a-c, I get an Exception:
"SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'implementations/nsure/interface/WizBizzInterface.wsdl' : failed to load external entity "implementations/nsure/interface/WizBizzInterface.wsdl"
I have no idea where this path comes from. I _have_ used this in the past, but the test case does not use it. It seems this fault description has gotten stuck somewhere. I have disabled APC, checked for cached WSDLs in /tmp and rebooted the (virtual) machine, to no avail.

Case d returns NULL, which is correct (WSDL operation specifies NO output). Note that although the SOAPClient uses the same WSDL as in case c, now it is not complaining about an unfindable path.

I have tested this on PHP 5.2.13 (Ubuntu) and 5.3.2 (Debian), both using Suhosin patch, on Apache 2.2.x.


--
I really hope this gets fixed soon, because I need to take this into production in a month or two. However, since three other SOAP bug reports (49155, 49169, 49278) haven't been addressed for almost a year, I'm left wondering whether I should have spent time creating a fourth bug report instead of looking for an alternative (nuSOAP or something).

Test script:
---------------
Download http://jayvee.nl/soaptest.zip and run the php script.

Expected result:
----------------
Web service return parameter

Actual result:
--------------
SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'implementations/nsure/interface/WizBizzInterface.wsdl' : failed to load external entity "implementations/nsure/interface/WizBizzInterface.wsdl

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2010-06-14 15:31 UTC] jeroen at asystance dot nl
-Status: Open +Status: Closed
 [2010-06-14 15:31 UTC] jeroen at asystance dot nl
sorry, bogus bug report!
 [2010-06-14 22:26 UTC] srinatar@php.net
-Status: Closed +Status: Bogus
 [2010-06-14 22:26 UTC] srinatar@php.net
mark the bug as bogus to make it appropriate.
 
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Tue Oct 19 16:03:35 2021 UTC