20
C o p y r i g h t © 2 0 0 7 K O M I X s . r . o . 1. C o p y r i g h t © 2 0 0 7 K O M I X s . r . o . Martin Ptáček, KOMIX s.r.o. [email protected] X33EJA Web Services

X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

1.

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

Martin Ptáček, KOMIX [email protected]

X33EJA Web Services

Page 2: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

Page 3: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

HistorieKomunikační protokoly

Page 4: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesMotivace

Page 5: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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.

WebServicesDefinice

Page 6: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesDefinice

Page 7: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesZákladní technologie

Page 8: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

8.

• Bezestavový protokol, SOAPMessage definition

WebServicesSOAP (Simple Object Access Protocol)

Page 9: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesWSDL (Web Services Description Language)

Page 10: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesRole komunikujících stran

Page 11: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

WebServicesSOA (Service Oriented Architecture)

Page 12: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

12.

• Typ produktu realizující integrační platformu

• http://programujte.com/?akce=clanek&cl=2006080705-jak-funguje-esb

WebServicesESB (Enterprise Service Bus)

Page 13: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

Page 14: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

14.

JAX-WS (Java API for XML Web Services)Architektura

Page 15: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

Page 16: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

Page 17: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

soapUINástroj soapUI

Page 18: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.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

Page 19: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

19.

Otázky a odpovědi

Otázky?

Page 20: X33EJA Web Services … · – HTTP + XML, REST atd. • SOAP (Simple Object Access Protocol) – Vznik roku 1998 inicializován firmou Microsoft ... – Generuje Factory, Proxy a

Co

pyrig

ht ©

200

7 K

OM

IX s

.r.o

.

20.

Děkuji za vaši pozornost

Martin Ptáč[email protected]+420 225 989 981

KOMIX s.r.o.Holubova 1, 150 00 Praha 5www.komix.cz