在了解WLST定制命令之前,简单说一下WLST,WLST 全称叫Weblogic Scripting Tool, 它提供了一组预定义命令来方便Weblogic的用户通过命令行对Weblogic 实例,域进行管理。WLST运行环境基于Java 脚本解析器Jython,Weblogic 开发人员可以使用Jython语法对其进行扩展。我们可以通过help() 命令来了解WLST命令的使用说明。如下图所示

谈谈 WLST Custom Commands-LMLPHP

那什么是WLST的定制命令呢?  那得从Oracle Fusion Middleware 说起,Oracle Fusion Middleware 是迄今 Oracle最全的一个软件产品集合,其中就包括大价钱收购来的Java应用服务器 Weblogic。 OracleFusion Middleware 中许多产品组件如Oracle SOA Suite, Application Development Framework(ADF), Meta data Service (MDS), logging 等等,都依托在 Weblogic之上 。那么,为了在Weblogic现有的WLST之上提供针对不同组件所特有的命令组合,以满足客户通过命令行对系统进行维护的要求,就产生了WLST的定制命令。比如上面提到的logging,WLST 提供了定制命令组合对Log的级别和Log文件的大小进行设定,同时还提供了log文件的搜索查看功能。这里不对具体命令进行说明,如有兴趣可参看Oracle官方提供的Logging 定制WLST命令参考。.另外,还有针对OracleSOA Suite,WLST的定制命令包括部署卸载SOA Composite Applications (SCA),打包、编译SCA,导入导出SCA等等。请参考Oracle官方提供的SCA定制WLST命令参考。

这里我拿一个SCA定制命令sca_deployComposite  来完成sca的部署任务。我们有一个在分区 ‘MATT_TESTING’ ,我尝试用上述定制命令将SCA  sca -SimpleApproval[1.0] 进行部署。通过  find ./ -namewlst.sh,我在服务器上找到了如下四个包含wlst.sh的目录。

./data/app/oracle/product/fmw/oracle_common/common/bin/wlst.sh
./data/app/oracle/product/fmw/soa/common/bin/wlst.sh
./data/app/oracle/product/fmw/wlserver_10.3/common/bin/wlst.sh
./data/app/oracle/product/fmw/web/common/bin/wlst.sh

那要完成这个部署操作,我该进入哪个目录执行wlst.sh命令呢? 既然是Weblogic的WLST, 自然我就首先选择第三个路径试试了。

谈谈 WLST Custom Commands-LMLPHP

结果如上图所示,出现了如下错误

Traceback (innermost last):
File "<console>", line 1, in ?
NameError: sca_deployComposite

难道是我进错目录了吗? 可都是wlst.sh命令啊. 那试试第二个。成功!

谈谈 WLST Custom Commands-LMLPHP

回头,看看SCA的状态,部署成功。

谈谈 WLST Custom Commands-LMLPHP

上面的图片显示的是Oracle BPM Enterprise Manager 图形界面。

上述部署实验,引出了另一个问题。就是不同的OracleFusion Middleware  组件的定制命令是否是安装在不同的目录下面? 答案是肯定的。OracleSOA Suite的wlst定制命令存放在其对应的安装目录 ./data/app/oracle/product/fmw/soa/common/bin/wlst.sh

而,我第一次尝试的目录 ./data/app/oracle/product/fmw/wlserver_10.3/common/bin/wlst.sh并不包含WLST 定制命令.

参看 Oracle 文档使用WLST Custom Commands.

05-11 11:30