Tema: Re: php ir soap webservice
Autorius: Jornada Del Muerto
Data: 2012-10-09 16:37:33
    Viskas suejo siek tiek pataisius ir isanalizavus nusoap :) yra vienas bugas pas juos, tai liecia tik webservisus, veikiancius ant ne standartiniu portu, jeigu naudojasi ne standartinis http (80) ar https (443) portas, o jeigu portai defaultiniai tada is viso veikia be problemu.

    Planuoju apie tai straipsniuka parasyt, kaip ka sutvarkyti :) del to pakolkas nenoriu plestis cia.



"Audrys" <oginiekienoreikalaskokiadeze@takas.lt> wrote in message news:k4v3oq$g64$1@trimpas.omnitel.net...
> apie wireshark ir sniffinima girdejai?
> paziurek, kas ten ir kur nusisiuncia.
> be to microsoft webservice'e tuo paciu url'u tik be wsdl parametro 
> pademonstruoja net ir xml'us requestu, kokiu jis tikisi.
> 
> 
> "Jornada Del Muerto"  wrote in message 
> news:k4un6l$30j$1@trimpas.omnitel.net...
> 
> Sveiki,
> 
>    Prireike realizuot prisijungima ir querinima microsoftinio soap 
> webservice'o is PHP, prasikrusau va vakar bandydamas su SoapClient 
> (http://php.net/manual/en/class.soapclient.php) ir dar su nusoap ( 
> http://www.scottnichol.com/nusoapintro.htm ), del nusoap gal truko pavyzdzio 
> kaip tiksliai accessint standartini MS webservice'a...
> 
>    Pakolkas adekvataus rezultato taip ir nepavyko gauti. Jeigu kam teke 
> naudoti ir sekmingai tai pavyko padaryti, gal galit pasidalinti ka naudojot? 
> ar kokiu pavizdziu veikianciu :) Apie pati PHP SoapClient kiek skaiciau tai 
> ten daug liaudies rekia, kad yra kruvos bugu, nesusiderina su auksciausios 
> versijos WSDL ir t.t... O reikia greito/pigaus sprendimo :)
> 
>    Darau mazdaug taip:
> 
> try {
>  $client = new SoapClient(
>   "http://url:xxx/serviso-failas.asmx?WSDL"
>   ,array(
>    "trace" => 1,
>    "exceptions" => 1,
>    )
>   );
>         } catch (SoapFault $fault) {
>            $error = 1;
>            print("<p><b>Fault code: </b>".$fault->faultcode."<b>, Fault 
> string: </b>".$fault->faultstring.
>            "</p>");
> 
>   print_r($client);
>        }
> 
>  $functions = $client->__getFunctions();
>  echo '<textarea style="width:50%;float:left;" cols="20" rows="10">'; 
> print_r($functions); echo '</textarea>';
>  $types = $client->__getTypes();
>  echo '<textarea style="width:50%;float:left;" cols="20" rows="10">'; 
> print_r($types); echo '</textarea>';
> 
> Iki sicia viskas veikia, grazina tiek functions tiek types, bet kai tik 
> darau Web Metodo requesta taip ir gaunu errora, kad nepavyko prisijungt, 
> taip pat dar ir buna palaukimas lyg bandytu ir neiseitu pasijungt.
> 
> Tiesa pas mane webservisas su nestandartiniu portu, bet bandziau ir proxy 
> port SoapClient options nurodyti tai nieko gero, o parametrai 3 (kiek 
> skaiciau buna bugas kazkoks php su daugiau nei 2 parametrais) + vienas is ju 
> complex type, nors yra viens testinis metodas be parametru jokiu, tai su juo 
> irgi taspats darosi....
> 
> 
> P.S. Gal koki kita sprendima naudojat?
> 
> 
> JDM.
> 
>