I am consuming a SOAP web service using php5\'s soap extension. The service\' wsdl was generated using Axis java2wsdl, and whatever options are used during generation result in
You might want to try overriding the hostname/port using the $options array that you can pass as the second argument to SoapClient's constructor:
$client = new SoapClient("some.wsdl",
array('proxy_host' => "https://example.org",
'proxy_port' => 443);
If you can't find a more elegant solution, you can always download the file, do the string replacements, then use that as the WSDL.
$cached_wsdl_file = './cached_wsdl.xml';
if (filemtime($cached_wsdl_file) > time() - 3600) {
$wsdl = file_get_contents('http://server/service?wsdl');
$wsdl = str_replace('server:80', 'server', $wsdl);
file_put_contents($cached_wsdl_file, $wsdl);
}
$client = new SoapClient($cached_wsdl_file);