adf时间作用域_ADF任务流:页面片段的托管bean作用域
adf时间作用域
假设我有一些简单的任务流模板 task-flow-template.xml:
<managed-bean id="__5"><managed-bean-name id="__3">viewBean</managed-bean-name><managed-bean-class id="__2">com.cs.blog.ViewBean</managed-bean-class><managed-bean-scope id="__4">request</managed-bean-scope></managed-bean><managed-bean id="__15"><managed-bean-name id="__13">flowBean</managed-bean-name><managed-bean-class id="__12">com.cs.blog.FlowBean</managed-bean-class><managed-bean-scope id="__14">pageFlow</managed-bean-scope></managed-bean><view id="MainView"><page>/MainView.jsff</page></view>
它具有一个视图活动MainView和两个后备bean。 flowBean具有pageFlow范围,并负责存储流信息。 viewBean具有请求范围(我们将使用该范围),并为ManView视图活动提供服务。
flowBean具有以下返回任务流标题的方法:
public String getFlowTitle() {return null;}
viewBean具有一些字符串字段testString来存储输入值:
protected String testString;public void setTestString(String testString) {this.testString = testString;}public String getTestString() {return testString;}
MainView显示任务流的标题,并具有testString的inputText。 看起来像这样:
我们还在任务流模板上构建了两个任务流–第一流定义和第二流定义。 他们已覆盖托管豆。
对于第一流定义 :
<managed-bean id="__5"><managed-bean-name id="__3">viewBean</managed-bean-name><managed-bean-class id="__21">com.cs.blog.FirstViewBean</managed-bean-class><managed-bean-scope id="__4">request</managed-bean-scope></managed-bean> <managed-bean id="__15"><managed-bean-name id="__13">flowBean</managed-bean-name><managed-bean-class id="__12">com.cs.blog.FirstFlowBean</managed-bean-class><managed-bean-scope id="__14">pageFlow</managed-bean-scope></managed-bean>
public class FirstFlowBean extends FlowBean {public FirstFlowBean() {super();}public String getFlowTitle() {return "FirstFlow";} }
public class FirstViewBean extends ViewBean {public FirstViewBean() {super();}@PostConstructpublic void init() {testString = "FirstFlow"; }
}
因此,testString的标题和默认值为“ FirstFlow”。
对于第二个流程定义 :
<managed-bean id="__5"><managed-bean-name id="__3">viewBean</managed-bean-name><managed-bean-class id="__21">com.cs.blog.SecondViewBean</managed-bean-class><managed-bean-scope id="__4">request</managed-bean-scope></managed-bean> <managed-bean id="__15"><managed-bean-name id="__13">flowBean</managed-bean-name><managed-bean-class id="__12">com.cs.blog.SecondFlowBean</managed-bean-class><managed-bean-scope id="__14">pageFlow</managed-bean-scope></managed-bean>
public class SecondFlowBean extends FlowBean {public SecondfFowBean() {super();}public String getFlowTitle() {return "SecondFlow";} }
public class SecondViewBean extends ViewBean {public SecondViewBean() {super();}@PostConstructpublic void init() {testString = "SecondFlow"; }}
因此,testString的标题和默认值为“ SecondFlow”。
好。 现在该进行实验了。 让我们在页面上放置两个具有第一流定义和第二流定义任务流的区域:
<af:region value="#{bindings.firstflowdefinition1.regionModel}" id="r1"/>
<af:separator id="s1"/>
<af:region value="#{bindings.secondflowdefinition1.regionModel}" id="r2" />
requestScope
将viewBean的范围保留为requestScope,我们将得到以下结果:
在SecondFlow中,我们从FirstViewBean实例中看到了testString。 每个请求只能有一个requestScope bean实例。 viewBean是为FirstFlow任务流创建的,同一实例再次用于SecondFlow。
backingBeanScope
而且,是的,backingBeanScope已解决了该问题。 我们有两个viewBean实例–用于区域r1和r2。
但是让我们让第一流定义任务流程更加复杂:
现在我们可以从MainView调用子任务流(具有相同的定义)。 让我们重复实验。 关于初始渲染:
到目前为止,一切都很好。 让我们在FirstFlow的输入文本中输入一些内容,然后按“调用子任务流”:
viewScope
现在,让我们将viewBean的范围更改为viewScope并进行相同的实验。 关于初始渲染:
好。 在inputText中输入相同的垃圾:
并按“呼叫子任务流程”:
而已!
参考:来自ADF实践博客的JCG合作伙伴 Eugene Fedorenko的ADF Task Flow中页面片段的托管bean作用域 。
翻译自: https://www.javacodegeeks.com/2012/05/adf-task-flow-managed-bean-scopes-for.html
adf时间作用域
adf时间作用域_ADF任务流:页面片段的托管bean作用域相关推荐
- ADF任务流:页面片段的托管bean范围
介绍 当我们使用ADF任务流并需要实现一些特定于流的业务逻辑或存储一些与该流相关的信息时,我们通常使用pageFlowScope托管bean. 而且,当我们需要为流的活动(页面或页面片段)提供服务时, ...
- adf时间作用域_ADF:在任务流终结器中支持bean作用域
adf时间作用域 介绍 当我们需要在任务流消失之前做一些最终工作(干净的资源,紧密的连接等)时,这是使用任务流终结器的非常普遍的建议做法. 和往常一样,我们使用在任务流中声明的托管bean. 托管Be ...
- ADF:在任务流终结器中支持bean作用域
介绍 当我们需要在任务流消失之前完成一些最终工作(干净的资源,紧密的连接等)时,这是使用任务流终结器的非常普遍的推荐做法. 和往常一样,我们使用在任务流中声明的托管bean. 托管Bean可以具有不同 ...
- Thymeleaf抽取公共页面片段
抽取页面 项目中,一般把所有的公共页面片段都抽取出来 放在一个独立的页面中 其他,所有的页面根据需要进行引用 参考文档 th:fragment 抽取公共元素 Name,随便自定义命名 <!DOC ...
- html设置页面指定时间切换,HTML实现双11抢劵(设定时间打开抢券的页面)
废话不多说了,直接给大家贴代码了,具体代码如下所示: #result{ width:500px; border:1px solid #CCCCCC; background:#FFFFCC; margi ...
- 一小时,学习掌握瀑布流页面布局
什么是瀑布流 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部.其实瀑布流的特点就是参差不齐的排 ...
- spring bean作用域_Spring面试知识点,这是我见过最全面的 - 知识铺
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累.不占太多时间,不停地来唤醒记忆深处的知识点. Q1.什么是Spring框架? Spring是最流行的企业应用程序框架之一.Spring ...
- spring:Bean作用域
在配置文件中定义Bean时,用户不但可以配置Bean的属性值及相互之间的依赖关系,还可以定义Bean的作用域.作用域将对Bean的生命周期和创建方式产生影响. spring 4.0中所支持的作用域: ...
- rethat安装MySQL多例_Spring框架-Bean作用域中单例模式和多例模式的区别
Spring框架-Bean作用域中单例模式和多例模式的区别 一.单例模式的特点(当没有指定是单例模式还是多例模式的时候,默认是单例模式): 1.Spring容器创建的时候,对应的类的实例化对象一起被创 ...
最新文章
- leetcode算法题--Russian Doll Envelopes
- python解码函数_Python字符串中的两个解码与解码函数详解
- [ 转载 ] Handler详解
- 8. 大型网站架构演化
- redis JAVA hmset_Spring boot 连接Redis实现HMSET操作
- 全局唯一标识符 (GUID)
- linux 登陆sybase_远程连接sybase 数据库 步骤
- android 支持蓝牙4.0的手机型号
- 人工智能研究中心快递柜——代码分析十三
- 爬虫--Item Pipeline 介绍(21)
- sqlserver官方网站地址
- 30岁的女程序员该何去何从
- 车辆停放收费管理系统c语言,毕业论文 停车场收费管理系统
- 极路由1S(HC5661A)开启SSH功能
- 设某一个班共有N(N=20)名学生,期末考试5门课程,请编一程序评定学生的奖学金,要求打印输出一、二等奖学金学生的学号、姓名和各门课成绩。
- maven(一)--mvn安装、配置、基本命令
- 四元数算法 c语言,四元数算法运算规则及基本概念
- SQL 创建表的备份
- 两张图片告诉你 载波聚合为4G加速的原因
- redux-thunk的作用