|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #31695 Cannot redefine endpoint when using WSDL
Submitted: 2005-01-25 23:16 UTC Modified: 2005-03-23 08:14 UTC
From: adam at trachtenberg dot com Assigned: dmitry (profile)
Status: Closed Package: Feature/Change Request
PHP Version: 5.0.3 OS: n/a
Private report: No CVE-ID: None
 [2005-01-25 23:16 UTC] adam at trachtenberg dot com
The SOAP extension does not allow you to both use a WSDL file and specify a custom endpoint. Some SOAP servers, including eBay, set a generic endpoint in their WSDL, and require the developer to override it with custom data.

By endpoint, I mean the location field as described here:

Reproduce code:
$client = new SoapClient('some.wsdl', array('location' => 'http://localhost/soap.php'));

It is also necessary to have a setLocation() method, because it's common to need to modify the endpoint/location from request to request. Without this, the developer would need to create a second instance of SoapClient with the same WSDL.


Expected result:
The location from the WSDL is set to http://localhost/soap.php instead of what's in the file.

Actual result:
The location parameter is ignored.


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2005-03-23 08:14 UTC]
Fixed in CVS HEAD and PHP_5_0.

It is possible to redefine endpoint through:

1. "location" option in SoapClient constructor
2. "location" option in SoapClient::__soapCall() method
3. SoapClient::__setLocation() method

PHP Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Fri Apr 19 19:01:25 2019 UTC