解决方案的整体思路:
Jacl程序从WAS或WPS中部署的WebSphere Adapter中定位RA、MCF、AS等资源对象并读取它们的属性值,并将这些属性值保存为.properties文件类型;或者从properties文件中读取属性值并写入资源对象中。这一过程可有如下几种调用方式:
· 利用wsadmin管理工具运行Jacl程序;
· 在Java中调用Jacl程序;
· 在其他支持命令行工具或Jacl、Jython的自动化架构中调用(Jacl程序可方便转换为Jython程序)。

下面我们将对该解决方案的使用方法进行具体介绍。
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 针对节点级的解决方案:

命令模式:
wsadmin -f ******StandaloneRAProperties.jacl -user <user_name> -password <password> <node_name> <adapter_name> <prop_file_name>
wsadmin -f ******StandaloneConnectionFactory.jacl –user <user_name> -password <password> <node_name> <adapter_name> <MCF_name> <prop_file_name>
wsadmin -f ******StandaloneActivationSpec.jacl -user <user_name> -password <password> <node _name> <adapter_name> <AS_name> <prop_file_name>
参数解释:
· ******:Import或Export
· <user_name>和<password>:用于连接WAS/WPS管理控制台的用户名和密码。若无则不必添加-user <user_name> -password <password>
· <node_name>:WebSphere Adapter所在的WAS/WPS节点名称,可通过管理控制台Resources ->Resource Adapters->Resource adapters获取。
· <adapter_name>: WebSphere Adapter部署到WAS/WPS上显示的名,可通过管理控制台Resources->Resource Adapters ->Resource adapters获取。
· <MCF_name>: ManagedConnectionFactory的名称,若无则需要先手工创建新的J2C连接工厂。可通过管理控制台Resources ->Resource Adapters ->Resource adapters -><adapter_name> ->J2C connection factories进行操作。
· <AS_name>:ActivationSpec的名称。若无则需要手工先创建新的J2C激活规范,可通过管理控制台Resources ->Resource Adapters ->Resource adapters -><adapter_name> ->J2C activation specifications进行操作。
· <prop_file_name>:需要导入或导出的.properties文件名。
2.2 针对应用级的解决方案:

命令模式:
wsadmin -f ******EmbeddedRAProperties.jacl -user <user_name> -password <password> <app_name> <adapter_name> <prop_file_name>
wsadmin -f ******EmbeddedConnectionFactory.jacl –user <user_name> -password <password> <app_name> <MCF_name> <prop_file_name>
wsadmin -f ******EmbeddedActivationSpec.jacl -user <user_name> -password <password> <app_name> <AS_name> <prop_file_name>
参数解释:
· ******:Import或Export
· <user_name>和<password>:用于连接WAS/WPS管理控制台的用户名和密码。若无则不必添加-user <user_name> -password <password>
· <app_name>:WebSphere Adapter所在的应用模块的EAR文件名称,可通过管理控制台Applications ->Enterprise Applications获取。
· <adapter_name>: WebSphere Adapter部署到WAS/WPS上显示的名,可通过管理控制台Applications ->Enterprise Applications -><app_name> ->Manage Modules -><adapter_module> ->Resource Adapter ->Name获取。
· <MCF_name>: ManagedConnectionFactory的名称,若无则需要先手工创建新的J2C连接工厂。可通过管理控制台Applications ->Enterprise Applications -><app_name> ->Manage Modules -><adapter_module> ->Resource Adapter ->J2C connection factories进行操作。
· <AS_name>:ActivationSpec的名称。若无则需要手工先创建新的J2C激活规范,可通过管理控制台Applications ->Enterprise Applications -><app_name> ->Manage Modules -><adapter_module> ->Resource Adapter ->J2C connection factories ->J2C activation specifications进行操作。
· <prop_file_name>:需要导入或导出的.properties文件名。