Předávání vnořených argumentů u SOAP požadavku rubrika: Programování: PHP

4 Blizard
položil/-a 6.11.2014

Dobrý den,

mám problém ohledně předání vnořených argumentů do metody. Zanořování sebe je zjevné dle proměnných. Přikládám pro jistotu i dokumentaci kde je to přehledněji rozepsáno, jakým způsobem by se to do sebe mělo zanořovat.
Dokumentace

      $TranRule = array(
            "RuleId" => 2,
            "Text" => "",
            "Value" => $totalPrice,
            );
        $TranItems = array(
            "ItemId" => 123,
            "Text" => "Zkušební položka č.1",
            "Amount" => 5, // Množství kusů
            "Price" => 125,
            );
        $Trans = array(
            "Card" => $customerID,         
            "Created" => date('Y-m-dTH:i:s'),         
            "Place" => "Dopnit identifikátor obchodního místa",
            "Seller" => "Doplnit identifikátor obsluhy",         
            "TranId" => uniqid(),
            "TranRules" => array("TranRule" => $TranRule),
            "TranItems" => array("TranItem" => $TranItems),
            );
        $parameters = array(
            "PartnerId" => self::PARTNER_ID,
            "Trans" => $Trans,
            );
 
        $response = $this->client->__soapCall("TranAdd", array("TranAddRequest" => $parameters)); 

Přikládám i XML které se generuje:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://gate.ibod.cz/v2/api.svc">
  <SOAP-ENV:Body>
   <ns1:TranAddRequest>
    <ns1:PartnerId>xxx</ns1:PartnerId>
    <ns1:Trans/>
   </ns1:TranAddRequest>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Partner ID se v pohodě přidá, ale v okamžiku kdy má dojít k zanořování argumentů se nic nepředá.

odkaz Vyřešeno
4 Blizard
odpověděl/-a 6.11.2014

Vyřešeno. Nebyly nastaveny namespace.

Pro plný přístup na Devel.cz se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.