`
suli
  • 浏览: 45583 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

ONJava.com -- JBoss Seam --> page 5

阅读更多
Pages: 1, 2, 3, 4, 5

 

在 DVD 商店的以下示例中,我们将添加对定单进行验证的业务流程。 该业务流程自动接受所有 100 美元以下的定单,并将大金额的定单交给管理员处理。 验证通过时,还需要一个添加发货数量的步骤。 为完成这个流程,编写如下 JPDL:

<process-definition name="OrderManagement">    <start-state>        <transition to="decide"/>    </start-state>        <decision name="decide" expression="#{orderApproval.howLargeIsOrder}">        <transition name="large order"                        to="approval"/>        <transition name="small order"                        to="process"/>    </decision>    <task-node name="approval">        <task name="approve">           <assignment              pooled-actors="reviewers" />        </task>        <transition name="approve"                        to="process"/>        <transition name="reject"                         to="complete"/>    </task-node>        <task-node name="process">        <task name="ship">           <assignment pooled-actors=           "#{shipperAssignment.pooledActors}"/>        </task>        <transition name="shipped"                        to="complete">            <action expression=                   "#{afterShipping.log}"/>        </transition>    </task-node>        <end-state name="complete"/></process-definition>

在这个简单但是强大的示例中,结合使用 jBPM 和 Seam 可以使你在 jPDL 中直接输入 JSF 语句。 #{orderApproval.howLargeIsOrder}"orderApproval" Seam 组件上调用 howLargeIsOrder 方法,而这正是它在 JSF 页面中工作的方式。 以下是该 Seam 组件的源代码:

package com.jboss.dvd.seam;import org.jboss.seam.annotations.In;import org.jboss.seam.annotations.Name;@Name("orderApproval")public class OrderApprovalDecision {   @In float amount;   public String getHowLargeIsOrder()   {      return amount > 100 ?         "large order" : "small order";   }}

没有特别之处,我们只是注入了有态上下文中的金额(amount),和一个字符串,就可以返回采取何种操作。 还注意到在页面流程定义中,从 "process""complete" 的过渡激活了一个对 Seam 组件"afterShipping""log" 方法的调用。

移植性和简单性

Seam 完成依赖于 JDK 5.0 标注来声明组件以及它们如何根据特定上下文进行关联--没有 XML 的深奥。 Seam 可以用于任何 JSF 形式,并且可以运行于任何 JEE 5.0 容器。 对于较小的容器,Seam 甚至可以在 Tomcat 或者测试单元中使用。 对于尚未准备好使用 EJB 3.0 的开发者,Seam 还支持 POJO 和 Hibernate 持久性类作为组件。

添加少量的配置文件,此 DVD 商店示例即可在 Tomcat 中工作,在 Seam 发行版本中就有这样一个例子。

资源

Thomas Heute 是 JBoss Seam 项目的带头人


返回 ONJava.com



分享到:
评论

相关推荐

    jboss-threads-3.1.0.Final-API文档-中文版.zip

    赠送jar包:jboss-threads-3.1.0.Final.jar; 赠送原API文档:jboss-threads-3.1.0.Final-javadoc.jar; 赠送源代码:jboss-threads-3.1.0.Final-sources.jar; 赠送Maven依赖信息文件:jboss-threads-3.1.0.Final....

    jboss-logging-3.4.3.Final-API文档-中文版.zip

    赠送jar包:jboss-logging-3.4.3.Final.jar; 赠送原API文档:jboss-logging-3.4.3.Final-javadoc.jar; 赠送源代码:jboss-logging-3.4.3.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.4.3.Final....

    jboss-logging-3.4.1.Final-API文档-中文版.zip

    赠送jar包:jboss-logging-3.4.1.Final.jar; 赠送原API文档:jboss-logging-3.4.1.Final-javadoc.jar; 赠送源代码:jboss-logging-3.4.1.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.4.1.Final....

    jboss-logging-3.3.2.Final-API文档-中文版.zip

    赠送jar包:jboss-logging-3.3.2.Final.jar; 赠送原API文档:jboss-logging-3.3.2.Final-javadoc.jar; 赠送源代码:jboss-logging-3.3.2.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.3.2.Final....

    jboss-threads-3.1.0.Final-API文档-中英对照版.zip

    赠送jar包:jboss-threads-3.1.0.Final.jar; 赠送原API文档:jboss-threads-3.1.0.Final-javadoc.jar; 赠送源代码:jboss-threads-3.1.0.Final-sources.jar; 赠送Maven依赖信息文件:jboss-threads-3.1.0.Final....

    jboss-websocket-api_1.1_spec-2.0.0.Final-API文档-中英对照版.zip

    赠送jar包:jboss-websocket-api_1.1_spec-2.0.0.Final.jar; 赠送原API文档:jboss-websocket-api_1.1_spec-2.0.0.Final-javadoc.jar; 赠送源代码:jboss-websocket-api_1.1_spec-2.0.0.Final-sources.jar; 赠送...

    jboss-logging-3.4.2.Final-API文档-中文版.zip

    赠送jar包:jboss-logging-3.4.2.Final.jar; 赠送原API文档:jboss-logging-3.4.2.Final-javadoc.jar; 赠送源代码:jboss-logging-3.4.2.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.4.2.Final....

    jboss-annotations-api_1.3_spec-2.0.1.Final-API文档-中英对照版.zip

    赠送jar包:jboss-annotations-api_1.3_spec-2.0.1.Final.jar; 赠送原API文档:jboss-annotations-api_1.3_spec-2.0.1.Final-javadoc.jar; 赠送源代码:jboss-annotations-api_1.3_spec-2.0.1.Final-sources.jar;...

    jboss-as-web.Final-RECOMPILE.jar.rar

    "jboss-as-web.Final-RECOMPILE.jar"这个文件就是针对JBoss AS 7热部署功能的一个关键组件。 热部署是软件开发过程中的一种理想特性,允许开发者在不中断应用程序服务的情况下更新或替换已部署的代码。对于持续迭代...

    xnio-nio-3.8.0.Final-API文档-中文版.zip

    标签:jboss、xnio、nio、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用...

    xnio-api-3.8.0.Final-API文档-中英对照版.zip

    标签:jboss、xnio、api、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心...

    jboss-logging-3.4.3.Final-API文档-中英对照版.zip

    赠送jar包:jboss-logging-3.4.3.Final.jar; 赠送原API文档:jboss-logging-3.4.3.Final-javadoc.jar; 赠送源代码:jboss-logging-3.4.3.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.4.3.Final....

    jboss-logging-3.3.2.Final-API文档-中英对照版.zip

    赠送jar包:jboss-logging-3.3.2.Final.jar; 赠送原API文档:jboss-logging-3.3.2.Final-javadoc.jar; 赠送源代码:jboss-logging-3.3.2.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.3.2.Final....

    jboss-websocket-api_1.1_spec-2.0.0.Final-API文档-中文版.zip

    赠送jar包:jboss-websocket-api_1.1_spec-2.0.0.Final.jar; 赠送原API文档:jboss-websocket-api_1.1_spec-2.0.0.Final-javadoc.jar; 赠送源代码:jboss-websocket-api_1.1_spec-2.0.0.Final-sources.jar; 赠送...

    jboss-annotations-api_1.3_spec-2.0.1.Final-API文档-中文版.zip

    赠送jar包:jboss-annotations-api_1.3_spec-2.0.1.Final.jar; 赠送原API文档:jboss-annotations-api_1.3_spec-2.0.1.Final-javadoc.jar; 赠送源代码:jboss-annotations-api_1.3_spec-2.0.1.Final-sources.jar;...

    xnio-api-3.8.0.Final-API文档-中文版.zip

    标签:jboss、xnio、api、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用...

    jboss-logging-3.4.1.Final-API文档-中英对照版.zip

    赠送jar包:jboss-logging-3.4.1.Final.jar; 赠送原API文档:jboss-logging-3.4.1.Final-javadoc.jar; 赠送源代码:jboss-logging-3.4.1.Final-sources.jar; 赠送Maven依赖信息文件:jboss-logging-3.4.1.Final....

    jboss-6.0.0.20100911-M5-part2

    jboss-6.0.0.20100911-M5-part2

    xnio-nio-3.8.4.Final-API文档-中英对照版.zip

    标签:jboss、xnio、nio、jar包、java、中英对照文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心...

    spring-framework-3.0.5.RELEASE-dependencies-1

    5号包: org.codehaus.castor org.aspectj org.beanshell 6号包: org.jdom org.jgroups org.codehaus.groovy org.codehaus.jackson org.dom4j org.freemarker org.hibernate org.hsqldb org.jboss.javassist org....

Global site tag (gtag.js) - Google Analytics