Existence služby a vazba na registr


Existence služby

Existence webové služby v dané aplikaci systému flexideo je dána jejím jedinečným jménem ($nazevAkce) a výskytem složky s popisem služby. Popis služby slouží zároveň jako podklad pro zpracování požadavků na tuto službu.

Vedle pojmenovaných služeb existuje i "služba" univerzální, která funguje pomocí SOAP obálek předávajících standardní XML protokol flexideo serveru.

Podklady pro pojmenovanou službu jsou na webovém sídle ve složce:

[web:]/shared/actions/_transforms/{$podslozkaAkce}

Podsložka akce je uložena v registru akcí. Samotná webová služba je volána pomocí následujícího URL:

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

v postové části pak vždy musí být XML požadavek odpovídající specifikaci SOAP (konkrétně: http://schemas.xmlsoap.org/soap/envelope/). Proměnná $typVolani může nabývat následujících hodnot:

service

table

form

Server musí zajistit jednu z těchto hodnot. Pokud dojde k chybě, měl by server vrátit soap fault dle kategorie C (viz. řešení chyb). Typ volání je určující pro výběr šablony. Pokud jde o volání typu form, pak je použita jiná šablona než ve dvou zbývajících případech (viz. popis substepu).

[web:]/schemas/protocol.wsdl

jehož součástí je i schema, jež je též samostatně dostupné v souboru:

[web:]/schemas/protocol.xsd

Toto schema je prozatím jen základní a neobsahuje popis jednotlivých požadavků, nicméně je funkční a to díky použití definice xsd:any.

Viz. též popis formátů na vstupu a výstupu akcí zde.


Vazba na registr

Ke spuštění služby však nestačí její existence. Musí být též povolena v registru akcí obdobně, jako to ověřuje add-on. V případě služeb je však situace mírně modifikována v tom, že URL volání služby přesně uvádí, jaká akce má být provedena a retistr akcí slouží pouze k ověření dostupnosti pro uživatele, který o provedení žádá (vč. anonymního, který má pevně přidělenu jedinou roli).


Skladba ověřovacího dotazu

Ověřování dostupnosti v registru probíhá na základě dotazu s třemi proměnnými - první dvě jsou id uživatele a id role, třetí pak samotný název akce, která je požadována.


Umístění popisu služby

Výše zmíněný údaj sttn_trnfld určuje obsah hodnoty $podslozkaAkce, která se skládá z názvu podsložky akce a podsložky buildu vzájemě oddělené běžným lomítkem. Rovněž je zaručeno, že obsahuje pouze zn...


REST API

REST obecně má mít charakter orientovaný na data, nikoli na procedury. Ve flexideo tento přístup úplně třeba není, protože pomocí HTTP protokolu a XML požadavkům je možné s daty pracovat i ...


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