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
Silvio G GillianIndiaStephen Shaw NEW
Jones J OldroydRussiaXuxue Feng RENEWAL
Antonio T GauchoBrazilElwin Sharvill PROPOSAL
Misaki S ButtCanadaAmy Elsner RENEWAL
David Q ButtArgentinaIoni Bowcher NEW
Rodrigues B DilliardFranceAsiya Javayant NEGOTIATION
Smith R WhobreyArgentinaOnyama Limba NEGOTIATION
Juan A GauchoArgentinaOnyama Limba RENEWAL
Aika N AmigonBrazilXuxue Feng QUALIFIED
Jennifer C GillianGermanyAsiya Javayant UNQUALIFIED
Clifford I InouyeRussiaAmy Elsner NEW
Nicolas W CaudyUnited KingdomXuxue Feng NEW
Mayumi U RutaBrazilBernardo Dominic PROPOSAL
Misaki X ButtRussiaAsiya Javayant RENEWAL
Arvin A MaletAustraliaBernardo Dominic QUALIFIED
Greenwood W SchemmerFranceAmy Elsner QUALIFIED
Jennifer Y GillianAustraliaAnna Fali UNQUALIFIED
Leon F InouyeIndiaStephen Shaw PROPOSAL
Aruna H StockhamItalyOnyama Limba UNQUALIFIED
Aditya F BowleyRussiaAnna Fali NEGOTIATION
Silvio N BowleyGermanyAmy Elsner QUALIFIED
Juan C RoysterBrazilXuxue Feng UNQUALIFIED
Smith R MaletFranceStephen Shaw UNQUALIFIED
Kadeem O FigeroaItalyAsiya Javayant NEGOTIATION
David L SchemmerIndiaIoni Bowcher PROPOSAL
Adams J ShinkoSpainAnna Fali NEW
Leon Z NickaAustraliaOnyama Limba NEGOTIATION
Ivar I MacleadFranceAsiya Javayant NEGOTIATION
Wickens G MorascaUnited KingdomElwin Sharvill RENEWAL
Salvatore N CampainGermanyIvan Magalhaes QUALIFIED
Aruna S VocelkaGermanyStephen Shaw NEGOTIATION
Alejandro P ShinkoSpainIoni Bowcher NEGOTIATION
Cody V ChuiItalyElwin Sharvill NEGOTIATION
Julie C MaletJapanXuxue Feng RENEWAL
Cody C SergiJapanAsiya Javayant UNQUALIFIED
Kaitlin G SchemmerCanadaElwin Sharvill PROPOSAL
Julie Q InouyeSpainStephen Shaw NEW
Jennifer W AlbaresJapanIoni Bowcher PROPOSAL
Faith B NickaAustraliaIoni Bowcher PROPOSAL
Adams Y PoquetteSpainIoni Bowcher UNQUALIFIED
Ricardo Z ShinkoRussiaAnna Fali NEGOTIATION
Ricardo H MarrierGermanyBernardo Dominic RENEWAL
Kaitlin S SaylorsGermanyIvan Magalhaes NEW
Jones A StensethJapanElwin Sharvill NEGOTIATION
Kaitlin R StockhamIndiaBernardo Dominic PROPOSAL
Aditya S GauchoAustraliaElwin Sharvill NEGOTIATION
Arvin T PerinFranceXuxue Feng QUALIFIED
Stacey P AlbaresGermanyElwin Sharvill UNQUALIFIED
Ricardo J TollnerBrazilAmy Elsner QUALIFIED
Adams O AlbaresGermanyBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Jefferson Z SlusarskiJapanOnyama Limba NEW
Munro Y NickaUnited KingdomElwin Sharvill RENEWAL
David H GarufiJapanBernardo Dominic RENEWAL
Ricardo S RoysterFranceBernardo Dominic PROPOSAL
Munro B AmigonBrazilStephen Shaw PROPOSAL
Emily W OldroydJapanAmy Elsner RENEWAL
Murillo A StensethCanadaAmy Elsner NEW
Maria H GillianRussiaIvan Magalhaes QUALIFIED
Kaitlin Y ButtJapanStephen Shaw QUALIFIED
Emily X WhobreyBrazilXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja U OldroydBrazil2024-05-12Dorl, James J Esq UNQUALIFIED53Bernardo Dominic
1001Aika V FlosiUnited Kingdom2024-04-28Feiner Bros RENEWAL93Ioni Bowcher
1002Arvin F WaycottJapan2024-04-27Rangoni Of Florence NEW63Amy Elsner
1003James K RulapaughAustralia2024-05-16Feltz Printing Service NEGOTIATION99Ivan Magalhaes
1004Wickens D IturbideUnited Kingdom2024-04-27King, Christopher A Esq NEW7Anna Fali
1005Rodrigues J GlickAustralia2024-05-21Chanay, Jeffrey A Esq NEGOTIATION34Ivan Magalhaes
1006Ashley F BowleyFrance2024-05-03Rousseaux, Michael Esq UNQUALIFIED97Onyama Limba
1007Kaitlin S FlosiRussia2024-04-27Chapman, Ross E Esq QUALIFIED18Amy Elsner
1008Greenwood T DilliardBrazil2024-05-12Morlong Associates RENEWAL27Anna Fali
1009Octavia O IturbideCanada2024-05-10Commercial Press UNQUALIFIED53Anna Fali
1010Juan I StensethAustralia2024-05-15Dorl, James J Esq PROPOSAL91Anna Fali
1011Chavez U AmigonArgentina2024-05-08Rousseaux, Michael Esq NEGOTIATION96Onyama Limba
1012Arvin H ChuiUnited Kingdom2024-05-14Commercial Press QUALIFIED31Stephen Shaw
1013Clifford B GauchoGermany2024-05-17Chapman, Ross E Esq UNQUALIFIED72Stephen Shaw
1014Maisha P OldroydRussia2024-05-01Chemel, James L Cpa RENEWAL63Anna Fali
1015Ivar J FollerFrance2024-05-05Commercial Press NEW21Asiya Javayant
1016Octavia C RulapaughBrazil2024-05-06Rangoni Of Florence NEGOTIATION64Ioni Bowcher
1017Morrow K ShinkoBrazil2024-05-22Feltz Printing Service NEGOTIATION14Anna Fali
1018Darci L VocelkaArgentina2024-05-10Buckley Miller Wright QUALIFIED19Elwin Sharvill
1019Aika X GlickJapan2024-04-27Benton, John B Jr NEW59Asiya Javayant
1020Octavia Y CampainIndia2024-05-03Truhlar And Truhlar Attys PROPOSAL31Stephen Shaw
1021Salvatore H RoysterFrance2024-05-17Rousseaux, Michael Esq UNQUALIFIED57Ivan Magalhaes
1022Jeanfrancois K WaycottIndia2024-04-25Chapman, Ross E Esq QUALIFIED55Stephen Shaw
1023Mayumi F KolmetzUnited Kingdom2024-05-04Benton, John B Jr NEW66Stephen Shaw
1024Faith H DarakjyFrance2024-05-22King, Christopher A Esq PROPOSAL66Xuxue Feng
1025Alejandro L KuskoItaly2024-05-02Feltz Printing Service QUALIFIED24Stephen Shaw
1026Stacey S BowleySpain2024-05-18Feiner Bros RENEWAL64Amy Elsner
1027Silvio O GlickItaly2024-05-11King, Christopher A Esq RENEWAL16Asiya Javayant
1028Jeanfrancois U MorascaUnited Kingdom2024-05-09Morlong Associates RENEWAL17Xuxue Feng
1029Juan Y AlbaresGermany2024-05-21Feltz Printing Service NEGOTIATION77Xuxue Feng
1030Jones O BriddickRussia2024-05-08Feltz Printing Service PROPOSAL91Bernardo Dominic
1031Kaitlin J VocelkaFrance2024-05-16King, Christopher A Esq QUALIFIED62Ioni Bowcher
1032Leon L DilliardGermany2024-05-05King, Christopher A Esq NEGOTIATION14Stephen Shaw
1033Nicolas G InouyeAustralia2024-05-20Chapman, Ross E Esq UNQUALIFIED27Anna Fali
1034Alejandro H FollerItaly2024-05-09Commercial Press PROPOSAL55Onyama Limba
1035Aika P BowleyBrazil2024-05-12Rousseaux, Michael Esq NEGOTIATION70Anna Fali
1036Leja J WaycottCanada2024-05-24King, Christopher A Esq QUALIFIED12Ioni Bowcher
1037Kadeem Q ButtItaly2024-05-19Benton, John B Jr UNQUALIFIED21Elwin Sharvill
1038Emily A GarufiBrazil2024-05-17Rousseaux, Michael Esq NEW80Xuxue Feng
1039David M RutaFrance2024-05-05Chanay, Jeffrey A Esq RENEWAL88Amy Elsner
1040Silvio Q PerinIndia2024-05-07Dorl, James J Esq QUALIFIED72Ivan Magalhaes
1041Jefferson Z ButtJapan2024-05-01Rangoni Of Florence RENEWAL82Asiya Javayant
1042Izzy D FigeroaArgentina2024-05-15Buckley Miller Wright NEGOTIATION83Onyama Limba
1043Leon J CaldareraUnited Kingdom2024-05-15Truhlar And Truhlar Attys UNQUALIFIED72Ivan Magalhaes
1044Arvin D GauchoIndia2024-05-07Buckley Miller Wright NEW30Ioni Bowcher
1045Arvin S DilliardRussia2024-05-11Rangoni Of Florence NEW75Amy Elsner
1046Nicolas V MaletCanada2024-04-26Printing Dimensions NEW73Anna Fali
1047Misaki T SchemmerBrazil2024-04-25Truhlar And Truhlar Attys NEGOTIATION31Elwin Sharvill
1048Antonio V OldroydCanada2024-05-03Chanay, Jeffrey A Esq NEW27Ivan Magalhaes
1049Octavia W VenereAustralia2024-05-19Commercial Press NEGOTIATION3Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Francesco O FigeroaFranceStephen Shaw UNQUALIFIED
Leja F MaletGermanyAnna Fali NEW
Juan A CampainItalyStephen Shaw NEW
Octavia F DoeItalyAmy Elsner QUALIFIED
Faith F KolmetzSpainAmy Elsner NEGOTIATION
Mujtaba F AmigonGermanyIoni Bowcher NEGOTIATION
Maria G StockhamArgentinaIvan Magalhaes QUALIFIED
Wickens G OldroydIndiaAmy Elsner UNQUALIFIED
David G MorascaRussiaStephen Shaw PROPOSAL
Jefferson H WhobreyCanadaBernardo Dominic UNQUALIFIED
Silvio F NickaFranceBernardo Dominic UNQUALIFIED
David Z CaldareraArgentinaXuxue Feng NEGOTIATION
David I SergiSpainIoni Bowcher RENEWAL
Alejandro T StockhamSpainXuxue Feng PROPOSAL
Octavia G NestleSpainIoni Bowcher PROPOSAL
Sinclair I PoquetteCanadaIoni Bowcher RENEWAL
Kadeem S AmigonCanadaIoni Bowcher RENEWAL
Darci Y OstroskyIndiaAsiya Javayant RENEWAL
Greenwood R WhobreyBrazilAmy Elsner RENEWAL
Costa N DilliardArgentinaAmy Elsner PROPOSAL
Ivar W DoeJapanBernardo Dominic PROPOSAL
Adams F BriddickSpainAsiya Javayant NEW
Juan C KuskoJapanBernardo Dominic QUALIFIED
Aika Z ShinkoSpainAnna Fali RENEWAL
Faith H NestleCanadaIvan Magalhaes RENEWAL
Wickens B DoeItalyAmy Elsner UNQUALIFIED
Tony O FlosiAustraliaBernardo Dominic QUALIFIED
Greenwood Z BologniaGermanyAnna Fali RENEWAL
Nicolas E WieserArgentinaIvan Magalhaes RENEWAL
Kaitlin F ShinkoSpainBernardo Dominic QUALIFIED
Juan R BologniaAustraliaXuxue Feng NEW
Salvatore Z TollnerCanadaElwin Sharvill UNQUALIFIED
Smith W GauchoUnited KingdomStephen Shaw PROPOSAL
Tony E CampainBrazilStephen Shaw NEW
Morrow X RulapaughFranceAsiya Javayant RENEWAL
Morrow B MarrierFranceElwin Sharvill RENEWAL
Darci N MaletItalyStephen Shaw NEGOTIATION
Leon O CampainFranceOnyama Limba QUALIFIED
Murillo F KuskoAustraliaIvan Magalhaes PROPOSAL
Darci W PerinAustraliaBernardo Dominic UNQUALIFIED
Maisha M GauchoJapanIvan Magalhaes NEW
Ricardo N FerenczCanadaAnna Fali QUALIFIED
Maria F StensethJapanIvan Magalhaes RENEWAL
Ricardo W NickaIndiaAsiya Javayant RENEWAL
Izzy U RimGermanyOnyama Limba NEGOTIATION
Murillo B MaletGermanyBernardo Dominic QUALIFIED
Aditya L GlickCanadaIoni Bowcher UNQUALIFIED
Kadeem Y GauchoBrazilAsiya Javayant QUALIFIED
Murillo T OldroydIndiaAsiya Javayant UNQUALIFIED
Maisha Y DarakjyBrazilAnna Fali RENEWAL
Frozen Columns
Name
Aika R Schemmer
Clifford L Kolmetz
Salvatore M Tollner
Nicolas N Stockham
Nicolas Z Kolmetz
Misaki K Gaucho
David N Paprocki
Rodrigues C Schemmer
Isabel H Stenseth
Munro A Paprocki
James A Gaucho
Ashley O Garufi
Francesco Z Wieser
Cody U Gillian
Costa U Wieser
Leja I Sergi
Emily T Doe
Johnson Q Perin
Leja Q Nicka
Adams K Butt
Tony O Nestle
Jennifer X Ostrosky
Greenwood E Caldarera
Morrow Q Bowley
Cody M Stenseth
Adams S Ferencz
Clifford K Darakjy
Munro D Oldroyd
Aruna H Sergi
Johnson D Albares
Jennifer F Foller
Alejandro A Wieser
Morrow B Royster
Kaitlin S Foller
Costa H Dilliard
Jeanfrancois L Briddick
Cody X Caudy
Isabel K Kolmetz
Ivar C Bolognia
Wickens O Butt
Aditya H Caudy
Smith R Rim
Julie P Bolognia
Isabel G Waycott
Clifford F Malet
Faith W Marrier
Jefferson R Kolmetz
Leja J Nicka
Nicolas U Vocelka
Darci I Caudy
IdCountryDate
1000Russia2024-05-05
1001Spain2024-05-09
1002Japan2024-04-27
1003Russia2024-05-17
1004France2024-05-15
1005United Kingdom2024-05-11
1006United Kingdom2024-05-09
1007Australia2024-05-19
1008Germany2024-05-15
1009Japan2024-05-22
1010Russia2024-04-27
1011Argentina2024-05-09
1012Japan2024-05-07
1013Germany2024-05-15
1014Italy2024-04-26
1015Australia2024-05-04
1016United Kingdom2024-05-03
1017Argentina2024-05-21
1018Italy2024-05-03
1019Canada2024-05-18
1020France2024-04-28
1021India2024-05-05
1022India2024-04-25
1023Spain2024-05-12
1024India2024-05-06
1025United Kingdom2024-05-05
1026Italy2024-05-09
1027Germany2024-05-12
1028Germany2024-05-08
1029France2024-05-05
1030France2024-04-27
1031Russia2024-05-02
1032Canada2024-05-17
1033Russia2024-05-06
1034Italy2024-05-15
1035Russia2024-05-19
1036Japan2024-04-28
1037Japan2024-05-01
1038Canada2024-05-24
1039Canada2024-05-09
1040Brazil2024-04-25
1041Italy2024-05-19
1042Italy2024-05-23
1043Russia2024-05-08
1044Canada2024-05-10
1045France2024-05-12
1046Italy2024-04-30
1047India2024-05-07
1048India2024-05-06
1049United Kingdom2024-05-12

On-Demand Data

NameIdCountryDate
Izzy W Tollner1000Russia2024-05-10
Ivar Q Kusko1001Canada2024-04-25
Wickens L Caldarera1002Italy2024-05-19
Jennifer F Inouye1003Australia2024-05-18
Stacey Z Slusarski1004Italy2024-05-20
Chavez V Schemmer1005Argentina2024-05-09
Munro G Flosi1006Australia2024-05-22
Greenwood O Malet1007Germany2024-05-24
Silvio K Chui1008Russia2024-05-17
Claire Q Garufi1009Spain2024-05-02
Antonio B Amigon1010Germany2024-05-14
Aika Q Shinko1011Italy2024-05-09
Chavez P Darakjy1012Italy2024-05-20
Stacey R Oldroyd1013Australia2024-05-16
Munro Q Bowley1014India2024-05-23
Darci K Wieser1015Argentina2024-05-02
Sinclair C Garufi1016Brazil2024-05-06
Aruna N Darakjy1017Italy2024-05-11
Mujtaba M Albares1018France2024-05-24
Francesco S Tollner1019Spain2024-05-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore D RoysterJapanOnyama Limba RENEWAL
Maria F DilliardItalyAmy Elsner RENEWAL
Antonio P ChuiArgentinaElwin Sharvill PROPOSAL
Jones H WieserGermanyAsiya Javayant NEGOTIATION
Arvin Q CaldareraItalyXuxue Feng NEW
Jones P MaletItalyIoni Bowcher UNQUALIFIED
Faith D CaudySpainStephen Shaw RENEWAL
Claire B FerenczAustraliaIoni Bowcher RENEWAL
Ivar S MaletItalyAnna Fali PROPOSAL
Ricardo Z TollnerBrazilXuxue Feng UNQUALIFIED
Ricardo I SchemmerBrazilAmy Elsner NEW
Munro Y FollerArgentinaBernardo Dominic NEW
Octavia D FigeroaJapanIoni Bowcher PROPOSAL
Kaitlin W BologniaArgentinaOnyama Limba UNQUALIFIED
Ricardo G MaletJapanAnna Fali NEGOTIATION
Leon T RulapaughItalyStephen Shaw PROPOSAL
Kaitlin P ShinkoFranceOnyama Limba UNQUALIFIED
Ivar S ShinkoFranceStephen Shaw NEGOTIATION
Stacey J IturbideJapanXuxue Feng NEW
Arvin T ChuiArgentinaAmy Elsner NEGOTIATION
Claire T MaletAustraliaAsiya Javayant RENEWAL
Ivar Q VocelkaArgentinaIoni Bowcher QUALIFIED
Johnson A AlbaresUnited KingdomAsiya Javayant QUALIFIED
Stacey V MorascaAustraliaXuxue Feng NEGOTIATION
Isabel M BriddickItalyAmy Elsner RENEWAL
Wickens E SaylorsCanadaOnyama Limba NEGOTIATION
Costa S TollnerJapanOnyama Limba RENEWAL
Faith G IturbideItalyOnyama Limba QUALIFIED
Johnson Y InouyeArgentinaAnna Fali NEGOTIATION
Leja C RoysterAustraliaIvan Magalhaes QUALIFIED
Francesco G SergiItalyXuxue Feng PROPOSAL
Juan D MorascaArgentinaOnyama Limba NEW
Arvin Y RimAustraliaElwin Sharvill QUALIFIED
Nicolas B DarakjyJapanXuxue Feng PROPOSAL
Rodrigues V SchemmerSpainIvan Magalhaes NEW
Jones G VenereGermanyOnyama Limba NEW
Arvin V GauchoBrazilAmy Elsner UNQUALIFIED
Aruna H FigeroaAustraliaOnyama Limba NEW
Antonio V BologniaCanadaElwin Sharvill QUALIFIED
Rodrigues O BriddickArgentinaAsiya Javayant 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>