在SOA开发中使用WBSF动态调用业务服务,第2部分(下)

WBSF(WebSphere Business Services Fabric)让我们在 SOA 开发中能够根据服务策略动态调用业务服务。本文通过一个具体的例子,介绍如何通过 WBSF V6.02 的 SCA 编程模型动态调用业务服务。

组装服务流程

创建 AccountQueryProcess 业务流程:

将 WID 切换至”Business Integration” perspective,在 AccountQueryModule 项目中新建 AccountQueryProc 接口 , 该接口包含 query 方法,如图 1 所示:


图 1 创建 AccountQueryProc 接口

在 AccountQueryModule 项目中新建 Business Process “AccountQueryProcess”,为该 bpel 选择接口为 AccountQueryProc。该 bpel 首先调用 AuthorizationService,然后调用 AccountQueryService,如图 2 所示:


图 2 AccountQueryProcess 流程实现

在”Business Integration”视图下,将 AccountQueryProcess 从 Business Logic 中拖入 Assembly Diagram,WID 将生成以该 BPEL 为实现的 SCA 组件。

通过 Dynamic Assembly 组件组装业务服务:

在 Assembly Diagram 中添加一个 Dynamic Assembler 组件,命名为” AuthorServiceDA”,为其添加 AuthorizationService 接口。双击该组件,生成 DA 实现,如图 3 所示。为 AccountQueryProcess 组件添加到 AuthorServiceDA 的引用。


图 3 AuthorServiceDA 实现

按照同样的步骤,添加 AccountQueryDA Dynamic Assembler 组件,为其选择 AccountQueryService 接口,同样将其添加为 AccountQueryProcess 的引用。如图 4 所示。右键单击 AccountQueryProcess 组件,选择”Synchronize interfaces and references”=>”to implementation”。在 bpel 中将生成两个对应的 Reference Partner。


图 4 为 AccountQueryProcess 添加到 DA 的引用

用流程编辑器打开 AccountQueryProcess,为 AuthorizationService 的调用设置 Partner 为生成的 AuthorizationServicePartner,如图 5 所示:


图 5 设置 AuthorizationService Partner

同样为 AccountQueryService 的调用设置 Partner,如图 6 所示:


图 6 为 AccountQueryService 设置 Partner

时间: 2024-11-03 10:16:33

在SOA开发中使用WBSF动态调用业务服务,第2部分(下)的相关文章

在SOA开发中使用WBSF动态调用业务服务,第2部分(上)

引言 在上一篇文章中,我们介绍了WBSF动态调用业务服务的基本概念和工作原理.WBSF让我们在SOA 开发中能够根据服务策略动态调用业务服务.WBSF V6.02 提供了SCA 编程模型,让开发业务服务更加灵活,方便.本文通过一个具体的例子,介绍如何通过 WBSF V6.02 的 SCA 编程模型动态调用业务服务.我们将基于上下文属性制定服务策略:在ResponseListener 扩展中设置基于服务内容的断言:通过 ContextExtractor 扩展更新事务中的上下文属性: 业务场景与建模

在SOA开发中使用WBSF动态调用业务服务,第1部分

引言 在面向服务的体系结构(SOA)中,业务服务(Business Service)代表了一组业务功能,其业务行为能够根据创建的策略和运行时上下文自适应调整,以更好地满足服务使用者的需求. 业务服务具有以下特点: 1.从业务层面对业务功能进行设计 2.通过业务策略和元数据来实现灵活,自适应的业务行为 3.通过参照行业模型以简化各个系统之间的互操作 4.基于web service 和行业标准构建 因此,通过业务服务构建IT 应用使得 IT 实现与业务需求吻合,非常好地体现了如下SOA理念:低成本,

动态调用dll-在wpf中如何实现动态调用一个用c#编写的dll?

问题描述 在wpf中如何实现动态调用一个用c#编写的dll? 在wpf中如何实现动态调用一个用c#编写的dll?dll是一个winform窗体.如何在wpf中调用?以wpf为主窗口 解决方案 不知道你说的动态调用是什么意思?是运行时加载么?那么用Assembly.LoadFrom加载dll,用Assemby.CreateInstance反射创建对象,然后用GetType得到类型,用GetMethod得到方法,最后Invoke调用. 解决方案二: 按照我说的关键字google下或者看msdn. 解

动态调用web服务

    通常我们在程序中需要调用WebService时,都是通过"添加Web引用",让VS.NET环境来为我们生成服务代理,然后调用对应的Web服务.这样是使工作简单了,但是却和提供Web服务的URL.方法名.参数绑定在一起了,这是VS.NET自动为我们生成Web服务代理的限制.如果哪一天发布Web服务的URL改变了,则我们需要重新让VS.NET生成代理,并重新编译.在某些情况下,这可能是不能忍受的,我们需要动态调用WebService的能力.比如我们可以把Web服务的URL保存在配置

聊天-Android开发中遇到了一个问题,求大神解决下。

问题描述 Android开发中遇到了一个问题,求大神解决下. 我现在将别人写好的聊天软件,根据我自己的需要,剔除了很多不用的activity和功能,然后当成Library.我遇到的问题是,我现在只有进入到这个聊天界面才能够收到信息和来信息的提示,如果我不进入,我就没法得到来消息的提示,请问我该怎么解决呢? 解决方案 就想QQ的离线消息一样?后台起一个Service接收信息,有信息了就在消息通知栏里放一个消息. 解决方案二: 这个问题可能涉及到通知提醒的内容,建议你先看一下android是如何实现

C#怎么样动态调用rest服务求思路

问题描述 c#怎样去动态调用rest类型的服务?rest服务可以在.net上动态实例化吗?该怎样做?还是通过其他方式? 解决方案 解决方案二:rest风格的就是模拟http请求就可以了啊,然后返回的结果可能是json,可能是xml,可能是其它服务支持的类型访问方式就跟正常的http模拟请求一样,可以是webrequest,也可以是httpclient(个人推荐这个,不过这个要4.0以上版本才支持)解决方案三:这个是httpclient模拟文件+数据提交的解决方案四:你先解释问题中的动态调用是什么

动态调用WCF服务

本文转载:http://www.cnblogs.com/wiseant/archive/2010/07/29/1787599.html 原文地址:http://blog.csdn.net/castlooo/archive/2010/05/06/5562619.aspx   客户端调用wcf ,有时需要动态的调用服务端的WCF中的方法,本方法,反射wcf 的接口,动态调用接口中的方法. 主要为,动态绑定,反射动态调用.   public static object ExecuteMethod<T>

WMB中HTTP Request 节点 调用WebService服务报错

问题描述 家好,小弟在配置WMB的SSL中,碰到了个问题,搞了好久,都搞不定,因此在此向大家求助,希望各位高手指点一下,谢谢了!我的WMB消息流中,有个HTTPRequest节点,该节点需要调用WebService服务,而该WebService服务已经配置成了https的访问方式,HTTPRequest节点调用该服务的时候报了错,错误内容如下:ExceptionListRecoverableExceptionFile:CHARACTER:F:buildslot1S800_PsrcDataFlow

C#中使用HttpWebRequest类调用WEB服务的示例

上一篇文章是关于 CMPP3.0 的 C# 实现,我为了测试其中的 PROVISION 接口,利用了 System.Net.HttpWebRequest 类将<MISC系统短信SP接入指南-接口改造分册>文档中的示例 xml 发送到了 WEB 服务,并从 WEB 服务返回了对应的 Resp 包(也是一段 xml),下面就将代码贴出来: 1.SyncOrderRelationReq 包的 xml 内容: <SOAP-ENV:Envelope xmlns:xsi="http://w