2010-08-27 82 views
0

PHP版本:5.3.3使用soap客户端时获取Uncaught SoapFault异常

我正在使用SOAP扩展从Web api中提取数据。在下面你可以看到我的连接细节。当它到达第3行我得到一个错误:

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://www.global1.autotask.net/atservices/1.2/atws.wsdl' : failed to load external entity "https://www.global1.autotask.net/atservices/1.2/atws.wsdl" in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php:5 Stack trace: #0 C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php(5): SoapClient->SoapClient('https://www.glo...', Array) #1 {main} thrown in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php on line 5 

这里是我的连接细节:

$wsdl = 'https://www.global1.autotask.net/atservices/1.2/atws.wsdl'; 
$loginarray = array('login' => "[email protected]", 'password' => "******", 'uri'=>"http://autotask.net/ATWS/v1_2/", 'location'=>"https://global1.autotask.net/atservices/1.2/atws.asmx"); 
$client = new SoapClient($wsdl, $loginarray); 

我GOOGLE了,看到它可能与SOAP扩展的错误吗?

我已经取消注释:

extension=php_soap.dll 

在php.ini文件。我也确保我的允许URL fopen设置为:

allow_url_fopen = On 

任何人都知道我如何解决这个问题?也许我忘了做点什么?

感谢,

比利

回答

1

首先,我建议你在Autotask Community网站(community.autotask.com)上发布一个问题,因为那里有很多非常熟悉Autotask特定事物的资源。

您使用的URL对于WebServices访问不正确。如果您使用https://webservicesg1.autotask.net/atservices/1.2/atws.wsdl是否有效?

特拉维斯

0

1)它工作正常的我。我可以加载,甚至不需要密码。那么,这个问题发生在一些PHP/Soapclient版本中。我建议你将PHP升级到最新版本。

2)如果它仍然不适合你,请尝试NuSoap。这也非常棒。

+0

我已经在版本5.3.3已经 – iamjonesy 2010-08-27 13:24:32