@DateModel: 暴露了java.util.List 类型的属性给JSF页面作为javax.faces.model.DateModel 实例。 这允许我们在JSF<h:dataTable>的每一行中能使用可点击列表。
@DataModelSelection : 告诉了seam来注入List元素到相应的被点击链接。
@Out : 直接暴露了被选中的值给页面。
@Begin : 当此方法无异常的返回一个非空结果时,一个长期运行的对话开始。
@Begin(join=true) : 若已经处于长期运行对话中,简单的延续此对话上下文。
@Begin(nested=true) : 若已经处于长期运行对话中,一个新的被 嵌套(nested) 对话上下文开始。 该被嵌套的对话在遇到下一个 @End
时结束,并且外部上下文将恢复。在同一个外部对话中同时嵌套多个对话是完全合法的
@Begin(pageflow="process definition name") : 指定该对话的页面流(pageflow)的jBPM进程定义名。
@Begin(flushMode=FlushModeType.MANUAL) : 指定任何Seam管理的持久上下文的flush模式。flushMode=FlushModeType.MANUAL
支持 原子对话(atomic conversations),这里所有写操作在会话上下文进入队列,直到显式调用 flush()
(调用通常发生在对话结束时)。
-
join
— 定义当长期对话已经存在时的行为。 若是true
,传播上下文。若为false
,抛出一个异常。 默认为false
。当指定nested=true
时,将忽略该设置。 -
nested
—当长期对话已经存在时,一个嵌套对话应该建立。 -
flushMode
— 设置任何在此会话期间创建的,被Seam管理的Hibernate Session或JPA持久上下文的flush模式。 -
pageflow
— 由org.jboss.seam.bpm.jbpm.pageflowDefinitions
部署的一个jBPM处理的进程定义名。
@End : 当这个方法无异常的返回一个非空输出时,长期对话结束。