基于 ADF 中的自定义 Pojo 列表对 af:table 应用过滤器
Applying filter on af:table based on a custom Pojo list in ADF
我在 ADF 页面的报告功能中使用 af:table
组件。
我的整个报告数据来自第三方服务。
此服务接受用户在报告页面中输入的一些搜索条件。
当用户单击搜索按钮时输入搜索条件后,服务被调用并在 Table 中呈现数据。
现在,我需要在我的某些 table 列中启用过滤。在 VO based
table.But 的情况下应用过滤非常容易,因为数据正在传输从服务我有自定义 Pojo List
<af:table scrollPolicy="page" autoHeightRows="8" value="#{myBean.pojoList}" var="myreport" id="t1"
styleClass="AFStretchWidth" filterVisible="true">
<af:column headerText="Header1" width="10%" filterable="true">
<f:facet name="header">
<af:inputText simple="true" value="#{myBean.filterInput1}" autoSubmit="true" valueChangeListener="#{mybean.method}"/>
</f:facet>
<af:outputText value="#{myreport.data}"/>
</af:column>
<!--other columns -->
<af:table>
尽管 input box
出现在 header 列中,但它以只读方式进入 mode.I 我无法输入任何内容。[valueChangeListener 包含过滤逻辑]
我试过 <f:facet name="filter">
但它也产生相同的输出 即只读输入框。
我的托管 bean 中有 getter 和 setter,但它仍然以只读模式显示。
任何人都可以建议它为什么以只读模式呈现吗?
有没有其他方法可以在不使用基于 VO 的情况下实现过滤 Table?
尝试将构面名称用作 "filter" 而不是“ header”。
您首先需要为 bean 创建一个数据控件,将其拖放到 table 之后,将创建过滤器模型,然后您就可以自定义过滤器了。
搜索区域将创建如下所示
你的 table 如下使用它
您可以从下面下载示例应用程序以供参考link
我在 ADF 页面的报告功能中使用 af:table
组件。
我的整个报告数据来自第三方服务。
此服务接受用户在报告页面中输入的一些搜索条件。
当用户单击搜索按钮时输入搜索条件后,服务被调用并在 Table 中呈现数据。
现在,我需要在我的某些 table 列中启用过滤。在 VO based
table.But 的情况下应用过滤非常容易,因为数据正在传输从服务我有自定义 Pojo List
<af:table scrollPolicy="page" autoHeightRows="8" value="#{myBean.pojoList}" var="myreport" id="t1"
styleClass="AFStretchWidth" filterVisible="true">
<af:column headerText="Header1" width="10%" filterable="true">
<f:facet name="header">
<af:inputText simple="true" value="#{myBean.filterInput1}" autoSubmit="true" valueChangeListener="#{mybean.method}"/>
</f:facet>
<af:outputText value="#{myreport.data}"/>
</af:column>
<!--other columns -->
<af:table>
尽管 input box
出现在 header 列中,但它以只读方式进入 mode.I 我无法输入任何内容。[valueChangeListener 包含过滤逻辑]
我试过 <f:facet name="filter">
但它也产生相同的输出 即只读输入框。
我的托管 bean 中有 getter 和 setter,但它仍然以只读模式显示。
任何人都可以建议它为什么以只读模式呈现吗? 有没有其他方法可以在不使用基于 VO 的情况下实现过滤 Table?
尝试将构面名称用作 "filter" 而不是“ header”。
您首先需要为 bean 创建一个数据控件,将其拖放到 table 之后,将创建过滤器模型,然后您就可以自定义过滤器了。
搜索区域将创建如下所示
你的 table 如下使用它
您可以从下面下载示例应用程序以供参考link