我已经读过核心JSF组件支持 f:param 和 f:attribute 标记,以便将一些值传递给服务器端以获取封闭的UI组件。
我需要能够为primefaces的自动完成组件执行此操作, 这样自动完成方法就可以使用 f:param 或 f:attribute 提供的参数。 我试图找到实现这一目标的方法,并发现完整的方法参数是固定的,不能采取更多的参数, 因此我想使用 f:param 或 f:attribute 。
我使用2.2.x版本,根据我的实验,我似乎无法获得 f:param 或 f:属性工作
<p:autocomplete ...>
<f:param name="myParam" value="xxxx" />
</p:autocomplete>
自动填充组件上的primefaces是否支持此功能? 无论如何,我可以找出支持参数的标签和那些不支持的标签吗?
谢谢!
答案 0 :(得分:14)
最后我开始工作了!
这是jsf部分:
<p:autoComplete id="#{cc.attrs.id}" label="#{cc.attrs.label}"
....
completeMethod="#{filterableRaceAutocompleteBean.filterRace}">
<f:attribute name="filter" value="#{cc.attrs.filter}" />
</p:autoComplete>
以下是来源:
public List<Dto> filterRace(String filterString) {
String filterValue = (String) UIComponent.getCurrentComponent(FacesContext.getCurrentInstance()).getAttributes().get("filter");
log.debug("filter string : " + filterString + ", with query filter of : " + filterValue);
....
return result;
}