Autor | Zpráva | ||
---|---|---|---|
m.k_k Profil * |
#1 · Zasláno: 6. 2. 2009, 12:47:47
Dobrý den,
chtěl bych se zeptat jestli by mě někdo nemohl nasměrovat, kde by mohla být chyba. Mám webovou službu napsanou v C#: <%@ WebService Language="C#" Class="TestServicePHP.Aritmetika"%> using System.Web.Services; namespace TestServicePHP { [WebService(Namespace = "http://www.kalkulace.com/")] public class Aritmetika { [WebMethod] public int Soucet(int a, int b) { return a + b; } [WebMethod] public int Rozdil(int a, int b) { return a - b; } } } a snažím se jí zavolat z PHP: <? $SOAPclient = new SoapClient("http://localhost/TestService.asmx?wsdl"); print_r($SOAPclient->__getFunctions()); ?> Už samotná inicializace mi neprojde (a tudíž to ani nevypíše pole s funkcemi). Hází to následující hlášení: Warning: SoapClient:confused smileyoapClient(http://www.kalkulace.com/TestService.asmx?wsdl) [function.SoapClient-SoapClient]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\webs\colis\php\--mk--\Service\TestPHP.php on line 2 Warning: SoapClient:confused smileyoapClient() [function.SoapClient-SoapClient]: I/O warning : failed to load external entity "http://www.kalkulace.com/TestService.asmx?wsdl" in C:\webs\colis\php\--mk--\Service\TestPHP.php on line 2 Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.kalkulace.com/TestService.asmx?wsdl' : failed to load external entity "http://www.kalkulace.com/TestService.asmx?wsdl" in C:\webs\colis\php\--mk--\Service\TestPHP.php:2 Stack trace: #0 C:\webs\colis\php\--mk--\Service\TestPHP.php(2): SoapClient->SoapClient('http://www.kalk...') #1 {main} thrown in C:\webs\colis\php\--mk--\Service\TestPHP.php on line 2 Už se s tím trápím 2 dny a motám se pořád dokola. Když doplním odkaz na nějakou existující službu např. "http://soap.search.msn.com/webservices.asmx?wsdl" tak vše proběhne v pořádku. Když volání změním na non-wsdl: $SOAPclient = new SoapClient(null, array("location" => "http://localhost/TestService.asmx", "uri" => "http://localhost")); $SOAPclient->__soapCall('Soucet', array(3, 2)); echo $SOAPclient->Soucet(3, 2); tak inicializace proběhne OK a chybu mi to vyhodí na řádku 2 (__soapCall...) Fatal error: Uncaught SoapFault exception: [HTTP] Not Found in C:\webs\colis\php\--mk--\Service\TestPHP.php:2 Stack trace: #0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://www.kalk...', 'http://www.kalk...', 1, 0) #1 C:\webs\colis\php\--mk--\Service\TestPHP.php(2): SoapClient->__soapCall('Soucet', Array) #2 {main} thrown in C:\webs\colis\php\--mk--\Service\TestPHP.php on line 2 Prosím o jakoukoliv radu nebo nasměrování. Ještě přikládám odkaz na http://source.php5.cz/TestService.wsdl Díky MartinK |
||
AM_ Profil |
#2 · Zasláno: 6. 2. 2009, 18:58:57
Tvrdí to, že adresu http://www.kalkulace.com/TestService.asmx?wsdl to nemůže najít (taky opravdu neexistuje). Ve WebServisech se moc nevyznám, ale nemusíš namespace taky změnit na localhost než to pustíš do světa?
|
||
Časová prodleva: 3 dny
|
|||
m.k_k Profil * |
#3 · Zasláno: 9. 2. 2009, 08:23:18
Já mám vše a testuji na lokálu. Adresu www.kalkulace.com mám v hosts přesměrovanou k sobě. V tom problém asi nebude.
|
||
Časová prodleva: 15 let
|
0