2012-03-27 8 views
1

PHP SoapClientを使用してWCFからWSDLを使用しようとしています。次のコードを使用している場合PHP SoapClientを使用して、http:// localhostからhttp://mysite.comへXSDをチャンドしようとしています

$client = new SoapClient('http://subdomain.xxxxxxx.com:7575/?WSDL'); 

は、私は次のエラーを取得:WSDL WSDLを使用している特定のポートのためのサービス構成ファイルについては

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load  from 'http://localhost:7575/?wsdl=wsdl0' : failed to load external entity "http://localhost:7575/?wsdl=wsdl0" 

を指定:

<host> 
     <baseAddresses> 
     <add baseAddress="net.tcp://localhost:7574" /> 
     <add baseAddress="http://localhost:7575" /> 
     </baseAddresses> 
    </host> 

問題は、WSDLがwsdl = wsdl0ファイルのためにhttp://localhost:7575にリダイレクトされていることです...すべてのXSDの位置もリストされていますhttp://localhost:7575.... PHPソープあなたがそれを変更するために使用できる関数http://subdomain.xxxxxxx.com:7575/?wsdl=wsdl0

答えて

0

WCFサービスを管理している場合、「フラット化された」WSDLを生成するように設定する方が簡単かもしれません。このSO question & answerは、それを単一のWSDLドキュメントに設定する方法を説明しています。

これが可能でない場合は、単一のWSDLドキュメントを手動で構築してサイトにホストしてPHPクライアントがそのまま使用できるようにすることができます。

関連する問題