web services architecture overview try nccu computer center may 6,2002
TRANSCRIPT
參考資料 [1]Don Box,“A brief History of SOAP” ,XML.COM, 2001 [2]Jakob Nielsen,”The End of Homemade Websites”,us
eit.com, Oct 2001 [3]Venu Vasudevan,” Web Services Primer”,XML.COM,
April 2001 [4]David Orchard,”Web Services Pitfalls”,Feb 2002 [5]Heather Kreger,” Web Services Technical Architectur
e”,Java ONE Conf 2002, 2002 [6]Scoot Seely,”SOAP : Cross Platform web service dev
elopment using XML”,Prentice Hall PTR,2002
參考資料 (2) [8]Patrick Cauldwell,Rajesh Chawla,Vivek Chopra,Gary
Damschen,Chris Dix ,Tony Hong,Francis Norton,Uche Ogbuji“Professional XML Web Services”,Wrox,2001
[9]Roger Wolter,”XML Web Services Basics”,Microsoft,Dec 2001
[10]David A.Chappell , Tyler Jewell,”Java Web Services”,Oreilly,March 2002
[11]James Goodwill ,”Using SOAP with Tomcat”,O’reilly Network,Feb 2002
[12] James Snell,”Web Services Interoperability”,XML.COM,Jan 2002
Web services is evolution not revolution
There is nothing new about Web services
Web Services will change everything--Heather Kreger
Java ONE Conference 2002
Emerging Technologies
Web Services Lead Architect
IBM
Presentation Agenda Introduction to Web Services Core Protocols :SOAP、WSDL and UDDI Implementations of Web Services Interoperability issues The Missing Part of Web Services
Introduction to Web Services A Web Services is an application component accessi
ble via standard web protocols. Web Services expose components for remote executi
on using the Web technology and infrastructure. Applications can call services implemented by diffe
rent language which are executed on different platforms.(theoretically…)
Web Services-Technical View Invocation:SOAP/XML Service Description:WSDL/XSD/RDF Service Discovery:UDDI
How Web Services Work Client sends a HTTP request (for example)to Server Server recognizes which method should be invoked
by its requesting URL Server converts the types of inbound parameters pro
perly then invoke the method Server converts the type of return value then generat
e the response SOAP message Response message to the client.
A Successful Case Dollar Rent A Car Systems,Inc integrate its booking
system with Southwest Airlines Co. by web services technologies.
Dollar Rent A Car Systems:Sun Solaris Server Southwest Airlines:Compaq OpenVMS You can reserve Dollar’s car without leaving Southw
est’s site.
SOAP SOAP is never acronym of “Simple Object Access Protocol”
http://www-106.ibm.com/developerworks/library/ws-ref8.html One of the most externally visible decisions was about the nam
e of this protocol. It was decided that because the acronym "SOAP" had such large mind-share out in the industry, we did not want to change the name to something relatively unknown -- like XML Protocol. Once we decided to keep the name "SOAP," the question then became whether we wanted SOAP to continue to mean Simple Object Access Protocol. So we voted and decided that "SOAP" should no longer be an acronym and just be known as SOAP, with no meaning behind the letters
SOAP What were defined in SOAP
The unified XML-format of messages Encoding Style:How to encode the parameters and the ret
urn value. APRC Convention
SOAP is not always used in RPC The protocol transports SOAP messages doesn’t nee
d to be HTTP.
SOAP-RPC Model Defined in SOAP 1.1 Section 7 To Invoke a method call ,following informations are
needed URI of target object Method name Parameters (Optioinal) header data
The message body must be encoded according Section 5.
SOAP-Message Exchanging Model SOAP message supports multiple exchanging model
s One way Request/Response Broadcast Chain
“End point” means the soap processing unit of message(ie: a webservice)
“Intermediaries” mean end points which play the roles of sender and receiver simultaneously .
SOAP-Message Exchanging Model
End Point Behavior Examine the SOAP message to see if it contains any
information addressed to this end point Examine if the “mustUnderstand” attribute is “1”,if t
he attribute is 1 and end point didn’t know it then a fault code must return.
Remove and edit the “actor” attribute properly Process the message assigned to this end point Forward to next point (if current end point is not the
last one in the message chain)
An Example Shop Website to fillInId Service fillInId Service to placeOrder Service placeOrder Service to shipOrder Service
WSDL An XML Vocabulary (similar in purpose to IDL) Describes the interfaces for web services and h
owto invoke the services WSDL includes
Service Description Service Interface Definition WSDL provides all IDL capabilities
UDDI Universal Description, Discovery, and Integratio
n Partnership among industry and business lead
ers Initiated by Ariba, IBM, and Microsoft Now over 300 UDDI community members
IBM UDDI Registry https://www-3.ibm.com/services/uddi/v2beta/protect/regis
try.html
Interoperability issues This is What break the most beautiful dream of Web
Service. Versioning Problems
SOAP 1.2 didn’t backward compitiable with SOAP1.1. The SOAP servers support SOAP 1.2 will by default retur
n an fault SOAP message when encountered a SOAP 1.1 message is sent.
Interoperability issues(2) Vendor dependent:
Due to the incompleteness of SOAP 1.1 Spec or the vendors deliberately missunderstand of the spec.
Dispite some fixing by your own ,the Apache SOAP can’t work with services implemented by VS.NET.
There are solutions for interoperability of famous Vendors like Microsoft with Java.Fixing it need the detail knowledges of WSDL.
This is such a serious problem that there is a working orgnization called “SOAPBuilder” target at interoperability problems.
The Missing Part of WS Transactions
XAML、 XLANG(Microsoft, used in its biztalk framework)
Security XKMS(XML Key Management Specification) by Microso
ft/Verisign
Process/Flow pattern description XLANG,WSFL
Summary We are moving from a web composed of docum
ents to a web that also contains business services
Web services is a standards-based way to make applications discoverable and usable on the Internet (intranet)
The industry is focusing on UDDI, SOAP,and WSDL as the foundations of the Web services approach
Summary(2) Most people agree that Web Services provide t
he application models of the next generation but there are long way to go before public acceptance