IBM WebSphere Adapter for Siebel Business Applications (后文简称Siebel Adapter)使用户的应用程序可以与Oracle的供应链管理系统Siebel进行交互。Siebel Adapter提供两种类型的数据交互: 1. 用户的应用程序发出请求,对Siebel系统中的数据(主要是Business Component和Integration Object)进行创建、修改、删除、查询等操作(对于Integration Object是通过Business Services),我们称之为Outbound; 2. 监听Siebel系统中数据变化的事件(创建、修改、删除),获取发生改变的数据,发送给对此感兴趣的终端,我们称之为Inbound。Siebel Adapter符合J2CA规范,是业务集成产品之一,广泛应用于各种拥有业务集成功能的服务器上,WebSphere Message Broker(WMB)就是其中之一。本文下面将以Business Component为数据对象,简要介绍Siebel Adapter在WMB上的Outbound与Inbound功能。
部署在WMB上的应用程序通常是在集成环境WebSphere Message Broker Toolkit(WMBT)中生成的。对于Siebel Adapter, 需要通过新建Adapter Connection产生一个Siebel Adapter节点, 应用到用户的Message Flow之中。
一、Outbound功能
1.选择Broker Application Development perspective,通过File->New->Adapter Connection新建Adapter Connection。
2.如图1所示,选择IBM WebSphere Adapter for Siebel Business Applications(IBM:6.1)。目前在WMB6.1上可以运行的Adapter产品包括Siebel Adapter、SAP Adapter和PeopleSoft Adapter等。点击Next进入下一界面。
图1 选择Adapter
3.本界面为Adapter导入界面。用户只需要配置Adapter导入的工程名。如图2所示,根据需要修改工程名,点击Next以导入Adapter。
图2 导入Adapter
4.导入所需的第三方jar包。Siebel Adapter的运行依赖于Siebel服务器提供的几个jar包。若是7.5及以前版本的Siebel服务器,需导入Siebel.jar、 Siebel_
图3 导入第三方jar包
5.选择Adapter功能类型,本例选择Outbound。点击Next进入下一界面。
图4 Adapter功能选择
6.填写必要的建立到Siebel服务器连接的信息。必要的信息有URL,语言,用户名以及密码。选择数据类型,本例为Siebel Business Component。Siebel repository name指的是用户使用的Siebel repository的名字,通常为Siebel Repository。点击Next以建立到Siebel服务器的连接。
图5 服务器连接信息
7.在元数据发现界面点击Edit Query以编辑查询条件。这里指的是对Siebel Business Object的查询。点击Execute Query执行数据查询。
图6 元数据发现界面
8.执行完查询后,结果将以树结构的形式在左侧的框中显示出来。通过点击“+”号可以展开。选择需要的Business Component,添加到右侧。点击Next进入下一界面。
图7 元数据选择
9.配置需要生成的方法等。Operations指的是Outbound提供给用户的方法,包括Create、Update、Delete、Retrieve、RetrieveAll和Exists六种。分别指创建、修改、删除、查询唯一的数据、查询所有符合条件的数据和判断数据是否存在。Maximum records的设置只有当RetrieveAll操作是用户需要的方法之一是才会生效,表示一次RetrieveAll操作所允许返回的最大记录数。Business object namespace指的是通过元数据而产生的业务数据的命名空间。Relative folder指的是存放生成的业务数据的相对目录。点击Next进入下一界面。
图8 对业务数据的配置
10. 配置Managed Connection Factory所需的属性信息。这里主要需要URL、语言、用户名以及密码这些连接相关信息。点击Next进入下一界面。
图9 Managed Connection Factory属性配置
11. 新建一个Message set工程,填写Adapter component name,点击Finish结束向导。
图10 发布属性
12. 选择XMLNSC作为默认的消息domain。
图11 Message set属性设置
13. 新建一个message flow工程并新建一个flow。如图13所示配置message flow。对于message flow中的每个节点都要有相应的属性设置。对于MQInput、MQOutput需要设置Queue manager和Queue name;对于Siebel Request节点需要设置默认的方法;对于Compute节点,需要编写ESQL语句对消息进行设置,例如可以写入下面的一段代码:
DECLARE namespace NAMESPACE 'http://www.ibm.com/xmlns/prod/wbi/j2ca/siebel/boaccountbcaccount';
CREATE COMPUTE MODULE Flow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyMessageHeaders();
-- CALL CopyEntireMessage();
SET OutputRoot.XMLNSC.namespace:BOAccountBCAccount.Name = 'SiebelWMB';
SET OutputRoot.XMLNSC.namespace:BOAccountBCAccount.Location = 'BJ';
RETURN TRUE;
END;
CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER 1;
DECLARE J INTEGER;
SET J = CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;
CREATE PROCEDURE CopyEntireMessage() BEGIN
SET utputRoot = InputRoot;
END;
END MODULE;
图12 新建message flow工程
图13 Siebel Outbound message flow
14. 选择Broker Admin perspective,新建一个。配置如图14所示。
图14 broker archive的配置
最后将生成的broker archive部署到WMB上,就可以测试Siebel Adapter的Outbound功能了。需要先向MQInput指定的Queue里发送一个消息,这样便可从MQOutput指定的Queue里获取执行的结果。例如:
二、Inbound功能
Inbound功能前8步与Outbound基本相同,只是第5步选择Inbound。本例从第9步开始介绍。
图15 Adapter功能选择
1.配置需要生成的方法等,这里默认的方法有Create、Update和Delete。点击Next进入下一界面。
图16 对业务数据的配置
2.配置Activation Spec所需的属性信息,部分属性需点击Advanced才可看到。这里主要需要服务器连接信息(URL、语言、用户名以及密码)、事件表所对应的Business Component(Siebel business component name for event store)以及本应用程序所关心的事件类型(Event type to process,通常是生成的业务数据名)。点击Next进入下一界面。
图17 Activation Spec属性设置
3.同Outbound步骤10~13,新建一个Message set工程、一个message flow工程以及一个message flow。message flow如下图所示。需要对MQOutput节点指定Queue manager和Queue name。
图18 Siebel Inbound message flow
4.选择Broker Admin perspective,新建一个broker archive。配置如图19所示。
图19 broker archive的配置
最后将生成的broker archive部署到WMB上,就可以测试Siebel Adapter的Inbound功能了。只要Siebel服务器上的事件表中有应用程序指定的那种类型的事件,就可从MQOutput指定的Queue中读到该事件的信息,如一条Delete事件:
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21432179/viewspace-605073/ ,如需转载,请注明出处,否则将追究法律责任。