一、什么是UDDI
-
UDDI基于一组常见的行业标准,包括HTTP,XML,XML Schema和SOAP,为基于Web服务的软件环境提供了一个可互操作的基础基础结构,用于可公开使用的服务和仅在组织内部公开的服务。
-
仅当潜在用户发现足以允许其执行的信息时,Web服务才有意义。
-
UDDI的重点是定义支持描述和发现服务的一组服务。
-
商业,组织和其他Web服务提供商
-
他们提供的Web服务
-
用于访问这些服务的技术接口。
-
提供一种简单的机制来支持Web服务及其规范的发现。
-
不要尝试定义描述语言本身,也不要尝试直接存储支持的XML元素。
二、UDDI的工作机制
-
UDDI注册中心包括:
-
以编程方式可访问的业务及其所支持服务的描述。
-
引用特定于行业的规范,分类法定义和标识系统。
-
-
UDDI注册了两种信息
-
tModel技术模型:抽象服务协议 用于描述特定Web服务的行为
-
businessEntity服务实现者:引用多个tModel提供有关其行为和规范的描述
-
-
工作机制

-
步骤
-
软件公司和标准机构定义与业务相关的规范-tModels
-
公司注册其业务及其提供的服务的描述
-
UDDI注册中心为每个实体和tModel分配一个唯一通用标识符(UUID)密钥。
-
其他客户使用UDDI注册中心发现感兴趣的服务。
-
其他企业可能会调用这些服务,从而实现动态集成。
-
三、UDDI数据模型
-
三组注册表信息
-
白页:企业的基本信息 (名称,联系信息,企业描述)
-
黄页:使用多种分类系统支持分页
-
绿页:与服务关联的绑定信息,提供对那些服务实现的技术规范的引用,以及指向各种基于文件和URL的发现机制的指针
-
-
E-R图

-
相关名词
-
businessEntity商业实体:有关发布有关服务族的信息的一方的信息
-
businessService商业服务:有关特定服务的描述性信息
-
bindingTemplate绑定模板:有关服务入口点和施工规格的技术信息
-
publisherAssertion:由双方之一断言的有关双方关系的信息
-
tModel:服务或分类规范的描述。 技术指纹的基础
-
绑定模板数据包含对tModel的引用,这些tModel指定服务的接口规范
-
<businessEntity xmlns="urn:uddi-org:api" businessKey="BBBBBBBB-BBBB-BBBB-BBBB">
<name>Contoso Finance Services</name>
<description xml:lang="en">Corporate Finance</description>
<businessServices>
<businessService
businessKey="BBBBBBBB-BBBB-BBBB-BBBB"
serviceKey="CCCCCCCC-CCCC-CCCC-CCCC">
<name>Credit Check</name>
<bindingTemplates>
<bindingTemplate serviceKey="CCCCCCCC-CCCC-CCCC-CCCC"
bindingKey="DDDDDDDD-DDDD-DDDD-DDDD">
<accessPoint URLType="https">
https://contoso.com/credit.aspx
</accessPoint>
<tModelInstanceDetails>
……
</tModelInstanceDetails>
</bindingTemplate>
</bindingTemplates>
</businessService>
</businessServices>
<categoryBag>
……
</categoryBag>
</businessEntity>
四、UDDI数据模型细节
-
<businessEntity>包含有关服务提供商的一般信息以及服务的集合。 它还包括分类,在<categoryBag>中通过引用tModel来指示
-
businessEntity属性

-
<businessServices> 集合 包含相关Web服务的功能分组集。
-
businessServices属性

-
<bindingTemplate>包括将用于调用Web服务的URL,以及对描述所实现协议的tModel的引用。它包含<accessPoint>, <accessPoint>传达适用于调用特定Web服务的入口点地址。
-
<bindingTemplate>属性

五、抽象协议:tModels
-
tModel结构用于提供描述符合规范,概念甚至共享设计的能力,这是tModel结构所扮演的角色之一。
-
应用范围
-
定义技术指纹
-
定义抽象名称空间引用
-
-
tModel属性

-
定义技术指纹
-
可以将预先约定的规范建立为唯一的技术标识,而该技术标识又是tModel
-
注册的Web服务可以引用<bindingTemplate>中的tModel来表示符合tModel中定义的规范。
-
通过这种方法,可以搜索与特定规范兼容的注册Web服务。
-
tModelKey成为给定规范所独有的技术指纹,而无序引用的tModelKey集则成为<bindingTemplate>的技术指纹。
-
技术指纹的用法实例
-
<tModelInstanceDetails>
<tModelInstanceInfo tModelKey="uuid:da648ae7-6805-4fbe-9830-50f7ed73c2be">
<instanceDetails>
<instanceParms>ProductOWLURI</instanceParms>
</instanceDetails>
</tModelInstanceInfo>
<tModelInstanceInfo tModelKey="uuid:09c569de-945f-4674-b408-b38f45d567e8" />
</tModelInstanceDetails>
-
定义抽象名称空间引用
-
在<identifierBag>和<categoryBag>的定义中,tModels被用作命名空间引用。
-
命名空间引用的用法样例
-
<categoryBag>
<keyedReference tModelKey="uuid:1ff729f2-1948-46cf-b660-31ec107f1663"
keyName="Computer and Peripheral Equipment Manufacturing"
keyValue="33411" />
</categoryBag>
六、UDDI APIs
-
UDDI提供了一种编程模型和架构,用于定义与注册表进行通信的规则
-
UDDI本身就是Web服务,通过指定的一组SOAP接口与UDDI进行交互
-
UDDI规范中所有API均以XML定义,包装在SOAP信封中并通过HTTP发送
-
UDDI在客户机和注册中心之间的流动

-
SOAP API 允许执行查询和发布操作
<soap:Envelope>
<soap:Body>
<find_business xmlns="urn:uddi-org:api">
<categoryBag>
<keyedReference
tModelKey="uuid:1ff729f2-1948-46cf-b660-31ec107f1663"
keyName="Computer and Peripheral Equipment Manufacturing"
keyValue="33411" />
</categoryBag>
</find_business>
</soap:Body>
</soap:Envelope>
七、UDDI总结
-
UDDI是一种行业标准,为发布和定位Web服务提供元服务
-
UDDI规范记录了有关Web服务的多种类型的信息,这些信息可以帮助服务请求者确定问题的答案,例如“谁,什么,在哪里和如何”。
-
* who:关于企业的简单信息
-
* What:包括行业代码和产品分类的分类信息,以及有关已注册Web服务的描述性信息
-
* where:可以通过其访问每种服务的注册信息
-
* how:关于给定服务的接口和其他属性的注册参考。
UDDI(Universal Description, Discovery, and Integration)是基于HTTP、XML等标准,提供Web服务发现和描述的行业基础架构。它包含了企业、服务、技术模型(tModel)等信息,通过注册中心进行服务注册和发现。tModel定义了服务接口规范,而绑定模板(bindingTemplate)则包含服务入口点和调用技术细节。UDDI通过API提供编程交互,支持服务请求者解答‘谁、什么、在哪里和如何’的问题。"
43186045,2038519,颠倒二叉树的三种解决方案,"['二叉树算法', '数据结构', '递归', 'LeetCode', '树形问题']

1169

被折叠的 条评论
为什么被折叠?



