web services: uddi

25
Web Services: UDDI

Upload: giolla

Post on 08-Jan-2016

46 views

Category:

Documents


1 download

DESCRIPTION

Web Services: UDDI. What is UDDI?. UDDI = The U niversal D escription, D iscovery, and I ntegration A central element of the group of standards that comprise the Web services stack. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Web Services:  UDDI

Web Services: UDDI

Page 2: Web Services:  UDDI

What is UDDI?• UDDI = The Universal Description, Discovery,

and Integration

• A central element of the group of standards that comprise the Web services stack

A platform-independent, XML-based registry for businesses worldwide to list themselves on the Internet

Page 3: Web Services:  UDDI

UDDI Basics• UDDI is a specification for creating a registry

service that catalogs organizations and their Web services

• An implementation of the UDDI specification is called a UDDI registry

• UDDI enables a business to: • Describe its business and its services• Discover other businesses that offer desired services • Integrate with these other businesses

Page 4: Web Services:  UDDI

UDDI Registry• A UDDI registry is a database that supports a set

of standard data structures defined by the UDDI specification

• Most UDDI products run on a relational DBMS

• Can be implemented using other technologies, including LDAP servers and XML databases

• UDDI products are offered by a number of vendors, including IBM, Microsoft, Sun, Oracle, Fujitsu, Systinet

Page 5: Web Services:  UDDI

Registry Data• A UDDI business registration consists of

three components:

• White Pages — address, contact, and known identifiers;

• Yellow Pages — industrial categorizations based on standard taxonomies;

• Green Pages — technical information about services exposed by the business

WhitePages

YellowPages

GreenPages

Page 6: Web Services:  UDDI

Brief History• Originally developed by Microsoft, IBM, and

Ariba in 2000

• Later UDDI.org was formed, 12 other companies invited to participate

• At first attention was focused on the "UDDI Business Registry” - a public implementation of the UDDI standard

• Now supported by OASIS

Page 7: Web Services:  UDDI

Versions• UDDI 1.0 (2000)

• Foundation for registry of Internet based business services

• UDDI 2.0 (2001)• Align specification with emerging Web services

standards and provide flexible service taxonomy

• UDDI 3.0 (2004)• Support secure interaction of private

and public implementations as major element of service-oriented infrastructure

Page 8: Web Services:  UDDI

Private and Public Registries• Anyone can set up a UDDI registry for private use

within an organization or market place

• In addition, there was a massive public UDDI registry called the UDDI Business Registry, which was run jointly by IBM, Microsoft, NTT, and SAP

• Companies announced they were closing their public UDDI nodes in January 2006

• However, companies continue to support private registries in their products

Page 9: Web Services:  UDDI

The Self-Organizing Myth• At first, the concept of self-organizing systems

was high on the list of motivations for creating the registry standard

• Idea - applications look up Web services and integrate with them automatically, without any human intervention

• Sounded pretty good, but in reality doesn't work!

• The high level of artificial intelligence is required to make the heuristic decisions

Page 10: Web Services:  UDDI

Key Functional Concepts• UDDI describes a registry of Web services and

programmatic interfaces for publishing, retrieving, and managing information about services

• Describes about 30 different SOAP operations that allow to add, update, delete, and find information contained in a UDDI registry

• UDDI itself is of set a Web services!

Page 11: Web Services:  UDDI

The UDDI Data Model• The core information model used by a UDDI

registry is defined in several XML schemas

• XML was chosen because• it offers a platform-neutral view of data• allows hierarchical relationships to be described in a

natural way

• XSD was chosen because of its• support for rich data types • ability to easily describe and validate information

based on models represented in schemas

Page 12: Web Services:  UDDI

Data Model Types1. businessEntity

• Business or organization that provides the Web service

2. businessService• Web service or some other electronic service

3. BindingTemplate• Technical details to invoke Web services

4. tModel• Technical fingerprints used to access service

specifications

Page 13: Web Services:  UDDI

Data Model Types (cont.)5. publisherAssertion

• Show relationship between business Entities

Page 14: Web Services:  UDDI

UDDI Programming API• UDDI accessing operations use SOAP messages

UDDI RegistryNodeUser

UDDISOAP Request

UDDISOAP Response

HTTPServer

SOAPProcessor

UDDIRegistry Service

B2B DirectoryCreate, View, Update, and Deleteregistrations

Implementation-neutral

Page 15: Web Services:  UDDI

UDDI Programming API• UDDI's standard Web services are divided into

two WSDL/SOAP-based APIs: • The Inquiry API• The Publishing API

• All UDDI Inquiry and Publishing operations use Document/Literal SOAP messages and all of them are Request/Response

Page 16: Web Services:  UDDI

Inquiry API• Find things

• find_business• find_service• find_binding• find_tModel

• Get details about things• get_businessDetail• get_serviceDetail• get_bindingDetail• get_tModelDetail

Page 17: Web Services:  UDDI

Publishing API• Save things

• save_business• save_service• save_binding• save_tModel

• Delete things• delete_business• delete_service• delete_binding• delete_tModel

Page 18: Web Services:  UDDI

Example: Searching• To search for a company, say Microsoft,

we would create a query within a SOAP envelope:

<find_business generic="1.0" xmlns="urn:uddi-org:api">    <name>Microsoft</name>

</find_business>

Page 19: Web Services:  UDDI

Example: Response (1-3)<businessList generic="1.0"

operator="Microsoft Corporation"

truncated="false"

xmlns="urn:uddi-org:api">

<businessInfos>

<businessInfo

businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3">

<name>Microsoft Corporation</name>

<description xml:lang="en">

Empowering people through great software -

any time, any place and on any device is Microsoft's

vision. As the worldwide leader in software for personal

and business computing, we strive to produce innovative

products and services that meet our customer's

</description>

Page 20: Web Services:  UDDI

Example: Response (2-3) <serviceInfos>

<serviceInfo

businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"

serviceKey="1FFE1F71-2AF3-45FB-B788-09AF7FF151A4">

<name>Web services for smart searching</name>

</serviceInfo>

<serviceInfo

businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"

serviceKey="8BF2F51F-8ED4-43FE-B665-38D8205D1333">

<name>Electronic Business Integration Services</name>

</serviceInfo>

<serviceInfo

businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"

serviceKey="611C5867-384E-4FFD-B49C-28F93A7B4F9B">

<name>Volume Licensing Select Program</name>

</serviceInfo>

Page 21: Web Services:  UDDI

Example: Response (3-3) <serviceInfo

businessKey="0076B468-EB27-42E5-AC09-9955CFF462A3"

serviceKey="A8E4999A-21A3-47FA-802E-EE50A88B266F">

<name>UDDI Web Sites</name>

</serviceInfo>

</serviceInfos>

</businessInfo>

</businessInfos>

</businessList>

Page 22: Web Services:  UDDI

Java API for XML Registries• JAXR provides a uniform and standard Java API

for accessing various kinds of XML registries

• Gives developers the ability to write registry client programs that are portable across various target registries

Page 23: Web Services:  UDDI

UDDI4j• UDDI4J is a Java class library that provides an

API to interact with a UDDI registry

• Project is licensed under the IBM Public License.

• Project is hosted by SourceForge.net: http://sourceforge.net/projects/uddi4j/

Page 24: Web Services:  UDDI

UDDI Server Implementations• There are various UDDI servers

• Apache jUDDI: Open-Source UDDI Server

• Oracle Service Registry

• Microsoft Enterprise UDDI Services: Part of Windows Server 2003

• BEA Aqualogic Service Registry

• Systinet Registry

Page 25: Web Services:  UDDI

References• Introduction to UDDI: Important Features and Functional

Concepts

http://www.oasis-open.org/committees/download.php/9861/UDDI%20Technical%20White%20Paper%20(Final).pdf

• Universal Description, Discovery and Integration (UDDI) project:http://www.uddi.org/

• Java Specification Request (JSR) 93: JAXR 1.0:http://jcp.org/jsr/detail/093.jsp

• Microsoft UBR Shutdown FAQhttp://uddi.microsoft.com/about/FAQshutdown.htm