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
Jefferson F NickaRussiaBernardo Dominic UNQUALIFIED
Misaki Q VocelkaBrazilAnna Fali RENEWAL
Misaki W StockhamSpainAnna Fali UNQUALIFIED
Nicolas K StensethIndiaAnna Fali QUALIFIED
Misaki T RoysterRussiaAmy Elsner QUALIFIED
Wickens H FerenczGermanyXuxue Feng QUALIFIED
Wickens Y VocelkaItalyOnyama Limba UNQUALIFIED
Rodrigues E MorascaCanadaIvan Magalhaes NEW
Sinclair T CampainUnited KingdomIvan Magalhaes PROPOSAL
Murillo B DilliardAustraliaXuxue Feng UNQUALIFIED
Leja Y NestleBrazilOnyama Limba QUALIFIED
Deepesh W DilliardIndiaAsiya Javayant PROPOSAL
Juan F RimAustraliaAnna Fali PROPOSAL
Greenwood V ShinkoSpainAnna Fali QUALIFIED
Salvatore Q SergiItalyOnyama Limba PROPOSAL
Mayumi X VocelkaJapanOnyama Limba NEW
Antonio K FollerRussiaAnna Fali PROPOSAL
Sinclair R RulapaughItalyElwin Sharvill PROPOSAL
Claire P ButtFranceXuxue Feng NEGOTIATION
Darci T FigeroaGermanyIoni Bowcher PROPOSAL
Nicolas O InouyeIndiaAmy Elsner RENEWAL
Deepesh W PaprockiItalyXuxue Feng NEW
Johnson R TollnerUnited KingdomStephen Shaw NEW
Leja K DarakjyAustraliaXuxue Feng UNQUALIFIED
Smith V InouyeGermanyXuxue Feng QUALIFIED
Kaitlin Z PoquetteArgentinaBernardo Dominic QUALIFIED
Cody G RutaCanadaAmy Elsner NEGOTIATION
Kadeem J PerinIndiaXuxue Feng NEW
Maisha P SchemmerArgentinaAsiya Javayant NEGOTIATION
Aditya S NickaGermanyBernardo Dominic NEW
Rodrigues E PaprockiIndiaBernardo Dominic QUALIFIED
Octavia N AmigonBrazilIoni Bowcher NEW
Murillo L FlosiArgentinaElwin Sharvill PROPOSAL
Morrow P WhobreyRussiaXuxue Feng RENEWAL
Tony F WieserUnited KingdomIoni Bowcher NEW
Wickens O MaletArgentinaBernardo Dominic PROPOSAL
Mayumi N SergiCanadaStephen Shaw UNQUALIFIED
Ricardo E WieserJapanAnna Fali PROPOSAL
Greenwood G DoeRussiaXuxue Feng RENEWAL
David W NestleUnited KingdomStephen Shaw UNQUALIFIED
Silvio Z SaylorsGermanyXuxue Feng UNQUALIFIED
Kadeem L VocelkaCanadaAsiya Javayant NEW
Stacey L PoquetteItalyAsiya Javayant NEW
Darci N CaldareraUnited KingdomAsiya Javayant PROPOSAL
Maria X SlusarskiRussiaAnna Fali RENEWAL
Aditya M AlbaresAustraliaAmy Elsner RENEWAL
Costa G FlosiJapanOnyama Limba PROPOSAL
Ashley M MaletAustraliaAnna Fali NEW
James A DoeUnited KingdomAmy Elsner NEGOTIATION
Sinclair I MaletSpainElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kadeem Y NickaSpainAsiya Javayant RENEWAL
Kadeem Y PoquetteBrazilOnyama Limba UNQUALIFIED
Ashley L FollerAustraliaStephen Shaw RENEWAL
Faith Z PaprockiRussiaAnna Fali RENEWAL
Silvio M StockhamJapanIvan Magalhaes UNQUALIFIED
Silvio S MorascaCanadaIvan Magalhaes UNQUALIFIED
Octavia S FigeroaUnited KingdomIoni Bowcher NEW
Stacey S FlosiItalyIoni Bowcher NEGOTIATION
Jefferson W KolmetzGermanyAsiya Javayant NEW
Ivar O NestleRussiaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones W PaprockiAustralia2024-06-14Benton, John B Jr UNQUALIFIED65Bernardo Dominic
1001Johnson M DoeRussia2024-06-15King, Christopher A Esq PROPOSAL40Bernardo Dominic
1002Mujtaba W IturbideAustralia2024-06-24Printing Dimensions PROPOSAL24Xuxue Feng
1003Ashley W NestleIndia2024-05-26Chanay, Jeffrey A Esq RENEWAL78Xuxue Feng
1004Ricardo G KolmetzRussia2024-06-09Benton, John B Jr UNQUALIFIED32Ioni Bowcher
1005Chavez I ShinkoAustralia2024-05-28Dorl, James J Esq PROPOSAL49Bernardo Dominic
1006Arvin D SchemmerRussia2024-05-29Dorl, James J Esq NEW21Anna Fali
1007Leon Y MacleadAustralia2024-06-12Feltz Printing Service RENEWAL88Ioni Bowcher
1008Wickens Z GlickCanada2024-06-17Benton, John B Jr UNQUALIFIED57Ioni Bowcher
1009Darci I CaldareraRussia2024-06-04Chemel, James L Cpa NEW54Anna Fali
1010Emily R GlickJapan2024-06-04Morlong Associates RENEWAL11Ioni Bowcher
1011Alejandro R SchemmerSpain2024-06-20Truhlar And Truhlar Attys NEW28Ioni Bowcher
1012Misaki Y IturbideAustralia2024-06-21Rousseaux, Michael Esq PROPOSAL80Xuxue Feng
1013Jones F OstroskyUnited Kingdom2024-06-09Printing Dimensions NEGOTIATION91Elwin Sharvill
1014Alejandro M FollerRussia2024-06-12Chemel, James L Cpa QUALIFIED6Ioni Bowcher
1015Smith E BriddickIndia2024-05-28Benton, John B Jr RENEWAL57Onyama Limba
1016Antonio V MaletRussia2024-06-21Dorl, James J Esq QUALIFIED82Ioni Bowcher
1017Cody D FollerSpain2024-06-21Buckley Miller Wright NEW63Ioni Bowcher
1018Francesco U SchemmerJapan2024-06-07Printing Dimensions QUALIFIED66Asiya Javayant
1019Mayumi D SaylorsBrazil2024-06-10Buckley Miller Wright RENEWAL29Xuxue Feng
1020Izzy J OstroskyUnited Kingdom2024-05-30Benton, John B Jr UNQUALIFIED70Amy Elsner
1021Kadeem O BowleySpain2024-05-29Dorl, James J Esq RENEWAL76Asiya Javayant
1022Clifford E InouyeJapan2024-06-21Truhlar And Truhlar Attys RENEWAL65Anna Fali
1023Clifford J AlbaresAustralia2024-06-06Buckley Miller Wright PROPOSAL56Bernardo Dominic
1024Antonio L SaylorsIndia2024-05-30Truhlar And Truhlar Attys UNQUALIFIED33Amy Elsner
1025Ashley H CampainSpain2024-06-14Commercial Press NEW51Ioni Bowcher
1026Murillo U VenereCanada2024-06-16Feltz Printing Service NEGOTIATION6Xuxue Feng
1027Maisha U MorascaFrance2024-06-22Feiner Bros QUALIFIED38Asiya Javayant
1028Aditya U MorascaFrance2024-06-23Chapman, Ross E Esq QUALIFIED41Ivan Magalhaes
1029Deepesh E NestleCanada2024-05-26Feltz Printing Service PROPOSAL15Xuxue Feng
1030Jones U FlosiGermany2024-06-21Rousseaux, Michael Esq RENEWAL63Onyama Limba
1031Munro L FlosiFrance2024-06-17Morlong Associates NEGOTIATION56Stephen Shaw
1032Tony L DoeIndia2024-06-21Feltz Printing Service PROPOSAL9Ioni Bowcher
1033Ashley Z FollerIndia2024-06-10Truhlar And Truhlar Attys NEW42Elwin Sharvill
1034Aruna I CaudyArgentina2024-05-27Printing Dimensions PROPOSAL45Asiya Javayant
1035Ivar J DilliardJapan2024-06-06King, Christopher A Esq PROPOSAL71Ivan Magalhaes
1036Wickens L OldroydRussia2024-05-28Dorl, James J Esq NEW52Onyama Limba
1037Costa N SergiUnited Kingdom2024-05-28Benton, John B Jr NEW66Amy Elsner
1038Morrow D OldroydUnited Kingdom2024-05-29Morlong Associates PROPOSAL95Onyama Limba
1039Maisha R KuskoIndia2024-06-13Rousseaux, Michael Esq PROPOSAL28Anna Fali
1040Jones G RutaAustralia2024-06-03Truhlar And Truhlar Attys NEGOTIATION42Bernardo Dominic
1041Greenwood W FollerAustralia2024-06-08Rousseaux, Michael Esq PROPOSAL73Anna Fali
1042Jennifer A RutaRussia2024-06-16Dorl, James J Esq PROPOSAL77Asiya Javayant
1043Maisha J RulapaughCanada2024-06-15Morlong Associates QUALIFIED37Ivan Magalhaes
1044Juan N RimJapan2024-06-01Feltz Printing Service QUALIFIED1Anna Fali
1045Clifford S KolmetzJapan2024-06-17Printing Dimensions NEW39Anna Fali
1046Stacey K ChuiArgentina2024-06-04Truhlar And Truhlar Attys NEW85Stephen Shaw
1047Alejandro I SergiBrazil2024-06-20Truhlar And Truhlar Attys NEGOTIATION96Onyama Limba
1048Johnson Y PaprockiUnited Kingdom2024-06-17Feiner Bros NEGOTIATION89Stephen Shaw
1049Isabel Z CaldareraFrance2024-06-24Morlong Associates UNQUALIFIED12Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin P ShinkoSpainXuxue Feng NEW
Misaki T AlbaresUnited KingdomAsiya Javayant RENEWAL
Tony U ShinkoAustraliaElwin Sharvill RENEWAL
Costa J StockhamItalyAmy Elsner RENEWAL
Costa K IturbideIndiaOnyama Limba UNQUALIFIED
Izzy S ButtCanadaBernardo Dominic NEGOTIATION
Greenwood S FerenczItalyAsiya Javayant RENEWAL
Cody T WhobreyIndiaStephen Shaw RENEWAL
Jeanfrancois A CaldareraUnited KingdomAsiya Javayant RENEWAL
Octavia S WieserUnited KingdomIvan Magalhaes PROPOSAL
Izzy Q VenereUnited KingdomAnna Fali QUALIFIED
Julie Z VenereArgentinaElwin Sharvill NEGOTIATION
Sinclair G IturbideGermanyIvan Magalhaes NEGOTIATION
Jeanfrancois W GillianRussiaBernardo Dominic RENEWAL
Jeanfrancois O DilliardFranceAsiya Javayant RENEWAL
Ricardo X WaycottArgentinaAnna Fali NEW
Chavez Y TollnerRussiaOnyama Limba NEGOTIATION
Jefferson E DoeSpainElwin Sharvill RENEWAL
Leon G VocelkaItalyOnyama Limba QUALIFIED
David H StensethRussiaAsiya Javayant PROPOSAL
Aika W PoquetteIndiaStephen Shaw QUALIFIED
Murillo L DarakjyBrazilBernardo Dominic RENEWAL
Kaitlin X RutaSpainBernardo Dominic NEW
Leon R GarufiArgentinaXuxue Feng PROPOSAL
Alejandro Z NickaRussiaIvan Magalhaes UNQUALIFIED
Maisha A FollerRussiaAmy Elsner NEW
Leja V PoquetteAustraliaIoni Bowcher QUALIFIED
Costa B RutaAustraliaAnna Fali QUALIFIED
Chavez Y AlbaresUnited KingdomXuxue Feng UNQUALIFIED
Izzy P WaycottAustraliaIvan Magalhaes NEGOTIATION
Jones N SaylorsBrazilXuxue Feng QUALIFIED
Munro A VocelkaItalyIvan Magalhaes PROPOSAL
Izzy S IturbideSpainIvan Magalhaes PROPOSAL
Morrow M DarakjyUnited KingdomElwin Sharvill NEW
James I PerinItalyStephen Shaw RENEWAL
Leon C GlickBrazilIvan Magalhaes UNQUALIFIED
Nicolas Q TollnerArgentinaAsiya Javayant NEW
Jefferson X MacleadItalyAmy Elsner UNQUALIFIED
Misaki B IturbideAustraliaElwin Sharvill NEGOTIATION
Munro I DarakjyBrazilElwin Sharvill NEW
Maisha T FlosiBrazilStephen Shaw NEGOTIATION
David Z BriddickItalyStephen Shaw QUALIFIED
Greenwood D SaylorsBrazilIoni Bowcher QUALIFIED
Octavia J RutaIndiaOnyama Limba UNQUALIFIED
Julie T InouyeFranceIvan Magalhaes UNQUALIFIED
Mayumi T SergiSpainOnyama Limba NEW
Murillo O TollnerGermanyElwin Sharvill QUALIFIED
James V GauchoUnited KingdomIoni Bowcher PROPOSAL
Greenwood G FollerUnited KingdomIvan Magalhaes PROPOSAL
Jones T ChuiAustraliaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Deepesh F Oldroyd
Sinclair S Morasca
Morrow C Sergi
Mayumi L Amigon
Aika A Marrier
Darci A Marrier
Arvin A Waycott
Munro E Malet
Izzy F Malet
Jones A Gaucho
Jeanfrancois S Morasca
Greenwood Q Nicka
Salvatore K Kusko
Costa T Ferencz
Faith I Ruta
Maria I Iturbide
Kadeem Y Kusko
Faith P Poquette
Izzy A Shinko
Stacey Z Vocelka
Jeanfrancois C Poquette
Deepesh N Ruta
James Y Dilliard
Mayumi G Stockham
Adams P Nicka
Kadeem C Figeroa
Cody B Gillian
Maisha W Flosi
Jennifer I Malet
James N Kolmetz
Wickens N Slusarski
Chavez Z Paprocki
Octavia K Kusko
Aika V Darakjy
Maisha K Schemmer
Chavez O Perin
Leja E Tollner
Wickens F Schemmer
Julie P Stenseth
Misaki M Schemmer
Leja V Malet
Murillo O Wieser
Clifford O Poquette
Julie A Albares
David G Inouye
Silvio N Doe
Maria J Doe
James X Amigon
Nicolas P Iturbide
Julie G Kusko
IdCountryDate
1000Germany2024-06-13
1001India2024-05-26
1002Italy2024-06-15
1003Canada2024-05-26
1004Russia2024-06-17
1005Argentina2024-06-23
1006France2024-06-18
1007India2024-06-11
1008Italy2024-06-06
1009United Kingdom2024-06-21
1010India2024-06-23
1011Italy2024-06-17
1012Germany2024-06-09
1013Japan2024-06-03
1014Japan2024-06-04
1015Canada2024-06-05
1016Spain2024-06-12
1017Canada2024-06-23
1018Canada2024-06-12
1019India2024-05-27
1020Argentina2024-06-16
1021France2024-06-15
1022Italy2024-05-30
1023Argentina2024-06-17
1024Russia2024-06-01
1025Canada2024-06-14
1026United Kingdom2024-06-08
1027Canada2024-06-23
1028Argentina2024-05-26
1029France2024-06-02
1030India2024-06-11
1031Brazil2024-06-10
1032Germany2024-05-31
1033Russia2024-06-18
1034Japan2024-06-24
1035France2024-06-23
1036Germany2024-06-05
1037Argentina2024-06-02
1038Brazil2024-05-26
1039Brazil2024-06-16
1040India2024-06-24
1041Canada2024-06-01
1042France2024-06-01
1043Australia2024-06-04
1044Argentina2024-06-05
1045Spain2024-06-13
1046India2024-05-27
1047Russia2024-06-18
1048Australia2024-05-31
1049Spain2024-06-21

On-Demand Data

NameIdCountryDate
Misaki J Wieser1000Japan2024-06-06
Ricardo H Oldroyd1001Australia2024-06-07
Darci W Iturbide1002Italy2024-06-11
Kadeem L Briddick1003Argentina2024-06-09
Octavia K Kusko1004Germany2024-06-10
Sinclair L Wieser1005Germany2024-05-27
Sinclair M Iturbide1006Argentina2024-06-03
Jefferson O Butt1007Spain2024-06-15
Aditya U Maclead1008Brazil2024-06-13
Adams F Chui1009Germany2024-06-13
Mayumi S Darakjy1010Canada2024-06-05
James E Vocelka1011Canada2024-05-26
Ivar R Kusko1012Germany2024-06-13
Octavia A Schemmer1013Italy2024-05-30
Kaitlin J Stenseth1014Spain2024-05-27
Wickens Q Dilliard1015Italy2024-05-29
Rodrigues O Oldroyd1016Spain2024-05-26
Wickens E Caldarera1017Germany2024-06-18
Deepesh J Stockham1018United Kingdom2024-06-19
Greenwood F Flosi1019Argentina2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin A RoysterRussiaStephen Shaw NEW
Jefferson K MaletSpainAnna Fali RENEWAL
Sinclair N SlusarskiCanadaAnna Fali NEW
Faith D WaycottFranceOnyama Limba NEGOTIATION
Tony M WieserArgentinaXuxue Feng NEGOTIATION
Alejandro W BowleyBrazilAnna Fali QUALIFIED
Antonio L FerenczUnited KingdomAmy Elsner UNQUALIFIED
Chavez T SchemmerCanadaIvan Magalhaes UNQUALIFIED
Rodrigues P OstroskyUnited KingdomOnyama Limba PROPOSAL
Juan L ButtGermanyAnna Fali PROPOSAL
Octavia H PerinRussiaElwin Sharvill NEGOTIATION
Izzy B IturbideFranceAmy Elsner NEW
Greenwood S MorascaSpainAmy Elsner NEW
Greenwood J RoysterSpainAmy Elsner UNQUALIFIED
Rodrigues N StockhamSpainAnna Fali NEW
Ricardo D NestleUnited KingdomOnyama Limba UNQUALIFIED
Jefferson F BriddickGermanyBernardo Dominic NEW
Faith W ChuiSpainAmy Elsner NEW
Nicolas Q AmigonSpainStephen Shaw NEGOTIATION
Aika F VenereIndiaElwin Sharvill NEGOTIATION
Izzy R FlosiItalyBernardo Dominic QUALIFIED
Tony V IturbideRussiaXuxue Feng PROPOSAL
Morrow G MorascaCanadaElwin Sharvill NEGOTIATION
Leja S MaletRussiaAmy Elsner NEGOTIATION
Jennifer C FerenczSpainIvan Magalhaes UNQUALIFIED
Greenwood M AmigonGermanyStephen Shaw NEW
Mayumi H WaycottFranceStephen Shaw PROPOSAL
Ricardo W MorascaFranceIvan Magalhaes QUALIFIED
Morrow W SchemmerAustraliaElwin Sharvill QUALIFIED
Kaitlin Y SlusarskiJapanOnyama Limba QUALIFIED
Sinclair L WieserBrazilElwin Sharvill NEW
Leja I KolmetzFranceAsiya Javayant QUALIFIED
Ashley X RulapaughGermanyIvan Magalhaes NEW
Leja E CaudyCanadaElwin Sharvill UNQUALIFIED
Stacey P NickaBrazilOnyama Limba NEGOTIATION
Leja U KolmetzFranceOnyama Limba UNQUALIFIED
Jennifer S PoquetteSpainAsiya Javayant NEW
Tony K InouyeAustraliaAmy Elsner NEGOTIATION
Ivar R DilliardArgentinaAnna Fali UNQUALIFIED
Jennifer Z GillianGermanyIvan Magalhaes NEGOTIATION

<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>