web services: an introduction al kassam briyante software corp [email protected]

16
Web Services: An Web Services: An Introduction Introduction Al Kassam Al Kassam Briyante Software Corp Briyante Software Corp [email protected] [email protected]

Upload: kenneth-ford

Post on 30-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Web Services: An Web Services: An IntroductionIntroduction

Al KassamAl Kassam

Briyante Software CorpBriyante Software Corp

[email protected]@briyante.com

What is a web service?What is a web service?

Many DefinitionsMany Definitions At a minimum, a Web Service is a piece of self-At a minimum, a Web Service is a piece of self-

contained software that works over the Internet contained software that works over the Internet and uses a standardized XML-based messaging and uses a standardized XML-based messaging systemsystem

In simpler terms, it’s a program (which exists on In simpler terms, it’s a program (which exists on an unrelated computer on the Internet) which can an unrelated computer on the Internet) which can be run there on demand by a program on your be run there on demand by a program on your computercomputer

How does it work?How does it work?

Web Service

Client Application

Application Server

Internet

In its most basic form, it is a Web-based Remote In its most basic form, it is a Web-based Remote Procedure Call (RPC) mechanism.Procedure Call (RPC) mechanism.

XML is used to encode all communicationsXML is used to encode all communications XML-RPC and Simple Object Access Protocol XML-RPC and Simple Object Access Protocol

(SOAP) are currently the most common protocols (SOAP) are currently the most common protocols in use for conducting the RPCin use for conducting the RPC

Web Services interactionWeb Services interaction

GetTemperature( “92010” ) GetTemperature( “90210” )

Return( “65” )Return( “65” )

Process returned Value

Client Application Application Server

What’s good about WS ?What’s good about WS ?

Shares many similarities with existing web Shares many similarities with existing web based interaction (http/s, firewalls, etc)based interaction (http/s, firewalls, etc)

Clients and servers can be created using Clients and servers can be created using unrelated technologiesunrelated technologies

Supports all web site security models Supports all web site security models (http/s, certificates, LDAP etc.)(http/s, certificates, LDAP etc.)

Offers additional security features beyond Offers additional security features beyond that of web sites (WS Security).that of web sites (WS Security).

PitfallsPitfalls

Massively distributed, therefore no Massively distributed, therefore no standards for error managementstandards for error management

Far greater need for securityFar greater need for security Response time cannot be guaranteedResponse time cannot be guaranteed

Two aspects to Web ServicesTwo aspects to Web Services

Use Web Services that others have Use Web Services that others have created (consumption)created (consumption)

Create your own Web Services for others Create your own Web Services for others to use (publishing)to use (publishing)

Consuming Web ServicesConsuming Web Services

Universal Description, Discovery and Integration Universal Description, Discovery and Integration (UDDI) registries are used to catalogue available (UDDI) registries are used to catalogue available Web Services Web Services

Use an XML-RPC or SOAP toolkit for your Use an XML-RPC or SOAP toolkit for your platform and your preferred programming platform and your preferred programming languagelanguage

Build your application logic around data retrieved Build your application logic around data retrieved from many different organizations through their from many different organizations through their published Web Servicespublished Web Services

Publishing Web ServicesPublishing Web Services

Create your Web Service using your Create your Web Service using your preferred programming language and preferred programming language and either the XML-RPC or SOAP toolkit for either the XML-RPC or SOAP toolkit for your platformyour platform

Use the Web Service Description Use the Web Service Description Language (WSDL) to describe your Web Language (WSDL) to describe your Web Service to other software systems Service to other software systems

Allow others to discover your Web Service Allow others to discover your Web Service by publishing to a UDDI serverby publishing to a UDDI server

How do they help me?How do they help me?

Provide access to a wider range of Provide access to a wider range of information and services than a web site.information and services than a web site.

No need to copy data locally as it is No need to copy data locally as it is always available across the internet.always available across the internet.

Software systems can reap the same Software systems can reap the same benefits as web client users.benefits as web client users.

Facilitates electronic collaboration Facilitates electronic collaboration between (disparate) systems.between (disparate) systems.

How does this help Justice?How does this help Justice?

Existing agencies Existing agencies already form the hubs already form the hubs for justice related for justice related information.information.

Large amounts of Large amounts of useful information useful information already exist, but in already exist, but in disparate systems.disparate systems.

Where can an officer look for Where can an officer look for information?information?

Existing systems Existing systems provide access to provide access to information stored information stored locally within an locally within an agency.agency.

Some agencies offer Some agencies offer information services information services via a web portal of via a web portal of some kind.some kind.

Web Services can Web Services can help create a new help create a new “face” for an agency“face” for an agency

Web Services in JusticeWeb Services in Justice

An ideal platform for data sharing without the An ideal platform for data sharing without the need to gather data in one placeneed to gather data in one place

Information obtained from multiple agencies can Information obtained from multiple agencies can be presented in a unified viewbe presented in a unified view

Elegantly solves integration of disparate island Elegantly solves integration of disparate island of data throughout Justiceof data throughout Justice

Can be real timeCan be real time Available 24 hours a dayAvailable 24 hours a day

Dig DeeperDig Deeper

MS Web Services Enhancements 1.0/2.0 MS Web Services Enhancements 1.0/2.0 provides for much broader use of Web provides for much broader use of Web Services (WS-Security, WS-Addressing, Services (WS-Security, WS-Addressing, etc)etc)

www.oreillynet.comwww.oreillynet.com www.w3c.orgwww.w3c.org ““Web Services Essentials”, Ethan CeramiWeb Services Essentials”, Ethan Cerami