Locale

Change the locale of the datepicker, schedule and client side validation messages.

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Maisha T BologniaRussiaAsiya Javayant PROPOSAL
Emily Z KuskoIndiaStephen Shaw QUALIFIED
Clifford L ShinkoIndiaIvan Magalhaes NEGOTIATION
Salvatore G KuskoSpainIvan Magalhaes UNQUALIFIED
Jones E NestleGermanyAsiya Javayant UNQUALIFIED
Morrow K DoeUnited KingdomIvan Magalhaes NEW
Antonio K IturbideRussiaAnna Fali PROPOSAL
Deepesh M OldroydGermanyAmy Elsner UNQUALIFIED
Salvatore D CaldareraBrazilAsiya Javayant NEW
Ivar E InouyeCanadaAnna Fali NEGOTIATION
Clifford Y RulapaughSpainElwin Sharvill NEGOTIATION
Nicolas X ShinkoAustraliaAmy Elsner UNQUALIFIED
Jeanfrancois E OstroskyCanadaOnyama Limba RENEWAL
Misaki A AmigonItalyElwin Sharvill QUALIFIED
Misaki N CaudyUnited KingdomXuxue Feng NEGOTIATION
Francesco U AmigonGermanyAmy Elsner NEW
Adams G WaycottUnited KingdomXuxue Feng RENEWAL
Jeanfrancois N GauchoArgentinaXuxue Feng QUALIFIED
Deepesh S MaletArgentinaIvan Magalhaes PROPOSAL
Isabel F MaletGermanyStephen Shaw UNQUALIFIED
Mujtaba W SaylorsItalyOnyama Limba QUALIFIED
Smith R KolmetzJapanAsiya Javayant NEGOTIATION
Silvio D MacleadAustraliaElwin Sharvill NEGOTIATION
Jefferson J ButtIndiaXuxue Feng UNQUALIFIED
Julie H VocelkaJapanElwin Sharvill NEW
Greenwood F InouyeJapanElwin Sharvill UNQUALIFIED
Darci J BowleyCanadaOnyama Limba PROPOSAL
Aditya Z GarufiItalyAmy Elsner PROPOSAL
Clifford S FerenczIndiaBernardo Dominic QUALIFIED
Jefferson N RimArgentinaOnyama Limba NEW
Costa K RimJapanAnna Fali NEGOTIATION
Kaitlin B StockhamUnited KingdomAnna Fali QUALIFIED
Arvin J PaprockiArgentinaBernardo Dominic QUALIFIED
Clifford S FerenczItalyAmy Elsner QUALIFIED
Misaki E SchemmerUnited KingdomStephen Shaw PROPOSAL
Rodrigues A StockhamUnited KingdomAmy Elsner NEGOTIATION
Jones C RimAustraliaOnyama Limba PROPOSAL
Claire Z FigeroaJapanIoni Bowcher QUALIFIED
Darci S FollerRussiaBernardo Dominic QUALIFIED
Kaitlin L MaletCanadaStephen Shaw PROPOSAL
Smith H InouyeAustraliaStephen Shaw NEW
Arvin G KuskoGermanyAmy Elsner NEGOTIATION
Isabel M WaycottJapanElwin Sharvill UNQUALIFIED
Izzy B NestleCanadaStephen Shaw NEGOTIATION
Isabel S BriddickAustraliaAsiya Javayant NEGOTIATION
David C WaycottFranceOnyama Limba PROPOSAL
Juan U BowleyJapanOnyama Limba NEGOTIATION
Silvio T FigeroaGermanyStephen Shaw UNQUALIFIED
Misaki H StensethGermanyIoni Bowcher QUALIFIED
Aruna Y OldroydAustraliaStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Isabel B BriddickCanadaAmy Elsner QUALIFIED
Smith V MaletJapanIoni Bowcher UNQUALIFIED
Greenwood Y DarakjyBrazilBernardo Dominic PROPOSAL
Clifford D FlosiArgentinaAmy Elsner QUALIFIED
Kaitlin W DoeUnited KingdomIoni Bowcher NEW
Arvin W KolmetzCanadaIvan Magalhaes RENEWAL
Kadeem Y RimBrazilOnyama Limba PROPOSAL
Mujtaba S NickaArgentinaBernardo Dominic NEGOTIATION
Mayumi V MorascaGermanyStephen Shaw UNQUALIFIED
Izzy Q DarakjyIndiaBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika O PoquetteItaly2024-06-09Rangoni Of Florence UNQUALIFIED29Stephen Shaw
1001David B KuskoArgentina2024-05-25Commercial Press RENEWAL76Amy Elsner
1002Kadeem Y RulapaughGermany2024-06-01Feiner Bros UNQUALIFIED15Ioni Bowcher
1003Francesco Y StockhamGermany2024-06-04Chemel, James L Cpa NEW37Elwin Sharvill
1004Chavez L DarakjyAustralia2024-06-01Dorl, James J Esq QUALIFIED35Ivan Magalhaes
1005Faith P ChuiSpain2024-05-27Dorl, James J Esq RENEWAL85Ivan Magalhaes
1006Isabel I MarrierCanada2024-05-29Rangoni Of Florence NEW43Asiya Javayant
1007Jones M RulapaughGermany2024-06-07Chanay, Jeffrey A Esq NEW88Ioni Bowcher
1008Aditya N SlusarskiAustralia2024-06-05Benton, John B Jr UNQUALIFIED68Stephen Shaw
1009Aditya G ShinkoBrazil2024-06-09Rangoni Of Florence NEW13Xuxue Feng
1010Isabel N GlickUnited Kingdom2024-06-11King, Christopher A Esq UNQUALIFIED2Bernardo Dominic
1011Leja O SergiUnited Kingdom2024-06-14Rousseaux, Michael Esq RENEWAL17Ivan Magalhaes
1012Maisha B CaldareraUnited Kingdom2024-06-01Buckley Miller Wright QUALIFIED43Ivan Magalhaes
1013Deepesh W SlusarskiRussia2024-06-21Chemel, James L Cpa QUALIFIED71Ioni Bowcher
1014Aditya L InouyeCanada2024-06-03Morlong Associates PROPOSAL85Stephen Shaw
1015Smith M CaldareraSpain2024-05-26Rousseaux, Michael Esq NEW22Onyama Limba
1016Alejandro J NickaCanada2024-06-20Morlong Associates NEW34Asiya Javayant
1017Maria G OldroydFrance2024-06-13Morlong Associates UNQUALIFIED68Ivan Magalhaes
1018Leja O DilliardAustralia2024-06-03Chanay, Jeffrey A Esq RENEWAL34Elwin Sharvill
1019Leja Q KuskoAustralia2024-06-06King, Christopher A Esq NEW96Ioni Bowcher
1020Maria W FlosiJapan2024-06-10Feiner Bros UNQUALIFIED2Ioni Bowcher
1021Arvin N FlosiGermany2024-06-20Feiner Bros PROPOSAL65Asiya Javayant
1022Leon R AlbaresUnited Kingdom2024-06-05Dorl, James J Esq QUALIFIED91Ivan Magalhaes
1023Tony T FlosiAustralia2024-06-19Commercial Press PROPOSAL34Onyama Limba
1024Jeanfrancois S ChuiCanada2024-06-06Rangoni Of Florence UNQUALIFIED32Ivan Magalhaes
1025Jeanfrancois I VocelkaGermany2024-06-10Dorl, James J Esq NEW60Asiya Javayant
1026Octavia T GarufiCanada2024-06-09Chapman, Ross E Esq RENEWAL6Asiya Javayant
1027Cody A MaletBrazil2024-06-09Commercial Press NEW91Ioni Bowcher
1028Mujtaba Q PaprockiSpain2024-06-09Printing Dimensions NEW80Xuxue Feng
1029Ashley A InouyeSpain2024-05-23Commercial Press QUALIFIED60Stephen Shaw
1030Antonio V DilliardGermany2024-05-30Dorl, James J Esq NEW85Amy Elsner
1031Clifford M PoquetteGermany2024-06-19Chapman, Ross E Esq RENEWAL12Ioni Bowcher
1032Aruna N GlickCanada2024-05-29Printing Dimensions UNQUALIFIED30Stephen Shaw
1033Munro J NickaSpain2024-06-02Rousseaux, Michael Esq RENEWAL39Bernardo Dominic
1034Emily C OldroydIndia2024-06-05Buckley Miller Wright PROPOSAL18Stephen Shaw
1035Sinclair O RutaJapan2024-06-11Truhlar And Truhlar Attys NEGOTIATION29Bernardo Dominic
1036Smith N FlosiCanada2024-06-06Feltz Printing Service NEGOTIATION89Stephen Shaw
1037Antonio V GauchoJapan2024-05-26Benton, John B Jr NEW92Ivan Magalhaes
1038Izzy Y WhobreyBrazil2024-06-04Chemel, James L Cpa PROPOSAL75Stephen Shaw
1039Antonio H GauchoAustralia2024-06-04Chemel, James L Cpa NEGOTIATION84Bernardo Dominic
1040Aruna D MaletAustralia2024-06-21Printing Dimensions NEGOTIATION88Bernardo Dominic
1041Antonio Y WaycottIndia2024-05-27Chapman, Ross E Esq RENEWAL65Ioni Bowcher
1042Rodrigues X NickaAustralia2024-06-14Rangoni Of Florence NEGOTIATION24Xuxue Feng
1043Smith W OldroydCanada2024-06-10Benton, John B Jr PROPOSAL91Ivan Magalhaes
1044Maisha N GauchoGermany2024-06-10Rousseaux, Michael Esq QUALIFIED75Bernardo Dominic
1045Costa R SergiRussia2024-05-27Chemel, James L Cpa UNQUALIFIED29Ivan Magalhaes
1046Julie N CampainIndia2024-05-23Truhlar And Truhlar Attys NEW15Asiya Javayant
1047Isabel J GillianItaly2024-06-12Buckley Miller Wright QUALIFIED5Onyama Limba
1048Aruna V RoysterAustralia2024-06-04Commercial Press PROPOSAL70Ioni Bowcher
1049Ricardo K OstroskyItaly2024-06-13Chanay, Jeffrey A Esq NEW2Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Maisha E OstroskyJapanStephen Shaw PROPOSAL
Mujtaba W FerenczJapanIoni Bowcher QUALIFIED
Misaki J BriddickBrazilStephen Shaw NEGOTIATION
Kadeem X FollerAustraliaBernardo Dominic NEGOTIATION
Jefferson H MaletItalyBernardo Dominic QUALIFIED
Leja D StockhamUnited KingdomStephen Shaw NEGOTIATION
Nicolas I WieserBrazilAmy Elsner UNQUALIFIED
Murillo Q VenereFranceIvan Magalhaes UNQUALIFIED
Jefferson M VenereFranceElwin Sharvill PROPOSAL
Rodrigues F ShinkoAustraliaElwin Sharvill PROPOSAL
Mujtaba X BologniaIndiaAsiya Javayant UNQUALIFIED
Misaki S MorascaJapanOnyama Limba PROPOSAL
Misaki A PoquetteArgentinaAsiya Javayant UNQUALIFIED
Juan E WieserBrazilAmy Elsner NEW
Maisha Q MaletUnited KingdomXuxue Feng NEW
Clifford T OldroydBrazilBernardo Dominic NEGOTIATION
Mayumi Y MorascaGermanyBernardo Dominic NEGOTIATION
Emily O IturbideUnited KingdomElwin Sharvill NEW
Kadeem S MaletBrazilAnna Fali NEW
Antonio S CampainFranceOnyama Limba QUALIFIED
Chavez W GauchoRussiaIvan Magalhaes UNQUALIFIED
Morrow C WieserJapanAmy Elsner NEW
Munro A PoquetteBrazilOnyama Limba RENEWAL
Maria L IturbideFranceAmy Elsner UNQUALIFIED
Arvin N WaycottRussiaAnna Fali NEW
Jones X CampainCanadaAnna Fali PROPOSAL
Aika Q ChuiArgentinaAnna Fali RENEWAL
Misaki T SchemmerJapanIoni Bowcher NEW
Jefferson W RulapaughItalyOnyama Limba NEW
Jeanfrancois D RimFranceOnyama Limba UNQUALIFIED
Isabel E IturbideCanadaAsiya Javayant NEW
Alejandro W PoquetteFranceElwin Sharvill PROPOSAL
Wickens F VocelkaItalyElwin Sharvill QUALIFIED
Jennifer M MaletAustraliaAsiya Javayant PROPOSAL
Morrow J SaylorsIndiaIvan Magalhaes UNQUALIFIED
Murillo H SergiBrazilStephen Shaw NEW
Arvin F AlbaresIndiaAsiya Javayant UNQUALIFIED
Salvatore T RimCanadaStephen Shaw PROPOSAL
Isabel X RimArgentinaAsiya Javayant RENEWAL
Izzy J OldroydJapanStephen Shaw QUALIFIED
Leja I SlusarskiUnited KingdomStephen Shaw UNQUALIFIED
Cody A AlbaresItalyElwin Sharvill RENEWAL
Jeanfrancois Y RimItalyAsiya Javayant PROPOSAL
Cody Q FerenczIndiaIvan Magalhaes RENEWAL
Munro O AmigonBrazilIvan Magalhaes RENEWAL
Aruna P VenereAustraliaIoni Bowcher UNQUALIFIED
Leon I MacleadSpainXuxue Feng RENEWAL
Stacey P SchemmerJapanElwin Sharvill QUALIFIED
Munro O NickaUnited KingdomBernardo Dominic UNQUALIFIED
Julie P MarrierJapanElwin Sharvill RENEWAL
Frozen Columns
Name
Silvio U Dilliard
David A Wieser
Salvatore S Malet
Cody D Marrier
Nicolas G Nestle
Jeanfrancois B Kusko
Deepesh S Marrier
Deepesh K Inouye
Mujtaba N Wieser
Cody C Dilliard
Clifford I Maclead
Clifford D Malet
Johnson J Amigon
Murillo V Gaucho
Alejandro E Iturbide
Francesco H Amigon
Kaitlin H Inouye
Darci R Malet
Maria M Doe
Jennifer I Morasca
Mujtaba F Kolmetz
Francesco E Malet
Adams F Wieser
Adams O Amigon
Alejandro B Royster
Faith H Whobrey
Johnson O Caldarera
Mayumi E Darakjy
Smith Y Doe
Mujtaba E Ruta
Jennifer U Stockham
Munro R Ferencz
Smith V Malet
Salvatore W Rim
Antonio V Flosi
Arvin W Rim
Antonio J Doe
Greenwood N Marrier
Maria H Sergi
Cody C Stenseth
Greenwood G Malet
Emily E Paprocki
Cody C Venere
Ashley F Iturbide
Wickens V Foller
Jeanfrancois T Briddick
Antonio J Iturbide
Munro T Amigon
Adams O Wieser
Kadeem R Darakjy
IdCountryDate
1000Russia2024-06-01
1001Germany2024-06-05
1002Spain2024-05-25
1003France2024-06-07
1004Australia2024-05-27
1005Brazil2024-06-19
1006France2024-05-24
1007Brazil2024-06-04
1008Italy2024-05-24
1009Italy2024-06-09
1010Spain2024-06-01
1011Argentina2024-06-16
1012Australia2024-06-02
1013France2024-05-31
1014Argentina2024-06-01
1015Italy2024-06-12
1016France2024-05-23
1017Brazil2024-06-09
1018Australia2024-06-12
1019Australia2024-06-14
1020Spain2024-06-04
1021Spain2024-06-16
1022Spain2024-06-08
1023Italy2024-06-02
1024France2024-06-16
1025Australia2024-06-08
1026Australia2024-06-09
1027Spain2024-06-12
1028Japan2024-06-16
1029Argentina2024-06-02
1030Australia2024-06-06
1031Spain2024-05-28
1032Italy2024-06-02
1033Australia2024-05-24
1034Australia2024-06-17
1035Spain2024-06-04
1036Italy2024-06-01
1037Canada2024-05-28
1038Argentina2024-06-04
1039France2024-06-08
1040Brazil2024-06-01
1041United Kingdom2024-06-02
1042Japan2024-06-19
1043Canada2024-06-10
1044Germany2024-06-04
1045Italy2024-06-21
1046Australia2024-06-11
1047Russia2024-05-25
1048Spain2024-06-16
1049India2024-05-27

On-Demand Data

NameIdCountryDate
Leon R Doe1000Germany2024-06-21
Costa D Briddick1001Brazil2024-06-13
Jefferson W Marrier1002Germany2024-05-23
Darci W Kolmetz1003France2024-06-21
Clifford O Morasca1004United Kingdom2024-06-10
Octavia E Kolmetz1005Australia2024-05-29
Smith W Venere1006Russia2024-05-24
Rodrigues W Albares1007Brazil2024-05-25
Claire M Schemmer1008Italy2024-06-17
Alejandro F Schemmer1009Japan2024-06-01
Maisha X Campain1010Spain2024-06-12
Jeanfrancois K Doe1011United Kingdom2024-06-19
Stacey L Iturbide1012Australia2024-06-06
Alejandro R Ostrosky1013Japan2024-06-07
Ashley H Saylors1014Canada2024-05-31
Kadeem D Gillian1015Japan2024-05-26
David V Royster1016United Kingdom2024-06-03
Aditya G Ferencz1017Russia2024-06-07
Kadeem D Ferencz1018Germany2024-05-28
Darci Z Ruta1019Canada2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy M KuskoUnited KingdomXuxue Feng NEW
Wickens T FerenczCanadaAsiya Javayant QUALIFIED
Aika K FlosiArgentinaBernardo Dominic QUALIFIED
Kadeem W BologniaUnited KingdomElwin Sharvill UNQUALIFIED
Aika P GarufiItalyStephen Shaw PROPOSAL
Arvin L RutaUnited KingdomOnyama Limba PROPOSAL
Kadeem E GauchoJapanIvan Magalhaes UNQUALIFIED
Munro V NestleBrazilAnna Fali PROPOSAL
Clifford X BriddickBrazilBernardo Dominic PROPOSAL
Chavez L TollnerGermanyStephen Shaw RENEWAL
Aditya I IturbideIndiaIvan Magalhaes RENEWAL
Ivar R BriddickSpainAmy Elsner QUALIFIED
Jefferson N SaylorsRussiaStephen Shaw NEGOTIATION
David T FollerFranceIoni Bowcher NEGOTIATION
Kadeem A ShinkoGermanyAnna Fali NEGOTIATION
Isabel P RutaRussiaAnna Fali QUALIFIED
James E BologniaItalyAmy Elsner QUALIFIED
Claire B OstroskySpainOnyama Limba RENEWAL
Jones S VenereGermanyAsiya Javayant RENEWAL
Wickens L NestleGermanyStephen Shaw UNQUALIFIED
Claire M AlbaresJapanAsiya Javayant NEW
Maisha K RutaSpainAnna Fali PROPOSAL
Izzy E GauchoItalyStephen Shaw UNQUALIFIED
Leon X MarrierBrazilXuxue Feng PROPOSAL
Maria Q MaletItalyElwin Sharvill NEW
Darci N OldroydCanadaAsiya Javayant UNQUALIFIED
Morrow I OldroydIndiaAmy Elsner NEGOTIATION
Ricardo Y CaudyJapanBernardo Dominic NEGOTIATION
Maisha A OstroskyJapanElwin Sharvill QUALIFIED
Mayumi B CaldareraRussiaIoni Bowcher QUALIFIED
Arvin T OstroskyArgentinaAnna Fali NEW
Ivar Y KuskoSpainOnyama Limba UNQUALIFIED
Emily Q StockhamBrazilAnna Fali PROPOSAL
Kaitlin M DilliardJapanAnna Fali NEGOTIATION
Francesco D StensethRussiaOnyama Limba UNQUALIFIED
Julie Q SergiBrazilElwin Sharvill NEGOTIATION
Alejandro D TollnerJapanIvan Magalhaes QUALIFIED
James V PerinItalyAmy Elsner PROPOSAL
Wickens B FlosiGermanyAsiya Javayant NEW
Silvio L FlosiGermanyAnna Fali PROPOSAL

<style>
    .ui-datatable-frozenlayout-left {
        width: 20%;
    }

    .ui-datatable-frozenlayout-right {
        width: 80%;
    }
</style>


<h:form>
    <div class="card">
        <h5 style="margin-top:0">Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers1}" scrollable="true" scrollHeight="250">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers2}" scrollable="true" scrollWidth="600">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal and Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers3}" scrollable="true" scrollWidth="50%" scrollHeight="250">
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
            <p:column headerText="Company" footerText="Company">
                <h:outputText value="#{customer.company}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
            <p:column headerText="Activity" footerText="Activity">
                <h:outputText value="#{customer.activity}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers4}" scrollable="true" scrollHeight="250"
                     frozenRows="2">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Columns</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers5}" scrollable="true" scrollHeight="250"
                     scrollWidth="300" frozenColumns="1">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h3>On-Demand Data</h3>
        <p:dataTable var="customer" value="#{dtScrollView.customers6}" scrollRows="20" scrollable="true" liveScroll="true" scrollHeight="150">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Virtual Scrolling - 20000 Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.lazyModel}" scrollRows="20" scrollable="true"
                     virtualScroll="true" scrollHeight="200" rows="40" style="margin-bottom:0">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

</h:form>