基于Transient属性隐藏adf表中的行不起作用

时间:2014-03-03 10:33:05

标签: java rendering oracle-adf jdeveloper

我有一个JSF页面,用户可以在View object中插入新行。此View object包含Transient属性,用于指示记录是否是新创建的。

在同一页面中,我的adf table与所提到的view object有关。此表应仅显示新创建的记录。我的方法是在expression language属性中使用rendered来隐藏所有其他非新创建的行。我将表列的render属性更改为:rendered="#{row.bindings.RowStatus.inputValue eq 'new'}",但表中没有显示任何内容。

然后,我尝试将rendered属性更改为不是列,而是更改为其中outputText的属性。它确实有效,但问题是空行仍在显示。

所以,基本上我没有隐藏整行,而是将文本隐藏在行的旁边,而空白行的行仍然显示在页面中。

这是JSF页面中rendered属性应用于outputText列内的表:

<af:table value="#{bindings.UplodedFilesView1.collectionModel}" var="row"
                          rows="#{bindings.UplodedFilesView1.rangeSize}"
                          binding="#{CreatSR_UserBean.fileTable}">

    <af:column sortProperty="#{bindings.UplodedFilesView1.hints.FileName.name}" 
      headerText="File Name" id="c1">

          <af:outputText value="#{row.bindings.FileName.inputValue}" id="it1"
          rendered="#{row.bindings.RowStatus.inputValue eq'new'}"/>

   </af:column>

   </af:table>
  

我正在使用Jdeveloper 11.1.2.3和ADF技术

1 个答案:

答案 0 :(得分:0)

在标记row set后隐藏行会迟到。可以通过根据View object部分中的Transient属性过滤Page Binding来解决此问题。

此主题中提到了详细步骤:How to Filter View object based on Transient attribute