#1 27. 1. 2010 16:36

Petrr
Člen
Registrovaný: 27. 1. 2010
Příspěvky: 3

SOAP – jak vytvořit pole struktur

Dobrý den,

nedaří se mi zavolat metodu, jelikož její parametry vyžadují strukturu:

<soap_Body>
 <Nazev_metody xmlns="nejaka adresa">
   <Parametrs>
      <Web>
        <Name>aa</Name>
        <Value>bb</Value>
      </Web>
      <Web>
        <Name>cc</Name>
        <Value>dd</Value>
      </Web>
   </Parametr>
  </Nazev_metody>
<soap_Body>

Zkoušel jsem to takto, ale bez úspěchu:

class Web
{
    function Web($n,$h)
        {
                $this->Name= $n;
                $this->Value = $h;
        }

}
$pole[0] = new Web("aa","bb");
$pole[1] = new Web("cc","dd");

$result = $soap->__call('Nazev_metdy',$pole);

Při spuštění skritpu to na mě zakrčí toto:

Fatal error: Uncaught SoapFault exception: [soap:Server] Server was unable to process request. ---> Object reference not set to an instance of an object. in E:\Intranet\htdocs\prukazy\soap.php:89 Stack trace: #0 E:\Intranet\htdocs\prukazy\soap.php(89): SoapClient->__call('Nazev_metoda', Array) #1 {main} thrown in E:\Intranet\htdocs\prukazy\soap.php on line 89

Nevíte jak mám správně poslat parametry?

Offline

 

#2 27. 1. 2010 20:23

paranoiq
Člen
Místo: Tábor
Registrovaný: 14. 11. 2006
Příspěvky: 188

Re: SOAP – jak vytvořit pole struktur

to samé: http://forum.php7.org/…alizace-pole

řešení bohužel není. chybové hlášce předejdeš zabalením do SoapVar objektů, ale stejně se to nebude serializovat správně


Z Javy do PHP nikdy nic dobrého nepřišlo. / http://twitter.com/paranoiq

Offline

 

#3 27. 1. 2010 21:03

Petrr
Člen
Registrovaný: 27. 1. 2010
Příspěvky: 3

Re: SOAP – jak vytvořit pole struktur

To jsem četl a ve skrytu duše jsem doufal, že můj problém je lehce jiného ražení. Takže se mohu s řešením rozloučit :-( Co je myšleno že se to nebude serializovat. Jako že se to neprovede? Je to pro mne neznámé slovo. Jde mi o to tam poslat jen ty parametry. Nechci aby mi to vrátilo nějaké hodnoty.

Offline

 

#4 28. 1. 2010 8:35

paranoiq
Člen
Místo: Tábor
Registrovaný: 14. 11. 2006
Příspěvky: 188

Re: SOAP – jak vytvořit pole struktur

je to opravdu ten samý případ. to co je v tvém případě označeno jako element <Web> je u mě <ccc>. bohužel je, ze mě nepochopitelného důvodu, obrovský problém uvést několik stejně pojmenovaných elementů za sebou

provede se to, ale výsledek asi nebude takový jaký potřebuješ. dotaz se pravděpodobně odešle ve špatném formátu

krom PHP/SOAP jsem vyzkoušel i Zend/Soap. ten je na PHP/SOAP založen, takže výsledek je stejný. Pear/SOAP je neudržovaný. nuSOAP je pro PHP4 a neumí SOAP 1.2. takže ty jsem zavrhl rovnou

SOAP dotaz vyrábím ručně a odesílám pomocí CURL. je to zatím v mizerném stavu, takže zveřejnit to nemůžu :[


serializace = převod nějaké struktury na textový řetězec (tady na XML)

Editoval paranoiq (28. 1. 2010 8:36)


Z Javy do PHP nikdy nic dobrého nepřišlo. / http://twitter.com/paranoiq

Offline

 

#5 28. 1. 2010 8:43

Petrr
Člen
Registrovaný: 27. 1. 2010
Příspěvky: 3

Re: SOAP – jak vytvořit pole struktur

Děkuji za vyčerpávající odpověď. O CURL jsem něco slyšel (pouštět se do něj ale nebudu). No vypadá to, že v současné době asi řešení nikde není. Děkuji za reakci.

Offline

 

Zápatí