web services and soa [modified]
DESCRIPTION
Web services and SOA [Modified]TRANSCRIPT
Web Services And [email protected]
What’s Inside
SOA What are Web Services History Types WSDL, UDDI and SOAP RESTful Web Service WADL Debugging and Testing Security
Intent
Most enterprises have made extensive investments in system resources over the course of many years. Such enterprises have an enormous amount of data stored in legacy enterprise information systems (EIS),so it's not practical to discard existing systems. It's more cost-effective to evolve and enhance EIS. But how can this be done ?
SOA and WebServices is the key
SOA SOA is a Software Design Approach Conceptually a collection of services on a network that communicate with one
another. Services are loosely coupled SOA is a higher level of application development. SOA typically leverages on standards based integration. The key players include service provider and service consumer
Web Services Vision
What Are Web Services ?
Software Components that can be published, located and run over the internet
The Concept of SOA is realized using web services
[W3C (working group) definition]
"A Web service is a software application identified by a URI, whose interfaces and bindings are capable of being defined, described and discovered as XML artifacts. A
Web service supports direct interactions with other software agents using XML based messages exchanged via internet-based protocols."
History of Web servicesWeb Services have evolved through three distinct Phases.
Phase Period Description
1 1999-01 Set timeline for the adoption of Web Services. Many Web Services development tools delivered from Microsoft, IBM, Sun, Software AG, Oracle and many others.
2 2002-04 Business Web Services start to appear in large numbers. Adoption of UDDI Registries in 2003. 40% of financial services transactions leveraged in Web Services models.
3 2005-> A number of issues of previous phases are addressed. These include: Quality of Service (QoS); network reliability; transaction recovery; real-time messaging; security; and billing mechanisms. Adapted dynamic Web Services. Organizations changed not only their business processes, but also their business models as they move to real-time collaboration and integration of processes both within and between enterprises..
Type of Web services
SOAP REST
and more… ..
SOAP - a type of Web Service [JAX-WS]
Let’s see an example
The key players: WSDL, UDDI and SOAP
Describing a web service: WSDL
<types>
The types element defines the data types exchanged when the web service is invoked.The parameters passed to and returned from a method are considered data types.
<message>
The messages used by the web service. A message may contain more than a message part. Each message part is actually part of the SOAP message being sent, and is either a parameter or result being passed.
<portType>
A portType is the most important part of a WSDL. it defines operations that can be performed and the messages involved.
<binding>
The communication protocols used by the web service
The Web Services Description Language (WSDL) describes all details about how the web service works, where it can be found, and what the client should expect in return etc..
Discovering a service: UDDIUDDI is a platform-independent framework for describing services, discovering
businesses, and integrating business services by using the Internet.
http://www.xmethods.com/ve2/index.po
Defining a message: SOAP
<?xml version="1.0"?><soap:Envelopexmlns:soap="http://www.w3.org/2001/12/soap-envelope"soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Header>...</soap:Header>
<soap:Body>... <soap:Fault> ... </soap:Fault></soap:Body>
</soap:Envelope>
SOAP is an XML-based protocol to let applications exchange information over HTTP.
Debugging and Testing SOAP Web Services JUnit Eclipse Web Service Explorer SoapUI Web Service Call Composer WebInject JMeter SOAPSonar Personal Edition SOA Cleaner Vordel SOAPbox Storm
SOAP Security SOAP header extensions
XML Signature XML Encryption
More WS-Security
WS-Policy WS-Trust WS-Privacy WS-SecureConversation Ws-Federation Ws-Authorization
And probably a few more…
REST - another Web Service [JAX-RS] REST (representational state transfer) is an approach for getting information content
from a Web site by reading a designated URI that contains an XML file that describes and includes the desired content.
Use HTTP methods for CRUD create – POST read – GET update – PUT delete – DELETE
Let’s see an example
WADL - REST equivalent of a WSDLWADL – Web Application Description Language
Debugging and Testing RESTful Web Services
JUnit SoapUI SOA Cleaner Rest-client
FireFox Add-Ons
Firebug Poster RESTClient RESTTest HTTP Resource Test
REST SecurityREST offers no built-in security features, encryption, session management, QoS
guarantees, etc. But also as with Web Services, these can be added by building on top of HTTP
• For security, username/password tokens are often used.• For encryption, REST can be used on top of HTTPS (secure sockets).
SOAP vs REST Data formats Caching Bandwidth Usage Security Tools
Resources http://www.w3schools.com/webservices/default.asp http://www.databaseanswers.org/web_services_history.htm http://www.w3schools.com/soap/default.asp http://www.w3schools.com/wsdl/default.asp www.genomeutwin.org/events/SENGER_060504_webservices.ppt www.ict.csiro.au/mu/Trends/Presentations/CSIROWebServices.pdf RESTful Web Services.pdf By Daniel Glauser
Thank You