Chris Peiris CSSE www.chrispeiris.com ASP.NET UDDI Browser Chris Peiris CSSE www.chrispeiris.com.

Slides:



Advertisements
Similar presentations
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
Advertisements

Web Service Architecture
Intesar G Ali IT DepartmentPalestinian Land Authority Web services Prepared by: Intesar Ali IT Department PLA August 2010.
Web Services Components of the Transactional Web James Snell
CSE 6331 © Leonidas Fegaras Web Services1 Web Services (adapted from Erdogan Dogdu's presentation) Leonidas Fegaras.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
UDDI v3.0 (Universal Description, Discovery and Integration)
1 Understanding Web Services Presented By: Woodas Lai.
Web Services Darshan R. Kapadia Gregor von Laszewski 1http://grid.rit.edu.
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
1 UDDI Jong-Ha Jung 07/28. 2 INDEX INDEX What is UDDI? What is UDDI? Appearance of UDDI Appearance of UDDI Why UDDI? Why UDDI? Analogy with Telephone.
UDDI, Discovery and Web Services Registries. Introduction To facilitate e-commerce, companies needed a way to locate one another and exchange information.
Web Services Technology Stack (WSDL and UDDI)
T NAF & XML UDDI Sasu Tarkoma and Pekka Nikander Helsinki Institute for Information Technology.
Web Services: UDDI. What is UDDI? UDDI = The Universal Description, Discovery, and Integration A central element of the group of standards that comprise.
UDDI Overview Copyright © by Accenture, Ariba, Inc., Commerce One, Inc., Fujitsu Limited, Hewlett-Packard Company, i2 Technologies, Inc., Intel.
Interactive Systems Technical Design Seminar work: Web Services Janne Ojanaho.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
A New Computing Paradigm. Overview of Web Services Over 66 percent of respondents to a 2001 InfoWorld magazine poll agreed that "Web services are likely.
UDDI Ashish Jain University of Colorado 3 October, 2001.
Presentation 9: UDDI - Universel Description, Discovery & Integration.
B2B e-commerce standards for document exchange In350: week 13: Nov. 19,2001 Judith A. Molka-Danielsen.
Processing of structured documents Spring 2003, Part 6 Helena Ahonen-Myka.
Introduction to UDDI From: OASIS, Introduction to UDDI: Important Features and Functional Concepts.
WEB SERVICES Web Development Technology. 2 Contents How it’s work? –Definition –Simple Web Service Invocation –Web Service Description –SOAP –UDDI.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
UDDI Overview 9/6/2000 © Copyright 2000 By Ariba, Inc., International Business Machines Corporation and Microsoft Corporation. All Rights Reserved.
1 Core Web Services Standards. 2 (Simplified) Web Service Architecture Registry 1. Service Registers PUBLISH 3. Client calls Service BIND 2. Client Request.
Web Service Addressing CS409 Application Services Even Semester 2007.
Web Services (SOAP, WSDL, and UDDI)
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
WSDL Tutorial Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University
Dodick Zulaimi Sudirman Lecture 14 Introduction to Web Service Pengantar Teknologi Internet Introduction to Internet Technology.
Web Services (SOAP, WSDL, UDDI) SNU OOPSLA Lab. October 2005.
1 Universal Description, Discovery, and Integration (UDDI) 大葉大學資工系.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
UDDI Jianguo Lu University of Windsor What is UDDI?  Universal Description, Discovery, and Integration  A project to encourage interoperability.
XML Registries Source: Java TM API for XML Registries Specification.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Web Services. ASP.NET Web Services  Goals of ASP.NET Web services:  To enable cross-platform, cross- business computing  Great for “service” based.
The Exchange Network Node Mentoring Workshop Universal Description, Discovery, and Integration Registry David Dundua February 28, 2005.
A brief introduction of UDDI By Xin Huang. What is UDDI.
1 Web Services Web and Database Management System.
Kemal Baykal Rasim Ismayilov
WEB SERVICE DESCRIPTION LANGUAGE (WSDL). Introduction  WSDL is an XML language that contains information about the interface semantics and ‘administrivia’
CP3024 Lecture 10 Web Services. What are Web Services?  “encapsulated, loosely coupled, contracted software objects offered via standard protocols” ZapThink.
UDDI (Universal Description, Discovery and Integration) Dr. SVL Narasimham.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
Introduction to Web Services Presented by Sarath Chandra Dorbala.
Lecture VI: SOAP-based Web Service CS 4593 Cloud-Oriented Big Data and Software Engineering.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
1 G52IWS: Universal Description, Discovery and Integration (UDDI)‏ Chris Greenhalgh
DISCO/UDDI -Ketan Reddy Peddabachi. Agenda Web Service Disco UDDI Disco Vs UDDI.
UDDI (Universal Description,Discovery and Integration) By S.NAGARJUNA M.Tech-C.S.E.
INFS3204/ M51 INFS 3204/7204 Service-Oriented Architecture Dr Heng Tao SHEN ITEE, UQ Semester 2, M5: Web Service basics.
Java Web Services Orca Knowledge Center – Web Service key concepts.
Jim Fawcett CSE681 – SW Modeling & Analysis Spring 2005
Sabri Kızanlık Ural Emekçi
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Introduction to Web Services
Service-Oriented Computing: Semantics, Processes, Agents
Wsdl.
Web Server Administration
WEB SERVICES DAVIDE ZERBINO.
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Introduction to Web Services and SOA
Presentation transcript:

Chris Peiris CSSE www.chrispeiris.com ASP.NET UDDI Browser Chris Peiris CSSE www.chrispeiris.com

©Chris Peiris (www.chrispeiris.com) Agenda What is WSDL? WSDL Implementation Abstract UDDI (Universal Description, Discovery and Integration ) UDDI Data Structures ASP.NET Implementation 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Web Services Web services are applications that can be published, located, and dynamically invoked across the Web. Web services perform functions ranging from simple requests to complicated business processes. Once a Web service is deployed, other applications and other Web services can discover and invoke the deployed service. First we need to investigate web services before we get to UDDI. DEMO (go to link “Web Services – Book Price Compare”) 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Web Service Example Demo: http://localhost/Books_Web_Service/Book_Details.asmx <<DESCRIBE THE WSDL FRAGMENT>> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

WSDL Web Services Description Language XML schema for describing Web Services Service interface definition Abstract semantics for Web Service Service implementation definition Concrete end points and network addresses where Web Service can be invoked Clear delineation between abstract and concrete messages WSDL is very useful if you know what Web Services are out there on the Web, and where they are. The Discovery protocol is useful for searching and actually finding Web Services A Web Service can publish a discovery (DISCO) document. This is an XML file that contains the URL of the WSDL description of the service. When a client uses discovery to find a Web Service, the WSDL URL will be reported back to the client. The client can then use the URL to obtain the complete WSDL description, and then use the WSDL description to access the Web Service. The DISCO XML schema allows a DISCO document to contain references to other DISCO documents and Web sites. The discovery algorithm will follow these links and return the URLs of all WSDL descriptions found to the client. Additionally, dynamic discovery allows an entire tree of directories on a Web site to be searched automatically (it is possible to specify that certain directories should be excluded, for security reasons). The ubiquitous wsdl.exe utility, supplied with the .NET SDK, can be used by a client to perform discovery and find Web Services. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) WSDL WSDL Schema Interface Implementation <definitions> <definitions> <import> <import> <types> <service> <message> <port> <portType> <binding> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) WSDL WSDL Schema <definitions> are root node of WSDL <import> allows other entities for inclusion <types> are data definitions - xsd <message> defines parameters of a Web Service function <portType> defines input and output operations <binding> specifies how each message is sent over the wire Interface <definitions> <import> <types> <message> <portType> <binding> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) WSDL WSDL Schema Implementation <service> specifies details about the implementation <port> contains the address itself <definitions> <import> <service> <port> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) WSDL WSDL Elements Open – allows for other namespaces and thus highly extensible Ability to import other schemas & WSDL Provides “recipe” for Web Services Provides both interface and implementation details Allows for separation of the two <<TBD>> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) WSDL Example Demo: http://localhost/Books_Web_Service/Book_Details.asmx?WSDL <<DESCRIBE THE WSDL FRAGMENT>> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Now we know What Web Services are What WSDL does How do we search web services Use a directory of web services www.xmethods.com Some Practical Questions What Web Services does a given company offer? What Web Services, categorized as accounting is offered today? Who do I need to contact about using my company’s Web Service? What are the Web Services available for Melbourne Metro area regarding the health care industry? What are the implementation details of particular Web Services? What companies have written implementation around one of these interfaces? Who do I need to contact about using my company’s Web Service? Like Siemens 400,000 in Germany …….. How am I going to do that? What are the implementation details of particular Web Services? Software developer :- MS Passport So we have web page and HTML to describe it……… 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI Overview UDDI = Universal Description, Discovery, and Integration Industry Initiative to address discovery A registration database for Web Services Specifications Schema for service providers and descriptions API for publishing and searching Developed on industry standards (XML, HTTP, TCP/IP, SOAP) Applies to both XML and non-XML services Implementation Public and private instances of specification What is UDDI? UDDI - Universal Description, Discovery, and Integration -- is a project started by Microsoft, IBM, and Ariba and is being publicly launched September 6th. The goal of UDDI is to accelerate the adoption of B2B commerce by providing businesses with a standard way to programmatically describe their own Web Services while making it easier to discover the Web Service capabilities of their trading partners and customers. UDDI does this through a set of specifications for service description and through the shared operation of a Business Registry on the web. UDDI is based on XML and SOAP and is a core component of Microsoft's .NET strategy. Over 30 companies, including Sun Microsystems, have joined the project. Microsoft, Ariba, and IBM will manage UDDI for the next year and then transition the project to a standards body. Publishing activities All interactions that involve publishing require an authenticated connection. Before you can start publishing data to a UDDI registry, you must first have visited the registry web site and selected a specific UDDI Operator that you'll use to manage your data. Once you have selected an operator (there are many operators, each which manage a portion of the overall data), you'll sign up for publishing credentials. You'll need these credentials (typically a user name and password pair) to connect to the UDDI publishing server before using any of the UDDI publishing API. Registering your organization One of the first tasks is to register your master organization information. This is simply data about your business or organization, including the name of the organization, and optional description and contact information. Several of the objects provided in the SDK are useful for registering data about your organization. Registering software that uses .Net services The main purpose of the UDDI registry is to let others know you exist and that you have .Net services exposed that can be used to interact with your business. Common examples of these services will be for business document interchange – for documents such as purchase orders, invoices, shipping notices, etc. Depending on the tools and products you use to manage your exposed services, you'll want to use the UDDI registry to advertise technical information about your service. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI Important UDDI Features Neutral in terms of protocols – as a registry, it can contain pointers to anything Can search by business, service, Web Service (tModel), binding Usage of Globally Unique Identifiers (GUIDs) Specification allows public and private nodes Delineation between interface and implementation 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI Inspection Process Directory of Web Services (xmethods.com) Inspection lets you find Web Services on a given site A Web site publishes DISCO documents, which returns the URLs of WSDL descriptions DISCO documents can contain references to other sites and DISCO documents Dynamic discovery enables trees of directories to be searched 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI Data White Pages Businesses register public information about themselves Standards bodies, Programmers, Businesses register information about their Service Types This is at “Design Time”. We can also implement UDDI at “Run Time” Yellow Pages Green Pages Standard bodies service registration :- W3C can make a service available for XHTML compliancy Monash Uni can publish a service to validate .Net platform architecture. Service Type Registrations 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) White Pages Business Name Text Description list of multi-language text strings Contact info names, phone numbers, fax numbers, web sites… Known Identifiers list of identifiers that a business may be known by – D-U-N-S (UDDI registry generated unique number for each business) Try – it is wrong (D-U-N-S (Dynamic User Name Service )) 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Yellow Pages Business categories 5 standard taxonomies in Version 2.0 Industry: NAICS (Industry codes - US Govt.) Product/Services: Standard Industrial Classification, USPSC Location: Geographical taxonomy (GGC, ISOGT) Implemented as name-value pairs to allow any valid taxonomy identifier to be attached to the business white page Refer to UDDI MS search top taxonomy. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Green Pages New set of information businesses use to describe how to “do e-commerce” with them Nested model Business processes Service descriptions Binding information Programming/platform/implementation independent Services can also be categorized DEMO MS UDDI Search online shopping service (http://uddi.microsoft.com/Details/ServiceDetail.aspx?serviceID=491e8f93-e90f-42e3-a048-726744453659) 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI Registries and Protocol UDDI The Vision Advanced Discovery via Portals and Marketplaces Marketplace UDDI Registries and Protocol Marketplace Marketplace The Universal Description, Discovery and Integration (UDDI) specifications define a means for publishing and discovering Web Services. In the light of DISCO it may seem redundant, but UDDI provides more features than DISCO, and arguably in a more efficient manner. UDDI is based upon a directory service or Business Registry. Businesses can register themselves, their type of business, and technical descriptions of any Web Services they publish in the registry. Other business can query the registry, searching for partners using compatible software or offering Web Services that they could interact with. The aim is to promote faster B2B integration. There are several UDDI registries available, including one at http://uddi.microsoft.com, and a test registry at http://test.uddi.microsoft.com. Naturally, all interactions with a UDDI registry are performed using a defined XML schema, and SOAP. Search Portal Search Portal Business Users Technical Users 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI UDDI Information Model Provider: Information about the entity who offers a service tModel: Descriptions of specifications for services. 1…n Service: Descriptive information about a particular family of technical offerings 0…n Bindings contain references to tModels. These references designate the interface specifications for a service. Binding: Technical information about a service entry point and construction specs 0…n 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI Data Structures All XML based API implementations Inquire Publish Close to 15 structures Main Data Structures businessEntity serviceEntity tModel bindingTemplate Binding Template links multiple tModels to Service entities. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI UDDI Schema Interface Implementation <businessEntity> <businessService> <tModel> <bindingTemplate> Student Marks System Business Entity :- CSSE Business Service :- Online Student Marks. http://localhost/Student_Marks/default.aspx I want to build a authentication model ……? Binding Template :- logon URL tModel :- pass port .net authentication service. Interface :- Interface is a authentication security model. Technical details for “Passport.net” Implementation :- Binding Template - Acces point (URL) to point to the location. Ex:- dmb.csse.monash.edu.au/cse3210/passport_entry.aspx <businessService> <tModel> <bindingTemplate> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI How UDDI Works: tModel tModel = Technology Model Generic meta-data structure to uniquely represent any concept or construct Also includes interface protocol definitions Powerful abstraction modeling system Examples: WSDL files, XML schema, namespaces, categorization schemes 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI <tModel> <tModel> represents meta-data and interfaces <tModel xmlns="urn:uddi-org:api" tModelKey="UUID:AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA"> <name>microsoft-com:creditcheck</name> <description xml:lang="en">Check credit limits</description> <overviewDoc> <overviewURL>http://schema.com/creditcheck.wsdl </overviewURL> </overviewDoc> <categoryBag> <keyedReference tModelKey="UUID:CD153257-086A-4237-B336-6BDCBDCC6634" keyName="Consumer credit gathering or reporting services" keyValue="84.14.16.01.00"/> tModelKey="UUID:C1ACF26D-9672-4404-9D70-39B756E62AB4" keyName="types" keyValue="wsdlSpec"/> </categoryBag> </tModel> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI Providers, Services And Bindings Examples: Accounting Department, Corporate Application Server Name, Description, Contact Information Categorization and Identification Information Services Examples: Purchase Order services, Payroll services Name, Description(s) Categorization Information Bindings Description(s), access points, parameters Examples: Access Point (http://...) for Web Service 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

UDDI <bindingTemplate> <bindingTemplate> represents data and implementation details <bindingTemplate serviceKey="33c3d124-e967-4ab1-8f51-d93d95fac91a" bindingKey="48f2bc6b-a6de-4be8-9f2b-2342aeafaaac"> <accessPoint URLType="http"> http://localhost/HelloWorld/Service1.asmx </accessPoint> <tModelInstanceDetails> <tModelInstanceInfo tModelKey="uuid:64c756d1-3374-4e00-ae83-ee12e38fae63“/> </tModelInstanceDetails> </bindingTemplate> 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

Business Registrations How UDDI Works Marketplaces, search engines, and business apps query the registry to discover services at other companies 4. 1. SW companies, standards bodies, and programmers populate the registry with descriptions of different types of services Business Registrations Businesses populate the registry with descriptions of the services they support 2. UDDI Business Registry Business uses this data to facilitate easier integration with each other over the Web (www.uddi.org) 5. Service Type Registrations – Create a “flowers” category in UDDI 3. UBR assigns a programmatically unique identifier to each service and business registration 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) ASP.NET Browser UDDI Browser http://dmb.csse.monash.edu.au/wrox_uddi_browser/Business_Search.aspx UDDI Article http://dmb.csse.monash.edu.au/cse3210/uddi/uddi_article.htm 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) UDDI Toolkits Microsoft UDDI SDK v1.5.2 (http://www.microsoft.com/downloads/release.asp?ReleaseID=30880) Sun Java API for XML Registries (JAXR) including UDDI (http://java.sun.com/xml/jaxr/index.html) IBM WebSphere UDDI Registry (http://www7b.boulder.ibm.com/wsdd/downloads/UDDIregistry.html) JUDDI - 3rd Party UDDI SDK – built on Java Implementation (http://www.juddi.org) 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Future of UDDI Version 3.0 is to be released December, 2001 Integrated into future .Net servers UDDI support in office XP SDK Integrated into Windows XP as a service Integrated into MS .NET Server as a service BizTalk 3.0 (Bizet) will be WSDL compliant The number of participating companies (public UDDI nodes) are growing UDDI implementation will be 3rd party software business venture.ex:- Sirvisetti Systems (Similar to web hosting sub set of IT.) MS Sydney confided that MS is going to give it away to 3rd party, and the third party implementation will be a industry by itself. Bizet will accommodate WSDL as well as XPath 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) E-Business Growth Source: McCall T. quoting Shu L. (2001) Worldwide Business-to-Business Internet Commerce to Reach $8.5 Trillion in 2005. The Gartner Group. Available: www.gartner.com. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) References .Net web Services by Wrox Press (http://www.wrox.com/Books/Book_Details.asp?section=1_2&isbn=1861004397&subject=&subject_id=) he best web source is http://www.uddi.org UDDI Programmer’s specification 2.0 (http://www.uddi.org/pubs/ProgrammersAPI-V2.00-Open-20010608.pdf) UDDI Executive White Paper 2.0 (http://www.uddi.org/pubs/UDDI_Executive_White_Paper.pdf) UDDI Technical White Paper 2.0 (http://www.uddi.org/pubs/Iru_UDDI_Technical_White_Paper.pdf) UDDI Data Structure Specification (http://www.uddi.org/pubs/DataStructure-V2.00-Open-20010608.pdf) Microsoft UDDI Developer Site (http://uddi.microsoft.com/developer/default.aspx) Alphaworks web site (http://www.alphaworks.ibm.com/) Sun UDDI implementation (http://www.sun.com/software/xml/developers/uddi/) Mention the seminar at MS and chrispeiris.com 9/22/2018 ©Chris Peiris (www.chrispeiris.com)

©Chris Peiris (www.chrispeiris.com) Questions ????? Security Upto the web service implementation. UDDI is a registry. uses SSL over HTTP for encryption in B2B in MS SOAP Toolkit 2.0 Gold “HttpConnector” can have a user name and password pass parameter. Before we have pass them as clear text tagged in XML. 9/22/2018 ©Chris Peiris (www.chrispeiris.com)