`
smartzxy
  • 浏览: 196082 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

(STITP)jotm-btp的深入分析

阅读更多

      对照着BTP协议,把jotm-btp的代码看了两遍,终于有了点比较深入的理解了,是时候写下点心得了。

 

      首先是说说jotm-btp与jotm的关系。从字面上看,jotm-btp显然是jotm的一个扩展。具体的说来,在前者的代码中直接调用了后者的:ControlImpl、Resource、TransactionFactory、TransactionFactoryImpl等这几个类或接口。TransactionFactoryImpl用来创建事务ID,在Decider中一个事务ID唯一对应一个ControlImpl对象;ControlImpl是事务控制中最重要的类了,jotm-btp直接调用该类来实现事务的提交和回滚控制(即沿用了jotm的事务控制方式),具体的准备、提交和回滚实现,通过调用Resource接口来完成;jotm-btp的SOAPResource类实现了Resource接口,供ControlImpl调用,完成BTP定义的事务处理方式。

 

       接着我来分析下jotm-btp对BTP的实现方式。在这里我举三个典型的过程:beginning、enrolling和confirming。

 

       首先是beginning的实现过程,如下图所示:


       接着是enrolling的实现过程:

 最后是confirming的实现过程,实现事务的最后提交:

        以上实现中,所有的Terminator和Decider、Participant和Decider的数据通信都是通过Axis的WebService方式实现的。

      

        另外,通过分析源代码发现,jotm-btp并没有完全实现BTP中的另一种事务模式——cohesion模式。它只能进行简单的提交操作,如果遇到错误,仅仅是返回error、提示错误,而没有实现事务的回滚操作。我想这就是我们要完善的地方了……

 

  • 大小: 27.2 KB
  • 大小: 29 KB
  • 大小: 35.1 KB
0
0
分享到:
评论

相关推荐

    STITP专用文档

    从管理员身份获得 SYSTEM 权限的四种方法 伪寄存器语法(Pseudo-Register Syntax) 利用 cards.dll 写自己的扑克程序 利用 Debug API 编写一个简单的脱壳机 手工构造一个超微型的 PE 文件 改造 MFC 编写的控件在 Win...

    STITP.rar_stitp

    大学生创新计划温度传感系统,内有控制软件,属于初级入门项目

    2006年STITP立项项目汇总表.pdf

    2006年STITP立项项目汇总表.pdf

    miniprogram-STITP:STITP 校园代取餐、代取快递小程序

    Welcome to 基于微信小程序的货物和食品的本地化配送平台系统:waving_hand:一款方便校园内食堂代排队、代取快递的微信小程序:house:安装微信开发者工具(v2.11.0及以上)使用微信客户端体验版:体验作者:bust_in_...

    基于满意度及其组合赋权分析的STITP研究* (2013年)

    本文提出的STITP 孵化满意度及其组合赋权分析,即利用心理期望与实测数据取得属性满意度,并参照此满意度过滤指导决策方案;研究属性值信息相容关系。同时对属性值间的相容度进行赋权,排序择优匹配指导方期望的决策方案...

Global site tag (gtag.js) - Google Analytics