ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [原创] 让WebSphere Adapters的使用变得更智慧

[原创] 让WebSphere Adapters的使用变得更智慧

原创 Linux操作系统 作者:yushan0624 时间:2009-06-12 06:45:07 0 删除 编辑

让WebSphere Adapters的使用变得更智慧

- 在WAS和WPS上实现配置的自动导入导出

 

 

“Adapter需要配置的属性太多了,尤其每次在进行Node Level部署的时候,还要手工逐一在管理控制台上填写,这太麻烦了!!”

 

“以前在WAS和WPS上为Adapter配置的信息都到哪去了?不能保存?难道要抄下来下次再对照着一一重新配置?!”

 

“要将目前包含Adapter的应用迁移到所有分公司数十台服务器上,并在日后能以最快速度定制Adapter的配置以随时响应新的业务需求,我们的人手和时间远远不够啊……”

 

你在使用WebSphere Adapter的过程中,是否遇到过上述的种种烦恼?如果是,那么本文提供的解决方案将帮助你摆脱烦恼,使WebSphere Adapter的配置管理工作变得更高效、更智慧。

 

 

第一部分 WebSphere Adapters简介及配置问题的引入

 

WebSphere Adapters是IBM提供的一种基于JCA(J2EE Connector Architecture)规范,实现应用程序与企业信息系统(EIS)之间业务集成的资源适配器。它支持部署于多种Brokers,如WebSphere Process Server(WPS)、WebSphere Application Server(WAS)、WebSphere Message Broker(WMB)等等。目前最新版本为6.2。

 

在实际使用中,WebSphere Adapters所包含的常用配置对象包括ResourceAdapter(RA), ManagedConnectionFactory(MCF)和ActivationSpec(AS)。ResourceAdapter用于配置适配器自身的基本属性,例如标识、Trace设置等等;ManagedConnectionFactory和ActivationSpec则分别用于配置适配器进行出站(Outbound)和入站(Inbound)连接所需的属性,如用户名、密码、EIS系统信息、语言编码等等。

 

WAS是IBM基于Java EE、XML和Web Service等规范实现的软件应用服务器;而WPS则是构建于WAS基础上、扩展了企业业务总线(ESB)并支持面向服务架构(SOA) 的业务流程服务器。WAS和WPS都提供了管理控制台(Administrative Console)进行各种部署应用的配置管理。我们可以在图形化界面下对WebSphere Adapters的各种配置对象进行创建、删除、修改属性等操作。

 

但是,在实际使用中,这种配置管理方式存在着以下几点不足

1.       对于数量众多的属性,如SAP Adapter中的激活规范属性就有10~20个,仍需要手工地逐一填写,较为费时费力。

2.       管理控制台不提供属性值的保存、载入功能,这就无法对已有信息进行备份和重用。

3.       如需将当前配置复制迁移到其他服务器环境,或要对大量服务器进行配置,这种配置管理方式的效率会极为低下。

 

因此,我们应用WAS和WPS提供的wsadmin管理工具与Jacl语言,结合WebSphere Adapters的配置特点,给出了一套实现WebSphere Adapters在WPS和WAS上将配置信息导入导出为.properties文件的Jacl程序包

 

 

第二部分 解决方案介绍

 

首先我们列出了针对每一种部署类型、每一个配置对象实现导入、导出功能的Jacl程序文件。 有经验的读者可跳过后面章节,直接从本文所附的程序包中选择使用。

 

 

部署类型

配置对象

导入

导出

节点级

ResourceAdapter属性

ImportStandaloneRAProperties.jacl

ExportStandaloneRAProperties.jacl

ManagedConnectionFactory属性

ImportStandaloneConnectionFactory.jacl

ExportStandaloneConnectionFactory.jacl

ActivationSpec属性

ImportStandaloneActivationSpec.jacl

ExportStandaloneActivationSpec.jacl

应用级

ResourceAdapter属性

ImportEmbeddedRAProperties.jacl

ExportEmbeddedRAProperties.jacl

ManagedConnectionFactory属性

ImportEmbeddedConnectionFactory.jacl

ExportEmbeddedConnectionFactory.jacl

ActivationSpec属性

ImportEmbeddedActivationSpec.jacl

ExportEmbeddedActivationSpec.jacl

表1. Jacl程序文件列表

 

 

解决方案的整体思路:

Jacl程序从WAS或WPS中部署的WebSphere Adapter中定位RA、MCF、AS等资源对象并读取它们的属性值,并将这些属性值保存为.properties文件类型;或者从Properties文件中读取属性值并写入资源对象中。这一过程可有如下几种调用方式:

·           利用wsadmin管理工具运行Jacl程序;

·           在Java中调用Jacl程序;

·           在其他支持命令行工具或Jacl、Jython的自动化架构中调用(Jacl程序可方便转换为Jython程序)。

 

 

图1  解决方案的整体思路

 

下面我们将对该解决方案的使用方法进行具体介绍。

 

1.       用wsadmin运行Jacl脚本文件

 

wsadmin工具是WAS和WPS提供的一个接受脚本语言输入的非图形化管理工具。它支持Jython和Jacl两种脚本语言,本文选取Jacl作为实现语言。

 

用户可在WAS/WPS的bin目录下(${app_server_root}/bin),或概要文件的bin目录下(${profile_root}/bin)找到wsadmin.bat或wsadmin.sh。

 

wsadmin 命令指定 -f 选项用于运行脚本程序,例如:

 

wsadmin.bat -f 'script.jacl'

 

 

 

2.       Jacl程序文件使用方法

 

根据WebSphere Adapters在WAS/WPS上的部署方式不同,分为节点级(Node Level)和应用级(Application Level)。这一分类方法与根据Adapter RAR的打包方式分为独立(Standalone)RAR和嵌入式(Embedded)RAR是类似的。

 

下面给出了在不同部署模式下实现WebSphere Adapter属性导入导出的程序流程图(读者可以此对照程序文件,掌握利用Jacl进行配置操作的一般方法),以及各个程序文件的使用方法说明。

 

 

2.1 针对节点级的解决方案:

 

 

 

                   图2. 节点级解决方案程序流程图 – 导入和导出

 

命令模式:

wsadmin -f ******StandaloneRAProperties.jacl -user -password

 

wsadmin -f ******StandaloneConnectionFactory.jacl –user -password

 

wsadmin -f ******StandaloneActivationSpec.jacl -user -password

 

参数解释:

·           ******:Import或Export

·           和 :用于连接WAS/WPS管理控制台的用户名和密码。若无则不必添加-user -password

·           :WebSphere Adapter所在的WAS/WPS节点名称,可通过管理控制台Resources -> Resource Adapters -> Resource adapters获取。

·           : WebSphere Adapter部署到WAS/WPS上显示的名,可通过管理控制台Resources -> Resource Adapters -> Resource adapters获取。

·           :  ManagedConnectionFactory的名称,若无则需要先手工创建新的J2C连接工厂。可通过管理控制台Resources -> Resource Adapters -> Resource adapters ->  -> J2C connection factories 进行操作。

·           :ActivationSpec的名称。若无则需要手工先创建新的J2C激活规范,可通过管理控制台Resources -> Resource Adapters -> Resource adapters ->  -> J2C activation specifications 进行操作。

·           :需要导入或导出的.properties文件名

 

 

2.2   针对应用级的解决方案:

 

 

 

                 图3. 应用级解决方案程序流程图 – 导入和导出

 

命令模式:

wsadmin -f ******EmbeddedRAProperties.jacl -user -password

 

wsadmin -f ******EmbeddedConnectionFactory.jacl –user -password

 

wsadmin -f ******EmbeddedActivationSpec.jacl -user -password

 

参数解释:

·           ******:Import或Export

·           和 :用于连接WAS/WPS管理控制台的用户名和密码。若无则不必添加-user -password

·           :WebSphere Adapter所在的应用模块的EAR文件名称,可通过管理控制台Applications -> Enterprise Applications获取。

·           : WebSphere Adapter部署到WAS/WPS上显示的名,可通过管理控制台Applications -> Enterprise Applications ->  -> Manage Modules ->  -> Resource Adapter -> Name 获取。

·           :  ManagedConnectionFactory的名称,若无则需要先手工创建新的J2C连接工厂。可通过管理控制台Applications -> Enterprise Applications ->  -> Manage Modules ->  -> Resource Adapter -> J2C connection factories 进行操作。

·           :ActivationSpec的名称。若无则需要手工先创建新的J2C激活规范,可通过管理控制台Applications -> Enterprise Applications ->  -> Manage Modules ->  -> Resource Adapter -> J2C connection factories -> J2C activation specifications 进行操作。

·           :需要导入或导出的.properties文件名

 

 

3.       操作实例

 

 

图4. SAP Adapter的ALE入站的激活规范属性

 

现在我们通过一个实际例子演示该程序的具体使用过程。假设我们已使用了一节点级(Node Level)WebSphere Adapter for SAP Adapter(以下简称SAP Adapter)的ALE接口在WPS上进行入站(inbound)操作。为了要将ALE入站操作所需的激活规范属性设置(如图4所示)保存下来,我们只需选用ExportStandaloneActivationSpec.jacl程序(可放在任意位置例如C:),然后通过命令窗口在WPS的概要文件的bin目录下运行下面一行命令:

 

 

wsadmin -f C:/ExportStandaloneActivationSpec.jacl -user admin -password admin saptestwinNode03 "IBM WebSphere Adapter for SAP Software" SAP_ALE_AS C:/as.properties

 

 

 

图5. ExportStandaloneActivationSpec程序在命令窗口中的运行

 

 

这样便可将所有非空的激活规范属性值轻松保存为as.properties文件。

 

相反地,如果需要将已有属性导入到新的激活规范中,则在新创建激活规范后,只需一行命令,便可完成属性值从properties文件的快速导入。

 

 

第三部分 结束语

 

本文提出了一套用于实现WebSphere Adapter在WAS和WPS上配置的自动导入导出功能的解决方案。该方案同样适用于WebSphere Adapter在WAS或WPS的网络部署(Network Deployment)以及集群(Cluster)环境的配置管理。

 

基于本文提供的Jacl工具,以及wsadmin的丰富强大管理功能(如AdminConfig, AdminApp, AdminTask等),读者可以进一步实现WebSphere Adapter的全自动化管理解决方案(安装/卸载、启动/停止、配置/迁移等)。

 

此外,本文实现该解决方案的一般思路及部分Jacl语句同样可应用于部署在WAS和WPS上的其他应用模块和资源对象的配置管理上。读者可由此举一反三,将低效、繁琐的工作变得更为高效、智慧!

 

 

>>>>>>>>>>> 程序下载

 

 

作者简介

 

余珊,现就职于IBM CDL,从事WebSphere Adapter的测试工作,在SOA、自动化测试工具开发方面具有丰富的实践经验。目前主要专注于WebSphere Adapter for SAP Software,以及在WebSphere Process Server, WebSphere Application Server和WebSphere Message Broker上实现与SAP系统的业务整合。可以通过yushan@cn.ibm.com联系作者

 

王博,现就职于IBM CDL,从事IBM WebSphere JCA Adapters的测试工作。目前主要专注于WebSphere Adapter for SAP Software,以及在WebSphere Process Server, WebSphere Application Server和WebSphere Message Broker上实现与SAP系统的业务整合。可以通过wangbowb@cn.ibm.com联系作者。

 

方海伟,现就职于IBM CDL,目前从事WebSphere SAP Adapter在WebSphere Process Server, WebSphere Application和WebSphere Message Broker上实现与SAP系统的整合测试工作,对SOA、使用WebSphere MQ实现系统间异步通信等方面比较感兴趣。可以通过fanghaiw@cn.ibm.com联系作者

 

 

 

 

参考资料

 

·           WebSphere Adapters v6.2 信息中心

http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r2mx/index.jsp?topic=/com.ibm.wbit.620.help.adapter.emd.ui.doc/topics/timpexpapps.html

 

·           WebSphere Application Server v6.1信息中心

 

wsadmin专题介绍

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/welcadminscript.html

 

Jacl专题介绍

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/cxml_jacl.html

 

·           WebSphere Process Server v6.2 信息中心

http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r2mx/topic/com.ibm.websphere.wps.620.doc/welcome_wps.html

 

·           使用 wsadmin 定位 WAS 资源对象的配置标识

http://www.ibm.com/developerworks/cn/websphere/library/techarticles/0903_cuixx_wsadmin/

 

 

 

 

 

 

 

整体思路.jpg

流程图-节点级.jpg

流程图-应用级.jpg

AS_properties.JPG

console.JPG

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21860223/viewspace-605967/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-06-10

  • 博文量
    1
  • 访问量
    2841