[英]Applying filter on af:table based on a custom Pojo list in ADF
我在ADF页面的报表功能中使用af:table
组件。
我的整个报告数据来自第三方服务。
该服务接受用户在报告页面中输入的一些搜索条件。
在用户单击搜索按钮时调用搜索条件后,将调用服务并在表中呈现数据。
现在,我需要在某些表列中启用过滤。 在VO based
表的情况下应用过滤非常容易。但是由于数据来自服务我有自定义Pojo列表
<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
出现在列标题中但它以只读模式进行。我无法输入任何内容。[ valueChangeListener保存过滤逻辑 ]
我尝试使用<f:facet name="filter">
但它也会产生相同的输出, 即只读输入框。
我在托管bean中都有getter和setter,它仍以只读模式显示。
有人可以建议为什么它以只读模式呈现吗? 是否有其他方法可以在不使用基于VO的表的情况下实现过滤?
尝试使用构面名称作为“过滤器”而不是“标题”。
首先,需要为bean创建一个数据控件,将其拖放为表格后,将创建过滤器模型,然后可以自定义过滤器。
搜索区域将如下所示创建
你的表使用它如下
您可以从以下链接下载示例应用程序以供参考
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.