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
Arvin O GarufiBrazilBernardo Dominic PROPOSAL
Leon C StockhamCanadaXuxue Feng NEW
Chavez D AmigonAustraliaElwin Sharvill NEGOTIATION
Antonio T KolmetzSpainAmy Elsner PROPOSAL
Aditya F RutaCanadaOnyama Limba UNQUALIFIED
Aditya T WhobreyJapanStephen Shaw NEGOTIATION
Jones V SergiJapanAmy Elsner NEW
Isabel M NickaUnited KingdomAsiya Javayant PROPOSAL
Emily O OldroydRussiaAmy Elsner NEW
Francesco W RimJapanOnyama Limba UNQUALIFIED
Sinclair K OstroskyRussiaAmy Elsner RENEWAL
Kadeem K SaylorsJapanBernardo Dominic RENEWAL
Silvio F BriddickSpainIoni Bowcher NEGOTIATION
Emily A FlosiUnited KingdomOnyama Limba QUALIFIED
Francesco S RoysterFranceBernardo Dominic NEW
Munro Y SlusarskiSpainAsiya Javayant PROPOSAL
Clifford D FollerGermanyElwin Sharvill UNQUALIFIED
Cody Y MorascaArgentinaIvan Magalhaes RENEWAL
Antonio H RutaFranceBernardo Dominic UNQUALIFIED
Ricardo G OldroydGermanyXuxue Feng NEGOTIATION
David D MorascaUnited KingdomXuxue Feng PROPOSAL
Emily F VenereArgentinaIoni Bowcher PROPOSAL
Chavez T NickaBrazilAnna Fali QUALIFIED
Leon Y RulapaughFranceBernardo Dominic RENEWAL
Wickens S RulapaughCanadaElwin Sharvill RENEWAL
Misaki C MacleadGermanyElwin Sharvill PROPOSAL
Alejandro M PaprockiItalyIvan Magalhaes RENEWAL
Costa C PoquetteBrazilOnyama Limba UNQUALIFIED
Rodrigues Y StockhamGermanyXuxue Feng QUALIFIED
Kaitlin T MaletFranceAmy Elsner UNQUALIFIED
James I StockhamSpainIoni Bowcher PROPOSAL
Leon P MarrierJapanBernardo Dominic NEGOTIATION
Clifford G ShinkoJapanIvan Magalhaes QUALIFIED
Aika E BologniaGermanyOnyama Limba NEW
Ashley O OstroskyIndiaIoni Bowcher QUALIFIED
Leon J RulapaughFranceStephen Shaw NEW
Greenwood C NestleJapanAsiya Javayant PROPOSAL
Adams Q OstroskyAustraliaBernardo Dominic PROPOSAL
James D DilliardArgentinaIoni Bowcher NEW
James W PerinSpainAsiya Javayant RENEWAL
David N MorascaSpainIoni Bowcher NEGOTIATION
David P SaylorsRussiaAnna Fali NEW
Leja S WaycottItalyAnna Fali PROPOSAL
Johnson F MorascaAustraliaAmy Elsner UNQUALIFIED
Kadeem A StockhamBrazilBernardo Dominic NEW
Claire V GillianAustraliaAnna Fali QUALIFIED
David X WhobreyCanadaElwin Sharvill NEW
Antonio T SchemmerFranceIvan Magalhaes PROPOSAL
Alejandro X OldroydIndiaElwin Sharvill NEW
Darci Q DilliardItalyIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria L RoysterRussiaStephen Shaw NEGOTIATION
Claire H RimSpainBernardo Dominic NEW
Salvatore Y RulapaughAustraliaBernardo Dominic QUALIFIED
James H KolmetzItalyStephen Shaw PROPOSAL
Mayumi N VenereRussiaOnyama Limba NEW
Deepesh T DarakjyRussiaElwin Sharvill QUALIFIED
Nicolas G SaylorsCanadaAmy Elsner NEW
Alejandro I CaudyRussiaAmy Elsner PROPOSAL
Silvio D MacleadJapanAsiya Javayant RENEWAL
Leja Z GarufiFranceElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro F StensethBrazil2024-05-29King, Christopher A Esq NEW68Xuxue Feng
1001Francesco L NestleArgentina2024-06-21Feiner Bros PROPOSAL83Asiya Javayant
1002Wickens P IturbideGermany2024-05-27Feiner Bros QUALIFIED84Xuxue Feng
1003Adams J BriddickBrazil2024-06-13Chanay, Jeffrey A Esq QUALIFIED16Elwin Sharvill
1004Aruna G AmigonItaly2024-06-20King, Christopher A Esq NEW72Bernardo Dominic
1005Octavia X KuskoRussia2024-05-28King, Christopher A Esq NEW83Elwin Sharvill
1006Claire I DoeGermany2024-06-18Feltz Printing Service NEGOTIATION84Onyama Limba
1007Mayumi F PaprockiBrazil2024-05-27Chanay, Jeffrey A Esq QUALIFIED63Xuxue Feng
1008Isabel Y NestleFrance2024-05-29Chemel, James L Cpa NEW62Xuxue Feng
1009Morrow K MorascaFrance2024-06-13Benton, John B Jr UNQUALIFIED42Ioni Bowcher
1010Sinclair Y WaycottRussia2024-06-11Feiner Bros NEW94Ioni Bowcher
1011Rodrigues P OstroskyJapan2024-06-04Feltz Printing Service NEGOTIATION19Ivan Magalhaes
1012Maria K StensethGermany2024-06-15Rangoni Of Florence RENEWAL8Anna Fali
1013Jefferson G WhobreyIndia2024-06-17Commercial Press NEW17Anna Fali
1014Kadeem J FlosiJapan2024-06-23Buckley Miller Wright NEGOTIATION61Asiya Javayant
1015David B IturbideItaly2024-06-05Dorl, James J Esq NEGOTIATION70Xuxue Feng
1016Deepesh Z FlosiBrazil2024-05-31King, Christopher A Esq RENEWAL33Asiya Javayant
1017Adams G BriddickAustralia2024-06-21Feltz Printing Service QUALIFIED44Onyama Limba
1018Alejandro E StockhamCanada2024-06-04Chapman, Ross E Esq NEGOTIATION6Asiya Javayant
1019Tony V InouyeIndia2024-06-07Truhlar And Truhlar Attys UNQUALIFIED48Anna Fali
1020Maisha J RimJapan2024-06-11King, Christopher A Esq NEW48Anna Fali
1021Cody I IturbideUnited Kingdom2024-06-23Dorl, James J Esq NEW88Elwin Sharvill
1022Ricardo F PaprockiCanada2024-06-18Rousseaux, Michael Esq NEW25Asiya Javayant
1023Leja D MaletAustralia2024-06-01Printing Dimensions RENEWAL65Elwin Sharvill
1024Ashley F NestleAustralia2024-06-12Feltz Printing Service RENEWAL33Amy Elsner
1025Jefferson J NickaItaly2024-06-02Chapman, Ross E Esq RENEWAL70Asiya Javayant
1026Leja V DilliardAustralia2024-06-18Chanay, Jeffrey A Esq NEGOTIATION0Ivan Magalhaes
1027Francesco Y WieserFrance2024-06-10Buckley Miller Wright PROPOSAL33Xuxue Feng
1028Salvatore I CampainSpain2024-06-24Buckley Miller Wright UNQUALIFIED88Asiya Javayant
1029Izzy O NickaCanada2024-06-02Feltz Printing Service PROPOSAL74Bernardo Dominic
1030Leon L OstroskyItaly2024-06-17Chapman, Ross E Esq PROPOSAL8Ioni Bowcher
1031Darci B NestleUnited Kingdom2024-06-21Truhlar And Truhlar Attys NEGOTIATION3Bernardo Dominic
1032Munro G VocelkaGermany2024-05-29Feltz Printing Service RENEWAL73Ioni Bowcher
1033Alejandro S DarakjyBrazil2024-05-29Chapman, Ross E Esq UNQUALIFIED71Ivan Magalhaes
1034Mujtaba T MarrierUnited Kingdom2024-06-16Benton, John B Jr UNQUALIFIED80Anna Fali
1035Salvatore I DoeBrazil2024-06-19Rangoni Of Florence QUALIFIED44Stephen Shaw
1036James K MaletUnited Kingdom2024-06-04Rousseaux, Michael Esq QUALIFIED39Ivan Magalhaes
1037Jones Q NestleIndia2024-06-07Benton, John B Jr QUALIFIED2Ivan Magalhaes
1038Wickens N SergiCanada2024-05-31Printing Dimensions UNQUALIFIED25Bernardo Dominic
1039Arvin W WaycottGermany2024-05-28Commercial Press NEGOTIATION81Bernardo Dominic
1040Greenwood P PaprockiItaly2024-06-11Morlong Associates QUALIFIED39Ioni Bowcher
1041Izzy N KuskoUnited Kingdom2024-05-30King, Christopher A Esq NEW64Elwin Sharvill
1042Ashley N GlickIndia2024-06-09Chapman, Ross E Esq QUALIFIED51Stephen Shaw
1043Arvin H CaldareraIndia2024-06-07Benton, John B Jr QUALIFIED42Stephen Shaw
1044Munro J DilliardRussia2024-06-08Rousseaux, Michael Esq NEGOTIATION28Xuxue Feng
1045Jefferson R BriddickJapan2024-06-08Benton, John B Jr UNQUALIFIED11Anna Fali
1046David H KuskoSpain2024-05-28Rangoni Of Florence UNQUALIFIED5Stephen Shaw
1047Sinclair G SlusarskiRussia2024-06-22Buckley Miller Wright NEW49Amy Elsner
1048Smith H KolmetzUnited Kingdom2024-06-06Rangoni Of Florence PROPOSAL28Anna Fali
1049Tony K DarakjyBrazil2024-06-16Rangoni Of Florence PROPOSAL72Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Sinclair K WaycottCanadaIvan Magalhaes RENEWAL
Mayumi T GarufiItalyIvan Magalhaes PROPOSAL
Juan H RoysterArgentinaAnna Fali PROPOSAL
Maisha W FigeroaJapanIoni Bowcher NEGOTIATION
Silvio Y PaprockiCanadaAnna Fali UNQUALIFIED
Jefferson O IturbideBrazilAnna Fali NEW
Jeanfrancois K CampainFranceIvan Magalhaes UNQUALIFIED
Mayumi Y RutaItalyXuxue Feng NEW
Stacey R DilliardUnited KingdomAmy Elsner QUALIFIED
James H PoquetteItalyAsiya Javayant RENEWAL
Aditya Y StensethSpainElwin Sharvill RENEWAL
James Y FerenczSpainIvan Magalhaes UNQUALIFIED
Mayumi E GlickArgentinaAnna Fali NEW
Greenwood I StensethSpainElwin Sharvill RENEWAL
Maria V NestleItalyOnyama Limba QUALIFIED
Julie T ButtAustraliaElwin Sharvill NEW
Jefferson R DarakjySpainAsiya Javayant PROPOSAL
Silvio K WaycottUnited KingdomAmy Elsner PROPOSAL
Nicolas N NickaJapanAsiya Javayant UNQUALIFIED
Isabel R CaldareraFranceXuxue Feng PROPOSAL
Alejandro F GlickFranceXuxue Feng NEW
Silvio I VocelkaSpainXuxue Feng NEW
Greenwood E OstroskyArgentinaOnyama Limba PROPOSAL
Kaitlin X FigeroaFranceOnyama Limba RENEWAL
Leon P RulapaughSpainOnyama Limba NEW
Ashley T NestleSpainStephen Shaw UNQUALIFIED
Smith Z WieserItalyOnyama Limba RENEWAL
Chavez D CaudyBrazilAmy Elsner NEW
Adams Q RimUnited KingdomOnyama Limba NEGOTIATION
Leja N OstroskyItalyAnna Fali UNQUALIFIED
Claire D FollerJapanElwin Sharvill NEW
Emily I MorascaUnited KingdomXuxue Feng NEGOTIATION
Ashley G WaycottJapanXuxue Feng UNQUALIFIED
Chavez O NestleArgentinaOnyama Limba NEGOTIATION
David G DilliardFranceAmy Elsner UNQUALIFIED
Adams K DoeAustraliaAsiya Javayant NEW
Greenwood V CampainJapanAsiya Javayant NEW
David N RimSpainAnna Fali NEGOTIATION
Salvatore K GlickUnited KingdomAmy Elsner UNQUALIFIED
Emily C InouyeJapanIvan Magalhaes UNQUALIFIED
Antonio S FigeroaJapanIvan Magalhaes NEGOTIATION
Ashley J GlickRussiaAsiya Javayant NEW
Izzy S RulapaughCanadaXuxue Feng NEGOTIATION
Juan B VenereGermanyIoni Bowcher RENEWAL
Smith X KolmetzGermanyBernardo Dominic PROPOSAL
Greenwood P GarufiAustraliaIvan Magalhaes NEGOTIATION
Octavia I DoeGermanyAmy Elsner RENEWAL
Morrow Y RoysterCanadaBernardo Dominic UNQUALIFIED
James C GauchoGermanyXuxue Feng NEW
Alejandro P NestleSpainAnna Fali PROPOSAL
Frozen Columns
Name
Darci T Glick
Munro O Briddick
Costa W Flosi
Octavia K Waycott
Murillo E Vocelka
Aditya E Saylors
Ashley M Oldroyd
Costa L Ostrosky
Antonio J Inouye
Antonio M Campain
Aika Q Inouye
Clifford H Gaucho
Faith C Iturbide
Tony O Butt
Arvin C Ostrosky
David U Ferencz
Kaitlin B Dilliard
Aditya F Caudy
Costa F Nicka
Clifford X Bolognia
Maria X Bolognia
Rodrigues U Figeroa
Leon M Caudy
Faith W Bowley
Isabel K Royster
Johnson Z Iturbide
Deepesh S Butt
David H Glick
Nicolas M Figeroa
Morrow E Stenseth
Greenwood L Flosi
Darci P Venere
Faith Z Malet
Claire P Oldroyd
Octavia V Stockham
Darci W Caldarera
Claire Q Stenseth
Mujtaba H Bolognia
Rodrigues U Ferencz
Ashley U Glick
Octavia K Perin
Emily G Figeroa
Jennifer E Royster
Johnson A Ostrosky
Mayumi K Rulapaugh
Rodrigues N Ostrosky
James Y Chui
Adams M Caudy
Clifford N Gaucho
Julie S Nestle
IdCountryDate
1000Spain2024-06-22
1001Australia2024-06-23
1002Japan2024-06-03
1003Russia2024-05-31
1004Japan2024-06-02
1005Argentina2024-06-01
1006Japan2024-06-07
1007Australia2024-06-08
1008India2024-06-18
1009Italy2024-06-18
1010United Kingdom2024-06-04
1011Germany2024-06-09
1012Germany2024-06-11
1013Germany2024-06-18
1014Spain2024-06-24
1015India2024-06-20
1016Brazil2024-06-12
1017Russia2024-05-29
1018Brazil2024-06-22
1019Australia2024-06-21
1020India2024-06-02
1021India2024-06-19
1022Brazil2024-06-09
1023France2024-06-23
1024Germany2024-06-01
1025Russia2024-06-14
1026United Kingdom2024-06-06
1027India2024-06-17
1028Germany2024-06-19
1029United Kingdom2024-05-27
1030Canada2024-06-18
1031Spain2024-06-14
1032Brazil2024-06-02
1033Canada2024-06-09
1034Argentina2024-06-01
1035Australia2024-06-14
1036Russia2024-06-22
1037Australia2024-06-21
1038Germany2024-05-29
1039Canada2024-06-05
1040Spain2024-06-13
1041India2024-05-28
1042Argentina2024-05-30
1043Germany2024-05-28
1044Argentina2024-06-23
1045Russia2024-06-03
1046India2024-05-26
1047Japan2024-06-09
1048Japan2024-06-06
1049Japan2024-06-09

On-Demand Data

NameIdCountryDate
Aruna E Paprocki1000Russia2024-06-24
Tony S Foller1001Brazil2024-05-30
Mayumi V Campain1002Italy2024-06-16
Antonio F Vocelka1003United Kingdom2024-05-30
Aditya L Rim1004Argentina2024-06-17
Julie M Sergi1005Canada2024-06-15
Morrow W Wieser1006India2024-06-03
Darci F Royster1007Canada2024-06-15
Maria E Nicka1008Japan2024-06-08
David P Slusarski1009Germany2024-06-15
Antonio O Whobrey1010Japan2024-06-08
Jennifer Z Schemmer1011Russia2024-06-04
Claire X Flosi1012Canada2024-05-26
Morrow B Flosi1013Canada2024-05-29
Jennifer H Caudy1014Canada2024-06-06
Alejandro V Campain1015Canada2024-06-23
Jones T Campain1016Australia2024-05-28
Jennifer J Maclead1017Australia2024-06-13
Maisha D Tollner1018Germany2024-06-17
Wickens U Royster1019Canada2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James L AlbaresAustraliaIoni Bowcher QUALIFIED
Kaitlin X RutaUnited KingdomElwin Sharvill QUALIFIED
Leja B PerinArgentinaOnyama Limba NEGOTIATION
Jeanfrancois R MaletSpainAnna Fali UNQUALIFIED
Antonio W RimJapanIvan Magalhaes NEW
Julie M FlosiIndiaXuxue Feng RENEWAL
Claire C KolmetzArgentinaXuxue Feng UNQUALIFIED
Francesco P CaldareraBrazilElwin Sharvill UNQUALIFIED
Cody R PoquetteGermanyAnna Fali NEGOTIATION
Clifford T MaletItalyAsiya Javayant RENEWAL
Francesco U CampainJapanOnyama Limba UNQUALIFIED
Alejandro P MaletUnited KingdomAsiya Javayant PROPOSAL
Mujtaba N PerinJapanIoni Bowcher PROPOSAL
Antonio H NestleIndiaStephen Shaw NEGOTIATION
Jeanfrancois F DarakjyFranceElwin Sharvill UNQUALIFIED
Smith L OstroskyArgentinaXuxue Feng PROPOSAL
Mujtaba D OstroskySpainIoni Bowcher QUALIFIED
Aruna R DilliardGermanyBernardo Dominic RENEWAL
Jeanfrancois X BologniaAustraliaOnyama Limba QUALIFIED
Juan Z DoeGermanyIvan Magalhaes PROPOSAL
Stacey Y FollerItalyBernardo Dominic NEW
Kaitlin V CaldareraJapanAmy Elsner QUALIFIED
Mayumi G OstroskyRussiaAsiya Javayant QUALIFIED
Antonio E RulapaughCanadaElwin Sharvill QUALIFIED
Mujtaba T WaycottSpainAnna Fali PROPOSAL
Murillo I RoysterFranceAmy Elsner UNQUALIFIED
Cody Y TollnerSpainStephen Shaw UNQUALIFIED
Misaki C ChuiIndiaOnyama Limba UNQUALIFIED
James W NestleIndiaIvan Magalhaes NEW
Claire K SchemmerArgentinaXuxue Feng QUALIFIED
David S GlickCanadaIoni Bowcher RENEWAL
Stacey L MorascaUnited KingdomOnyama Limba NEGOTIATION
Jennifer J SlusarskiSpainElwin Sharvill NEW
Antonio N BowleyArgentinaAsiya Javayant NEW
Smith W SaylorsJapanIvan Magalhaes PROPOSAL
Misaki N RimRussiaAnna Fali NEGOTIATION
Arvin Y IturbideRussiaIvan Magalhaes PROPOSAL
Aruna M CaldareraArgentinaXuxue Feng PROPOSAL
Munro T GauchoIndiaBernardo Dominic UNQUALIFIED
Johnson N OldroydCanadaOnyama Limba NEW

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