Я новичок в jsf и хотел бы знать, как выполнять фильтр данных в dft-файлах. Я хочу, когда пользователь начнет вводить текстовое поле поиска, чтобы отфильтровать все записи и, в конце концов, оставил значение в текстовом поле поиска. Как я могу достичь этого в jsf datatable Я использую perffaces 3.5. вот мой сопоставимый и соответствующий управляемый компонент.Как реализовать пользовательский фильтр данных в datatable
<p:tabView dynamic="true" id="tabview" cache="true" style="min-height: 500px;">
<p:tab title="first Tab">
<h:form >
<p:dataTable paginator="true" value="#{mybean.allusers}" var="user" id="user_table" widgetVar="userTable">
<p:outputPanel>
<h:outputText value="Search all fields:" />
<p:inputText id="globalFilter" onkeyup="PF('userTable').filter()" style="width:150px" placeholder="Enter keyword"/>
</p:outputPanel>
<p:column>
<f:facet name="header">
<h:outputText value="Name"/>
</f:facet>
<h:outputText value="#{user.name}"/>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Id"/>
</f:facet>
<h:outputText value="#{user.id}"/>
</p:column>
</p:dataTable>
</h:form
</p:tab>
</p:tabView >
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
@ManagedBean
@ViewScoped
private List<Users> filteredUsers;
public List<RevenueGroup> getFilteredUsers() {
return filteredGroups;
}
public void setFilteredGroups(List<Users> filteredUsers) {
this.filteredUsers = filteredUsers;
}
public List<Users> getAllusers() {
if(grps==null)
{
grps=UserDao.getUser();
}
return grps;
}
Когда я перехожу к разделам 5.3, получаю эту ошибку. Вызывается: java.lang.ClassNotFoundException: org.primefaces.component.menuitem.MenuItem - проблема совместимости? я использую расширение frontfaces 0.7.1.jar –
добавить расширение явно – vels4j
Я исправил эту проблему, но теперь, когда я нажимаю на текстовое поле поиска, все данные исчезают? что я могу делать неправильно? –