SMTP Transport Binding for SOAP

SOAP 除了可以 bind 到 HTTP 上外, 也可以 bind 到 SMTP 上. 其实个人感觉, SOAP bind 到 SMTP 上的场景很少会使用到, 通常限于 one-way operation (比如通知等不需要响应). 如果需要实现 request/response, 那么是需要多做一些工作的(下文会有叙述).
soap:binding element 的 transport 属性需指定一个 http://xxx(例如:http://schemas.xmlsoap.org/soap/smtp) URL 来表明所要 binding 的 protocol. 似乎这个 URL 是任意形式, 只要能让调用方知道要使用什么协议即可. 在 soap:address 要给定 mailto:xxxx@xxx.xxx 这样形式的 URI.
<service name=”StockQuoteServiceBinding_service”>
[...]

By javafuns on July 19, 2009 at 23:37 · Views: 232 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , , ,

Which style of WSDL should I use? (reship)

A Web Services Description Language (WSDL) binding style can be RPC or document. The use can be encoded or literal. How do you determine which combination of style and use to use? The author describes the WSDL and SOAP messages for each combination to help you decide.

By javafuns on July 7, 2009 at 16:40 · Views: 581 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Custody and Ownership Transfer API Set

本节定义 UDDI Custody and Ownership Transfer API Set. 通过创建一个实体, 一个发布者可以拥有该实体的所有权, 称他为这个实体的所有者. 一个保管节点必须通过授权机制维护一个实体和它的发布者的所有权关系. 多节点注册中心的每个节点必须保证集成了实体保管功能. 同样, 一个节点务必不可允许改变一个实体, 除非这个节点已经保管了这个实体.
Custody and Ownership Transfer API Set 使得一个注册中心的任意节点能够相互间从一个节点向另一个节点转移一个或多个 businessEntity or tModel 的保管关系, 也允许从一个发布者向另一个发布者转移这些数据的所有权. 一个 businessEntity 所包含的实体例如它的 businessService, bindingTemplate, 和 publisherAssertion 结构作为这个 businessEntity 保管关系转移的一部分进行转移.
从保管转移的视角来说, 参与这种转移的发布者总是不同的人, 尽管可能具有这种情况: 这些发布者都是同一个人. 这两个节点可能是不同的节点, 也可能是相同的节点; 两者发布者间的节点内(intra-node)转移简单退化为节点保管关系没有变化这种情况. 因而, 在节点内(规范上为inter-node, 注:这里应该是规范笔误)转移的情况下, 暗含的是所有权转移. 在节点内(intra-node)转移时, 这种转移使得两个发布者间进行所有权转移.
例如, 一个 UDDI 注册中心, UDDI-1, 可能允许每个节点(由节点1A, 1B [...]

By javafuns on July 19, 2008 at 20:41 · Views: 507 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Value Set API Set

当在 save_xxx 操作中使用到 keyedReference 时, 它可能会被检查是否是有效的. 类似的, 在 save_xxx 操作中使用到一个 keyedReferenceGroup element 可能也要接受检查确定其是否有效. 检查针对那些被 UDDI 注册中心认为是 “checked” 的 tModels.
UDDI 提供了让第三方注册 value set 的能力, 然后控制检验过程(由 UDDI 使用)去执行这种检查. UDDI 注册中心可能支持缓存这些外部 value sets. UDDI 注册中心也可能支持外部校验. 由节点和注册中心策略确定使用哪种校验方式去执行对外部值集引用的检查. 这一系列 APIs 能够供 UDDI 注册中心和节点用在它们的校验策略中.
想提供一个外部检验能力的第三方实体可能需要使用跟 UDDI 一样的方式去实现一个 Web service(举例来说, 使用 literal encoding SOAP 作为消息传递机制), 这个 Web service 只暴露一个方法 validate_values. validate_values 接口将在随后描述.
在某些情况下, 一个节点可能希望消除或者减少对外部校验 [...]

By javafuns on July 15, 2008 at 22:54 · Views: 449 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Security Policy API Set

security API 包括下面 APIs:
· discard_authToken: 用于通知节点以前得到的某 authentication token 不再需要了, 如果在接收到这个消息之后还有使用它的, 应该认为它是无效的.
· get_authToken: 用于从一个节点请求一个使用 authInfo element 样式的 authentication token. 在使用 Inquiry API Set, Publication API Set, Custody and Ownership Transfer API Set, 和 Subscription API Set 中的 API 时, authInfo element 可能是必需的.
API 是否需要 authInfo elements 是由节点策略决定的. 如果一个 authInfo element 最后并没有被丢弃, 节点可能会选择使这个 authentication token 过期, 这样可以让它不再有效. 如果一个过了期的 [...]

By javafuns on July 13, 2008 at 20:01 · Views: 465 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Publication API Set(3)

save_binding:
save_binding API 用于保存或更新一个完整的 bindingTemplate element. 它可以用于添加或更新一个或多个 bindingTemplate elements, 也可以用于调整与某 businessService element 的包含关系. 每个 bindingTemplate 可能(MAY) 被签名, 可能(MAY)使用 publisher-assigned keys.
参数:
· authInfo: 略.
· bindingTemplate: 必需的. 可有1个或多个 bindingTemplate. 如要保存一个新的 bindingTemplate, 则提供一个 bindingTemplate element,
或者 bindingKey 属性值为空, 或者使用 publisher-assigned bindingKey.
每个新的 bindingTemplate 必须(MUST)包含一个 serviceKey 值, 该 serviceKey 所对应的 businessService 也是由该发布者所控制的. 一个已存在的 bindingTemplate 可能(MAY)包含一个 serviceKey 值, 对应于该同一发布者所控制的 businessService. 调用这个 API 将影响到每个 bindingTemplate [...]

By javafuns on July 7, 2008 at 22:53 · Views: 466 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Publication API Set(2)

Publisher API 概要:

add_publisherAssertions: 用于向已存在的断言集合中添加关系断言.
delete_binding: 用于从 registry 中移除一个已有的 bindingTemplate.
delete_business: 用于删除已有的 businessEntity 信息.
delete_publisherAssertions: 用于从一个特定发布者所控制的断言集合中删除该特定发布者的断言. 从断言集合中删除断言影响到商业实体关系的可见性. 删除一个断言导致任何基于那个断言的关系都将成为不完整的.
delete_service: 用于删除一个已有的 businessService.
delete_tModel: 用于隐藏已有的 tModel 的信息. 任何使用这个方式隐藏掉的 tModel, 对于引用来说, 仍将是可用的, 并且可以通过 get_tModelDetail API 访问, 但从 find_tModel 结果集中是看不到的(即被hidden). 没有任何方式可以(真正、物理)删除一个 tModel.
get_assertionStatusReport: 用于获得包含发布者断言和状态信息的状态报告. 这种报告对于帮助管理员管理发布者断言来说是非常有用的. 返回的 assertionStatusReport 包括发起该请求的发布者所控制的任何 businessEntity 构成的所有断言的状态.
get_publisherAssertions: 用于获得一列由某发布者控制管理的发布者断言. 返回的 publisherAssertions 结构包含所有与这个发布者有关联的发布者断言.
get_registeredInfo: 用于请求一个给定发布者当前所管理的 businesses 和 tModels 的简要列表.
save_binding: 用于注册新 bindingTemplate 信息或更新已有的 bindingTemplate 信息. 使用这个 API [...]

By javafuns on July 1, 2008 at 21:56 · Views: 458 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,

UDDI 规范 v3.0.2 – UDDI Programmers APIs 之 Publication API Set(1)

这个系列的 API 用于发布和更新 UDDI registry 中的数据.
根据 UDDI registry 的 policy, 发布者选择 UDDI node 用于发布信息.
从调用者的角度来看, 这一系列的 API 必须(MUST)全部实现为 synchronous 且 “atomic”. 即, 每个调用必须(MUST)或者完全成功或者完全失败. 务必不能(MUST NOT)返回部分结果.
发布实体时使用节点指定的(node-assigned) keys
当发布者没有为新实体提供 keys 时,  UDDI node 将依照 registry policy 指定 keys. Node-assigned keys 必须(MUST)遵从 Section 4.4 关于 uddiKeys 的语法.
发布实体时使用发布者指定的(publisher-assigned)keys
registry 键策略可能(MAY)允许一个实体的 key 由发布者提供. 如果发布者没有为实体提供 key, registry 必须为其指定一个. 因为实体 keys 在一个 registry 中必须(MUST)唯一, 不管它是什么实体类型(即在所有类型的实体中key都必须唯一), [...]

By javafuns on June 29, 2008 at 21:46 · Views: 444 · Permalink · Leave a comment
Categorized in: SOA · Tagged with: , , ,
  • Highest Rated

  • My PicasaPhotos

    IMG_0536.JPG

    IMG_0657.JPG

    IMG_0670.JPG

  • RSS My del.icio.us

  • My RSS