`
dr2tr
  • 浏览: 145350 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

webMethods之Developer (2)

阅读更多

我们继续讲webMethods Developer。本文主要讲的是Developer的Flow Service。

Flow Service的功能类似于一般的函数。但是,这个函数是用webMethods自创的Flow语言写的。(其实与其说写,还不如说“画”的)。看doc里的定义:  A flow service is a service that is written in the webMethods flow language. 另外,每个Flow Service都有输入输出。

Flow Service是由Flow Step构成的。我们可以将flow step想象为函数的一条(或者多条语句)。doc:A flow step is a basic unit of work.  本文主要讲的就是不同类型的flow step。

了解了上面的两个概念,我们还需要知道Pipeline的含义。  在我看来,Pipeline很像JSP里的Servlet Context,它存放着可以被整个系统使用的数据。我们看doc:The pipeline is the general term used to refer to the data structure in which input and output values are maintained for a flow service. It allows services in the flow to share data. When a service in the flow executes, it has access to all data in the pipeline at that point. (SHARE)

接下来是有关flow step的内容。flow step 分为BRANCH,SEQUENCE,REPEAT,LOOP,EXIT,MAP六种。这六种其实只不过是对一般编程语言的赋值、流程控制等的重新定义而已。

BRANCH是分支结构的意思,它与Java里的switch类似。而有趣的是,用来确定BRANCH走向的参数名恰好就是在switch中定义的. (而子选择参数是以Label确定的)

SEQUENCE是顺序结构的意思。它的意义在于它可以将多个flow step封装成一个来看待。并且,在其内部可以定义运行到何时结束,比如until failure, until success, until done等。

REPEAT是重复,它可以指定重复次数。

LOOP的意义在于它极大方便了对数组的枚举。

EXIT是退出的意思,它可以选择退出到程序的那一层。

MAP是赋值的作用,它有一个叫transformer的东西,可以在赋值前完成一些处理。

以上就是对Flow Language的简单介绍,上面的各种step都是通过拖拽图标实现的,而不是手工code。这是好是坏,也没什么好说的。不过pipeline的作用,是需要在实践中逐步体会的。

分享到:
评论
2 楼 zhaofangtao 2009-12-28  
对了,还有个问题

我们3A4C发送数据量稍大的订单时候,比如700行以上,经常总是失败,

然后我在后台portol上手动resubmit,偶尔会成功。但大多数还是失败

开始一些小单子还能一次性成功,
但是好像是因为我不停的对那些大单手动resubmit,结果导致小单子也成功不了了

错误一般都是socket这些错误,现在还没办法贴出来,反正就是网络通讯断了。不知是哪里因为我的那些操作给阻塞还是怎么的了。

我想知道这是怎么回事。对那些地方要进行处理好让订单数据传过去。

以前也对大数据量过不去做过,主要的动作就是防火墙限制放宽,一些会话时间加长。将数据生成xml文件的格式从64位修改成二进制(这个确实对大小压缩了不小),还对网络一些设置做了修正。

但是现在还是存在这种问题。希望得到您的指教、

再次感谢
1 楼 zhaofangtao 2009-12-28  
hi
谢谢你的知识分享
我半道出家还是半桶水,想请教您webmethods一些问题

我们这个是作为供应商的角色(A1)和买方(B)协同交互的B2B系统



在我方webmethods的TN上,partner是买房和卖方都各有一个duns号来区分
那如果有个新的duns号。现在想再配出个partner(A2),用这个duns号再在TN上创建出新的partner(A2)

而我们的应用系统数据库中,订单,发货通知相关的主表都是有这个duns号这个字段

请问新添加配置个partner(A2),只在TN中创建一下就可以了吗?
整个系统包括webmethods其他组建配置还哪些需要重设呢,还我们的应用系统受否会受到影响需要做什么修改?

感觉不是太明白这个duns号在系统中作用,所以说突然又要多加一个partner出来,就有点纳闷了。

谢谢你了,期待答复

相关推荐

Global site tag (gtag.js) - Google Analytics