SlideShare una empresa de Scribd logo
1 de 20
Copyright©2007KOMIXs.r.o.
1.
Copyright©2007KOMIXs.r.o.
Martin Ptáček, KOMIX s.r.o.
ptacek@komix.cz
X33EJA
Web Services
Copyright©2007KOMIXs.r.o.
2.
Historie
Co jsou Web Services? Co je to SOA?
JAX-WS (Java API for XML Web Services)
Závěrečné shrnutí
Otázky a odpovědi, Diskuse
Obsah
Copyright©2007KOMIXs.r.o.
3.
• Mnoho různých komunikačních protokolů
– COM, COM+, DCOM
– CORBA
• 1991 první verze
• IIOP, IDL, Naming Service
– RMI, RMI/IIOP
– HTTP + XML, REST atd.
• SOAP (Simple Object Access Protocol)
– Vznik roku 1998 inicializován firmou Microsoft
– 2003 W3C standard
Historie
Komunikační protokoly
Copyright©2007KOMIXs.r.o.
4.
• Platformě nezávislý přenosový protokol
• Standardizovaný popis rozhraní
• Interoperabilita
– „Schopnost systémů vzájemně spolupracovat, poskytovat si
služby, dosáhnout vzájemné součinnosti.“
– Jednodušší integrace aplikací
– Znovupoužitelnost komponent
WebServices
Motivace
Copyright©2007KOMIXs.r.o.
5.
• W3C
– A Web service is a software system designed to support
interoperable machine-to-machine interaction over a network. It
has an interface described in a machine-processable format
(WSDL). Other systems interact with the Web service in a
manner prescribed by its description using SOAP messages,
typically conveyed using HTTP with an XML serialization in
conjunction with other Web-related standards.
WebServices
Definice
Copyright©2007KOMIXs.r.o.
6.
• SUN
– Web services are Web-based enterprise application that use
open, XML-based standards and transport protocol to exchange
data with calling clients. Java Platform, Enterprise Edition (EE)
provides the APIs and tools you need to create and deploy
interoperable Web services and clients.
• Web Services Martin Kuba, ÚVT MU, 2003
http://www.ics.muni.cz/zpravodaj/articles/269.html
WebServices
Definice
Copyright©2007KOMIXs.r.o.
7.
• SOAP (Simple Object Access Protocol)
– Komunikační protokol, obálka, adresace
• XML (eXtensible Markup Language)
– Strukturování dat
• UDDI (Universal Description, Discovery and Integration)
– Mechanizmus registrů pro vyhledávání služeb
• WSDL (Web Services Description Language)
– Popis funkcí, umístění a způsob komunikace
WebServices
Základní technologie
Copyright©2007KOMIXs.r.o.
8.
• Bezestavový protokol, SOAPMessage definition
WebServices
SOAP (Simple Object Access Protocol)
Copyright©2007KOMIXs.r.o.
9.
• W3C standard pro popis webových služeb
• Popisuje:
– Jaké funkce služba poskytuje
– Kde je služba umístěna
– Jakým způsobem může být
navázána komunikace se službou
WebServices
WSDL (Web Services Description Language)
Copyright©2007KOMIXs.r.o.
10.
• Poskytovatel (Provider)
– Implementuje a nabízí služby.
– Služba je specifikovaná svým popisem (WSDL)
• Spotřebitel (Consumer)
– Na základě popisu vyhledá službu (UDDI) a použije ji
WebServices
Role komunikujících stran
Copyright©2007KOMIXs.r.o.
11.
• SOA (Service Oriented Architecture)
– Architektonický koncept.
– Servisně orientovaný přístup pro navrhování a budování
flexibilních IT řešení.
• http://www.trask.cz/varovani-architekta-soa-vas-muze-zabit
WebServices
SOA (Service Oriented Architecture)
Copyright©2007KOMIXs.r.o.
12.
• Typ produktu realizující integrační platformu
• http://programujte.com/?akce=clanek&cl=2006080705-jak-funguje-esb
WebServices
ESB (Enterprise Service Bus)
Copyright©2007KOMIXs.r.o.
13.
• Java API pro tvorbu webových služeb
– JAX-WS 2.0 následovník JAX-RPC, Součástí Java EE platform
– Snadná tvorba, anotace pro snadný deployment
– Využívá JAXB pro data binding
• wsimport
• Generování java tříd webové služby z WSDL
• wsgen
• Generování java tříd webové služby z Java interface
• JAX-WS as WS Stack
• GlassFish, JBoss, WebLogic, WebSphere, Tomcat, Jetty, Spring,
Java SE platform
JAX-WS (Java API for XML Web Services)
Přehled
Copyright©2007KOMIXs.r.o.
14.
JAX-WS (Java API for XML Web Services)
Architektura
Copyright©2007KOMIXs.r.o.
15.
• Anotations
– @WebService, @WebMethod, @WebParam
• EJB 3.0
– Možno využít Transaction, Security, Interceptors …
• Servlet Way
– Java POJO s definovanými anotacemi
– Registrace ve web.xml
• JavaSE
• Ukázka
JAX-WS (Java API for XML Web Services)
Provider EndPoints
Copyright©2007KOMIXs.r.o.
16.
• wsimport
– Generuje Factory, Proxy a JAXB binding classes pro webovou
službu
• Thread safe pouze javax.xml.ws.Service
• Ukázka
JAX-WS (Java API for XML Web Services)
Client Side
Copyright©2007KOMIXs.r.o.
17.
• soapUI http://www.soapui.org/
– Sofistikovaný test tool pro testování a vytváření Web Services
– Ověření funkčnosti webových služeb
• http://svetlik.info/blok/index.php?/archives/130-Java-uzitecne-
nastroje-SoapUI.html
• http://www.soatutorial.net/test-web-services-using-soapui/
• http://soa4real.blogspot.com/2008/05/testing-web-services-with-
soapui.html
soapUI
Nástroj soapUI
Copyright©2007KOMIXs.r.o.
18.
• Výhody
– Web Services jsou dnes standardem pro integraci aplikací
– Přijaty společností Microsoft
– Dobrá podpora pro jednotlivé platformy
• Nevýhody
– Výkon v porovnání k binárním protokolům
– Přenos binárních dat (obrázky atd..)
– Transakce
– Spolehlivá výměna informací (messaging)
Závěrečné shrnutí
WebServices
Copyright©2007KOMIXs.r.o.
19.
Otázky a odpovědi
Otázky?
Copyright©2007KOMIXs.r.o.
20.
Děkuji za vaši pozornost
Martin Ptáček
ptacek@komix.cz
+420 225 989 981
KOMIX s.r.o.
Holubova 1, 150 00 Praha 5
www.komix.cz

Más contenido relacionado

Similar a 2010 X33EJA Web Services

Rich Internet Applications 2009 (Czech)
Rich Internet Applications 2009 (Czech)Rich Internet Applications 2009 (Czech)
Rich Internet Applications 2009 (Czech)Pavel Růžička
 
Vyvoj api xpages_mobily
Vyvoj api xpages_mobilyVyvoj api xpages_mobily
Vyvoj api xpages_mobilyTCL DigiTrade
 
LoCloud Technical Poster - Nad mraky
LoCloud Technical Poster -  Nad mrakyLoCloud Technical Poster -  Nad mraky
LoCloud Technical Poster - Nad mrakylocloud
 
Napojení Joomly! na rezervační systém Colosseum
Napojení Joomly! na rezervační systém ColosseumNapojení Joomly! na rezervační systém Colosseum
Napojení Joomly! na rezervační systém ColosseumKačka Kubová
 
Spring framework - J2EE S Lidskou Tvari
Spring framework - J2EE S Lidskou TvariSpring framework - J2EE S Lidskou Tvari
Spring framework - J2EE S Lidskou TvariRoman Pichlík
 
Bar camp brno 2010
Bar camp brno 2010Bar camp brno 2010
Bar camp brno 2010Jarek Mikeš
 
Správa podnikového obsahu - Oracle UCM
Správa podnikového obsahu - Oracle UCMSpráva podnikového obsahu - Oracle UCM
Správa podnikového obsahu - Oracle UCMSEFIRA spol. s r.o.
 
Ondra Kučera: Otevřený web a jeho současný stav
Ondra Kučera: Otevřený web a jeho současný stavOndra Kučera: Otevřený web a jeho současný stav
Ondra Kučera: Otevřený web a jeho současný stavTomáš Holas
 

Similar a 2010 X33EJA Web Services (20)

Rich Internet Applications 2009 (Czech)
Rich Internet Applications 2009 (Czech)Rich Internet Applications 2009 (Czech)
Rich Internet Applications 2009 (Czech)
 
TNPW2-2014-02
TNPW2-2014-02TNPW2-2014-02
TNPW2-2014-02
 
TNPW2-2016-02
TNPW2-2016-02TNPW2-2016-02
TNPW2-2016-02
 
TNPW2-2012-02
TNPW2-2012-02TNPW2-2012-02
TNPW2-2012-02
 
2009 JEE Overview
2009 JEE Overview2009 JEE Overview
2009 JEE Overview
 
TNPW2-2012-07
TNPW2-2012-07TNPW2-2012-07
TNPW2-2012-07
 
TNPW2-2013-02
TNPW2-2013-02TNPW2-2013-02
TNPW2-2013-02
 
TNPW2-2013-07
TNPW2-2013-07TNPW2-2013-07
TNPW2-2013-07
 
2010 Web Technologie 1
2010 Web Technologie 12010 Web Technologie 1
2010 Web Technologie 1
 
TNPW2-2014-05
TNPW2-2014-05TNPW2-2014-05
TNPW2-2014-05
 
Vyvoj api xpages_mobily
Vyvoj api xpages_mobilyVyvoj api xpages_mobily
Vyvoj api xpages_mobily
 
LoCloud Technical Poster - Nad mraky
LoCloud Technical Poster -  Nad mrakyLoCloud Technical Poster -  Nad mraky
LoCloud Technical Poster - Nad mraky
 
TNPW2-2012-05
TNPW2-2012-05TNPW2-2012-05
TNPW2-2012-05
 
TNPW2-2016-05
TNPW2-2016-05TNPW2-2016-05
TNPW2-2016-05
 
Napojení Joomly! na rezervační systém Colosseum
Napojení Joomly! na rezervační systém ColosseumNapojení Joomly! na rezervační systém Colosseum
Napojení Joomly! na rezervační systém Colosseum
 
TNPW2-2013-05
TNPW2-2013-05TNPW2-2013-05
TNPW2-2013-05
 
Spring framework - J2EE S Lidskou Tvari
Spring framework - J2EE S Lidskou TvariSpring framework - J2EE S Lidskou Tvari
Spring framework - J2EE S Lidskou Tvari
 
Bar camp brno 2010
Bar camp brno 2010Bar camp brno 2010
Bar camp brno 2010
 
Správa podnikového obsahu - Oracle UCM
Správa podnikového obsahu - Oracle UCMSpráva podnikového obsahu - Oracle UCM
Správa podnikového obsahu - Oracle UCM
 
Ondra Kučera: Otevřený web a jeho současný stav
Ondra Kučera: Otevřený web a jeho současný stavOndra Kučera: Otevřený web a jeho současný stav
Ondra Kučera: Otevřený web a jeho současný stav
 

Más de Martin Ptáček

2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizaceMartin Ptáček
 
2010 X33EJA Java Message Service
2010 X33EJA Java Message Service2010 X33EJA Java Message Service
2010 X33EJA Java Message ServiceMartin Ptáček
 
2010 Identifikace a optimalizace výkonu JEE aplikací
2010 Identifikace a optimalizace výkonu JEE aplikací2010 Identifikace a optimalizace výkonu JEE aplikací
2010 Identifikace a optimalizace výkonu JEE aplikacíMartin Ptáček
 
2010 JBoss Application Server
2010 JBoss Application Server2010 JBoss Application Server
2010 JBoss Application ServerMartin Ptáček
 
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise AplikacíMartin Ptáček
 
2009 Uživatelské rozhraní webových aplikací
2009 Uživatelské rozhraní webových aplikací2009 Uživatelské rozhraní webových aplikací
2009 Uživatelské rozhraní webových aplikacíMartin Ptáček
 
2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEEMartin Ptáček
 
2009 X33EJA Výkonové Aspekty JEE
2009 X33EJA Výkonové Aspekty JEE2009 X33EJA Výkonové Aspekty JEE
2009 X33EJA Výkonové Aspekty JEEMartin Ptáček
 
2010 X33EJA Vysoká Dostupnost JEE Systémů
2010 X33EJA Vysoká Dostupnost JEE Systémů2010 X33EJA Vysoká Dostupnost JEE Systémů
2010 X33EJA Vysoká Dostupnost JEE SystémůMartin Ptáček
 

Más de Martin Ptáček (11)

2011 Unit Testy
2011 Unit Testy2011 Unit Testy
2011 Unit Testy
 
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
2011 X33EJA Výkonové Aspekty JEE Monitoring a optimalizace
 
2010 X33EJA Java Message Service
2010 X33EJA Java Message Service2010 X33EJA Java Message Service
2010 X33EJA Java Message Service
 
2010 Identifikace a optimalizace výkonu JEE aplikací
2010 Identifikace a optimalizace výkonu JEE aplikací2010 Identifikace a optimalizace výkonu JEE aplikací
2010 Identifikace a optimalizace výkonu JEE aplikací
 
2010 JBoss Application Server
2010 JBoss Application Server2010 JBoss Application Server
2010 JBoss Application Server
 
2009 CA Wily Introscope
2009  CA  Wily  Introscope2009  CA  Wily  Introscope
2009 CA Wily Introscope
 
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
 
2009 Uživatelské rozhraní webových aplikací
2009 Uživatelské rozhraní webových aplikací2009 Uživatelské rozhraní webových aplikací
2009 Uživatelské rozhraní webových aplikací
 
2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE
 
2009 X33EJA Výkonové Aspekty JEE
2009 X33EJA Výkonové Aspekty JEE2009 X33EJA Výkonové Aspekty JEE
2009 X33EJA Výkonové Aspekty JEE
 
2010 X33EJA Vysoká Dostupnost JEE Systémů
2010 X33EJA Vysoká Dostupnost JEE Systémů2010 X33EJA Vysoká Dostupnost JEE Systémů
2010 X33EJA Vysoká Dostupnost JEE Systémů
 

2010 X33EJA Web Services

  • 2. Copyright©2007KOMIXs.r.o. 2. Historie Co jsou Web Services? Co je to SOA? JAX-WS (Java API for XML Web Services) Závěrečné shrnutí Otázky a odpovědi, Diskuse Obsah
  • 3. Copyright©2007KOMIXs.r.o. 3. • Mnoho různých komunikačních protokolů – COM, COM+, DCOM – CORBA • 1991 první verze • IIOP, IDL, Naming Service – RMI, RMI/IIOP – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft – 2003 W3C standard Historie Komunikační protokoly
  • 4. Copyright©2007KOMIXs.r.o. 4. • Platformě nezávislý přenosový protokol • Standardizovaný popis rozhraní • Interoperabilita – „Schopnost systémů vzájemně spolupracovat, poskytovat si služby, dosáhnout vzájemné součinnosti.“ – Jednodušší integrace aplikací – Znovupoužitelnost komponent WebServices Motivace
  • 5. Copyright©2007KOMIXs.r.o. 5. • W3C – A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards. WebServices Definice
  • 6. Copyright©2007KOMIXs.r.o. 6. • SUN – Web services are Web-based enterprise application that use open, XML-based standards and transport protocol to exchange data with calling clients. Java Platform, Enterprise Edition (EE) provides the APIs and tools you need to create and deploy interoperable Web services and clients. • Web Services Martin Kuba, ÚVT MU, 2003 http://www.ics.muni.cz/zpravodaj/articles/269.html WebServices Definice
  • 7. Copyright©2007KOMIXs.r.o. 7. • SOAP (Simple Object Access Protocol) – Komunikační protokol, obálka, adresace • XML (eXtensible Markup Language) – Strukturování dat • UDDI (Universal Description, Discovery and Integration) – Mechanizmus registrů pro vyhledávání služeb • WSDL (Web Services Description Language) – Popis funkcí, umístění a způsob komunikace WebServices Základní technologie
  • 8. Copyright©2007KOMIXs.r.o. 8. • Bezestavový protokol, SOAPMessage definition WebServices SOAP (Simple Object Access Protocol)
  • 9. Copyright©2007KOMIXs.r.o. 9. • W3C standard pro popis webových služeb • Popisuje: – Jaké funkce služba poskytuje – Kde je služba umístěna – Jakým způsobem může být navázána komunikace se službou WebServices WSDL (Web Services Description Language)
  • 10. Copyright©2007KOMIXs.r.o. 10. • Poskytovatel (Provider) – Implementuje a nabízí služby. – Služba je specifikovaná svým popisem (WSDL) • Spotřebitel (Consumer) – Na základě popisu vyhledá službu (UDDI) a použije ji WebServices Role komunikujících stran
  • 11. Copyright©2007KOMIXs.r.o. 11. • SOA (Service Oriented Architecture) – Architektonický koncept. – Servisně orientovaný přístup pro navrhování a budování flexibilních IT řešení. • http://www.trask.cz/varovani-architekta-soa-vas-muze-zabit WebServices SOA (Service Oriented Architecture)
  • 12. Copyright©2007KOMIXs.r.o. 12. • Typ produktu realizující integrační platformu • http://programujte.com/?akce=clanek&cl=2006080705-jak-funguje-esb WebServices ESB (Enterprise Service Bus)
  • 13. Copyright©2007KOMIXs.r.o. 13. • Java API pro tvorbu webových služeb – JAX-WS 2.0 následovník JAX-RPC, Součástí Java EE platform – Snadná tvorba, anotace pro snadný deployment – Využívá JAXB pro data binding • wsimport • Generování java tříd webové služby z WSDL • wsgen • Generování java tříd webové služby z Java interface • JAX-WS as WS Stack • GlassFish, JBoss, WebLogic, WebSphere, Tomcat, Jetty, Spring, Java SE platform JAX-WS (Java API for XML Web Services) Přehled
  • 14. Copyright©2007KOMIXs.r.o. 14. JAX-WS (Java API for XML Web Services) Architektura
  • 15. Copyright©2007KOMIXs.r.o. 15. • Anotations – @WebService, @WebMethod, @WebParam • EJB 3.0 – Možno využít Transaction, Security, Interceptors … • Servlet Way – Java POJO s definovanými anotacemi – Registrace ve web.xml • JavaSE • Ukázka JAX-WS (Java API for XML Web Services) Provider EndPoints
  • 16. Copyright©2007KOMIXs.r.o. 16. • wsimport – Generuje Factory, Proxy a JAXB binding classes pro webovou službu • Thread safe pouze javax.xml.ws.Service • Ukázka JAX-WS (Java API for XML Web Services) Client Side
  • 17. Copyright©2007KOMIXs.r.o. 17. • soapUI http://www.soapui.org/ – Sofistikovaný test tool pro testování a vytváření Web Services – Ověření funkčnosti webových služeb • http://svetlik.info/blok/index.php?/archives/130-Java-uzitecne- nastroje-SoapUI.html • http://www.soatutorial.net/test-web-services-using-soapui/ • http://soa4real.blogspot.com/2008/05/testing-web-services-with- soapui.html soapUI Nástroj soapUI
  • 18. Copyright©2007KOMIXs.r.o. 18. • Výhody – Web Services jsou dnes standardem pro integraci aplikací – Přijaty společností Microsoft – Dobrá podpora pro jednotlivé platformy • Nevýhody – Výkon v porovnání k binárním protokolům – Přenos binárních dat (obrázky atd..) – Transakce – Spolehlivá výměna informací (messaging) Závěrečné shrnutí WebServices
  • 20. Copyright©2007KOMIXs.r.o. 20. Děkuji za vaši pozornost Martin Ptáček ptacek@komix.cz +420 225 989 981 KOMIX s.r.o. Holubova 1, 150 00 Praha 5 www.komix.cz