Delphi6 és webszolgáltatások

Ebben a cikkben visszatérünk a webszolgáltatások témájához, amelyet sokszor megvitattunk, ami a webes alkalmazások integrálásának technológiája. Ma megnézzük, hogyan használhatjuk a Borland Delphi 6 által létrehozott Windows-alkalmazásokban a webszolgáltatásokat, és hogyan lehet saját webes szolgáltatásokat létrehozni ugyanazzal a fejlesztő eszközzel. Ne feledje, hogy a cikk írásakor a Visual Studio .Net végleges változatának megjelenése a közeljövőben várható, a Delphi 6 az egyetlen fejlesztőeszköz, amely támogatja a webszolgáltatások létrehozását.

Ne feledje azonban, hogy a WWW fejlődése nem állt meg webalkalmazásokkal. A világ különböző országaiban jelenleg működő vállalkozások közötti kölcsönös integráció elkerülhetetlenül magában foglalja a kiszolgáló alkalmazások és a vállalati információs rendszerek integrálásának technológiáit és szabványait. Az ilyen integrációra a legnépszerűbb technológia ma az XML formátumban (eXtensible Markup Language) keresztül történő adatcsere a Simple Object Access Protocol (SOAP) segítségével és az ilyen adatcserét igénybe vevő webes szolgáltatások létrehozása.

Mivel a webszolgáltatások viszonylag új technológiák, még mindig túl korai, hogy beszéljenek használatuk támogatásáról, és különösen a komponensek, osztályok vagy szakértők szintjén történő létrehozásukról, mindenki számára kivétel nélkül fejlesztési eszközök létrehozásáért. Ne feledje azonban, hogy az ilyen fejlesztési eszközök már elérhetők vagy a közeljövőben megjelenhetnek. Különösen a webszolgáltatások létrehozását támogatja a Delphi 6, amely ezen a nyáron jelent meg. Az alábbiakban két egyszerű példát fogunk szemléltetni, amelyek illusztrálják a webes szolgáltatások használatának és létrehozásának lehetőségeit ezen a nagyon népszerű fejlesztőeszköz segítségével. Feltételezzük, hogy a Delphi-t használó alkalmazások létrehozásával az olvasók már ismertek.

A webszolgáltatás használata az alkalmazásban

Először futtassa a Delphi 6-ot, és hozzon létre egy projektet egy normál Windows alkalmazáshoz. Ezután a File | Új | Egyéb, nyissa meg az objektumtárat, és válassza ki a Web Sertvice Importőr ikont a Web Services oldalon.

Mint látjuk, a használt webszolgáltatás hat olyan módszert alkalmaz, amelyek különböző hőmérsékleti skálákat alakítanak egymásba. Használjuk az egyikük - FahrenheitToCelsius leképezi a hőmérséklet Fahrenheit a megfelelő értéket Celsius-fok (kedvenc feladata az orosz állampolgárok tanul időjárás-előrejelzés segítségével amerikai oldalak). A létrehozott modult a fő alkalmazási űrlappal társított modulról a File | segítségével használjuk Használja a készüléket.

Ezután gondoskodnia kell a webszolgáltatás távoli aktiválásáért felelős objektum alkalmazásában való jelenlétről, és ezért tárolja a helyét. Ebből a célból a Web Services oldalán lévő komponens paletta tartalmaz egy THTTPRIO nevű összetevőt (a RIO a Remote Invokable Object kifejezést jelenti). Tegye ezt az összetevőt az űrlapra, és hozzárendelje a WSDL webszolgáltatás leírás URL címének WSDLLocation tulajdonságához. Ezt követően próbálja meg létrehozni az érték egy ingatlan Service (az ingatlan tartalmaz egy listát a felületek által nyújtott Web-service - nevük már a generált interface modul), vagy ingatlan Port (tartalmazza a port nevét meghatározott WSDL-fájlt, és meghatározza a helyét a web-szolgáltatást, és a hivatkozott protokoll). A fejlesztői környezet ismét hivatkozik a webszolgáltatás WSDL-leírására, amely alapul szolgál a szolgáltatás helyének és a kapcsolódási pontoknak. Itt található egy olyan WSDL fájl egy része, amely tartalmazza ezeket az információkat:

[hiba történt az irányelv feldolgozása során]

Ezt követően a szolgáltatás és a port tulajdonságai kiválaszthatók a legördülő listából.

Vegye figyelembe, hogy egyes esetekben nem használhatja a WSDL leírást, hanem egyszerűen adja meg a webszolgáltatás URL-címét az URL tulajdonságban, és kézzel írja be a Szolgáltatás és a port tulajdonságait.

A következő lépés egy felhasználói felület létrehozása az ügyfélalkalmazásunkhoz. Egyszerű: egy mező a kezdeti érték beírásához, egy címke az eredmények megjelenítéséhez, és egy gomb, amelyet megnyomnak a webszolgáltatáshoz történő hívás kezdeményezéséhez.

A gomb kattintásával kapcsolatos eseménykezelő tartalmazza a webszolgáltatáshoz való hozzáférési kódot. Ez így néz ki:

Most mentheti a projektet, összeállíthatja az alkalmazást és tesztelheti.

Tehát megtanultuk, hogyan hozhatunk létre olyan alkalmazásokat, amelyek webszolgáltatásokat használnak. A cikk következő részében megnézzük, hogyan lehet saját maguk létrehozni a webszolgáltatásokat.

Az alkalmazás típusának kiválasztása után egy TWebModule objektumot kapunk, amely három összetevőt tartalmaz:

  • THTTPSoapDispatcher, amely felelős a SOAP protokollt használó kérelmek fogadásáért;
  • THTTPSoapPascalInvoker, amely felelős ezeknek a lekérdezéseknek az alkalmazások objektumainak metódusaihoz való fordításáért;
  • TWSDLHTMLPublish, amely a WSDL fájlok létrehozásáért felelős, amelyek a webszolgáltatásban végrehajtott interfészek leírását tartalmazzák, és amelyek az e webszolgáltatáshoz tartozó ügyfélalkalmazások fejlesztői számára szolgálnak.

Most megkezdheti a webszolgáltatási felület leírását. Ehhez egyszerűen hozzon létre egy új modult, és írja le az egyszeri Multiply metódust tartalmazó IMult interfészt:

Végül létre kell hoznunk egy olyan modult, amely végrehajtja a Multiply módszert:

Az IMult felületre mutató linkre kattintva megkaphatja az IMult felületünk WSDL-leírását, amelyet az ügyfélalkalmazás használ, ezért az interneten elérhető helyen található. Esetünkben csak egy fájlba mentjük.

Továbbra is teszteli webszolgáltatásunkat. Ezt sokféle módon tehetjük meg, például egy olyan weboldalról érhető el, amely az egyik szkriptnyelvben tartalmazza a kódot. Az ügyfélalkalmazást azonban a Delphi-ra írjuk, mivel már tudjuk, hogyan kell ezt csinálni. Csakúgy, mint az első része a cikket, hozzon létre egy új projektet, válasszon az oldalon Web Services Repository tárgyak ikon Web Services importőr és pont az a paraméter WSDL vagy XML Schema hely (fájlnév vagy URL) párbeszédablak Web Services az Import utat a WSDL-fájl csak megmentettük. Ezután a létrehozott interfész modulra hivatkozunk az ügyfélalkalmazás fő formájával társított modulról. Helyezzük a komponens formájában THTTPRIO, állítsa be az értéket a tulajdonságainak WSDLLocation nevét WSDL-fájl, válasszon egy értéket a legördülő listák Service és a Port tulajdonságok, és hozzon létre a legegyszerűbb felhasználói felület az alkalmazás.

A gombkattintáshoz társított eseménykezelő:

Az ügyfélalkalmazás futtatásával biztosíthatjuk, hogy webszolgáltatásunk teljesen működőképes legyen.

Tehát megtudtuk, hogyan hozhatunk létre webszolgáltatásokat a Delphi 6 programmal és tesztelhetjük őket.

Ebben a cikkben megvitattuk a Delphi 6 alkalmazások webes szolgáltatások használatával történő létrehozását, valamint maguk a webszolgáltatások létrehozását, és meggyőződtek arról, hogy ez nem túl nehéz. Valójában valószínűleg nincs szükség olyan webes szolgáltatás létrehozására, amely két számot szoroz - sok más, sokkal érdekesebb feladat létezik, amelynek megoldását webszolgáltatás formájában kell végrehajtani. Azt hiszem, nem fogják várni.

Kapcsolódó cikkek