JSF Data Table - Suchfunktion

Dieses Thema JSF - Data Table - Suchfunktion im Forum "Web Tier" wurde erstellt von Wolfinator10, 9. März 2015.

Thema: Data Table - Suchfunktion index.xhtml : <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0...

  1. Code (Java):
    index.xhtml :

    <?xml version='1.0' encoding='UTF-8' ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://xmlns.jcp.org/jsf/html"  
          xmlns:f="http://xmlns.jcp.org/jsf/core"
          xmlns:p="http://primefaces.org/ui">
        <h:head>
            <title>Facelet Title</title>
        </h:head>
        <h:body>

            <h:form>
                <p:dataTable var="per"
                             value="#{myBean.l}"
                             stickyHeader="true"
                             emptyMessage="Keine Daten zu diesem Suchbegriff vorhanden"
                             filteredValue="#{myBean.filteredPerson}" >
                   
                    <f:facet name="header">
                        Test Tabelle
                    </f:facet>
                   
                    <p:column filterBy="#{per.name}"
                              headerText="Vorname"
                              footerText="contains"
                              filterMatchMode="contains"
                              sortBy="#{per.name}">                    
                        <h:outputText value="#{per.name}" />
                    </p:column>

                    <p:column headerText="Alter" filterBy="#{per.alter}" footerText="contains" filterMatchMode="contains" sortBy="#{per.alter}">
                        <h:outputText value="#{per.alter}" />
                    </p:column>

                    <p:column headerText="Job" filterBy="#{per.job}" footerText="contains" filterMatchMode="contains" sortBy="#{per.job}">
                        <h:outputText value="#{per.job}" />
                    </p:column>

                    <p:column headerText="Level" filterBy="#{per.level}" footerText="contains" filterMatchMode="contains" sortBy="#{per.level}">
                        <h:outputText value="#{per.level}" />
                    </p:column>


                </p:dataTable>

            </h:form>
        </h:body>
    </html>
     
    Bean:

    Code (Java):

    /*
     * To change this license header, choose License Headers in Project Properties.
     * To change this template file, choose Tools | Templates
     * and open the template in the editor.
     */

    package my;

    import java.util.ArrayList;
    import java.util.List;
    import javax.annotation.PostConstruct;

    /**
     *
     * @author Christian
     */

    public class MyBean {
       
       
       
        Person p=new Person("Hans", 1, "schleifer", 15);
        List<Person> l;
        List<Person> filteredPerson;
       
        @PostConstruct
        public void init()
        {
            l=new ArrayList<Person>();
           
            l.add(p);
            l.add(new Person("Paul", 7, "Bauer", 2));
            l.add(new Person("Meier", 32, "Hausmeister", 99));
            l.add(new Person("Papapatopulus", 63, "Trinker", 65));
            l.add(new Person("Fritz", 19, "Bademeister", 0));
            l.add(new Person("Christian", 18, "Obergenie", 99999999));
            l.add(new Person("Nina", 2, "Baby", 6));
           
        }

        public List<Person> getFilteredPerson() {
            return filteredPerson;
        }

        public void setFilteredPerson(List<Person> filteredPerson) {
            this.filteredPerson = filteredPerson;
        }
       
       

        public List<Person> getL() {
            return l;
        }

        public void setL(List<Person> l) {
            this.l = l;
        }

        public Person getP() {
            return p;
        }

        public void setP(Person p) {
            this.p = p;
        }
       
       
       
    }

     
    Person ist eine einfache Person mit getter Setter Konstruktor.

    Hier ist die Suchfunktion genau gleich wie im primefaces showcase jedoch ist egal was ich eingebe die Tabelle verändert sich nicht.. Bitte um Hilfe.
     
  2. Vielleicht helfen dir diese Java-Grundlagen weiter --> *Klick*