从表中的选择行获取值并将其发送到有界任务流的最简单方法

时间:2016-06-26 01:13:51

标签: oracle-adf

我正在尝试在显示的表中选择一行,并使用行中的值作为有界任务流的输入。这似乎是一个非常普遍的事情,你可以重用任务流,但我在网上找到的一切都需要大量的代码。丢失的部分似乎是将数据从选择行获取到任务流的输入。网上有这方面的好例子吗?我一定在寻找错误的东西。

2 个答案:

答案 0 :(得分:1)

虽然A_BOSS是正确的,但您可以使用setPropertyListener来设置值,遗憾的是,该示例存在缺陷。该示例使用内存范围参数:pageFlowScope.testVal。在ADF中执行此操作是非常糟糕的做法,并且永远不会在生产中完成,这有很多问题。例如:如果您拼写错误且JEveloper容易出现NPE,则JDeveloper无法提供反馈。虽然它并不完全是一种反模式,但它足够接近它不会这样做。正确的方法是创建和注册托管bean并传递该bean的属性:pageFLowScope.bean.testal

答案 1 :(得分:0)

1-首先以这种简单的方式从所选行中获取值:

a-在表中添加列,并使用PropertyActionListener添加命令按钮/链接,以在pageFlowScope中设置所选值,如下所示:

<af:column id="c8" headerText="Select">
                      <af:commandLink text="Select" id="cl1">
                        <f:setPropertyActionListener target="#{pageFlowScope.testVal}"
                                                     value="#{row.FirstName}"/>
                      </af:commandLink>
                    </af:column>

b-在任务流属性&gt;参数部分&gt;使用pageFlowScope变量中的选择值添加您的参数...在我们的例子中将是#{pageFlowScope.testVal}