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 X CaudyUnited KingdomStephen Shaw RENEWAL
Chavez Z DoeBrazilBernardo Dominic RENEWAL
Maria M AmigonUnited KingdomElwin Sharvill PROPOSAL
Leon H KolmetzCanadaElwin Sharvill PROPOSAL
Greenwood J CampainArgentinaXuxue Feng RENEWAL
Costa A SergiSpainAsiya Javayant NEGOTIATION
Leja V DilliardBrazilAnna Fali NEW
Octavia H NickaJapanAmy Elsner NEGOTIATION
Juan W OstroskyUnited KingdomAnna Fali NEW
Antonio R FerenczAustraliaIvan Magalhaes NEW
Alejandro W MacleadSpainElwin Sharvill NEW
Faith K RulapaughFranceAsiya Javayant PROPOSAL
Chavez Z RoysterSpainIvan Magalhaes PROPOSAL
Leja K WaycottArgentinaXuxue Feng NEW
Kaitlin L RulapaughFranceBernardo Dominic RENEWAL
Tony A GillianJapanAnna Fali PROPOSAL
Chavez V MorascaIndiaElwin Sharvill NEGOTIATION
Claire U DoeUnited KingdomIoni Bowcher UNQUALIFIED
Cody X MacleadFranceElwin Sharvill NEGOTIATION
Arvin Q BowleyIndiaBernardo Dominic UNQUALIFIED
Juan O BowleyRussiaIvan Magalhaes NEW
Munro F DoeIndiaIvan Magalhaes NEW
James V GillianGermanyAsiya Javayant UNQUALIFIED
Clifford H MacleadJapanElwin Sharvill PROPOSAL
Cody A FigeroaAustraliaStephen Shaw QUALIFIED
Leon N WieserBrazilAsiya Javayant NEGOTIATION
Izzy B PaprockiUnited KingdomIvan Magalhaes PROPOSAL
Jones G MaletCanadaXuxue Feng PROPOSAL
Morrow E PerinBrazilAsiya Javayant PROPOSAL
Julie Z AmigonAustraliaAnna Fali QUALIFIED
Aditya I RoysterGermanyAnna Fali RENEWAL
Greenwood C VocelkaBrazilAsiya Javayant QUALIFIED
Darci O SlusarskiAustraliaXuxue Feng RENEWAL
Leja A NestleGermanyIvan Magalhaes UNQUALIFIED
Maisha X StockhamItalyAsiya Javayant RENEWAL
Greenwood Z MaletItalyBernardo Dominic NEGOTIATION
Octavia F MaletItalyElwin Sharvill PROPOSAL
Cody E MaletArgentinaBernardo Dominic UNQUALIFIED
Faith G GlickItalyAsiya Javayant QUALIFIED
Octavia O RutaAustraliaAnna Fali QUALIFIED
Cody B SlusarskiRussiaElwin Sharvill NEGOTIATION
Mayumi Y VenereGermanyIvan Magalhaes QUALIFIED
Nicolas V MaletBrazilElwin Sharvill RENEWAL
Julie T SlusarskiJapanAnna Fali QUALIFIED
James S ChuiIndiaIvan Magalhaes QUALIFIED
Silvio V GlickIndiaBernardo Dominic NEGOTIATION
Chavez U RutaGermanyAsiya Javayant UNQUALIFIED
Deepesh N WhobreyBrazilAmy Elsner QUALIFIED
Stacey T SlusarskiIndiaXuxue Feng RENEWAL
Julie V RutaJapanBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria J WaycottBrazilElwin Sharvill RENEWAL
Leja G StockhamSpainStephen Shaw NEW
Faith V OldroydAustraliaIoni Bowcher NEGOTIATION
Leon Z CaudyBrazilBernardo Dominic NEGOTIATION
Antonio T SchemmerAustraliaIvan Magalhaes NEW
Emily X MaletBrazilBernardo Dominic NEW
Jeanfrancois O DilliardAustraliaIoni Bowcher QUALIFIED
Emily V ShinkoCanadaAnna Fali UNQUALIFIED
Maria Y VenereBrazilIvan Magalhaes NEW
Murillo I DoeSpainIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi L GillianCanada2024-05-13Rousseaux, Michael Esq RENEWAL49Xuxue Feng
1001Ivar O KuskoRussia2024-05-24King, Christopher A Esq RENEWAL25Asiya Javayant
1002Alejandro E NestleCanada2024-06-05Morlong Associates RENEWAL69Anna Fali
1003Morrow N NickaSpain2024-05-25Feltz Printing Service PROPOSAL63Amy Elsner
1004Aditya D KolmetzCanada2024-05-09Feiner Bros QUALIFIED99Ioni Bowcher
1005Jennifer U StockhamCanada2024-06-03Rousseaux, Michael Esq RENEWAL49Anna Fali
1006Munro B CampainUnited Kingdom2024-06-05Commercial Press PROPOSAL77Xuxue Feng
1007Jones N SchemmerArgentina2024-05-15Morlong Associates RENEWAL31Amy Elsner
1008Wickens J MarrierJapan2024-05-17Printing Dimensions NEW42Asiya Javayant
1009Nicolas H CampainRussia2024-05-15Commercial Press NEGOTIATION90Amy Elsner
1010Greenwood Z GarufiBrazil2024-05-07Buckley Miller Wright QUALIFIED69Amy Elsner
1011Emily M RoysterCanada2024-05-28Chanay, Jeffrey A Esq QUALIFIED40Amy Elsner
1012Aruna W KolmetzAustralia2024-05-22Chemel, James L Cpa PROPOSAL76Bernardo Dominic
1013Claire V IturbideAustralia2024-05-18King, Christopher A Esq QUALIFIED50Ivan Magalhaes
1014Claire M SlusarskiUnited Kingdom2024-05-07Feltz Printing Service RENEWAL55Asiya Javayant
1015Aruna K AmigonCanada2024-05-13Printing Dimensions UNQUALIFIED42Elwin Sharvill
1016Cody U MorascaAustralia2024-05-27Rangoni Of Florence UNQUALIFIED30Xuxue Feng
1017Jennifer A FerenczSpain2024-05-13Morlong Associates UNQUALIFIED83Onyama Limba
1018Julie J IturbideRussia2024-05-16Dorl, James J Esq RENEWAL55Amy Elsner
1019Darci D PoquetteIndia2024-06-04Printing Dimensions QUALIFIED80Asiya Javayant
1020Octavia Z GauchoFrance2024-05-24Rousseaux, Michael Esq PROPOSAL45Xuxue Feng
1021Tony J GlickUnited Kingdom2024-05-17Benton, John B Jr NEW95Elwin Sharvill
1022Arvin N FigeroaSpain2024-05-07Rousseaux, Michael Esq RENEWAL80Bernardo Dominic
1023Ivar P WaycottCanada2024-05-17Benton, John B Jr NEW18Anna Fali
1024Tony H MorascaCanada2024-05-14Truhlar And Truhlar Attys RENEWAL24Ioni Bowcher
1025James O RimUnited Kingdom2024-05-13Feiner Bros RENEWAL68Xuxue Feng
1026Isabel I MaletSpain2024-05-24Commercial Press RENEWAL94Ioni Bowcher
1027Maria G SaylorsFrance2024-06-02Chapman, Ross E Esq UNQUALIFIED83Onyama Limba
1028Aditya Q GauchoJapan2024-05-10Feltz Printing Service NEW88Bernardo Dominic
1029David E MorascaRussia2024-05-28Printing Dimensions NEW35Ioni Bowcher
1030Ricardo O WaycottItaly2024-05-23Rousseaux, Michael Esq RENEWAL89Elwin Sharvill
1031Rodrigues N DoeBrazil2024-05-26Buckley Miller Wright RENEWAL12Anna Fali
1032Mayumi O SaylorsGermany2024-05-14Benton, John B Jr PROPOSAL18Anna Fali
1033Chavez K ButtUnited Kingdom2024-05-13Chemel, James L Cpa NEGOTIATION94Elwin Sharvill
1034Izzy O FerenczArgentina2024-05-12Feltz Printing Service NEW57Onyama Limba
1035Emily I StockhamCanada2024-05-31Chapman, Ross E Esq NEGOTIATION21Bernardo Dominic
1036Wickens J OldroydItaly2024-05-17Rousseaux, Michael Esq NEW56Bernardo Dominic
1037Alejandro V PaprockiSpain2024-05-16Printing Dimensions NEW37Elwin Sharvill
1038Kaitlin Y PoquetteFrance2024-05-24Truhlar And Truhlar Attys QUALIFIED72Elwin Sharvill
1039Salvatore C TollnerFrance2024-05-14Commercial Press RENEWAL86Xuxue Feng
1040Ricardo E MaletFrance2024-05-24Commercial Press UNQUALIFIED98Stephen Shaw
1041Leon M AmigonAustralia2024-05-10Chanay, Jeffrey A Esq QUALIFIED47Amy Elsner
1042Aika M RimIndia2024-05-29Rousseaux, Michael Esq PROPOSAL84Elwin Sharvill
1043Aika Y CaudyItaly2024-05-30Commercial Press NEGOTIATION51Ioni Bowcher
1044Aditya L WaycottUnited Kingdom2024-05-07Commercial Press PROPOSAL44Xuxue Feng
1045Mujtaba V ShinkoUnited Kingdom2024-05-20Chanay, Jeffrey A Esq NEW77Stephen Shaw
1046Jones L CaudyJapan2024-05-31Dorl, James J Esq RENEWAL25Stephen Shaw
1047Rodrigues U NickaJapan2024-05-24Benton, John B Jr NEW21Amy Elsner
1048Salvatore T PaprockiAustralia2024-05-26Chapman, Ross E Esq UNQUALIFIED74Onyama Limba
1049Darci U FollerUnited Kingdom2024-06-01Feiner Bros UNQUALIFIED20Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Kadeem F BowleyBrazilOnyama Limba NEGOTIATION
Deepesh Q ShinkoIndiaAmy Elsner QUALIFIED
Nicolas W SchemmerUnited KingdomIvan Magalhaes UNQUALIFIED
David I PerinIndiaBernardo Dominic QUALIFIED
Juan W MorascaBrazilOnyama Limba UNQUALIFIED
Jeanfrancois Y VenereAustraliaAnna Fali QUALIFIED
Maria D MorascaArgentinaIvan Magalhaes UNQUALIFIED
Ashley G StensethJapanAmy Elsner QUALIFIED
Ricardo L FlosiArgentinaAnna Fali NEW
Isabel F SaylorsAustraliaAmy Elsner UNQUALIFIED
Francesco X FlosiJapanAmy Elsner NEGOTIATION
Rodrigues R MacleadUnited KingdomIvan Magalhaes QUALIFIED
Wickens I GlickSpainElwin Sharvill NEGOTIATION
Misaki W CaudySpainAnna Fali RENEWAL
Kaitlin N NickaIndiaElwin Sharvill UNQUALIFIED
Julie F PerinUnited KingdomAsiya Javayant QUALIFIED
Morrow D NestleUnited KingdomIoni Bowcher PROPOSAL
Misaki K ShinkoGermanyAsiya Javayant NEGOTIATION
Aditya L SaylorsIndiaAsiya Javayant NEGOTIATION
Costa V OstroskyFranceAmy Elsner UNQUALIFIED
Jones K MacleadAustraliaAnna Fali UNQUALIFIED
Izzy O SergiAustraliaIvan Magalhaes QUALIFIED
Darci D WaycottArgentinaBernardo Dominic NEW
Smith V IturbideItalyAsiya Javayant RENEWAL
Nicolas N FlosiJapanElwin Sharvill NEW
Deepesh D AlbaresArgentinaXuxue Feng NEGOTIATION
Arvin K SlusarskiIndiaIoni Bowcher NEW
Izzy L StockhamItalyAmy Elsner NEW
Costa I MaletFranceXuxue Feng QUALIFIED
Kaitlin Z CaudyUnited KingdomAsiya Javayant PROPOSAL
Leja N WaycottGermanyBernardo Dominic QUALIFIED
David R GauchoBrazilIvan Magalhaes QUALIFIED
Misaki C PerinJapanAnna Fali PROPOSAL
Arvin G MaletBrazilBernardo Dominic NEGOTIATION
Jefferson U MaletJapanIoni Bowcher UNQUALIFIED
Izzy K PaprockiAustraliaXuxue Feng PROPOSAL
Morrow B FlosiIndiaElwin Sharvill NEGOTIATION
Kaitlin X AlbaresIndiaBernardo Dominic NEGOTIATION
Silvio Z BriddickIndiaAnna Fali RENEWAL
Misaki L WaycottFranceAmy Elsner QUALIFIED
Antonio V VocelkaBrazilStephen Shaw NEGOTIATION
Cody S TollnerCanadaAsiya Javayant UNQUALIFIED
Jennifer D SergiArgentinaStephen Shaw RENEWAL
Murillo V CampainSpainXuxue Feng NEGOTIATION
Ricardo U BriddickFranceAnna Fali UNQUALIFIED
Mujtaba H RimFranceIoni Bowcher QUALIFIED
Alejandro W SchemmerIndiaAsiya Javayant NEW
Octavia F GlickGermanyAmy Elsner QUALIFIED
James Y NickaUnited KingdomStephen Shaw QUALIFIED
Costa U StensethCanadaAsiya Javayant NEW
Frozen Columns
Name
Cody C Rim
Ricardo C Stockham
Tony U Albares
Jennifer P Glick
Tony G Malet
Adams E Ferencz
Adams Y Waycott
Cody S Rim
Arvin L Rulapaugh
Sinclair U Kolmetz
Sinclair N Inouye
Jones M Rim
Silvio Q Bowley
Juan B Campain
Deepesh X Whobrey
Adams X Amigon
Aditya D Inouye
Sinclair P Dilliard
Jeanfrancois C Sergi
Izzy G Caudy
Ricardo T Rulapaugh
Leja Y Vocelka
Antonio I Stenseth
Kadeem P Oldroyd
Stacey L Perin
Francesco Z Wieser
Mujtaba P Poquette
Ashley Z Foller
Chavez U Ostrosky
Arvin R Slusarski
Greenwood T Nicka
Leon E Poquette
Tony T Kusko
Arvin M Poquette
James D Iturbide
Ashley J Stockham
Johnson W Iturbide
Chavez R Nicka
Izzy K Ferencz
Maria U Paprocki
Mujtaba E Royster
Aruna E Oldroyd
Chavez J Oldroyd
Sinclair L Venere
Arvin C Maclead
Nicolas E Perin
Ricardo D Tollner
Smith V Stockham
Darci R Dilliard
Sinclair L Kusko
IdCountryDate
1000Japan2024-05-26
1001Italy2024-05-22
1002Germany2024-05-15
1003Italy2024-06-04
1004Russia2024-05-27
1005India2024-05-21
1006France2024-05-19
1007Japan2024-06-01
1008France2024-05-21
1009Canada2024-05-08
1010Brazil2024-05-08
1011United Kingdom2024-05-27
1012India2024-05-07
1013Argentina2024-05-15
1014Germany2024-05-20
1015Brazil2024-05-19
1016Australia2024-06-05
1017India2024-05-27
1018Russia2024-05-13
1019Australia2024-06-02
1020Brazil2024-05-07
1021Germany2024-05-30
1022United Kingdom2024-06-03
1023Argentina2024-05-24
1024Argentina2024-05-26
1025Spain2024-05-12
1026Canada2024-05-17
1027Italy2024-05-12
1028Argentina2024-05-12
1029United Kingdom2024-05-14
1030Germany2024-05-16
1031Brazil2024-05-30
1032Brazil2024-05-31
1033Russia2024-05-16
1034India2024-05-27
1035United Kingdom2024-05-18
1036Brazil2024-05-16
1037Canada2024-06-03
1038Australia2024-06-03
1039Italy2024-05-30
1040United Kingdom2024-05-12
1041Japan2024-06-04
1042Japan2024-05-13
1043Italy2024-05-23
1044Germany2024-06-05
1045Germany2024-05-19
1046United Kingdom2024-05-16
1047Italy2024-05-23
1048Japan2024-05-30
1049Argentina2024-05-23

On-Demand Data

NameIdCountryDate
Costa J Stenseth1000France2024-06-04
Salvatore V Waycott1001India2024-06-03
Tony Z Amigon1002United Kingdom2024-05-10
Antonio W Rulapaugh1003Argentina2024-06-05
Clifford T Rim1004Brazil2024-05-25
Nicolas L Campain1005India2024-06-04
Emily J Slusarski1006Italy2024-05-20
Maisha D Slusarski1007Spain2024-05-24
Ashley Z Stockham1008Brazil2024-05-17
Aditya Y Shinko1009Argentina2024-06-03
Aruna I Butt1010Spain2024-05-15
Claire B Nicka1011India2024-05-28
Stacey M Ruta1012United Kingdom2024-05-30
Mujtaba M Caldarera1013France2024-05-15
Nicolas X Butt1014Japan2024-05-28
Clifford B Nestle1015Brazil2024-05-20
Greenwood S Flosi1016United Kingdom2024-06-01
Cody S Stenseth1017Russia2024-05-10
Deepesh Q Darakjy1018France2024-05-30
Leja S Butt1019Spain2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie U SlusarskiUnited KingdomStephen Shaw UNQUALIFIED
Aditya N SaylorsJapanAmy Elsner RENEWAL
Aditya R PaprockiGermanyAsiya Javayant RENEWAL
Cody L AmigonFranceXuxue Feng PROPOSAL
Deepesh T TollnerUnited KingdomAnna Fali QUALIFIED
David Y WieserCanadaIvan Magalhaes RENEWAL
Octavia A SchemmerItalyOnyama Limba UNQUALIFIED
Jeanfrancois M StensethItalyAnna Fali RENEWAL
Arvin N GauchoFranceStephen Shaw QUALIFIED
Octavia O MorascaGermanyAsiya Javayant NEW
Faith C NestleItalyXuxue Feng QUALIFIED
Ashley G KuskoIndiaBernardo Dominic UNQUALIFIED
Johnson U PoquetteRussiaXuxue Feng PROPOSAL
Jennifer D PerinRussiaStephen Shaw UNQUALIFIED
Ashley X AlbaresAustraliaElwin Sharvill NEW
Leon F GillianSpainStephen Shaw NEGOTIATION
Murillo H FigeroaRussiaXuxue Feng PROPOSAL
Isabel Z KuskoSpainAsiya Javayant PROPOSAL
Julie F PaprockiIndiaOnyama Limba QUALIFIED
Clifford G MaletArgentinaIoni Bowcher QUALIFIED
Smith L NickaArgentinaAsiya Javayant UNQUALIFIED
Antonio Q ChuiIndiaBernardo Dominic QUALIFIED
Leon L StockhamAustraliaIvan Magalhaes NEW
Jeanfrancois I DoeJapanBernardo Dominic UNQUALIFIED
Jefferson H MorascaIndiaStephen Shaw QUALIFIED
Morrow P FerenczFranceXuxue Feng RENEWAL
Leja E CaudyArgentinaIvan Magalhaes QUALIFIED
Wickens L AlbaresCanadaAsiya Javayant RENEWAL
Maria X RimIndiaStephen Shaw RENEWAL
Izzy O OldroydItalyBernardo Dominic NEGOTIATION
Deepesh V SchemmerFranceAmy Elsner RENEWAL
Kadeem N FlosiGermanyAmy Elsner RENEWAL
Juan X SchemmerFranceOnyama Limba RENEWAL
Kadeem C DarakjyIndiaOnyama Limba NEGOTIATION
Deepesh Z DoeIndiaAnna Fali PROPOSAL
Greenwood Y AmigonAustraliaAnna Fali UNQUALIFIED
Kadeem H RutaGermanyXuxue Feng RENEWAL
Antonio M FollerFranceIoni Bowcher RENEWAL
Smith P BowleyJapanBernardo Dominic NEW
Morrow X MaletArgentinaBernardo Dominic UNQUALIFIED

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