Я использую виджет PrimeFaces p:autoComplete
в поисковой форме моего проекта.Пользователь может выбрать, сколько и какие элементы формы (параметры поиска) он хочет включить, поэтому мне нужно передать идентификатор в completeMethod
для каждого из них.Я попытался добавить onfocus=".."
, чтобы передать объект в bean-компонент, но он активируется только при первой загрузке элемента.
Мой вопрос: как я могу передать атрибут в completeMethod
?
XHTML элемента (простой):
<p:autoComplete value="#{filter.value}" label="dynamic search attribute"
completeMethod="#{myBean.complete}" />
Боб (простой):
@Named("myBean")
public class MyController implements Serializable {
public List<String> complete(String query) {
List<String> results = new ArrayList<String>();
// ... code
return results;
}
}
Теоретически это может показаться идеальным решением:
<p:autoComplete value="#{filter.value}" label="dynamic search attribute"
completeMethod="#{myBean.complete(filter)}" />
И снова боб:
@Named("myBean")
public class MyController implements Serializable {
public List<String> complete(String query, FilterObject o) {
List<String> results = new ArrayList<String>();
// ... database query based on FilterObject o
return results;
}
}