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
Munro A CaudyCanadaElwin Sharvill PROPOSAL
Tony T FlosiUnited KingdomAsiya Javayant QUALIFIED
Isabel C ButtCanadaAmy Elsner QUALIFIED
Aika D GillianCanadaOnyama Limba NEGOTIATION
Kadeem D PoquetteBrazilIoni Bowcher UNQUALIFIED
Jeanfrancois D MarrierAustraliaAsiya Javayant NEW
Ashley V MacleadCanadaIoni Bowcher PROPOSAL
Isabel T DilliardFranceStephen Shaw RENEWAL
James R MacleadItalyElwin Sharvill NEGOTIATION
Izzy Z StockhamSpainOnyama Limba NEW
Alejandro G RutaFranceIoni Bowcher QUALIFIED
Francesco R CampainArgentinaAmy Elsner QUALIFIED
Adams B SergiSpainXuxue Feng NEGOTIATION
Kaitlin U RutaAustraliaAsiya Javayant NEGOTIATION
Salvatore J BriddickArgentinaOnyama Limba UNQUALIFIED
Kaitlin C SergiSpainAsiya Javayant PROPOSAL
Julie V FigeroaSpainElwin Sharvill PROPOSAL
Chavez D OstroskyJapanAnna Fali NEW
Octavia V RimFranceElwin Sharvill QUALIFIED
Aruna F WhobreyJapanElwin Sharvill QUALIFIED
Juan K SergiSpainElwin Sharvill UNQUALIFIED
Deepesh P BriddickUnited KingdomStephen Shaw NEGOTIATION
Munro W DoeSpainBernardo Dominic PROPOSAL
Sinclair T FigeroaAustraliaOnyama Limba QUALIFIED
Rodrigues K FerenczFranceBernardo Dominic PROPOSAL
Clifford M DilliardCanadaElwin Sharvill NEGOTIATION
Darci X FigeroaFranceXuxue Feng QUALIFIED
Octavia P InouyeArgentinaAmy Elsner QUALIFIED
Ricardo A CaudyBrazilIvan Magalhaes QUALIFIED
Jennifer G ChuiSpainAmy Elsner UNQUALIFIED
Ashley O StensethCanadaStephen Shaw UNQUALIFIED
Stacey W RulapaughCanadaAmy Elsner QUALIFIED
Cody K ButtUnited KingdomOnyama Limba NEW
Maria K RimCanadaOnyama Limba RENEWAL
Leja I NickaSpainAmy Elsner PROPOSAL
James W MorascaIndiaIoni Bowcher NEGOTIATION
Faith O CampainCanadaIvan Magalhaes QUALIFIED
Francesco K KolmetzJapanIoni Bowcher PROPOSAL
Jeanfrancois I SaylorsJapanIoni Bowcher NEW
Ivar W GarufiFranceAmy Elsner QUALIFIED
Octavia S GillianGermanyIoni Bowcher NEW
Maria B MorascaArgentinaIvan Magalhaes NEGOTIATION
Mayumi C WaycottFranceXuxue Feng NEGOTIATION
Maisha X PerinJapanElwin Sharvill QUALIFIED
Tony O FlosiGermanyIoni Bowcher UNQUALIFIED
Aika P DarakjyRussiaOnyama Limba NEW
Tony Z SergiFranceAnna Fali QUALIFIED
Stacey O WaycottArgentinaElwin Sharvill QUALIFIED
Mujtaba F TollnerGermanyXuxue Feng PROPOSAL
Clifford Z SaylorsRussiaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Stacey V WaycottFranceBernardo Dominic RENEWAL
David X PerinBrazilAmy Elsner RENEWAL
Morrow R MaletRussiaXuxue Feng NEW
Jones V DoeCanadaAmy Elsner NEGOTIATION
Adams G RimUnited KingdomAnna Fali NEW
Adams R FigeroaIndiaAsiya Javayant NEW
Nicolas Y BowleyCanadaOnyama Limba NEGOTIATION
Johnson N NickaItalyIvan Magalhaes NEW
Jeanfrancois Z DilliardUnited KingdomIoni Bowcher NEW
Murillo W ChuiRussiaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley D StockhamRussia2026-06-28Chanay, Jeffrey A Esq RENEWAL36Bernardo Dominic
1001Smith L FollerSpain2026-07-09Commercial Press NEW38Anna Fali
1002Mujtaba D StensethArgentina2026-07-11Feltz Printing Service UNQUALIFIED42Ioni Bowcher
1003Ivar U FerenczBrazil2026-06-21Chemel, James L Cpa RENEWAL39Elwin Sharvill
1004Munro Y FlosiArgentina2026-06-20Chemel, James L Cpa NEW23Onyama Limba
1005Tony F OstroskyArgentina2026-07-11Chanay, Jeffrey A Esq RENEWAL69Asiya Javayant
1006Tony S MarrierRussia2026-06-23Morlong Associates QUALIFIED15Asiya Javayant
1007James N GlickIndia2026-07-11Chanay, Jeffrey A Esq NEW39Onyama Limba
1008Smith B NestleUnited Kingdom2026-07-12Benton, John B Jr PROPOSAL78Xuxue Feng
1009Tony Y OldroydJapan2026-06-30Morlong Associates NEGOTIATION0Ioni Bowcher
1010Emily Z NestleBrazil2026-07-11Chapman, Ross E Esq QUALIFIED82Amy Elsner
1011Adams O CaldareraRussia2026-07-08Rousseaux, Michael Esq NEGOTIATION17Onyama Limba
1012Tony X TollnerJapan2026-06-27Chanay, Jeffrey A Esq NEGOTIATION69Onyama Limba
1013David O FerenczIndia2026-07-08King, Christopher A Esq PROPOSAL38Stephen Shaw
1014Julie E GarufiRussia2026-06-22Rangoni Of Florence RENEWAL73Bernardo Dominic
1015Deepesh G SaylorsCanada2026-07-04Commercial Press PROPOSAL27Xuxue Feng
1016Johnson A SaylorsArgentina2026-07-04Benton, John B Jr RENEWAL21Anna Fali
1017Ivar A RutaAustralia2026-07-18Chemel, James L Cpa PROPOSAL46Amy Elsner
1018Chavez Q FerenczArgentina2026-06-30Buckley Miller Wright RENEWAL33Onyama Limba
1019Aruna G DarakjyItaly2026-07-09Printing Dimensions NEW42Anna Fali
1020Stacey Q FigeroaBrazil2026-07-12Buckley Miller Wright UNQUALIFIED79Anna Fali
1021Morrow M KuskoIndia2026-06-24Benton, John B Jr RENEWAL79Anna Fali
1022Silvio L RimSpain2026-06-22Feiner Bros QUALIFIED84Anna Fali
1023Aditya U MarrierArgentina2026-07-18Buckley Miller Wright PROPOSAL27Ivan Magalhaes
1024Cody X PaprockiIndia2026-07-06Feltz Printing Service NEGOTIATION27Stephen Shaw
1025Stacey C WaycottArgentina2026-07-03Printing Dimensions NEW32Anna Fali
1026Maisha W InouyeAustralia2026-07-05Morlong Associates QUALIFIED94Amy Elsner
1027Julie R DoeIndia2026-07-06Dorl, James J Esq QUALIFIED75Onyama Limba
1028Greenwood S FigeroaFrance2026-07-17Commercial Press NEW93Onyama Limba
1029Clifford W DoeGermany2026-07-15Commercial Press PROPOSAL6Ivan Magalhaes
1030Chavez C CampainBrazil2026-07-13Chapman, Ross E Esq QUALIFIED34Elwin Sharvill
1031Misaki D MaletArgentina2026-07-01Chapman, Ross E Esq UNQUALIFIED35Ioni Bowcher
1032Isabel R PaprockiBrazil2026-06-25King, Christopher A Esq RENEWAL95Xuxue Feng
1033Kaitlin A MorascaFrance2026-07-14Benton, John B Jr QUALIFIED15Xuxue Feng
1034Deepesh H SaylorsIndia2026-06-21Truhlar And Truhlar Attys RENEWAL99Ioni Bowcher
1035Nicolas Q MorascaUnited Kingdom2026-06-24Feltz Printing Service RENEWAL80Elwin Sharvill
1036Cody N SaylorsBrazil2026-06-28Rousseaux, Michael Esq NEGOTIATION54Stephen Shaw
1037Costa L CaudyGermany2026-06-26Benton, John B Jr QUALIFIED5Anna Fali
1038Kaitlin R NestleBrazil2026-07-02Buckley Miller Wright NEW71Elwin Sharvill
1039Ivar A TollnerIndia2026-06-25Feltz Printing Service QUALIFIED38Xuxue Feng
1040Leon Q BriddickGermany2026-07-05Morlong Associates QUALIFIED84Bernardo Dominic
1041Mayumi S VocelkaItaly2026-06-20Feltz Printing Service NEW20Ivan Magalhaes
1042Costa O DarakjyRussia2026-07-01Rangoni Of Florence PROPOSAL93Bernardo Dominic
1043Cody T CaudySpain2026-07-14Chapman, Ross E Esq RENEWAL30Ioni Bowcher
1044Jones C SlusarskiUnited Kingdom2026-07-01Chemel, James L Cpa RENEWAL73Anna Fali
1045Stacey B DoeFrance2026-07-18Rangoni Of Florence NEW47Stephen Shaw
1046Rodrigues A SergiGermany2026-07-07Benton, John B Jr NEGOTIATION56Asiya Javayant
1047Jeanfrancois U InouyeAustralia2026-06-19Benton, John B Jr RENEWAL97Elwin Sharvill
1048Jennifer L SaylorsCanada2026-06-28Printing Dimensions QUALIFIED51Amy Elsner
1049Juan Y RutaRussia2026-06-24Feltz Printing Service PROPOSAL75Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Clifford O GarufiUnited KingdomIvan Magalhaes QUALIFIED
Claire O FollerSpainIoni Bowcher PROPOSAL
Juan C MarrierJapanStephen Shaw NEGOTIATION
Antonio D StockhamBrazilAsiya Javayant NEGOTIATION
Jeanfrancois C MarrierAustraliaXuxue Feng RENEWAL
Clifford B WhobreyCanadaAsiya Javayant NEGOTIATION
Leon E PoquetteJapanAnna Fali PROPOSAL
Murillo I NestleCanadaBernardo Dominic UNQUALIFIED
James T IturbideRussiaElwin Sharvill QUALIFIED
Isabel M WieserSpainBernardo Dominic PROPOSAL
Leja Y SergiIndiaAsiya Javayant PROPOSAL
James N DilliardGermanyXuxue Feng UNQUALIFIED
Cody T TollnerJapanAnna Fali RENEWAL
Salvatore A RimFranceElwin Sharvill NEW
Rodrigues I PoquetteCanadaStephen Shaw QUALIFIED
Rodrigues A StockhamUnited KingdomElwin Sharvill PROPOSAL
Rodrigues G SlusarskiJapanStephen Shaw RENEWAL
Smith E RulapaughRussiaElwin Sharvill NEW
Aika V MacleadSpainXuxue Feng NEGOTIATION
Emily E StockhamAustraliaIoni Bowcher QUALIFIED
Greenwood M IturbideAustraliaAnna Fali UNQUALIFIED
Izzy L RimBrazilElwin Sharvill NEW
Francesco T BologniaRussiaStephen Shaw NEW
Francesco Y OstroskyIndiaAnna Fali RENEWAL
Munro Z CaudyBrazilBernardo Dominic NEW
Munro R MacleadFranceIoni Bowcher RENEWAL
Darci I ButtItalyXuxue Feng QUALIFIED
Emily X WaycottRussiaOnyama Limba RENEWAL
Silvio M DarakjyIndiaIoni Bowcher NEW
Faith M ChuiCanadaBernardo Dominic RENEWAL
Ivar D OstroskyArgentinaOnyama Limba PROPOSAL
Misaki O VocelkaAustraliaIoni Bowcher NEGOTIATION
Jennifer Q GauchoUnited KingdomBernardo Dominic NEGOTIATION
Munro B BowleySpainElwin Sharvill RENEWAL
James Q MarrierIndiaElwin Sharvill QUALIFIED
Isabel T KuskoItalyAsiya Javayant NEW
Clifford O ChuiFranceAnna Fali RENEWAL
Darci V ButtItalyIvan Magalhaes NEGOTIATION
Jones K GillianAustraliaBernardo Dominic RENEWAL
Kadeem R FollerCanadaIoni Bowcher NEGOTIATION
Aditya A ShinkoItalyAsiya Javayant UNQUALIFIED
David Y VocelkaFranceOnyama Limba QUALIFIED
Stacey M StensethArgentinaBernardo Dominic NEGOTIATION
Tony Q PaprockiAustraliaStephen Shaw UNQUALIFIED
Francesco Q KuskoRussiaAmy Elsner RENEWAL
Aruna G PoquetteAustraliaAsiya Javayant UNQUALIFIED
Murillo P VocelkaCanadaAmy Elsner RENEWAL
Johnson I RoysterUnited KingdomAsiya Javayant QUALIFIED
Jefferson H MarrierArgentinaIvan Magalhaes NEGOTIATION
Sinclair Q WaycottArgentinaAsiya Javayant UNQUALIFIED
Frozen Columns
Name
James P Venere
Adams Y Butt
Murillo T Perin
Adams J Stockham
Darci I Tollner
Emily T Gaucho
Isabel E Briddick
Rodrigues L Butt
Murillo S Ferencz
Chavez L Inouye
Faith S Inouye
Leon Z Poquette
Kaitlin K Wieser
Claire R Slusarski
Deepesh U Flosi
Jeanfrancois P Bolognia
Cody J Gillian
Arvin I Iturbide
Juan K Malet
Arvin N Perin
Adams R Perin
Kadeem T Butt
Clifford A Royster
Deepesh X Garufi
Chavez M Iturbide
Kaitlin Q Caldarera
Stacey K Waycott
Jefferson V Kusko
Leon Q Gillian
Tony A Stockham
Salvatore R Marrier
Deepesh W Schemmer
Claire C Nicka
Wickens U Tollner
Ashley Q Ferencz
Francesco B Venere
Francesco M Iturbide
Ivar G Caudy
Jones V Whobrey
Aditya J Figeroa
Arvin H Figeroa
Smith Q Whobrey
Misaki T Ferencz
Morrow R Chui
Misaki Z Tollner
David L Saylors
Aruna G Schemmer
Johnson N Ruta
Emily A Kusko
Munro Y Caudy
IdCountryDate
1000Canada2026-06-22
1001India2026-07-13
1002Italy2026-07-12
1003Russia2026-07-10
1004Canada2026-07-11
1005Spain2026-06-20
1006Germany2026-06-26
1007Russia2026-07-03
1008United Kingdom2026-07-13
1009Canada2026-06-27
1010Australia2026-07-15
1011United Kingdom2026-07-08
1012United Kingdom2026-07-10
1013Japan2026-06-26
1014Italy2026-06-27
1015Argentina2026-07-06
1016Australia2026-06-21
1017Brazil2026-07-09
1018Germany2026-06-27
1019Brazil2026-06-25
1020India2026-07-14
1021Japan2026-07-15
1022Japan2026-06-26
1023Germany2026-07-01
1024Canada2026-06-20
1025Russia2026-06-26
1026United Kingdom2026-07-12
1027Spain2026-06-29
1028Italy2026-06-22
1029Canada2026-06-23
1030Australia2026-07-08
1031Australia2026-06-25
1032Spain2026-06-27
1033France2026-07-10
1034Canada2026-07-10
1035Canada2026-07-07
1036Canada2026-06-25
1037United Kingdom2026-07-17
1038Germany2026-06-26
1039Japan2026-06-23
1040Brazil2026-07-12
1041Brazil2026-07-08
1042India2026-06-26
1043Italy2026-06-19
1044Argentina2026-07-07
1045India2026-07-04
1046Spain2026-07-10
1047United Kingdom2026-06-23
1048India2026-07-16
1049Japan2026-07-07

On-Demand Data

NameIdCountryDate
Jeanfrancois K Malet1000Canada2026-07-02
Munro C Oldroyd1001France2026-06-29
Octavia R Perin1002India2026-06-21
Clifford G Ruta1003Japan2026-06-26
Murillo T Nestle1004Australia2026-06-19
Ashley Q Ruta1005Japan2026-07-05
Deepesh O Malet1006Germany2026-07-10
Mujtaba A Paprocki1007Japan2026-06-21
Silvio U Foller1008Spain2026-06-26
Mujtaba B Kolmetz1009Brazil2026-07-04
Kaitlin M Saylors1010United Kingdom2026-07-15
Munro V Paprocki1011Spain2026-07-18
Alejandro R Morasca1012Brazil2026-06-27
Ashley Q Waycott1013United Kingdom2026-06-28
Maria M Morasca1014France2026-06-24
Claire N Glick1015France2026-07-12
Mujtaba J Oldroyd1016Brazil2026-07-03
David R Saylors1017Italy2026-06-24
Wickens I Marrier1018France2026-07-17
Rodrigues A Garufi1019India2026-07-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire Q MacleadBrazilIoni Bowcher NEW
Wickens K WieserRussiaXuxue Feng NEW
Isabel G RutaCanadaOnyama Limba NEGOTIATION
Jeanfrancois J MaletGermanyXuxue Feng PROPOSAL
Izzy U CaldareraGermanyIvan Magalhaes RENEWAL
Arvin K PerinCanadaBernardo Dominic UNQUALIFIED
Francesco V SlusarskiSpainAsiya Javayant PROPOSAL
Adams M RoysterCanadaOnyama Limba QUALIFIED
Stacey X CaldareraBrazilBernardo Dominic NEGOTIATION
Leon A RoysterIndiaBernardo Dominic NEW
Aika W MaletArgentinaOnyama Limba UNQUALIFIED
Mujtaba Y AmigonIndiaIoni Bowcher QUALIFIED
Aika W DilliardAustraliaIvan Magalhaes QUALIFIED
Clifford S AmigonSpainAsiya Javayant RENEWAL
Aika G MaletCanadaAmy Elsner NEGOTIATION
Aika A MarrierArgentinaIoni Bowcher NEW
Salvatore S StockhamAustraliaOnyama Limba RENEWAL
Alejandro W DarakjyBrazilXuxue Feng UNQUALIFIED
Jeanfrancois V WieserBrazilBernardo Dominic NEGOTIATION
Sinclair F KolmetzFranceAsiya Javayant NEW
Cody U MarrierFranceOnyama Limba NEGOTIATION
Darci M KuskoAustraliaIoni Bowcher NEW
Johnson P PaprockiGermanyXuxue Feng RENEWAL
Tony U GarufiItalyAsiya Javayant PROPOSAL
Faith C SergiFranceIvan Magalhaes RENEWAL
Aditya Q SlusarskiBrazilAmy Elsner UNQUALIFIED
Antonio R WieserSpainIvan Magalhaes RENEWAL
Clifford C StensethItalyStephen Shaw NEW
Wickens A NickaFranceBernardo Dominic NEW
Maria A GarufiJapanIvan Magalhaes NEW
Jennifer U ButtSpainIvan Magalhaes PROPOSAL
Ashley R BologniaCanadaBernardo Dominic NEGOTIATION
Murillo V FlosiAustraliaAmy Elsner QUALIFIED
Maria B RoysterJapanBernardo Dominic QUALIFIED
Alejandro W FlosiUnited KingdomStephen Shaw NEGOTIATION
Isabel E DoeRussiaOnyama Limba RENEWAL
Juan T DarakjyAustraliaAnna Fali QUALIFIED
Aika G ButtCanadaBernardo Dominic QUALIFIED
Cody L MacleadArgentinaStephen Shaw RENEWAL
Clifford Z BriddickBrazilXuxue Feng 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>