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
Izzy A AmigonArgentinaBernardo Dominic NEW
Izzy S KolmetzRussiaAmy Elsner NEGOTIATION
Salvatore G KuskoFranceElwin Sharvill RENEWAL
Octavia B GlickRussiaBernardo Dominic NEGOTIATION
Kadeem S DarakjyArgentinaIvan Magalhaes RENEWAL
Mayumi M DarakjyAustraliaAnna Fali NEGOTIATION
Emily X AlbaresArgentinaIoni Bowcher PROPOSAL
Nicolas R WhobreyBrazilElwin Sharvill NEGOTIATION
Francesco B MaletBrazilXuxue Feng PROPOSAL
Johnson L SlusarskiBrazilXuxue Feng QUALIFIED
Costa A VocelkaBrazilXuxue Feng RENEWAL
Cody Q FigeroaGermanyIoni Bowcher NEW
Jennifer N VocelkaArgentinaIvan Magalhaes QUALIFIED
Ivar A PerinRussiaStephen Shaw QUALIFIED
Antonio F BriddickBrazilElwin Sharvill QUALIFIED
Arvin P MorascaSpainAmy Elsner QUALIFIED
Misaki S BriddickUnited KingdomXuxue Feng NEW
Johnson J BowleyUnited KingdomIoni Bowcher PROPOSAL
Arvin P SergiRussiaIoni Bowcher UNQUALIFIED
Francesco H KolmetzArgentinaIoni Bowcher NEGOTIATION
Adams B FigeroaAustraliaAnna Fali UNQUALIFIED
Wickens E ButtJapanBernardo Dominic NEGOTIATION
Salvatore E MacleadAustraliaStephen Shaw PROPOSAL
Aika R CaudyJapanIvan Magalhaes RENEWAL
Jeanfrancois C MaletSpainOnyama Limba UNQUALIFIED
Julie J SlusarskiJapanIoni Bowcher NEGOTIATION
James G SlusarskiBrazilAmy Elsner RENEWAL
Darci E PoquetteUnited KingdomStephen Shaw RENEWAL
Kadeem D StensethBrazilElwin Sharvill QUALIFIED
Jefferson P OldroydRussiaIoni Bowcher NEGOTIATION
Johnson Z OstroskyGermanyIvan Magalhaes QUALIFIED
Julie G InouyeRussiaOnyama Limba NEW
Maria W NickaArgentinaAsiya Javayant PROPOSAL
Aditya D FlosiUnited KingdomElwin Sharvill RENEWAL
Juan Q PerinBrazilAmy Elsner NEW
Julie P TollnerItalyAmy Elsner QUALIFIED
Darci D SlusarskiRussiaXuxue Feng UNQUALIFIED
Juan P WhobreyUnited KingdomIoni Bowcher NEW
Silvio M RutaAustraliaAmy Elsner RENEWAL
Greenwood B MaletSpainAnna Fali UNQUALIFIED
Chavez I FerenczRussiaAnna Fali QUALIFIED
Silvio H NestleGermanyAnna Fali PROPOSAL
Francesco N SergiUnited KingdomAmy Elsner UNQUALIFIED
Ashley M GillianRussiaElwin Sharvill NEW
Ivar U PerinRussiaBernardo Dominic NEGOTIATION
Ricardo X TollnerJapanElwin Sharvill QUALIFIED
Deepesh A BologniaFranceStephen Shaw NEW
Darci J FerenczRussiaIoni Bowcher PROPOSAL
Ivar F TollnerGermanyAmy Elsner QUALIFIED
Leon I DilliardItalyElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Antonio F AlbaresArgentinaOnyama Limba RENEWAL
David W RutaAustraliaIvan Magalhaes NEW
Misaki E ChuiUnited KingdomElwin Sharvill PROPOSAL
Ashley M MacleadSpainOnyama Limba RENEWAL
Clifford U OstroskyFranceAmy Elsner PROPOSAL
Costa S RimBrazilStephen Shaw QUALIFIED
Deepesh H AmigonSpainStephen Shaw NEW
Mujtaba E MarrierUnited KingdomAnna Fali PROPOSAL
Mujtaba A FlosiBrazilAmy Elsner NEW
Ashley U BologniaFranceStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey I BologniaIndia2024-05-04Morlong Associates QUALIFIED6Onyama Limba
1001Rodrigues A DilliardArgentina2024-05-21Feiner Bros UNQUALIFIED89Stephen Shaw
1002Aruna V IturbideIndia2024-05-26Truhlar And Truhlar Attys UNQUALIFIED88Onyama Limba
1003Maisha V CaldareraIndia2024-04-28King, Christopher A Esq UNQUALIFIED15Anna Fali
1004Rodrigues B BowleyJapan2024-05-19Dorl, James J Esq NEW65Amy Elsner
1005Deepesh E KuskoJapan2024-05-12Truhlar And Truhlar Attys NEW65Stephen Shaw
1006Emily C ButtCanada2024-05-20Chemel, James L Cpa NEGOTIATION32Xuxue Feng
1007Johnson U RulapaughItaly2024-05-25Feltz Printing Service PROPOSAL26Amy Elsner
1008Francesco P SaylorsRussia2024-05-23Morlong Associates NEW46Anna Fali
1009Julie Z FollerGermany2024-05-19Rangoni Of Florence QUALIFIED55Ioni Bowcher
1010Munro R OstroskyJapan2024-05-24Chapman, Ross E Esq NEGOTIATION48Anna Fali
1011Cody G InouyeGermany2024-05-06Buckley Miller Wright PROPOSAL5Amy Elsner
1012James E ButtArgentina2024-05-08Buckley Miller Wright UNQUALIFIED4Bernardo Dominic
1013Isabel Q InouyeSpain2024-05-01Dorl, James J Esq PROPOSAL94Anna Fali
1014Jennifer R StockhamUnited Kingdom2024-05-22King, Christopher A Esq RENEWAL10Amy Elsner
1015Maria N MaletBrazil2024-05-18Feltz Printing Service QUALIFIED59Stephen Shaw
1016Stacey X KolmetzCanada2024-04-30Commercial Press PROPOSAL93Xuxue Feng
1017Ricardo T MarrierJapan2024-05-12Chapman, Ross E Esq NEGOTIATION72Xuxue Feng
1018Darci K RulapaughItaly2024-05-19Printing Dimensions NEGOTIATION18Bernardo Dominic
1019Salvatore J GarufiRussia2024-05-19Chapman, Ross E Esq NEW22Ioni Bowcher
1020Cody U TollnerGermany2024-05-07Rousseaux, Michael Esq UNQUALIFIED50Anna Fali
1021Munro I InouyeFrance2024-04-30Feltz Printing Service NEW29Bernardo Dominic
1022Jennifer Q BriddickIndia2024-05-10Dorl, James J Esq NEW81Onyama Limba
1023Johnson S SlusarskiArgentina2024-05-10Buckley Miller Wright NEW33Stephen Shaw
1024Adams M MorascaJapan2024-05-24King, Christopher A Esq QUALIFIED92Ioni Bowcher
1025Cody O BologniaFrance2024-05-16Benton, John B Jr PROPOSAL26Bernardo Dominic
1026Smith M FollerItaly2024-05-23Feiner Bros QUALIFIED93Amy Elsner
1027Leon K WaycottIndia2024-05-03Commercial Press PROPOSAL31Xuxue Feng
1028Arvin H SlusarskiItaly2024-05-12Dorl, James J Esq UNQUALIFIED90Bernardo Dominic
1029Sinclair U SergiFrance2024-05-25Chapman, Ross E Esq NEW36Ivan Magalhaes
1030Nicolas S InouyeBrazil2024-05-14Feiner Bros NEW47Ioni Bowcher
1031Ivar M OstroskyCanada2024-05-14Morlong Associates NEW40Xuxue Feng
1032Leon P PoquetteArgentina2024-05-01Feiner Bros QUALIFIED97Anna Fali
1033Johnson E CaudyArgentina2024-05-17Chemel, James L Cpa QUALIFIED62Ioni Bowcher
1034Juan B RoysterGermany2024-05-09Truhlar And Truhlar Attys NEGOTIATION70Stephen Shaw
1035Stacey D BriddickJapan2024-05-10Morlong Associates NEGOTIATION33Xuxue Feng
1036David A GarufiBrazil2024-05-12Feiner Bros UNQUALIFIED32Amy Elsner
1037Faith O RutaFrance2024-05-25Commercial Press RENEWAL26Bernardo Dominic
1038Costa H SaylorsItaly2024-05-10Feltz Printing Service QUALIFIED82Onyama Limba
1039Jones C NestleGermany2024-05-25Chanay, Jeffrey A Esq PROPOSAL75Stephen Shaw
1040Octavia O MaletBrazil2024-05-19Dorl, James J Esq QUALIFIED9Stephen Shaw
1041Maisha G KolmetzIndia2024-05-12King, Christopher A Esq NEGOTIATION88Asiya Javayant
1042Costa Q GlickUnited Kingdom2024-05-14Benton, John B Jr NEGOTIATION49Ivan Magalhaes
1043Misaki X RutaBrazil2024-05-09Chemel, James L Cpa NEW73Amy Elsner
1044Kadeem T FlosiArgentina2024-05-21Chanay, Jeffrey A Esq NEGOTIATION96Onyama Limba
1045Chavez M IturbideBrazil2024-05-13Rousseaux, Michael Esq UNQUALIFIED64Ioni Bowcher
1046Stacey W SaylorsFrance2024-05-25Chemel, James L Cpa PROPOSAL30Xuxue Feng
1047Jones D ButtCanada2024-04-28Dorl, James J Esq QUALIFIED6Amy Elsner
1048Kaitlin W WhobreyBrazil2024-04-30Benton, John B Jr UNQUALIFIED34Ivan Magalhaes
1049Aditya V BriddickJapan2024-05-19Truhlar And Truhlar Attys UNQUALIFIED94Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Ashley S StensethUnited KingdomXuxue Feng UNQUALIFIED
Salvatore M MaletJapanStephen Shaw PROPOSAL
Jones T PoquetteFranceAsiya Javayant PROPOSAL
Greenwood B GillianCanadaAnna Fali RENEWAL
Cody A CaldareraRussiaIoni Bowcher QUALIFIED
Darci D NestleRussiaAsiya Javayant NEGOTIATION
Izzy P StensethJapanIoni Bowcher PROPOSAL
Isabel Z KolmetzSpainXuxue Feng RENEWAL
Wickens I WaycottAustraliaAsiya Javayant RENEWAL
Aika M RulapaughCanadaElwin Sharvill QUALIFIED
Murillo J PaprockiUnited KingdomOnyama Limba QUALIFIED
Chavez H VocelkaFranceAnna Fali NEGOTIATION
Salvatore L SaylorsArgentinaIoni Bowcher NEW
Julie D DarakjyItalyIvan Magalhaes UNQUALIFIED
Octavia B FigeroaFranceAnna Fali NEW
Octavia V StockhamBrazilAsiya Javayant QUALIFIED
Alejandro A OldroydCanadaIvan Magalhaes NEW
Jennifer Q GarufiJapanElwin Sharvill NEW
Antonio Z BriddickGermanyIvan Magalhaes NEGOTIATION
Adams O WhobreyUnited KingdomStephen Shaw NEW
Stacey A MacleadRussiaIoni Bowcher NEW
Johnson Z IturbideSpainAmy Elsner PROPOSAL
Greenwood A ChuiItalyAsiya Javayant UNQUALIFIED
Julie L FigeroaUnited KingdomIoni Bowcher PROPOSAL
Cody O GlickUnited KingdomIvan Magalhaes PROPOSAL
Costa Y IturbideBrazilOnyama Limba PROPOSAL
Izzy A GillianGermanyAnna Fali QUALIFIED
Antonio P ButtRussiaAsiya Javayant QUALIFIED
Jones L KolmetzAustraliaXuxue Feng QUALIFIED
Leja H DoeRussiaXuxue Feng PROPOSAL
Smith P NickaItalyXuxue Feng RENEWAL
James G VenereSpainAsiya Javayant UNQUALIFIED
James W RulapaughArgentinaIvan Magalhaes PROPOSAL
Juan Z FigeroaUnited KingdomAmy Elsner UNQUALIFIED
Antonio O AmigonItalyStephen Shaw PROPOSAL
Deepesh M ChuiSpainOnyama Limba NEW
Izzy M CaudyArgentinaIoni Bowcher NEW
Mayumi J FerenczCanadaXuxue Feng RENEWAL
Misaki G GlickItalyAnna Fali UNQUALIFIED
Kaitlin Y WhobreyCanadaOnyama Limba NEGOTIATION
Jones K FerenczFranceIoni Bowcher UNQUALIFIED
David J BriddickCanadaAmy Elsner PROPOSAL
Ivar M PerinItalyAnna Fali QUALIFIED
Arvin S MorascaCanadaBernardo Dominic NEW
Emily P BowleyCanadaOnyama Limba RENEWAL
Munro M WaycottJapanXuxue Feng NEW
David T CaldareraBrazilStephen Shaw UNQUALIFIED
David P NickaRussiaAmy Elsner PROPOSAL
Johnson T SaylorsFranceOnyama Limba NEGOTIATION
Misaki T MarrierUnited KingdomAnna Fali QUALIFIED
Frozen Columns
Name
Octavia Q Amigon
Wickens O Sergi
Costa D Poquette
Jefferson T Oldroyd
Nicolas L Tollner
Leon E Malet
Misaki O Gaucho
Emily K Schemmer
Alejandro P Rulapaugh
Aika A Nestle
Alejandro I Slusarski
Mayumi G Ostrosky
Kaitlin M Poquette
Faith O Bowley
Aditya B Briddick
Ashley D Royster
Aruna L Stenseth
Cody Z Iturbide
Deepesh O Schemmer
Emily K Whobrey
Chavez J Wieser
Arvin S Kusko
Antonio Z Marrier
Isabel E Dilliard
Leon W Poquette
Alejandro X Royster
Leja M Gaucho
Aika M Darakjy
Arvin G Nestle
Ricardo D Poquette
Claire H Venere
Rodrigues U Kusko
Chavez X Glick
James C Marrier
Clifford T Malet
Emily X Ruta
Jennifer O Vocelka
Arvin H Inouye
Stacey E Kusko
Claire G Kusko
Greenwood N Stockham
Cody U Kolmetz
Octavia L Ruta
Murillo D Dilliard
Smith B Stockham
Emily L Amigon
Ashley L Rulapaugh
Munro G Amigon
James J Nestle
Jeanfrancois F Paprocki
IdCountryDate
1000Russia2024-04-29
1001Germany2024-05-12
1002Russia2024-04-30
1003Spain2024-05-18
1004United Kingdom2024-05-05
1005Brazil2024-05-01
1006Russia2024-05-13
1007Spain2024-05-06
1008Brazil2024-04-28
1009Russia2024-05-13
1010Spain2024-04-30
1011Japan2024-05-13
1012Italy2024-05-23
1013Italy2024-05-21
1014Japan2024-04-30
1015Argentina2024-05-01
1016Italy2024-05-22
1017Brazil2024-05-26
1018Germany2024-05-16
1019Canada2024-05-06
1020Spain2024-04-30
1021Italy2024-05-13
1022Germany2024-05-21
1023Argentina2024-05-12
1024United Kingdom2024-05-22
1025Brazil2024-05-09
1026Canada2024-05-11
1027France2024-05-16
1028Argentina2024-05-17
1029Japan2024-05-02
1030Canada2024-05-25
1031India2024-05-03
1032France2024-05-25
1033Italy2024-05-03
1034India2024-05-04
1035Italy2024-05-21
1036Japan2024-05-10
1037Australia2024-05-20
1038Japan2024-05-13
1039Argentina2024-05-11
1040Japan2024-05-22
1041India2024-05-11
1042Canada2024-04-30
1043Spain2024-05-05
1044Italy2024-05-23
1045Spain2024-05-02
1046Australia2024-04-28
1047Canada2024-05-06
1048India2024-05-24
1049Russia2024-05-14

On-Demand Data

NameIdCountryDate
Nicolas V Chui1000Canada2024-05-12
Faith D Ferencz1001India2024-05-05
Tony Y Gaucho1002United Kingdom2024-04-29
Tony I Poquette1003India2024-05-10
Claire N Malet1004Canada2024-04-28
Faith Q Amigon1005United Kingdom2024-04-28
Isabel I Shinko1006Canada2024-05-11
Munro Z Malet1007Australia2024-04-29
Isabel A Gillian1008Germany2024-05-10
Aruna G Royster1009Russia2024-05-06
Ivar Z Dilliard1010Spain2024-05-25
Smith E Bowley1011India2024-05-12
Octavia F Flosi1012Brazil2024-05-13
Antonio K Flosi1013India2024-05-08
Julie W Ruta1014India2024-05-08
Leon S Ostrosky1015Brazil2024-05-11
Ivar F Malet1016India2024-05-08
Juan B Albares1017Brazil2024-05-06
Antonio I Dilliard1018United Kingdom2024-05-07
Mayumi V Albares1019Italy2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar Z FlosiAustraliaStephen Shaw RENEWAL
Maisha H MaletJapanAsiya Javayant QUALIFIED
Kaitlin I RimUnited KingdomAmy Elsner QUALIFIED
Tony L DarakjyArgentinaAnna Fali PROPOSAL
Isabel G RimAustraliaOnyama Limba PROPOSAL
Jefferson Y MarrierJapanAsiya Javayant UNQUALIFIED
Izzy I CaldareraIndiaIoni Bowcher UNQUALIFIED
Isabel E SaylorsItalyBernardo Dominic NEGOTIATION
Wickens F CampainAustraliaAnna Fali NEW
Adams T IturbideArgentinaStephen Shaw PROPOSAL
Munro C AlbaresItalyIoni Bowcher QUALIFIED
Mayumi G WieserRussiaOnyama Limba NEGOTIATION
Aditya V AmigonRussiaXuxue Feng PROPOSAL
Jennifer Z RoysterRussiaAnna Fali NEGOTIATION
Deepesh I DilliardGermanyAsiya Javayant PROPOSAL
Deepesh R PaprockiItalyStephen Shaw QUALIFIED
David M DarakjyFranceAsiya Javayant NEW
Stacey M MorascaUnited KingdomAmy Elsner NEGOTIATION
Tony D GauchoItalyAnna Fali RENEWAL
Octavia E MaletJapanAnna Fali NEW
Stacey P RoysterAustraliaXuxue Feng NEW
David F WaycottArgentinaStephen Shaw PROPOSAL
Cody E AlbaresIndiaIoni Bowcher QUALIFIED
Jones E RulapaughSpainElwin Sharvill PROPOSAL
Cody W ShinkoArgentinaAnna Fali NEGOTIATION
Leon I BologniaSpainElwin Sharvill PROPOSAL
Claire B MarrierAustraliaAnna Fali NEGOTIATION
Faith P OldroydAustraliaStephen Shaw NEGOTIATION
Salvatore Z GillianRussiaXuxue Feng NEGOTIATION
Silvio Z RimCanadaAnna Fali NEW
Francesco F FollerAustraliaElwin Sharvill QUALIFIED
Nicolas X RimArgentinaOnyama Limba PROPOSAL
Kaitlin G GauchoArgentinaStephen Shaw NEW
Mayumi C FlosiItalyAmy Elsner QUALIFIED
Clifford O SergiFranceStephen Shaw NEW
Jefferson X RimJapanBernardo Dominic QUALIFIED
Darci Z MarrierJapanIvan Magalhaes NEW
Rodrigues C GauchoAustraliaAnna Fali NEW
Deepesh B AmigonRussiaStephen Shaw UNQUALIFIED
Misaki I GlickBrazilStephen Shaw QUALIFIED

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