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
Mujtaba O WaycottSpainBernardo Dominic NEGOTIATION
Francesco W BologniaArgentinaBernardo Dominic NEW
Cody N MacleadItalyIvan Magalhaes RENEWAL
Ivar X RutaGermanyXuxue Feng NEW
Salvatore I InouyeUnited KingdomAnna Fali RENEWAL
Darci U SaylorsCanadaAsiya Javayant RENEWAL
Ricardo V AlbaresGermanyAnna Fali QUALIFIED
Alejandro N DarakjyArgentinaAsiya Javayant PROPOSAL
Octavia S MarrierBrazilIvan Magalhaes NEGOTIATION
Smith M BologniaItalyXuxue Feng NEGOTIATION
Aika D KolmetzCanadaXuxue Feng PROPOSAL
Rodrigues W MaletArgentinaAmy Elsner PROPOSAL
Aditya N TollnerJapanAnna Fali PROPOSAL
Leja V TollnerArgentinaBernardo Dominic NEW
Aruna K RoysterBrazilOnyama Limba QUALIFIED
James W PaprockiAustraliaBernardo Dominic NEW
Wickens L DilliardCanadaIoni Bowcher QUALIFIED
Octavia U ButtUnited KingdomAsiya Javayant NEW
Leon L GillianGermanyElwin Sharvill UNQUALIFIED
Munro O RimArgentinaAnna Fali NEW
Arvin C MaletCanadaAnna Fali NEW
Izzy Q OldroydCanadaIvan Magalhaes QUALIFIED
Jennifer D NickaIndiaElwin Sharvill RENEWAL
Isabel A SchemmerItalyXuxue Feng UNQUALIFIED
Clifford B MacleadJapanIvan Magalhaes PROPOSAL
Arvin H SaylorsItalyElwin Sharvill RENEWAL
Isabel B SchemmerGermanyOnyama Limba RENEWAL
Salvatore I FigeroaCanadaAmy Elsner NEGOTIATION
Izzy U PerinFranceXuxue Feng QUALIFIED
Izzy T SergiFranceBernardo Dominic UNQUALIFIED
Francesco L RulapaughCanadaAsiya Javayant UNQUALIFIED
Aika C IturbideFranceXuxue Feng NEW
Stacey A FollerUnited KingdomAnna Fali NEW
Deepesh G InouyeItalyBernardo Dominic UNQUALIFIED
Stacey E CampainSpainStephen Shaw RENEWAL
Nicolas G CaudyIndiaBernardo Dominic RENEWAL
Deepesh X CampainBrazilAmy Elsner NEW
Sinclair I AmigonBrazilAmy Elsner QUALIFIED
Isabel B RutaGermanyAmy Elsner RENEWAL
Johnson F BriddickUnited KingdomAsiya Javayant NEGOTIATION
James W ButtJapanBernardo Dominic UNQUALIFIED
Misaki O FerenczCanadaIvan Magalhaes NEW
Nicolas S PerinBrazilOnyama Limba NEGOTIATION
Leja Y SchemmerRussiaIoni Bowcher QUALIFIED
Mayumi L BowleySpainIvan Magalhaes UNQUALIFIED
Leja V WaycottIndiaIoni Bowcher NEGOTIATION
Munro X ChuiRussiaAnna Fali RENEWAL
Isabel D FigeroaItalyAnna Fali NEW
Deepesh K WaycottIndiaAsiya Javayant NEGOTIATION
Izzy M StockhamBrazilBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mayumi H FlosiAustraliaAmy Elsner PROPOSAL
Stacey M CampainSpainIvan Magalhaes NEW
David Z ChuiCanadaIoni Bowcher NEW
Francesco R OldroydAustraliaBernardo Dominic RENEWAL
Leon V DoeUnited KingdomBernardo Dominic RENEWAL
Clifford U ShinkoArgentinaAnna Fali NEW
Maria I BologniaArgentinaStephen Shaw RENEWAL
Silvio N StockhamAustraliaIoni Bowcher PROPOSAL
Misaki M WhobreyGermanyAnna Fali UNQUALIFIED
Silvio V WaycottBrazilBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood Z SlusarskiGermany2024-06-20Dorl, James J Esq NEGOTIATION70Onyama Limba
1001Faith C FigeroaUnited Kingdom2024-06-20Commercial Press PROPOSAL84Bernardo Dominic
1002Deepesh B RoysterIndia2024-06-18Chapman, Ross E Esq QUALIFIED99Asiya Javayant
1003Adams C StockhamSpain2024-06-20Buckley Miller Wright NEGOTIATION16Onyama Limba
1004Sinclair S PaprockiArgentina2024-06-12Morlong Associates UNQUALIFIED44Onyama Limba
1005Mujtaba D KuskoSpain2024-06-14Chemel, James L Cpa PROPOSAL37Elwin Sharvill
1006Rodrigues B PerinRussia2024-06-05Chemel, James L Cpa NEW25Onyama Limba
1007Kadeem L MarrierSpain2024-06-05Morlong Associates RENEWAL22Onyama Limba
1008Leja H RutaRussia2024-05-26Chanay, Jeffrey A Esq NEW23Elwin Sharvill
1009Isabel D VocelkaRussia2024-06-11Chemel, James L Cpa PROPOSAL57Elwin Sharvill
1010Ricardo C RimCanada2024-06-17Benton, John B Jr QUALIFIED7Amy Elsner
1011Chavez P BriddickIndia2024-06-08Truhlar And Truhlar Attys UNQUALIFIED0Ioni Bowcher
1012Mayumi U RutaGermany2024-05-27Buckley Miller Wright PROPOSAL89Bernardo Dominic
1013Munro R MorascaRussia2024-05-24Feltz Printing Service PROPOSAL62Ioni Bowcher
1014Nicolas D IturbideIndia2024-06-18Commercial Press NEW76Amy Elsner
1015Johnson K GarufiUnited Kingdom2024-06-19Rousseaux, Michael Esq QUALIFIED10Ivan Magalhaes
1016Stacey U RutaFrance2024-06-08King, Christopher A Esq RENEWAL13Stephen Shaw
1017Alejandro Q VenereRussia2024-06-16Chapman, Ross E Esq NEGOTIATION67Elwin Sharvill
1018David B RulapaughArgentina2024-06-21Dorl, James J Esq RENEWAL68Asiya Javayant
1019Clifford O DarakjyArgentina2024-05-28Rousseaux, Michael Esq NEW37Anna Fali
1020Sinclair P KolmetzIndia2024-06-06Printing Dimensions NEGOTIATION8Ivan Magalhaes
1021Aruna C PoquetteFrance2024-06-04Feltz Printing Service NEGOTIATION93Ioni Bowcher
1022Alejandro D AmigonJapan2024-05-29Benton, John B Jr NEW65Onyama Limba
1023Silvio L BowleyJapan2024-06-20Chapman, Ross E Esq NEGOTIATION58Amy Elsner
1024Julie S ChuiRussia2024-06-10Feltz Printing Service NEW47Bernardo Dominic
1025Sinclair O FigeroaCanada2024-06-03Rangoni Of Florence NEW72Ioni Bowcher
1026James C FerenczFrance2024-06-21Benton, John B Jr NEGOTIATION93Elwin Sharvill
1027Ashley C MaletSpain2024-06-02Printing Dimensions UNQUALIFIED7Ivan Magalhaes
1028Maisha A ShinkoArgentina2024-05-28Feiner Bros PROPOSAL79Ivan Magalhaes
1029Cody I DarakjyIndia2024-06-05King, Christopher A Esq PROPOSAL85Elwin Sharvill
1030Misaki E KolmetzCanada2024-06-20Chemel, James L Cpa NEGOTIATION69Ioni Bowcher
1031Morrow J MacleadJapan2024-06-16Chemel, James L Cpa QUALIFIED93Amy Elsner
1032Chavez W AlbaresGermany2024-06-04Buckley Miller Wright UNQUALIFIED72Xuxue Feng
1033Izzy N PoquetteRussia2024-06-13Commercial Press NEGOTIATION83Amy Elsner
1034Chavez Y OldroydArgentina2024-05-27Chanay, Jeffrey A Esq RENEWAL27Ioni Bowcher
1035Smith Y MaletAustralia2024-05-29Commercial Press RENEWAL1Bernardo Dominic
1036Adams R StensethRussia2024-06-03Chanay, Jeffrey A Esq PROPOSAL61Amy Elsner
1037Cody Z MorascaSpain2024-06-20King, Christopher A Esq PROPOSAL95Asiya Javayant
1038Salvatore C ButtUnited Kingdom2024-06-15Printing Dimensions PROPOSAL96Ioni Bowcher
1039Munro S VenereItaly2024-06-03King, Christopher A Esq QUALIFIED39Ioni Bowcher
1040Maisha J CaudyIndia2024-06-16Commercial Press UNQUALIFIED30Elwin Sharvill
1041Leja L AlbaresSpain2024-06-01Commercial Press UNQUALIFIED84Elwin Sharvill
1042Maisha W StockhamBrazil2024-05-29Chemel, James L Cpa RENEWAL65Asiya Javayant
1043Aruna B MaletGermany2024-06-18Morlong Associates NEGOTIATION64Stephen Shaw
1044Jennifer L SlusarskiUnited Kingdom2024-06-01Commercial Press NEGOTIATION47Bernardo Dominic
1045Leja O ShinkoSpain2024-05-25Rangoni Of Florence NEW86Elwin Sharvill
1046Greenwood Y PaprockiFrance2024-06-11Chapman, Ross E Esq UNQUALIFIED88Amy Elsner
1047Stacey B FerenczIndia2024-05-27Printing Dimensions UNQUALIFIED37Anna Fali
1048Ivar W ShinkoUnited Kingdom2024-06-19Buckley Miller Wright NEW91Asiya Javayant
1049Aika K ChuiBrazil2024-06-10Feltz Printing Service NEGOTIATION14Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Silvio W NickaGermanyIvan Magalhaes UNQUALIFIED
Silvio S DilliardAustraliaBernardo Dominic NEW
Francesco Z InouyeSpainStephen Shaw QUALIFIED
Chavez V StensethSpainStephen Shaw RENEWAL
Chavez L StockhamUnited KingdomOnyama Limba PROPOSAL
Leon J WhobreyArgentinaBernardo Dominic UNQUALIFIED
Arvin E MaletIndiaAsiya Javayant QUALIFIED
Ashley C ChuiRussiaOnyama Limba NEGOTIATION
Isabel I ButtCanadaStephen Shaw UNQUALIFIED
Antonio S MarrierGermanyBernardo Dominic RENEWAL
Aika Q NickaCanadaAsiya Javayant PROPOSAL
Julie F SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Adams S FigeroaAustraliaXuxue Feng QUALIFIED
Mayumi U PerinUnited KingdomBernardo Dominic NEGOTIATION
Chavez M ShinkoUnited KingdomAsiya Javayant RENEWAL
Wickens K StensethUnited KingdomStephen Shaw NEW
Smith A CampainSpainIoni Bowcher RENEWAL
Claire E RoysterArgentinaBernardo Dominic UNQUALIFIED
Mujtaba L CaldareraSpainXuxue Feng UNQUALIFIED
Chavez M ButtJapanIvan Magalhaes PROPOSAL
James W BologniaBrazilAmy Elsner RENEWAL
Antonio U IturbideItalyOnyama Limba NEW
Ashley X DilliardArgentinaElwin Sharvill NEGOTIATION
Jennifer M CaldareraBrazilXuxue Feng PROPOSAL
Jeanfrancois C PerinCanadaBernardo Dominic NEGOTIATION
Jeanfrancois W GauchoBrazilAnna Fali NEW
Smith H CampainItalyStephen Shaw RENEWAL
Maria P WhobreyJapanAnna Fali PROPOSAL
Juan B StockhamAustraliaOnyama Limba UNQUALIFIED
Faith R MacleadSpainIvan Magalhaes UNQUALIFIED
Ivar X ButtJapanElwin Sharvill RENEWAL
Faith G SergiAustraliaAmy Elsner UNQUALIFIED
Misaki G FigeroaAustraliaAsiya Javayant NEGOTIATION
Johnson V CampainAustraliaAnna Fali NEW
Jennifer O CampainBrazilIvan Magalhaes RENEWAL
Emily P CampainItalyStephen Shaw RENEWAL
Deepesh Z PerinItalyBernardo Dominic QUALIFIED
David A PaprockiJapanAnna Fali QUALIFIED
Aditya H CaldareraArgentinaOnyama Limba RENEWAL
Adams T OldroydArgentinaIvan Magalhaes NEW
Francesco I VocelkaAustraliaXuxue Feng NEGOTIATION
Mayumi J WhobreyItalyIoni Bowcher QUALIFIED
Deepesh K OldroydIndiaOnyama Limba NEW
David D DilliardItalyStephen Shaw NEGOTIATION
Rodrigues D CaudyUnited KingdomXuxue Feng UNQUALIFIED
Stacey F InouyeItalyStephen Shaw RENEWAL
Emily O NickaItalyElwin Sharvill PROPOSAL
Darci D PaprockiFranceBernardo Dominic QUALIFIED
Alejandro Y FerenczRussiaIvan Magalhaes NEW
Deepesh V CampainSpainIvan Magalhaes RENEWAL
Frozen Columns
Name
Octavia Z Albares
Julie P Flosi
Nicolas K Bolognia
Misaki E Rim
Adams M Ostrosky
Tony I Slusarski
Tony C Ferencz
Maria E Vocelka
Julie R Schemmer
Rodrigues P Wieser
Juan H Briddick
Munro U Royster
Claire K Nestle
Ashley A Garufi
Darci L Caldarera
Antonio I Inouye
Leon Y Poquette
Aruna V Rulapaugh
Jefferson F Whobrey
Claire I Butt
James E Schemmer
Jeanfrancois A Inouye
Sinclair Z Darakjy
Johnson C Wieser
Kadeem H Paprocki
Jennifer J Ferencz
Clifford T Kolmetz
Leon J Schemmer
Emily Q Bolognia
Chavez V Flosi
Johnson Y Sergi
Misaki V Slusarski
Silvio T Vocelka
Johnson U Garufi
Adams W Schemmer
Darci I Paprocki
Darci F Malet
Darci X Malet
Maria R Glick
Octavia G Tollner
Mujtaba X Campain
Jefferson R Chui
Leon R Vocelka
Darci M Garufi
Francesco V Tollner
Kadeem B Slusarski
Cody Q Bowley
Alejandro Y Campain
Leon X Iturbide
Wickens H Chui
IdCountryDate
1000Brazil2024-06-20
1001Argentina2024-06-20
1002Japan2024-05-28
1003India2024-06-04
1004Australia2024-05-24
1005Argentina2024-06-15
1006Australia2024-05-23
1007Canada2024-06-08
1008Russia2024-05-31
1009France2024-06-16
1010Russia2024-06-12
1011Italy2024-05-30
1012India2024-05-25
1013Italy2024-06-15
1014Russia2024-06-10
1015France2024-06-11
1016Russia2024-05-27
1017Spain2024-06-13
1018Germany2024-06-14
1019Australia2024-06-01
1020France2024-06-17
1021Brazil2024-06-20
1022Canada2024-06-04
1023Japan2024-05-29
1024United Kingdom2024-06-18
1025Spain2024-05-25
1026India2024-05-27
1027Brazil2024-06-08
1028Brazil2024-06-17
1029Germany2024-06-12
1030Argentina2024-05-30
1031Argentina2024-06-03
1032Italy2024-06-07
1033Canada2024-06-15
1034Spain2024-06-14
1035Brazil2024-05-27
1036Italy2024-06-11
1037United Kingdom2024-05-28
1038France2024-06-03
1039India2024-06-11
1040Spain2024-06-02
1041Germany2024-06-04
1042Germany2024-05-26
1043India2024-06-02
1044Australia2024-05-27
1045Japan2024-06-09
1046Italy2024-05-28
1047Spain2024-06-06
1048Russia2024-06-16
1049Canada2024-05-23

On-Demand Data

NameIdCountryDate
Chavez R Maclead1000Australia2024-06-07
Julie H Ostrosky1001Italy2024-06-12
Maisha V Perin1002United Kingdom2024-06-13
Cody R Flosi1003India2024-06-10
Kadeem V Caudy1004Argentina2024-06-20
Claire S Ruta1005Australia2024-05-23
Tony N Amigon1006Germany2024-06-12
Silvio X Ferencz1007Spain2024-05-24
Misaki D Kusko1008Japan2024-06-17
James J Briddick1009Argentina2024-06-07
Deepesh S Iturbide1010Argentina2024-06-19
Maria T Sergi1011Argentina2024-05-26
Misaki T Caudy1012Argentina2024-06-05
Francesco T Amigon1013Argentina2024-06-08
Jeanfrancois I Bowley1014United Kingdom2024-05-28
Greenwood C Vocelka1015India2024-06-05
Aika W Marrier1016Canada2024-05-24
Leon N Oldroyd1017Japan2024-06-16
Ivar O Rulapaugh1018Japan2024-05-28
Maisha N Rim1019Brazil2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar I NickaIndiaIvan Magalhaes QUALIFIED
Adams I ButtArgentinaElwin Sharvill NEW
Ricardo T SlusarskiGermanyOnyama Limba NEW
Jones Z NestleArgentinaElwin Sharvill NEGOTIATION
Francesco O GauchoCanadaStephen Shaw PROPOSAL
Mujtaba E CaudyIndiaBernardo Dominic NEGOTIATION
Salvatore A ShinkoSpainAsiya Javayant QUALIFIED
Wickens E CaudyJapanAmy Elsner NEW
Ricardo F RutaAustraliaStephen Shaw NEW
Silvio O RutaSpainAsiya Javayant RENEWAL
Octavia R DilliardCanadaElwin Sharvill RENEWAL
Arvin G GarufiJapanAmy Elsner UNQUALIFIED
Isabel H RulapaughJapanOnyama Limba RENEWAL
Aditya B WaycottRussiaBernardo Dominic UNQUALIFIED
Chavez J CampainSpainBernardo Dominic RENEWAL
Leon V TollnerArgentinaAmy Elsner NEGOTIATION
Leon S StensethRussiaOnyama Limba QUALIFIED
Claire J MarrierGermanyXuxue Feng QUALIFIED
Misaki J SchemmerSpainAsiya Javayant QUALIFIED
Aditya B KolmetzAustraliaOnyama Limba QUALIFIED
Aika O MaletAustraliaAmy Elsner NEW
Francesco J PoquetteSpainStephen Shaw PROPOSAL
David W NestleIndiaIoni Bowcher RENEWAL
Salvatore J CaudySpainAsiya Javayant UNQUALIFIED
David U MacleadBrazilIvan Magalhaes UNQUALIFIED
Nicolas I KolmetzCanadaAnna Fali PROPOSAL
Darci Y StensethArgentinaStephen Shaw QUALIFIED
Leon V BowleyBrazilAnna Fali RENEWAL
Costa A RutaBrazilXuxue Feng UNQUALIFIED
Nicolas Y FlosiUnited KingdomIvan Magalhaes UNQUALIFIED
Cody C FollerCanadaAnna Fali NEW
Kadeem I DoeAustraliaAnna Fali RENEWAL
Jefferson L DoeArgentinaAmy Elsner NEGOTIATION
Greenwood R MarrierIndiaAnna Fali UNQUALIFIED
Ivar K DoeSpainIoni Bowcher PROPOSAL
Jeanfrancois E BologniaItalyBernardo Dominic RENEWAL
Kaitlin H DilliardIndiaOnyama Limba RENEWAL
Aika L AmigonBrazilAnna Fali QUALIFIED
Deepesh Y CaldareraSpainBernardo Dominic UNQUALIFIED
Stacey U MaletSpainAsiya Javayant 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>