Ryan's Java world!

something about Java and opensource!

BlogJava 首页 新随笔 联系 聚合 管理
  51 Posts :: 25 Stories :: 59 Comments :: 0 Trackbacks
BPEL和BPELJ常见问题解答

Q:什么是 BPEL?
A: BPEL是一门用于自动化业务流程的形式规约语言。 用XML文档写入BPEL中的流程能在Web 服务之间以标准化的交互方式得到精心组织。这些流程能够在任何一个符合BPEL规范的平台或产品上执行。 所以,通过允许顾客们在各种各样的创作工具和执行平台之间移动这些流程,BPEL使得他们保护了他们在流程自动化上的投资。尽管以前想使业务流程定义标准化,但BPEL已经引起了史无前例的兴趣,而且它最早在软件供应商中获得大量认可。

Q: BPEL、WSBPEL和 BPEL4WS之间的区别是什么?
A: 除了历史参考文献不同外,没有什么其他的不同。这些名字都涉及到相同的未决标准。“BPEL4WS”是起初规范的名字,它由BEA、IBM和Microsoft编写和公布的。“WSBPEL”目前是规范和未决标准的名称。当这个规范提交到OASIS时,出于Web服务相关标准的努力,按照OASIS命名方案更换了这个名字。尽管如此,大部分团体仍然简单地称这个标准为“BPEL”。

Q: 什么是 BPELJ?
A: BPELJ 是BPEL和Java 语言的组合,它允许一起运用这两种编程语言来构建完整的业务流程应用程序。通过允许BPEL和Java一起工作, BPELJ使得每种语言可以做它最擅长的事。BPELJ优于BPEL,但没有它那么有竞争力。

Q:如何把BPELJ和 BPEL联系起来,它们之间区别在哪里?
A: BPEL基本上向编程发展,它支持业务处理流程的逻辑。这些业务处理流程是独立的应用程序,这些应用使用Web服务作为实现业务功能的活动。BPEL 不会成为一门通用的编程语言。然而,有人认为BPEL将和用来实现业务功能的其他语言(少部分的编程)结合起来。为了方便BPEL和Java 结合起来,BPELJ对BPEL做了一些小的改动并且做了一些扩展。

Q: BPEL不是针对业务分析员吗? 如果是,为什么把Java加进来?
A: 有这么一个普遍的误解,那就是BPEL想达到非程序设计人员或者所谓的“业务分析员”也能使用的程度。这个错误的概念部分根源于市场上许多针对于这组用户的业务流程管理工具这样的一个事实。无可置疑,工具供应商为构建BPEL和BPELJ流程提供了广泛的可视化接口,但是语言本身的目的是为了开发人员。

Q: BPELJ如何工作?
A: 通过允许在BPEL流程定义中包含Java代码段(称为Java片断),BPELJ使得Java 和BPEL能够相互协作。

Q: 难道不应该考虑允许使用任何语言(C#、JavaScript和Java等)来设计代码片断吗?
A: 这个片断背后想法是有代表性,我们希望它能用于许多不同的语言。然而,要集成BPEL和一门特定的语言包含的不仅仅是用XML包装目标语言。集成变量绑定、事务管理、调用路径等问题必须周全地定义,然而,每种语言是用不同的方法解决这些问题,对所有语言进行统一的绑定是不现实的。所以, BPELJ集中解决 BPEL 和 Java的这些集成问题。我们期待着解决其他的语言的集成问题 。

Q: 难道BPELJ 没违反“ BPEL中活动是Web服务,数据是XML,数据结构用XML架构描述”这一原则吗?
A: 并不是世界上所有的服务都是Web服务,它们也不应该是。用J2EE更适合紧密耦合的系统,在这种系统中,容器提供的功能如安全和事务是特别有价值的。那些把业务逻辑部署成J2EE组件的人员应该能够在业务流程中充分利用这些组件,BPEL是描述这个过程最好的一门语言。
一些人争论说在程序片断中用Java来完成少量计算和数据操作非常合适,但是应该通过XML/Web服务视图强制所有服务调用。这是一个特别站不住脚的观点。如果您有一个用Java代码片断写的流程,很明显,有一个Java开发人员参与创建这个流程。
这意味着您可能有下面的设想:有一个开发人员熟悉用Java调用组件,他想用Java操纵组件的输入和输出。迫使那个人把所有的调用看成好像是调用Web 服务一样,这会产生一层混乱,阻止考虑业务逻辑。

Q: 这意味着现在用在WebLogic Integration 8.1上的流程定义无效了吗?
A: 根本不会,BEA 在2003年策划并倡导了JSR 207,把流程定义(命名为“JPD”)提交给 WebLogic Integration 8.1,并把它作为小组工作的初始基础。 BEA 和 IBM 已经提交BPELJ 给 JSR 207 工作小组考虑。BPELJ 和 JPD有很多相同的地方,事实上它已经开始详细设计使得今后JPD能平稳迁移到BPELJ上 。

Q: 如何把BPELJ和 JSR 207联系起来?
A: BPELJ已经提交给 JSR 207,并建议考虑使用BPELJ作为JSR 工作的基础。

Q: 这对BPEL意味着什么?它将会作为一个标准分裂出来么? IBM 和 BEA 正在放弃BPEL么?
A: 根本不会。BPELJ是一个完全在BPEL标准的核心思想和意图之内的延伸。为了提供一个完全的流程设计环境,一直以来都希望BPEL能和其他的语言结合。IBM 和 BEA 都承诺支持BPEL 并且继续作为OASIS的主要的贡献者,正在努力达到语言的标准化。

Q: BEA对于BPEL和BPELJ的产品计划是什么?
A: 对于在2004年春季时间范围内的WebLogic Integration 8.1,BEA将提供一个BPEL导出工具 ,在下一个重要的WebLogic Integration发布中充分支持最终BPEL标准。 BEA 也在下一个重要的WebLogic Integration发布中对BPELJ提供充分的支持。

Q: 如果我现在用WebLogic Integration 8.1会怎样呢?我能迁移到BPELJ吗?
A: 是的,在下一个重要的WebLogic Integration 发布中, BEA将为从JPD自动迁移到BPEL/BPELJ上提供工具。

  原文出处:http://dev2dev.bea.com/technologies/bpel/bpel_faq.jsp

posted on 2006-04-25 10:36 冰雨 阅读(395) 评论(1)  编辑  收藏 所属分类: Java

Feedback

# re: BPEL和BPELJ常见问题解答 2009-03-27 15:25 木易百合
请问,现在BPEL有成功应用的典范吗?
  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 

JSF中文技术文摘