Dnes: 21. ledna 2018    | Registrace | Hledáme | Redakce | Info | Testy | Školení | Ocenění | Nápověda | Čtenář: nepřihlášen

Rychlé odkazy
  • Hlavní stránka
  • Seznam rubrik
  • Ankety
  • Editoriály
  • TOP 15
  • KONFERENCE 2008
  • KONFERENCE 2007
  • KONFERENCE 2006
  • KONFERENCE 2005
  • KONFERENCE 2004
  • Sborník
  • Testy
  • Virtuální školení
  • Personalizace


  • Hledáte práci?
    Hledáme redaktora - pojďte s námi tvořit Databázový svět!

    Vyhledávání

    Hledej
    na Databázovém světě!



    Rozšířené vyhledávání

    Rubriky
    Aktuality
    Bezpečnost
    Business
    Česká scéna
    Datové sklady
    Dokumentace
    Dotazovací jazyky
    Hardware
    Historie
    Komentáře
    Literatura
    Metodologie
    Nondb
    Open Source
    Poradna
    Produkty
    Případové studie
    Redakce
    Rozhovory
    Standardy
    Technologie
    Tipy - triky
    Tiskové zprávy
    Vývoj
    Vývojové nástroje
    Zajímavosti

    Co je to?
    SQL
    (Structured Query Language)

    Jedná se o neprocedurální jazyk, používaný v databázových technologiích. Počátky tohoto jazyka spadají do druhé poloviny minulého století.

    Akce
    Dynamická Datová Centra
    - na semináři se seznámíte s komplexním řešením a koncepcí Dynamických Datových Center od Fujitsu Siemens Computers se speciálním důrazem na řešení FlexFrame.

    Textová inzerce
    IBPhoenix - Vše o InterBase a Firebirdu.

    Smějete se rádi? - Pak je pro vás Vtipník to pravé!

    Prodejce reklamy - Hledáme schopného prodejce reklamního prostoru, možnost i externí spolupráce.

    Přihlášený čtenář
    Nepřihlášený čtenář

    O portálu
    Databázový svět
    ISSN: 1213-5933

    Web je optimalizován pro rozlišení 1024x768, nicméně kromě větších rozlišení podporujeme i 800x600. Podrobnosti najdete zde.

    Chcete-li mít kdykoliv možnost zkontrolovat obsah našeho portálu, můžete využít podporu rss. Podrobnosti najdete zde.
    Visual FoxPro a webové služby II.


    [Vývojové nástroje] - Ve druhém pokračování našeho čtyřdílného seriálu o webových službách a Visual FoxPro se zaměříme na Visual FoxPro v úloze konzumenta webové služby. Ukážeme si praktický příklad a podíváme se také na to, kde webovou službu vůbec najít.



    Co je potřeba?
    Základním předpokladem, aby aplikace Visual FoxPro mohla webovou službu použít je, že je nainstalován Microsoft SOAP Toolkit, nebo alespoň knihovna DLL. Ta obsahuje klienta SOAP. Toolkit se standardně dodává na CD s Visual FoxPro 8.0 a 9.0 nebo je možné jej stáhnout ze stránek společnosti Microsoft.

    Kde webovou službu najít?
    V předchozím pokračování jsme se zmínili o UDDI – protokolu k dohledávání existujících webových služeb. Tuto variantu využijeme, pokud nemáme konkrétní adresu na webovou službu, ale chceme si nějakou najít podle zaměření. Smyslem UDDI je ovšem i možnost zúčastnit se na "aktivní" straně: mít možnost publikovat a nabídnout nějakou webovou službu.

    Alternativou k UDDI pro "pasivní" účast je hledání například ve specializovaném registru. Tam se seznam veřejných webových služeb obohacuje průběžně. Získáváme tak širokou nabídku od služeb zaměřených na informace o počasí přes přístup ke kurzům měn až po specializované funkce k dohledávání zásilek u kurýrních přepravců.

    My se pro příklad konkrétní webové služby obrátíme na portál určený speciálně foxařům. Jde o foxcentral.net, který slouží k publikování novinek v oblasti Visual FoxPro. Adresa webové služby je http://www.foxcentral.net/foxcentral.wsdl.

    Jak na to?
    Vyzkoušíme dva způsoby – první využívá přednosti IntelliSense ve Visual FoxPro, druhý se více hodí při programování.

    Když známe adresu daného souboru WSDL, můžeme nakonfigurovat ve Visual FoxPro IntelliSense tak, aby se správně nastavil klient SOAP. Z nabídky Tools spustíme IntelliSense Manager. Přejdeme na záložku Types a stiskem tlačítka Web Services otevřeme dialog, ve kterém se přímo zadává adresa k WSDL. Ve Visual FoxPro 9.0 dialog vypadá takto:

    Dialog ve Visual FoxPro 9.0

    Tlačítko Register vygeneruje skript pro IntelliSense. IntelliSense Manager opustíme a skript využijeme v nově založeném program. V editoru do programu napíšeme:

    WS
    

    Klávesou Enter nebo mezerníkem přimějeme IntelliSense k zobrazení okna pro výběr požadované služby. Zvolíme službu "FoxCentral" a potvrdíme tlačítkem OK. IntelliSense vygeneruje následující kód pro konfiguraci klienta SOAP:

    LOCAL loWSfoxcentral AS "XML Web Service"
    * Do not remove or alter following line. 
    * It is used to support IntelliSense * for 
    * your XML Web service.
    *__VFPWSDef__: loWSfoxcentral = 
    * http://www.foxcentral.net/foxcentral.wsdl , 
    * foxcentral , foxcentralSoapPort
    LOCAL loException, loWSHandler
    TRY
    	loWSHandler = NEWOBJECT("WSHandler",;
    IIF(VERSION(2)=0,"",HOME()+"FFC\")+"_ws3client.vcx")
    	loWSfoxcentral = loWSHandler.SetupClient(;
    "http://www.foxcentral.net/foxcentral.wsdl",;
    "foxcentral", "foxcentralSoapPort")
    	* Type your XML Web service code here:
    	*   ex: leResult = loWSfoxcentral.somemethod()
    	
    CATCH TO loException
    	DO CASE
    	CASE VARTYPE(loWSfoxcentral)#"O"
    		* Handle SOAP error connecting to web service
    	CASE !EMPTY(loWSfoxcentral.FaultCode)
    		* Handle SOAP error calling method
    	OTHERWISE
    		* Handle other error
    	ENDCASE
    FINALLY
    ENDTRY
    

    V uvedeném programu můžeme nahradit řádek "Type your XML Web service code here:" např. voláním:

    ? loWSFoxCentral.GetItems({^2004-12-10},0,0,"ALL")
    

    Tím zobrazíme data ve formátu XML, která obsahují novinky na portálu foxcentral od 10.12.2004. Pro převedení XML do kurzoru DBF stačí použít funkci XMLTOCURSOR(), například následujícím příkazem:

    XMLTOCURSOR(loWSFoxCentral.GetItems({^2004-12-10},0,0,"ALL") ,;
     "FoxCentralNewsData" )
    

    Pak už stačí k prohlížení novinek obyčejný příkaz BROWSE. Webová služba FoxCentral poskytuje více než jen metodu GetItems a bližší popis najdete na internetu.

    Podobně jako FoxCentral nabízejí webové služby další zajímavé zdroje pro foxaře, například http://fox.wikis.com či http://www.universalthread.com. Přehled těchto i dalších zdrojů je ostatně přístupný přímo z prostředí Visual FoxPro – přes Task Pane na záložce Communities.

    Když už jsme zavadili o Task Pane, stojí za zmínku ještě jedna elegantní zkratka, jak zacházet s webovými službami, které máme zaregistrovány přes IntelliSense Manager. Zkratka vede přes Tool Box. Na záložce My XML Web Services jsou uvedeny všechny dosud zaregistrované webové služby a přístup k nim prostřednictvím programu zajistíme tak, že název webové služby přetáhneme myší rovnou do editorů programů. Do okna editoru se tím vygeneruje příslušný kód.

    Kromě poloautomatického způsobu, kdy jsme využili IntelliSense Manager, můžeme přistoupit k webovým službám i přímočařeji. Předpokládám, že mnozí čtenáři se automatickým vygenerováním mohou cítit ošizeni, protože není vidět pod pokličku. Zkusíme si tedy klienta SOAP zprovoznit bez pomoci IntelliSense.

    Kouzlo spočívá v tom, že umíme vyvolat klienta SOAP přímo z Visual FoxPro:

    oSOAP = CREATEOBJECT("MSSOAP.SoapClient")
    

    Pak stačí znát tu správnou metodu, která aktivuje webovou službu podle její adresy URL:

    oSOAP.MSSoapInit("http://foxcentral.net/foxcentral.wsdl")
    

    Protože už víme, která metoda z portálu FoxCentral vypíše novinky, zavoláme ji rovnou:

    ? oSOAP.GetItems({^2004-12-10},0,0,"ALL")
    

    Tentokrát – na rozdíl od poloautomatického postupu – nemáme k dispozici u objektu oSOAP nápovědu IntelliSense a obsluhu (názvy metod a způsoby volání) musíme zvládnout sami.

    O autorech
    Seriál připravují s Igorem Vítem ze společnosti Daquas také jeho kolegové Jan Vít a Petr Zaoral.

    Související články:
    Visual FoxPro a webové služby IV. (26.01.2005)
    Visual FoxPro a webové služby III. (19.01.2005)
    Visual FoxPro a webové služby I. (05.01.2005)

    ( Celý článek! | Autor: Igor Vít | Počet komentářů: 0 | Přidat komentář | Informační e-mailVytisknout článek )

    Vyhledávání
     

    Anketa
    Kolik ročně utratíte za dovolené?

    Nic 
     (1557 hl.)
    Do 1 000,- Kč 
     (1074 hl.)
    Do 10 000,- Kč 
     (1003 hl.)
    Do 25 000,- Kč 
     (1385 hl.)
    Do 50 000,- Kč 
     (1019 hl.)
    Do 75 000,- Kč 
     (1183 hl.)
    Více než 75 000,- Kč 
     (1022 hl.)

    Celkem hlasovalo: 8243


    Poslední komentáře
    frontierd@126.com
    frontierd@126.com
    frontierd@126.com
    c
    http://www.coachoutl

    Newsletter
    Přihlaste si nezávazně - i bez registrace - odběr informačního newsletteru. Podrobné informace najdete zde.

    Emailová adresa:


    Kalendář
    <<  Leden  >>
    PoÚtStČtSoNe
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    

    Redakci připojuje


    Nejčtenější

    Databáze je prázdná!


    Nejvíce komentářů

    Databáze je prázdná!


    Reklama






    Nenechte si ujít články na dalších webech




    Na této stránce použité názvy programových produktů, firem apod. mohou být ochrannými známkami
    nebo registrovanými ochrannými známkami příslušných vlastníků.

    Databázový svět | dfKlub - digitální fotografie | Vtipník - vtipy přímo k Vám | Reminder - přestaňte zapomínat | Databázový svět

    Copyright (c) 2004 AVRE Publishing, spol. s r.o. Všechna práva vyhrazena