Dobry den, osobne se snazim na zaklade zkusenosti z nekolika projektu, kde se WS pouzivaji pomerne vyrazne, vyhnout se DII, pokud je to mozne. V zasade jsem plne vyuziti DII navrhl a uspesne pouzil pouze na jednom projektu, ktery toto vyzadoval tak, ze cilem bylo distribuovat business dokumenty jejichz forma se menila v runtime. Bylo nutno oslovit vice partneru a kazdy partner mel jine rozhrani. Javovska aplikace vyhledala v registru informace o parnerovi na zaklede nejakych kriterii a odeslala mu dokument v pozadovanem tvaru - tvar se skladal dynamicky pomoci JAXM podle informaci z registru - nekdo mel jednoduchy SOAP, nekdo ebXML... Jednoduse nebylo mozno pro noveho parnera vzdy generovat proxy, mapovani...
V ostatnich pripadech se snazim pracovat se statickou invokaci. Jednoduchy klient podporovany toolingem je podle me velmi dulezity uz v okamziku, kdy pouzivate desitky sluzeb. Navic ma zkusenost s vykonem je mirne opacna, nez pise obsahuje predchozi zprava. To take zalezi na SOAP stacku. Ja vetsinou pouzivam IBM WebSphere, BEA WebLogic nebo XFire. Osobne rozpoznavam ne dva, ale 3 zpusoby: - Static Stub (static stubs) - muj oblibeny zpusob - vetsinou velmi dobry tooling dulezity u velkeho poctu pouzitych sluzeb statickeho charakteru (nemeni se WSDL), zatim skoro vzdy nejlepsi vykon - Dynamic proxy - toto je nekde mezi Stub-based a DII - proxy se generuje z WSDL za behu, priznam se, ze jsem s tim mel zatim v Jave vice prace nez uzitku (problemem byla performance vytvareni proxy), ale pouzivam toto v souvislosti s AJAXem, kde se mi to docela osvedcilo. Toto je dobre, pokud se v omezene mire meni interface sluzby, ale neni to zmena zasadni pro funkci klienta - DII (dynamic invocation interface) - zminovana dynamicka invokace - snazim se vyuziti minimalizovat - osobne se domnivam, ze je to casto spise pro vyvoj ruznych brokeru a ne beznych klientu Nekdy, napr. ve spolupraci s BEA WebLogic Integration jsem ovsem pouzil trochu hibridni pristup - pouzil jsem staticky vygenerovane proxy a pro modifikaci zpravy dalsi JAX-RPC handlery. JAX-RPC handlery jsem pouzival napr: - pro injekci a cteni konverzacniho id - injekce a zpracovani WS-Security SOAP hlavicek za ucelem athentizace a autorizace Good luck with WebServices... JM > ------------ Původní zpráva ------------ > Od: Jiri Fabian <[EMAIL PROTECTED]> > Předmět: RE: WebService - method invocation > Datum: 10.7.2007 12:45:19 > ---------------------------------------- > Ahoj Radovano, > > tady jsou plusy a minusy, ktere bys mohla zvazit > > DII > + volnost ala reflexe > + pri pouziti JAXM i teoreticky prirustek vykonu > - hure citelny kod klienta > > SI > + standardni java invokace a z toho plynouci vyhody jako compile time type > check > + client na 1-2 radky > - nutnost generovat stuby z WSDL eg. full stub nebo interface > > Mej se, > > fil > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On > Behalf Of Radovana Straube > Sent: Tuesday, July 10, 2007 10:59 AM > To: [email protected] > Subject: WebService - method invocation > > Dobry den, > > co je vyhodnejsie pouzivat pri webservisoch (client): > staticke alebo dynamicke "method invocation"? > Precitala som si nieco na tuto temu na Internete aj v > knihe a ziadnu jednoznacnu odpoved som nenasla. Mozno > ani neexistuje. Preto by som si rada precitala vase > nazory. > > Dakujem > Radovana Straube > > > > ____________________________________________________________________________ > ________ > Take the Internet to Go: Yahoo!Go puts the Internet in your pocket: mail, > news, photos & more. > http://mobile.yahoo.com/go?refer=1GNXIC > > > > >
