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
Emily J RutaGermanyOnyama Limba PROPOSAL
Francesco H PaprockiArgentinaAmy Elsner NEW
Francesco F GauchoAustraliaIvan Magalhaes UNQUALIFIED
Octavia B GarufiGermanyAnna Fali UNQUALIFIED
Isabel L NestleAustraliaXuxue Feng UNQUALIFIED
Morrow M StockhamRussiaBernardo Dominic QUALIFIED
Smith V MarrierGermanyXuxue Feng PROPOSAL
Deepesh K MaletGermanyIoni Bowcher RENEWAL
Claire G FlosiUnited KingdomAmy Elsner QUALIFIED
Adams G TollnerRussiaBernardo Dominic UNQUALIFIED
Kadeem B KolmetzSpainAnna Fali RENEWAL
Alejandro S WaycottSpainAsiya Javayant PROPOSAL
Deepesh K OldroydIndiaAnna Fali RENEWAL
Silvio G DoeItalyAmy Elsner NEW
Johnson V StockhamCanadaOnyama Limba PROPOSAL
Jones K DarakjyItalyBernardo Dominic UNQUALIFIED
Cody R BowleyIndiaIoni Bowcher UNQUALIFIED
Smith V WhobreyGermanyElwin Sharvill NEGOTIATION
Johnson L DarakjyBrazilIoni Bowcher UNQUALIFIED
Adams P SergiRussiaAmy Elsner PROPOSAL
Chavez A GillianFranceIvan Magalhaes NEW
Maisha Y PoquetteAustraliaAmy Elsner UNQUALIFIED
Kadeem N CampainJapanOnyama Limba RENEWAL
Cody W MaletJapanIvan Magalhaes PROPOSAL
Emily R OstroskyBrazilOnyama Limba NEW
Alejandro C CaldareraGermanyAsiya Javayant NEGOTIATION
Mayumi I CaudyBrazilXuxue Feng QUALIFIED
Leja L AmigonCanadaAnna Fali PROPOSAL
Cody D SchemmerBrazilAmy Elsner RENEWAL
Francesco B GlickRussiaXuxue Feng NEGOTIATION
Costa C RoysterFranceBernardo Dominic QUALIFIED
Stacey M PerinJapanAnna Fali UNQUALIFIED
Jones E FerenczIndiaXuxue Feng NEW
Clifford A DilliardItalyBernardo Dominic NEW
Johnson Q RutaBrazilIoni Bowcher NEW
Kadeem G PerinBrazilAnna Fali NEW
Jones H BowleyJapanElwin Sharvill NEW
Aditya L WaycottItalyAnna Fali RENEWAL
Leja R SaylorsArgentinaBernardo Dominic NEGOTIATION
Leja S KuskoGermanyXuxue Feng NEGOTIATION
Kadeem T MacleadUnited KingdomIoni Bowcher PROPOSAL
Chavez O SlusarskiArgentinaXuxue Feng RENEWAL
Misaki I TollnerIndiaStephen Shaw UNQUALIFIED
Rodrigues T BologniaIndiaElwin Sharvill PROPOSAL
Leon B MaletUnited KingdomBernardo Dominic UNQUALIFIED
Leja F GarufiItalyIvan Magalhaes UNQUALIFIED
Maria Y SlusarskiBrazilOnyama Limba NEW
Aruna P AmigonUnited KingdomOnyama Limba PROPOSAL
Nicolas U DarakjyGermanyAsiya Javayant NEGOTIATION
Octavia V PerinRussiaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Nicolas P NickaFranceBernardo Dominic NEW
Murillo E AmigonRussiaXuxue Feng RENEWAL
Jeanfrancois Z StockhamAustraliaElwin Sharvill NEW
Ricardo C FerenczRussiaAnna Fali NEGOTIATION
Wickens P GillianArgentinaOnyama Limba RENEWAL
Jeanfrancois X SlusarskiGermanyElwin Sharvill RENEWAL
Julie L MaletCanadaXuxue Feng RENEWAL
Isabel V DarakjyCanadaOnyama Limba RENEWAL
Maria E KolmetzAustraliaStephen Shaw QUALIFIED
Misaki O AmigonCanadaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood Q CaudyIndia2024-05-22Benton, John B Jr NEGOTIATION13Onyama Limba
1001Rodrigues Y PerinFrance2024-05-27Chanay, Jeffrey A Esq RENEWAL19Stephen Shaw
1002Kadeem P RulapaughArgentina2024-05-25Morlong Associates QUALIFIED34Elwin Sharvill
1003Ricardo Q MarrierGermany2024-05-13Rangoni Of Florence NEGOTIATION60Xuxue Feng
1004Aditya R FlosiIndia2024-05-28Chemel, James L Cpa NEW13Anna Fali
1005Costa Y ChuiGermany2024-05-12Commercial Press PROPOSAL97Stephen Shaw
1006Darci I MaletSpain2024-05-18Buckley Miller Wright UNQUALIFIED84Elwin Sharvill
1007Francesco B MorascaArgentina2024-05-23Buckley Miller Wright RENEWAL54Stephen Shaw
1008Nicolas E NestleItaly2024-05-24Feltz Printing Service QUALIFIED78Ivan Magalhaes
1009Costa Z WieserFrance2024-05-03Feltz Printing Service QUALIFIED50Ivan Magalhaes
1010Ricardo J OldroydJapan2024-05-25Dorl, James J Esq QUALIFIED32Anna Fali
1011Clifford G TollnerIndia2024-05-19Truhlar And Truhlar Attys NEGOTIATION10Stephen Shaw
1012Maria E StensethArgentina2024-05-25Morlong Associates QUALIFIED22Ioni Bowcher
1013Maisha N RoysterAustralia2024-05-13Chapman, Ross E Esq PROPOSAL95Onyama Limba
1014Tony F FollerUnited Kingdom2024-05-16Feltz Printing Service NEGOTIATION47Ioni Bowcher
1015Mayumi T InouyeGermany2024-05-13Morlong Associates QUALIFIED13Onyama Limba
1016Costa V FerenczIndia2024-05-12Commercial Press RENEWAL30Ivan Magalhaes
1017Emily U AlbaresItaly2024-05-15Feltz Printing Service NEW49Ioni Bowcher
1018Cody G NestleCanada2024-05-28Rangoni Of Florence UNQUALIFIED86Asiya Javayant
1019Jones U GauchoJapan2024-05-15Buckley Miller Wright RENEWAL9Asiya Javayant
1020Munro S ShinkoArgentina2024-05-03Rangoni Of Florence RENEWAL86Elwin Sharvill
1021Salvatore N CaldareraCanada2024-05-10Truhlar And Truhlar Attys QUALIFIED99Elwin Sharvill
1022Mujtaba S SchemmerAustralia2024-05-03Chemel, James L Cpa NEW10Asiya Javayant
1023Darci J BologniaFrance2024-05-13Feltz Printing Service NEW73Stephen Shaw
1024Sinclair H WieserJapan2024-05-12Printing Dimensions NEGOTIATION89Amy Elsner
1025Aika C BriddickRussia2024-05-25Rousseaux, Michael Esq UNQUALIFIED46Ivan Magalhaes
1026Chavez I SaylorsRussia2024-05-07Feltz Printing Service NEW57Stephen Shaw
1027Salvatore H RimSpain2024-05-23Morlong Associates PROPOSAL4Ioni Bowcher
1028Francesco G BriddickIndia2024-05-03Chemel, James L Cpa NEW21Ioni Bowcher
1029Isabel O WaycottGermany2024-05-14Feiner Bros NEGOTIATION82Asiya Javayant
1030Ricardo J BowleyCanada2024-05-02Morlong Associates PROPOSAL53Ivan Magalhaes
1031Jefferson Q KuskoBrazil2024-05-31Morlong Associates RENEWAL91Ivan Magalhaes
1032David V StockhamAustralia2024-05-11Chanay, Jeffrey A Esq NEW53Bernardo Dominic
1033James W OldroydBrazil2024-05-20Feltz Printing Service NEGOTIATION20Asiya Javayant
1034Antonio T AlbaresBrazil2024-05-12King, Christopher A Esq QUALIFIED90Asiya Javayant
1035Wickens Y AlbaresRussia2024-05-21Benton, John B Jr RENEWAL61Xuxue Feng
1036Aditya P DilliardFrance2024-05-06Rangoni Of Florence NEGOTIATION21Amy Elsner
1037Jennifer P VenereCanada2024-05-05Feiner Bros PROPOSAL84Stephen Shaw
1038Murillo R FigeroaCanada2024-05-06Buckley Miller Wright RENEWAL75Anna Fali
1039Faith V RoysterBrazil2024-05-17Benton, John B Jr PROPOSAL29Ivan Magalhaes
1040Isabel Q NickaAustralia2024-05-09Chapman, Ross E Esq RENEWAL62Asiya Javayant
1041Chavez V FerenczRussia2024-05-16Commercial Press NEGOTIATION70Xuxue Feng
1042Rodrigues B MaletArgentina2024-05-07Feiner Bros PROPOSAL40Stephen Shaw
1043Julie W AmigonRussia2024-05-17Buckley Miller Wright QUALIFIED27Ioni Bowcher
1044Alejandro Y OldroydItaly2024-05-20Chanay, Jeffrey A Esq RENEWAL70Ivan Magalhaes
1045Nicolas S NickaItaly2024-05-05Feiner Bros NEW54Elwin Sharvill
1046Maisha R MarrierAustralia2024-05-25King, Christopher A Esq QUALIFIED4Stephen Shaw
1047Aika R BriddickIndia2024-05-06Dorl, James J Esq PROPOSAL35Anna Fali
1048Octavia P TollnerCanada2024-05-25Feiner Bros QUALIFIED42Ivan Magalhaes
1049Maisha R GauchoSpain2024-05-02Truhlar And Truhlar Attys PROPOSAL39Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Ashley H MacleadAustraliaElwin Sharvill RENEWAL
Kaitlin F DilliardGermanyAnna Fali QUALIFIED
Wickens L RutaGermanyAnna Fali NEW
Salvatore N PerinItalyElwin Sharvill NEW
Faith G WaycottCanadaBernardo Dominic QUALIFIED
Morrow J GauchoBrazilIoni Bowcher UNQUALIFIED
Darci R MaletItalyIoni Bowcher NEGOTIATION
Juan A RutaArgentinaAsiya Javayant PROPOSAL
Wickens J WhobreyAustraliaStephen Shaw UNQUALIFIED
Rodrigues S FlosiUnited KingdomStephen Shaw NEW
Rodrigues D FlosiIndiaStephen Shaw QUALIFIED
Munro D PerinCanadaStephen Shaw PROPOSAL
Silvio E WaycottItalyElwin Sharvill UNQUALIFIED
Faith H CaudyGermanyElwin Sharvill QUALIFIED
Julie Q RutaCanadaOnyama Limba UNQUALIFIED
Juan A MaletUnited KingdomAsiya Javayant PROPOSAL
Jones H TollnerIndiaAsiya Javayant UNQUALIFIED
Antonio T SaylorsUnited KingdomBernardo Dominic UNQUALIFIED
Wickens X DarakjyGermanyAnna Fali NEW
Octavia F SaylorsAustraliaAsiya Javayant NEW
Misaki J FerenczJapanBernardo Dominic PROPOSAL
Salvatore K AlbaresUnited KingdomAmy Elsner RENEWAL
Emily H GauchoBrazilStephen Shaw RENEWAL
Leja O DarakjyBrazilElwin Sharvill NEW
Arvin R VocelkaFranceOnyama Limba RENEWAL
Salvatore V VenereUnited KingdomAnna Fali PROPOSAL
Darci I CaldareraItalyXuxue Feng NEGOTIATION
Cody D DilliardGermanyElwin Sharvill RENEWAL
Isabel Z RulapaughItalyOnyama Limba NEW
Murillo O MacleadItalyAsiya Javayant UNQUALIFIED
Ashley X MarrierGermanyXuxue Feng QUALIFIED
Faith P GlickRussiaAsiya Javayant NEGOTIATION
Maisha K FerenczAustraliaOnyama Limba PROPOSAL
Jones W WaycottIndiaIoni Bowcher PROPOSAL
Nicolas G VenereJapanElwin Sharvill QUALIFIED
James G KolmetzItalyIvan Magalhaes RENEWAL
Emily V NickaItalyIvan Magalhaes NEW
Claire A VocelkaUnited KingdomAmy Elsner QUALIFIED
Ashley P CampainIndiaIvan Magalhaes RENEWAL
Maria D DarakjyFranceAnna Fali PROPOSAL
Francesco U DarakjyBrazilAsiya Javayant UNQUALIFIED
Juan U StockhamBrazilIvan Magalhaes NEW
Salvatore Y IturbideFranceBernardo Dominic RENEWAL
Adams L SlusarskiAustraliaIvan Magalhaes QUALIFIED
Ashley G FigeroaUnited KingdomOnyama Limba NEW
Cody L DoeCanadaBernardo Dominic RENEWAL
Misaki K FerenczAustraliaXuxue Feng PROPOSAL
Jennifer T GillianArgentinaIoni Bowcher NEGOTIATION
Nicolas B FlosiIndiaBernardo Dominic NEGOTIATION
Kaitlin A ChuiItalyStephen Shaw UNQUALIFIED
Frozen Columns
Name
Costa J Vocelka
Silvio V Rim
Leja H Iturbide
Juan W Waycott
Antonio D Rim
Morrow Q Malet
Greenwood R Slusarski
Faith U Perin
Nicolas W Doe
Claire C Ostrosky
Darci N Shinko
Kadeem I Sergi
Deepesh G Foller
Johnson S Tollner
Arvin M Poquette
Munro V Ruta
Alejandro T Amigon
Antonio Y Campain
Izzy P Schemmer
Jeanfrancois J Rulapaugh
Rodrigues E Waycott
Ricardo X Oldroyd
Rodrigues V Paprocki
Salvatore L Poquette
Jeanfrancois S Kusko
Isabel A Garufi
Mayumi H Malet
Tony F Caldarera
Mujtaba M Kusko
David C Whobrey
Greenwood Y Campain
Smith C Stockham
Deepesh A Dilliard
Mujtaba H Briddick
Emily O Amigon
Aruna T Ferencz
Chavez J Bowley
Jennifer H Morasca
Morrow G Rim
Aditya U Caldarera
Faith H Gillian
Tony L Campain
Maria F Gillian
Aika D Gillian
Jennifer C Caldarera
Greenwood N Amigon
Arvin C Doe
Rodrigues M Sergi
Silvio A Iturbide
Kadeem F Venere
IdCountryDate
1000Japan2024-05-02
1001France2024-05-13
1002Spain2024-05-04
1003United Kingdom2024-05-27
1004United Kingdom2024-05-07
1005Spain2024-05-11
1006Brazil2024-05-14
1007Brazil2024-05-18
1008India2024-05-19
1009United Kingdom2024-05-13
1010United Kingdom2024-05-15
1011Germany2024-05-25
1012Canada2024-05-26
1013Spain2024-05-26
1014France2024-05-19
1015France2024-05-17
1016Australia2024-05-23
1017Japan2024-05-10
1018Spain2024-05-20
1019Argentina2024-05-07
1020United Kingdom2024-05-28
1021Spain2024-05-18
1022Russia2024-05-10
1023Germany2024-05-20
1024Canada2024-05-28
1025Italy2024-05-12
1026Spain2024-05-14
1027Australia2024-05-17
1028United Kingdom2024-05-31
1029Italy2024-05-28
1030France2024-05-23
1031Spain2024-05-11
1032Italy2024-05-16
1033Brazil2024-05-27
1034Spain2024-05-12
1035Germany2024-05-09
1036Germany2024-05-22
1037United Kingdom2024-05-19
1038Argentina2024-05-13
1039Spain2024-05-18
1040United Kingdom2024-05-20
1041Spain2024-05-17
1042United Kingdom2024-05-04
1043Canada2024-05-13
1044United Kingdom2024-05-18
1045Germany2024-05-08
1046Australia2024-05-21
1047Australia2024-05-08
1048Brazil2024-05-21
1049Italy2024-05-08

On-Demand Data

NameIdCountryDate
Tony N Shinko1000Argentina2024-05-04
Maisha L Tollner1001France2024-05-19
Octavia Y Iturbide1002France2024-05-22
Octavia J Gaucho1003France2024-05-05
Francesco O Slusarski1004Germany2024-05-20
Octavia M Garufi1005India2024-05-31
Mayumi U Royster1006Australia2024-05-23
Johnson B Doe1007France2024-05-23
Francesco V Bowley1008France2024-05-18
Antonio K Rim1009Australia2024-05-20
Smith C Tollner1010France2024-05-05
Antonio E Gaucho1011Russia2024-05-22
Mujtaba B Bolognia1012India2024-05-20
Mayumi K Darakjy1013Germany2024-05-29
Sinclair D Saylors1014France2024-05-16
Wickens Z Stenseth1015Japan2024-05-02
Silvio A Sergi1016Spain2024-05-26
Aika Z Gaucho1017Russia2024-05-15
Aika S Bolognia1018Australia2024-05-29
Emily P Flosi1019Australia2024-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon Z FigeroaItalyOnyama Limba NEGOTIATION
Ivar D CampainCanadaAnna Fali NEGOTIATION
Aika H KuskoUnited KingdomAmy Elsner NEGOTIATION
Kaitlin H RimRussiaIvan Magalhaes NEGOTIATION
Francesco C PaprockiAustraliaIvan Magalhaes NEGOTIATION
Kaitlin H MaletGermanyBernardo Dominic QUALIFIED
Isabel Y BologniaArgentinaXuxue Feng UNQUALIFIED
Francesco T IturbideItalyIvan Magalhaes QUALIFIED
Leja H MarrierCanadaAnna Fali PROPOSAL
Leon K CaudySpainElwin Sharvill QUALIFIED
Salvatore Z BologniaJapanAmy Elsner QUALIFIED
Aditya J StockhamUnited KingdomStephen Shaw NEGOTIATION
Emily O WhobreyUnited KingdomStephen Shaw RENEWAL
Deepesh B PoquetteJapanIoni Bowcher QUALIFIED
Wickens T IturbideGermanyStephen Shaw NEW
Adams T MarrierCanadaAmy Elsner QUALIFIED
Morrow Q ChuiCanadaAsiya Javayant NEGOTIATION
Murillo Q NickaBrazilIvan Magalhaes PROPOSAL
James L GarufiAustraliaBernardo Dominic NEW
David K FlosiGermanyStephen Shaw NEW
Clifford P DilliardUnited KingdomAmy Elsner NEGOTIATION
Kaitlin M SaylorsSpainIvan Magalhaes NEW
Jennifer D SchemmerRussiaXuxue Feng NEGOTIATION
Misaki R CaudyArgentinaStephen Shaw NEW
Kaitlin M FlosiCanadaXuxue Feng UNQUALIFIED
Clifford C SlusarskiJapanAsiya Javayant PROPOSAL
Clifford C NestleAustraliaXuxue Feng QUALIFIED
Tony Q TollnerArgentinaElwin Sharvill QUALIFIED
Izzy W WieserFranceXuxue Feng PROPOSAL
Maria O DarakjyBrazilXuxue Feng PROPOSAL
Antonio E GlickAustraliaAmy Elsner RENEWAL
Jefferson W MacleadJapanIoni Bowcher UNQUALIFIED
Francesco B BriddickFranceAnna Fali NEGOTIATION
Leja X MorascaAustraliaAmy Elsner PROPOSAL
Johnson V FlosiRussiaOnyama Limba UNQUALIFIED
Leja N MacleadSpainIoni Bowcher UNQUALIFIED
Wickens P ShinkoUnited KingdomOnyama Limba RENEWAL
Mujtaba L FerenczBrazilIvan Magalhaes RENEWAL
Stacey O MaletJapanBernardo Dominic PROPOSAL
Francesco J TollnerGermanyOnyama Limba 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>