您好,欢迎访问三七文档
使用WebSphereAdapterforOracleE-BusinessSuite集成OracleE-BusinessXMLGateway向荣,软件工程师,IBM张凯,软件工程师,IBMCSDL简介:本文介绍了如何使用WID和WPS的WebSphereAdapterforOracleE-BusinessSuite通过XMLGateway接口集成OracleE-BusinessSuiteOTAAdvanceQueue,从而达到集成OracleE-BusinessSuite的目的。本文的标签:企业服务总线,应用集成,数据访问标记本文!发布日期:2011年4月06日WebSphereAdapterforOracleE-BusinessSuite是一款随着WebSphereIntegrationDeveloper(以下简称WID)发布的组件,可以在WebSphereProcessServer(以下简称WPS)等Broker上运行。WebSphereAdapterforOracleE-BusinessSuite为其它WebSphere组件用来和OracleE-BusinessSuite与WebSphere业务整合系统进行双向数据交换提供了很好的方案,它是SOA集成方案的重要组成部分。他提供了一种通过JDBC来集成OracleE-BusinessSuiteopeninterface,存储过程,以及AdvancedQueue的解决方案,这种方案可以是应用对应用(A2A),或者是业务对业务(B2B)的。OracleE-BusinessSuite简介OracleE-BusinessSuite(以下简称OracleEBS)是Oracle针对企业ERP推出的整套解决系统,是一整套企业级应用软件,包括:采购管理、库存管理、销售管理、车间管理、物料清单及工艺管理、生产计划、成本管理、应付账款管理、应收账款管理、现金管理、总帐管理、项目会计、项目制造、客户关系管理、供应商门户等模块。OracleEBS提供了多种方式来实现与其他的ERP系统集成,通过OracleEBS自带的IntegrationRepository可以了解多种集成的接口,比如interface表,concurrentprogram,javaService,以及XMLGateway等等。其中,OracleXMLGateway是OracleE-BusinessSuite用来支持基于XML消息的整合的一些列服务的接口。OracleEBS使用OracleWorkflowBusinessEventSystem来支持基于事件XML消息的创建和消费。OracleXMLGateway消费由OracleEBS发出的时间,同时订购inbound事件处理inbound流程。大量利用OracleAdvancedQueuing(AQ)和OracleEBS其他组件进行交互,以及通过AQ整合OracleTransportAgent来接受和发送消息给businesspartners。主要用于和其他EIS实现——应用到应用(A2A)、业务到业务(B2B)的集成,由于基于OAG标准,可以与各行业的信息系统进行集成。图1.Adapter集成OracleE-BusinessSuite框架图通过上述的整合集成架构图,可以了解集成的一般流程如下:先是通过JDBC方式将业务数据发送到对应的Interface表中,或者使用TransportAgent/WebService/JMS将业务数据发送到对应的AdvancedQueue中,然后OracleEBS内部触发一个预定义event的发送,其后由监听这些event的内部Engine通过预先定义的TradingPartner中的Transaction定义,载入相应的DTD和Map文件,将数据发送到Workflow做进一步处理。对于整合人员,只需要定义DTD和Map文件并将这些文件上载到OracleEBS中,然后定义TradingPartner并配置相应的Transaction,就可以通过TransportAgent/WebService/JMS或者JDBC方式发送整合数据到相应的AdvancedQueue中,并结合后续的处理流程,实现集成整合OracleEBS。回页首本文中所述方法与以往整合方法对比现在,在业界需要实施其他EIS到OracleEBS的集成整合,或者实施OracleEBS从遗留老版本到新版本的移植时,通常需要专业的OracleEBS实施顾问来完成,而目前大部分实施顾问所采取的整合方法就是使用大量的PL/SQLScripts来实现不同EIS系统或者新老系统之间数据库的海量数据拷贝。但是,由于不同EIS之间的数据库可能异构,同时EIS的相同功能所使用的数据库表和结构大有不同,加上操作系统和硬件平台的异构所带来的复杂度,使得当前的主流EIS与OracleEBS的整合相当复杂,并且出错的风险随着数据量的增加而骤增。以上这些原因就导致了这种整合的方法对实际实施者有很高的要求,而这种要求就是其很大的缺点所在。1.当实施者是OracleEBS系统的实际使用者。因为作为系统的使用者,可能就是车间的一个录入员,办公室的会计,他们不大可能具有相应的数据库知识。2.当实施者是OracleEBS系统实施顾问。在某些具体功能模块的业务整合中,不可能像系统使用者对业务细节的了解。所以,在真正业务层面上提供一套系统的整合方案是很迫切和有意义的。本文中所述的就是一套行之有效的业务层面上的解决方案。整合人员只要使用WebSphereAdapterforOracleE-BusinessSuite将OracleEBS端特定的Storedprocedure在WID中导入成接口,并将按照OracleIntegrationRepository中XMLGateway的某个接口中的DTD定义而生成的业务XML数据文件,将此数据文件发给上述导入的接口中作为输入,就可以通过WebSphereAdapterforOracleE-BusinessSuite发送数据给OracleEBS来实现业务层面上集成整合。回页首应用场景本文是通过介绍使用WebSphereIntegrationDeveloper(WID)7开发一个基于OracleconcurrentprogramInterface的通用应用场景来使读者对使用WID&WPS的WebSphereAdapterforOracleE-BusinessSuite来集成OracleEBS有进一步的理解,并能够自己动手开发相应的OracleEBSIntegration应用程序。本场景介绍了如何在实际生产环境中基于业务层面实现不同EIS或者遗留系统与OracleEBS之间的整合。该模型通过WID提供的WebSphereAdapterforOracleE-BusinessSuite和Oracleconcurrentprograminterface来实现集成,在设计阶段通过WebSphereAdapterforOracleE-BusinessSuite导入一个基于存储过程Outbound接口,同时,在runtime使用WebSphereAdapterforOracleE-BusinessSuite建立到EIS的连接,并通过上述Outbound接口发送业务数据Payload到OracleEBS,以此来完成业务数据的整合。在本例中,我们实现了这样的一个整合流程,以便用户能够详细的知道如何设计和使用这种模型。图2简单的描述了整个应用场景的流程:图2.WebSphereAdapterforOracleE-BusinessSuite应用场景示意图回页首OracleConcurrentProgramIntegration步骤及流程本文以一个Module为例,来演示通过WebSphereAdapterforOracleE-BusinessSuite和OracleConcurrentProgramInterface来集成OracleEBS。首先是designtime,使用WebSphereAdapterforOracleE-BusinessSuite的EMD(EnterpriseMetadataDiscovery)工具将ConcurrentProgram以及其相关元数据导入为接口。Note:下文中使用OracleEBS,是Oracle提供的demo系统环境,相关的用户名,密码以及连接信息请参阅Oracle相关文档。1.打开WebsphereIntegrationDeveloper后切换到BusinessIntegration视图,选择菜单Window-OpenPerspective-BusinessIntegration。图3.切换视图2.创建外部服务,选择菜单File-New–ExternalService。图4.创建外部服务3.在可获得的Adaptertree中,选择Adapter-OracleE-BusinessSuite,然后点击Next。图5.选择OracleE-BusinessSuiteAdapter4.选中节点“IBMWebSphereAdapterforOracleE-BusinessSuite(IBM:7.0.0.0)”,点击Next按钮,导入一个OracleE-BusinessSuiteAdapter。图6-A.导入AdapterArchive文件在原结点中下选择刚刚导入的“CWYOE_OracleEBS”。图6-B.选择Adapter7.0.0.0版本5.添加Adapter连接OracleEBS时所需要的OracleJDBCthindriver的jar文件。图7.添加连接必需的JDBCDriver文件6.然后选择Outbound模式。图8.选择Outbound模式7.填写OracleEBS的连接信息如下:a.SystemID:数据库实例名字b.Hostname:OracleEBS主机名或者IP地址c.Portnumber:上述地址定义的数据库的端口号d.Username:数据库用户名(参见OracleEBSdemo的相关文档)e.Password:数据库用户的密码(参见OracleEBSdemo的相关文档)图9.填写连接性息8.点击EditQuery窗口并填写Schemanameorpattern:APPS(参见OracleEBSdemo的相关文档),然后执行查询。图10.选择StoredProcedureBusinessObject9.选中StoredProcedures节点,然后点击filter填写过滤条件。在Catalognameorpattern(对应为Oracledatabase中的package名字)中填写ECX_OXTA_PKG。展开StoredProcedures节点。选择StoredProcedures:OXTA_ENQUEUE点击“”键,导入这个BusinessObject(以下简称BO)。图11.BO:OXTA_ENQUEUE的详细参数列表10.在检查了这个StoredProcedures的参数列表后,点击OK后,BO:OXTA_ENQUEUE(ECX_OXTA_PKG)已经加入到右侧,保留默认值点击next。图12.添加OXTA_ENQUEUE作为BO11.接下来,配置整个Module在WPS的部署属性。在窗口“SpecifytheServiceGenerationandDeploymentProperties”中,配置如下属性:a.单击“Usingsecuritypropertiesfromthemanagedconnectionfactory”;b.在Deployconnectorproject选择“Withmoduleforusebysingleapplication”;c.取消Jointheglobaltransaction;d.在Databaseconnectioninformation中选择Specifylocaldataba
本文标题:使用 WebSphere Adapter for Oracle E-Business Suite 集
链接地址:https://www.777doc.com/doc-4344808 .html