Upload
suzan-bishop
View
213
Download
0
Embed Size (px)
Citation preview
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Fund. OfWeb Services
Service Oriented
Arch.
Examples
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
WEB SERVICES
The world before
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
Situation
Problems
Solutions
Problems
SolutionsWEB SERVICES
The world before
Situation
Mahmoud Rabie Mahmoud - EGJUG 2006
The World Before Web Services
OrgA
System AJava
Windows
System B
.NET
Windows
System CC
++
Linux
OrgB
System A
.NET
Windows
System B
C++
Linux
Solutions
Problems
WEB SERVICES
The world before
Situation
Mahmoud Rabie Mahmoud - EGJUG 2006
The World Before Web Services
OrgA
System AJava
Windows
System B
.NET
Windows
System CC
++
Linux
OrgB
System A
.NET
Windows
System B
C++
Linux
Problems
• Different types of platforms• Different types of programming languages
Solution
Create bridge
System APL A
Platform A
System BPL B
Platform BBridge
SolutionsSolutionsWEB
SERVICES
The world before
Situation
Mahmoud Rabie Mahmoud - EGJUG 2006
The World Before Web Services
OrgA
System AJava
Windows
System B
.NET
Windows
System CC
++
Linux
OrgB
System A
.NET
Windows
System B
C++
Linux
Another Better Solutions
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
Mahmoud Rabie Mahmoud - EGJUG 2006
Problems with current solutions
• Involve a whole learning curve
• Not based on standardized rules and specifications
Module A
Module B
Module C
Module B
Module A
CORBA
CORBACORBA
RMI
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
Mahmoud Rabie Mahmoud - EGJUG 2006
Web Services
Standardized method of communication betweensoftware applications
Provide
ModuleB
ModuleA
C++ Java
Distributed components are interfaced via non-object-specific protocols
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
+ve and –ve of Web Services
Advantages of web services
Web services provide interoperability between various software applications running on disparate platforms/operating systems
Web services use open standards and protocols
By utilizing HTTP, web services can work through many common firewall security measures without requiring changes to the firewall filtering rules. Other forms of RPC may more often be blocked
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
+ve and –ve of Web Services
Advantages of web services
Web services allow software and services from different companies and locations to be combined easily to provide an integrated service.
Web services allow the reuse of services and components within an infrastructure.
Web services are loosely coupled thereby facilitating a distributed approach to application integration.
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
+Ve and –Ve of Web Services
Disadvantages of web services
Web services standards features such as transactions are currently nonexistent or still in their infancy compared to more mature distributed computing open standards such as CORBA.
Web services may suffer from poor performance compared to other distributed computing approaches such as RMI, CORBA, or DCOM.
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Fund. OfWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
Definition
A web service is a programmable component that provides a service and is accessible over the Internet.
Component
Instance
Instance
Instance
Client
Client
Client
Network
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
Web services stack
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
Web services stack
Service & Information Layer
Service Implementation
Web Service Interface(WSDL)
Types
Message
Operation
Port Type
Binding
Port
Service
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
<message name="getTermRequest"> <part name="term" type="xs:string"/> </message>
<message name="getTermResponse"> <part name="value" type="xs:string"/> </message>
<portType name="glossaryTerms"> <operation name="getTerm"> <input message="getTermRequest"/> <output message="getTermResponse"/> </operation></portType>
Web services stack
Service & Information Layer Example
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
Web services stack
Packaging Layer
Simple Object Access Protocol )SOAP( is a lightweight protocol designed for the exchange of information
Defines a modular packaging model and the encoding mechanisms for encoding data within modules.
SOAP
Envelope
Encoding rules
RPC representation
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"SOAP-ENV:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Header>A2B Header</SOAP-ENV:Header> <SOAP-ENV:Body> <SubmitEventRequest> <Source>Copier54321</Source> <Description>
MotorFailure </Description>
</SubmitEventRequest> </SOAP-ENV:Body></SOAP-ENV:Envelope>
Web services stack
Packaging Layer
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Fundamentals of Web Services
Web services stack
Protocol Layer
Any of the standard Internet protocols may be used to invoke web services over the network.
The initial definition focuses specifically on HTTP/1.1 and the encrypted HTTPS
FTP and SMTP can also be used
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Fund. OfWeb Services
Service Oriented
Arch.
Mahmoud Rabie Mahmoud - EGJUG 2006
AGENDA
Service Oriented
Arch.
Fund. OfWeb Services
WEB SERVICES
The world before
Situation
Problems
Solutions
Motiv. forWeb Services
Probs. withCurr. sols.
Web ServicesSolution
+ve and -ve ofWeb Services
Mahmoud Rabie Mahmoud - EGJUG 2006
Service Oriented Arch.
It's an architectural style of building software applications that promotesloose coupling between components so that you can reuse them