• webMethods中有趣的尝试【一】


    webMethods的flowService是一种典型的工作流模式编程,因此有一些使用会和代码不一样。出于这样的原因,本人对flowService的活用做了一些测试。

     一、递归

    在flowService中调用自身。 

    测试结果:可以实现递归功能,同编码一样。需要指定跳出条件,不然会有死循环的编译错误。

    二、 exit

    exit功能有三种用法跳出循环(相当于java中的break),跳出flow(相当于exit()),跳到父节点(相当于continue)。

     用好这三种功能可以很好地控制程序的结束方式。

    三、 try-catch-finally的实现

    在工作流中实现try-catch-finally是一件比较有意思的事情,通过图形化的步骤可以很清晰地了解到try-catch-finally的设计思路和实现原理。

    首先要定义一个main,这个main的sequence中exit from属性设置成为success ,这样就可以保证这个sequence就算发生错误也可以跑到catch程序里面去获取异常,而不是直接报错,停止运行了。try和catch是main下的子sequence,分别设置exit from属性为failure和done。failure属性是正常的sequence中exit from的默认属性,当这个sequence发生错误的时候会自动停止向下运行,直接跳出sequence。而done属性则是只有当该sequence上面的程式发生异常的时候才会跑进来的,因此正是捕获异常专用的条件。最后是finally,finally与main同级,在main下面。设置成failure或者success都可以,看情况而定。

    这个与java的区别在于,java中会在try或者catch的结束点执行之前先执行一次finally,而webMethods中则是在trycatch结束点之后执行finally。


  • 相关阅读:
    Oracle数据库中。varchar 和 varchar2的区别
    gvim 编辑器初学
    鼠标事件以及clientX、offsetX、screenX、pageX、x的区别
    清除浮动的5种方法
    按钮的单双击事件
    webstrom中的快捷键
    限制 input 输入框只能输入纯数字
    控制<标签>不可被点击
    way.js
    ECharts 折线图and柱状图
  • 原文地址:https://www.cnblogs.com/bgWebMethods/p/3925178.html
Copyright © 2020-2023  润新知