Úvod, příklad

Služby, které felxideo server zpracovává jsou volány nikoli přes rozhraní solve, jako běžné požadavky flexideo XML protokolu, ale přes rozhraní soap. Základní syntaxe get části HTTP požadavku má následující formu:

https://{flexideo}/soap/{$typVolani}[/{$nazevAkce}]

Význam typu volání a názvu akce viz. další část.

Zde se podíváme na příklad, kde budeme spouštět službu na zpracování platby. Služby jsou v systému flexideo tvořeny jako transformační akce. Nemusí nás zajímat jak konkrétně je platba zpracovávána, podstatné je, že jde o interní typ akce, ke kterému je zapotřebí dodat pdk-list tedy seznam vstupních primárních klíčů plateb, které chceme zpracovat.

Jako každá služba volaná přes HTTP protokol může mít a má dvě základní části - GET s odkazem a POST obsahující SOAP Envelope.

Adresa pro odeslání požadavku get:

example
https://muj-web.cz/soap/table/platby_zpracovani_4567

Obsah obálky, s požadavkem na zpracování plateb 123 a 124 pak může vypadat takto (post):

example
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:fxd="http://www.flexideo.com/actions/inner">
<env:Header/>
<env:Body>
<fxd:run-action name="platby_zpracovani_4567">
<fxd:params/>
<fxd:pdk-list>
<fxd:item type="platba" vtype="" pdk="123"/>
<fxd:item type="platba" vtype="" pdk="124"/>
</fxd:pdk-list>
</fxd:run-action>
</env:Body>
</env:Envelope>

Obsah obálky s odpovědí platby zpracování 4567 pak může vypadat takto (post):

Uzel act:redirect

example
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:act="http://www.flexideo.com/actions/inner">
<env:Header/>
<env:Body>
<act:action-response name="platby_zpracovani_4567">
<act:output-page/>
<act:redirect to-page-id="dynamic" by="dialog">
<act:param name=""value=""/>
<act:act:redirect>
</act:output-page>
</act:action-response>
</env:Body>
</env:Envelope>

Interní služby volané typem table a form mají vždy předem pevně danou strukturu popsanou schematem interních akcí. Akce však mohou být definovány i volně a pak má každá své vlastní schema. Oba typy interní i volně definované akce mají ve svých složkách svůj WSDL popis (viz popis akcí).

Server flexideo přiděluje seancím jedinečný identifikátor, který vepisuje do atributu session kmenového uzlu při běžné komunikaci dle interního protokolu. Při posílání požadavku přes soap bránu je možné na tento session navázat a v rámci stejné seance odeslat i požadavek na webovou službu tak, že se session umístí do kmenového tagu.

V další části rozebereme, bližší význam a strukturu volání ve vazbě na to, jak jsou služby v systému registrovány.


Úvod, příkladExistence služby a vazba na registrPopis settings.mxlŘešení chybObecný komunikační protokol akcíPřehled URITyp asi:emailPomocné typy