新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     >>W3CHINA.ORG讨论区<<     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> Web服务(Web Services,WS), 语义Web服务(Semantic Web Services, SWS)讨论区: WSDL, SOAP, UDDI, DAML-S, OWL-S, SWSF, SWSL, WSMO, WSML,BPEL, BPEL4WS, WSFL, WS-*,REST, PSL, Pi-calculus(Pi演算), Petri-net,WSRF,
    [返回] W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWLW3CHINA.ORG讨论区 - Web新技术讨论『 Web Services & Semantic Web Services 』 → BPEL2.0 draft Vs 1.1[转帖] 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 15691 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: BPEL2.0 draft Vs 1.1[转帖] 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     laoyao237 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:17
      积分:143
      门派:XML.ORG.CN
      注册:2005/12/21

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给laoyao237发送一个短消息 把laoyao237加入好友 查看laoyao237的个人资料 搜索laoyao237在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看laoyao237的博客楼主
    发贴心情 BPEL2.0 draft Vs 1.1[转帖]

    看到这里没有BPEL4WS的内容,转一篇别人的东东,觉的有些帮助.顺便也是为了赚分啊....想上FTP下UDDI4J啊....版主太会难为人了啊.....
    原贴在http://spaces.msn.com/robindomain/blog/cns!8157A97370E352EA!153.entry?_c11_blogpart_blogpart=blogview&_c=blogpart#permalink
    人生是由回忆组成的....

    BPEL2.0 draft Vs 1.1(1)

    BPEL 2.0草稿(2005.9.1)Vs BPEL1.1

    导言:

           上一期简单介绍了BPEL1.1规范,但是1.1的发布已经是2003年5月5日的事了,距今天快30个月了。这段时期,SOA,BPM产品逐渐成熟,企业间信息交互(集成)应用也越来越广泛。同时OASIS也是紧锣密鼓地审议BPEL2.0,可以说2.0已是呼之欲出。

           下面就对BPEL2.0草稿(以下简称2.0)的一些变化做一阐述,希望能对BPEL感兴趣的读者继续学习BPEL有所帮助。

           注意:要理解本文需要了解BPEL1.1规范。

    2.0相对于1.1的变化:

    1.       在流程(process)上,增加了 exitOnStandardFault 属性,指流程遇到标准故障(非joinFailure)时是否退出。

    增加了 <import namespace="uri" location="uri" importType="uri"/>*

            其中 importType 的可选值根据引入的类型而定,如果是XML Schema 则为:

    "http://www.w3.org/2001/XMLSchema",如果是WSDL 则为:

    "http://schemas.xmlsoap.org/wsdl/"

    2.       增加如下节点(activity)

    exit

    语法:<exit standard-attributes>

            standard-elements

    </exit>

                   代替1.1中的teminate节点,只用于可执行流程。

    if

    语法:<if standard-attributes>

         standard-elements

         <condition expressionLanguage="anyURI"?>

              ... bool-expr ...

         </condition>

         <then>
              activity

         </then>

         <elseif>*

            <condition expressionLanguage="anyURI"?>

              ... bool-expr ...

            </condition>
                                   activity

         </elseif>

         <else>?

            activity
         </else>
    </if>

    repeatUntil

                  语法:<repeatUntil standard-attributes>

           standard-elements

           activity

           <condition expressionLanguage="anyURI"?>

              ... bool-expr ...

           </condition>

    </repeatUntil>

    rethrow

            语法:<rethrow/>

                   用在 <faultHandler>(<catch> 和<catchAll>元素)中是否抛出故障。

    validate

            语法:<validate variables="ncnames" />

                   根据变量的数据类型(定义)对其进行校验

    extensionActivity

                  语法:<extensionActivity>

                                <???? standard-attributes>

                                             standard-elements

                               </????>

    </extensionActivity>

    引入符合标准(符合standard-attributes和standard-elements)的新节点, 给扩展提供了新方法。

    forEach

                  语法:<forEach counterName="ncname" parallel="yes|no" standard-attributes>

         standard-elements

         <startCounterValue expressionLanguage="anyURI">

            ...

         </startCounterValue>

         <finalCounterValue expressionLanguage="anyURI">

            ...

         </finalCounterValue>

         activity

    </foreach>

    3.       删除节点

    terminate  替代节点 exit

    switch  替代节点 if


    节点的功能(语法)变化

    receive:  portType属性变为可选的;

                   增加了可选属性 messageExchange 用来和一个 reply 相关联

                   增加了<fromPart part="ncname" toVariable="ncname"/>*,参看:invoke

                          注意:fromPart和varible属性只可取其一。

    reply:    portType属性变为可选的;

    增加了可选属性 messageExchange 用来和一个 <receive>, <onMessage> 或者

    <onEvent> 相关联

                   增加了<fromPart part="ncname" toVariable="ncname"/>*

    invoke:   portType属性变为可选的;

                   增加了<toPart part="ncname" fromVariable="ncname"/>*

                                 提供了构造请求参数(inputVariable)的另一种方式,适用于请求消

                                 息是多个part的情形。注意:toPart和inputVariable只可取其一。

                            <fromPart part="ncname" toVariable="ncname"/>*

                                 根据返回的消息(outputVariable,在这种情况下,只是一个临时变量)

                                 去给某个变量赋值,返回消息必须是含有part的。注意:fromPart

                                 和outputVariable只可取其一。

    assign:     增加了可选属性 validate="yes|no"?

                   增加了子元素(element)<extensibleAssign>, 它和<copy>至少出现其一

    onMessage: 同 receive

    scope:      去掉了属性 variableAccessSerializable

                   增加了属性 isolated="yes|no",用于并发scope中,一个isolated=”yes”的scope

                   不能内置于另一个isolated=”yes”的scope中,替代variableAccessSerializable。

                   增加了如下可选元素:<partnerLinks>, <terminationHandler>

    5.       标准元素(standard-elements)

    由原来的:

            <target linkName="ncname"/>*
                  <source linkName="ncname" transitionCondition="bool-expr"?/>*

            变为:

                  <targets>?

       <joinCondition expressionLanguage="anyURI"?>?

         ... bool-expr ...

       </joinCondition>                   
       <target linkName="ncname" />+

    </targets>

    <sources>?
       <source linkName="ncname">+

          <transitionCondition expressionLanguage="anyURI"?>?

            ... bool-expr ...

          </transitionCondition>

       </source>

    </sources>

    6.       WSDL扩展

    partnerLinkType的结构变为:

    <plnk:partnerLinkType name="ncname">
              <plnk:role name="ncname" portType="qname"/>
              <plnk:role name="ncname" portType="qname"/>?
         </plnk:partnerLinkType>

    即把原来的role中portType元素变为它的一个属性

    property数据类型由原来的只能是简单类型(type属性标识)变为可以为复杂类型(element属性标识)

           propertyAlias的结构变为:

    <bpws:propertyAlias propertyName="qname"
                   messageType="qname"? part="ncname"?

                   type="qname"? element="qname"?>

               <query queryLanguage="anyURI"?>?

               ... queryString ...

               </query>

    </bpws:propertyAlias>

    即增加了两个可选属性(数据类型以不限于只是以前的messageType) ,并把原来

    的query属性变为一个元素。

    7.       partnerLink 增加了可选属性 initializePartnerRole="yes|no",这个属性只是用来修饰partnerRole(如果没有,则不起作用),如果为yes, 表示在第一次调用此partnerLink提供的服务时,要初始化它的endpoint reference, 否则不要初始化。

    8.       标准故障

    增加了bpws : invalidVariables; 发生在 validate 节点中

    增加了bpws : missingRequest; 发生在 reply节点中,当不存在partnerLink, operation, and

                   messageExchange相同的接收消息节点(receive, onEvent, onMessage)

    增加了bpws : forEachCounterError; 发生在 forEach 节点中,当计算初始值和终止值出

                  错时。

    9.       变量(variable)访问语法结构的变化

    由原来的<from variable= ncname ........> 变为:$ncname。

            如果variable的类型是element,例如(命名空间忽略,下同):

    <variable name="AStatus" element="e:StatusContainer" />

    如果要访问StatusContainer中的statusDescription,访问语法为:

    $Astatus/e:statusDescription

                  如果variable的类型是messageType,例如:

                         <message name="StatusMessage">

       <part name="StatusPart1" element="e:StatusContainer"/>

       <part name="StatusPart2" element="e:StatusContainer"/>

    </message>

    <variable name="StatusVariable" messageType="e:StatusMessage" />

    如果要访问StatusPart2中的statusDescription,则语法为:

    $StatusVariable.StatusPart2/e:statusDescription

    如果variable的类型是简单类型,则$变量名直接表示一个字符串(string),数字

    (float)和布尔值(boolean)。

    也就是说,对于复杂类型,$变量名在XPath中被绑定到文档元素(document

    element)。

    变量访问的变化带来的变化是赋值(assign)节点中<copy>元素的变化。

    注意:在草稿中所给的示例片段中依然看到1.1中的访问方式,不知道是两种形式可以

    共用,还是什么情况,可能需要到正式规范出台才可得知。


    10.       相关集(correlation)

    correlation的initiate属性增加了可选值“join ”,它的意思是:

            当这个相关集没有初始化时,此刻初始化;

            当这个相关集已经初始化的时候,进行校验。

    11.       bpws命名空间由 http://schemas.xmlsoap.org/ws/2003/03/business-process/

    变为:http://schemas.xmlsoap.org/ws/2004/3/03/businessprocess/

          总结:

                 从总体上的修改来看,2.0的可扩展性变得更强了,这一点无论是从引入的新节点,还是在流程中增加的新属性都可得到印证,而且引入的新节点使得流程语义的表达更加灵活,此外一些元素包括属性的命名也更加规范。相信2.0标准的推出必将对业界产生重大影响。

                 本文也只是在参看了2.0的草稿基础上完成的,还没有进行深入的研究,因此,总结难免会有遗漏或有失偏颇,敬请读者批评指正。

          参考文献:

    1.       Web Services Business Process Execution Language Version 2.0(Committee Draft, 01

    September 2005)

    http://www.oasis-open.org/committees/download.php/14616/wsbpel-specification-draft.htm

    2.       Business Process Execution Language for Web Services version 1.1

    http://www.ibm.com/developerworks/library/ws-bpel/


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/2/6 14:09:00
     
     letitbe 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:6
      积分:80
      门派:XML.ORG.CN
      注册:2005/10/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给letitbe发送一个短消息 把letitbe加入好友 查看letitbe的个人资料 搜索letitbe在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看letitbe的博客2
    发贴心情 
    最近正在研究这个,谢谢楼主了
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/2/6 17:43:00
     
     micro_sandal 帅哥哟,离线,有人找我吗?处女座1980-9-16
      
      
      等级:大一(猛啃高等数学)
      文章:11
      积分:116
      门派:XML.ORG.CN
      注册:2005/11/2

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给micro_sandal发送一个短消息 把micro_sandal加入好友 查看micro_sandal的个人资料 搜索micro_sandal在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看micro_sandal的博客3
    发贴心情 
    偶也在做这方面的工作,呵呵

    ----------------------------------------------
    我希望永远努力地做一个优雅的人, 聪慧,从容,独立,坚强,冷静…… 不管岁月流逝,无论世道艰辛, 心中那份高贵都永不退让。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/2/26 18:16:00
     
     jpro 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:6
      积分:82
      门派:XML.ORG.CN
      注册:2006/3/3

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给jpro发送一个短消息 把jpro加入好友 查看jpro的个人资料 搜索jpro在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看jpro的博客4
    发贴心情 
    嗯,刚来就看到了一个
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/3/3 11:24:00
     
     cjjcx1 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:0
      积分:54
      门派:XML.ORG.CN
      注册:2007/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给cjjcx1发送一个短消息 把cjjcx1加入好友 查看cjjcx1的个人资料 搜索cjjcx1在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看cjjcx1的博客5
    发贴心情 
    thks
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/4/17 10:40:00
     
     hanyonghua6 美女呀,离线,快来找我吧!
      
      
      等级:大一(猛啃高等数学)
      文章:11
      积分:114
      门派:XML.ORG.CN
      注册:2010/11/1

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给hanyonghua6发送一个短消息 把hanyonghua6加入好友 查看hanyonghua6的个人资料 搜索hanyonghua6在『 Web Services & Semantic Web Services 』的所有贴子 引用回复这个贴子 回复这个贴子 查看hanyonghua6的博客6
    发贴心情 
    你好,我的qq是394454950可否加为好友,有些BPEL的问题想向您请教
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2011/1/10 18:46:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Web Services & Semantic Web Services 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/8 21:32:59

    本主题贴数6,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    109.375ms