Hirdetés
 

Webszolgáltatások II. Rész: Webszerviz fogyasztása

PDF
Nyomtatás

Képzeljünk el egy olyan szituációt, ahol egy általunk felinstallált SAP portálon, szeretnénk felhasználni („fogyasztani”), egy külső szolgáltatást, mint pl. időjárásjelentés, világóra, reptéri járatok, vagy szótári keresés. Ezekben az esetekben, kell készítsünk egy olyan iView-t ( portál alkalmazást ), amely képes lesz ezt a kapcsolatot a külső szolgáltatóval megteremteni, és amelyet meg lehet jeleniteni a portálon.

Web szerviz alkalmazása Netweaver Developer Studió segítségével

A egy külső web szerviz alkalmazásához szükség van egy WSDL file-ra, amely tartalmazza a szolgáltatás paramétereit, és általában nyilvánosan megtalálható a neten. Pl. a következő linkek:

http://api.google.com/GoogleSearch.wsdl

http://soap.amazon.com/schemas3/AmazonWebServices.wsdl

A fentiekből én a Google wsdl-t választottam, mely után a Google Web Services oldalán regisztráltam, hogy megkapjam a licensz kulcsot, melyet majd a későbbiekben a kódban használok. A WSDL file lemásolása után következő lépéseket kell megvalósítani:

1 lépés: Készítsünk egy új portál applikációs objektumot

 

2. lépés: Állítsuk be a megfelelő URL-t, ami a kiválasztott WSDL-re fog mutatni.

3. lépés: Válasszuk ki a kiajánlási metódust.

4. lépés: Állítsuk be a szerviz nevét, alias-át és a package nevét

Miután ezt befejeztük, akkor más látható lesz a web szervizünk a Developer Stúdió applikációs objektumában. Az src.api és a src.core fogja tartalmazni azokat. A HTTP beállításokhoz a következőket adjuk meg:

Miután ez megtörtént, akkor újra kell indítani a szervizt.

Ezt követően nyissuk meg a portál komponenst és adjuk hozzá a következő kódot.

IServiceName client= (IServiceName) PortalRuntime.getRuntimeResources ().getService (IServiceName.KEY);
IServiceName clientWithUserObject=client.getSecurisedServiceConnection (request.getUser ());
ServiceName s = new ServiceName ();
GoogleSearchResult r=client.doGoogleSearch ("wbcaZ9ZQFHJYo1RszSBekT4YJPuSpvt5","portal", 0, 10, false,"", false,"","","");
ResultElement results[] = r.getResultElements(); int j;
for (j=0; j url = results[j].getURL();
if (results[j].getTitle().equals(""))
title = url; else
title = results[j].getTitle();
resultString = resultString + "" + title + "
";}
response.write(resultString);

Eredmény

A doGoogleSearch-ben be kell állítani a licensz kulcsot és a kereső szavakat. A lent látható példában egy statikus kereső szó van beírva „portal”, melyet akár dinamikusan is meg lehet adni. A web szerviz eredményét bármilyen kívánt módon meg lehet kapni, illetve felhasználni.

A következő részben be fogom mutatni, hogy hogyan lehet létrehozni webszervizt ABAP funkciós modul segítségével, illetve hogyan lehet azt publikálni a nyilvánosság részére. A SAPKA LEGYEN VELETEK!

Bartha Levente - A szerző az SAP Hungary Kft.-nél mint CRM tanácsadó több éve foglalkozik SAP-val, főbb szakterületei Enterprise Portal, CRM Sales, E-selling, PCUI, CRM2007 UI.
Manapság többnyire külföldi projekteken dolgozik, illetve itthon SAP közösséget szervez.

További cikkek a szerzőtől


Nincs hozzászólása.
A téma megvitatása a fórumon. (0 hozzászólás)