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
Alejandro A NickaItalyIvan Magalhaes NEGOTIATION
Chavez C CampainCanadaOnyama Limba PROPOSAL
Ivar R BriddickArgentinaAmy Elsner RENEWAL
Stacey R MorascaArgentinaAmy Elsner PROPOSAL
Ivar O SergiFranceOnyama Limba QUALIFIED
Aditya I VenereUnited KingdomAmy Elsner QUALIFIED
Leon N PerinArgentinaIoni Bowcher NEW
Leon N GauchoFranceBernardo Dominic QUALIFIED
Julie A StockhamArgentinaAsiya Javayant QUALIFIED
Aruna G FlosiCanadaBernardo Dominic NEW
Aruna K GlickArgentinaIvan Magalhaes QUALIFIED
Kadeem K SergiItalyXuxue Feng NEW
Aditya M GarufiUnited KingdomAmy Elsner UNQUALIFIED
Sinclair N GillianSpainOnyama Limba QUALIFIED
Kaitlin K MaletRussiaStephen Shaw PROPOSAL
Mujtaba D SchemmerArgentinaStephen Shaw RENEWAL
Claire X AlbaresUnited KingdomIoni Bowcher QUALIFIED
James C DoeUnited KingdomAsiya Javayant RENEWAL
Maisha U BologniaCanadaIvan Magalhaes UNQUALIFIED
Emily T SchemmerBrazilOnyama Limba NEGOTIATION
Izzy M WieserUnited KingdomBernardo Dominic PROPOSAL
Claire A ChuiRussiaBernardo Dominic UNQUALIFIED
Francesco Z RoysterArgentinaXuxue Feng QUALIFIED
Ashley N ButtSpainBernardo Dominic UNQUALIFIED
James J CaudyFranceStephen Shaw RENEWAL
Francesco I PerinAustraliaXuxue Feng QUALIFIED
Emily F SaylorsArgentinaElwin Sharvill UNQUALIFIED
Nicolas N GlickAustraliaAmy Elsner RENEWAL
James Q WhobreyItalyElwin Sharvill NEGOTIATION
Aruna S MaletArgentinaOnyama Limba NEW
Cody E TollnerGermanyStephen Shaw RENEWAL
Mujtaba W VenereRussiaAsiya Javayant PROPOSAL
Costa D FollerGermanyAsiya Javayant QUALIFIED
Leja T CaudyArgentinaBernardo Dominic NEGOTIATION
Kadeem I GarufiFranceAmy Elsner RENEWAL
Kadeem D OstroskyUnited KingdomStephen Shaw PROPOSAL
Chavez E NestleArgentinaStephen Shaw UNQUALIFIED
Sinclair I IturbideSpainStephen Shaw NEW
Tony K OldroydRussiaIoni Bowcher RENEWAL
Salvatore U GarufiAustraliaElwin Sharvill PROPOSAL
Ivar C VenereRussiaElwin Sharvill NEGOTIATION
Ashley W DarakjyCanadaBernardo Dominic PROPOSAL
Isabel R RutaJapanXuxue Feng UNQUALIFIED
Mujtaba D VenereIndiaBernardo Dominic PROPOSAL
Nicolas R ChuiBrazilAmy Elsner RENEWAL
Francesco A GarufiJapanIoni Bowcher NEW
Wickens J OldroydArgentinaIoni Bowcher PROPOSAL
Smith W DarakjyJapanElwin Sharvill RENEWAL
Darci R StockhamArgentinaIoni Bowcher UNQUALIFIED
Arvin I SergiArgentinaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leja T MorascaSpainStephen Shaw NEGOTIATION
Isabel R CaudyJapanStephen Shaw RENEWAL
Silvio X ChuiJapanAsiya Javayant NEGOTIATION
Antonio M RulapaughRussiaElwin Sharvill UNQUALIFIED
Darci M CaudyItalyAmy Elsner NEGOTIATION
Jeanfrancois P GarufiGermanyAsiya Javayant RENEWAL
Johnson Q GlickIndiaIvan Magalhaes NEW
Greenwood K RutaAustraliaXuxue Feng UNQUALIFIED
Izzy I PoquetteRussiaAmy Elsner QUALIFIED
Silvio P FerenczJapanAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel S NestleBrazil2024-05-10Chemel, James L Cpa NEW28Elwin Sharvill
1001Deepesh X ShinkoBrazil2024-05-21Printing Dimensions NEW81Stephen Shaw
1002Alejandro P IturbideArgentina2024-05-18King, Christopher A Esq NEGOTIATION1Xuxue Feng
1003Costa H ButtRussia2024-05-15Chanay, Jeffrey A Esq NEW53Anna Fali
1004Cody O KolmetzJapan2024-05-14Truhlar And Truhlar Attys NEW19Ioni Bowcher
1005Rodrigues P OstroskyJapan2024-06-01King, Christopher A Esq RENEWAL56Xuxue Feng
1006Munro F WhobreyAustralia2024-06-05King, Christopher A Esq QUALIFIED26Xuxue Feng
1007Darci G VocelkaGermany2024-05-17Truhlar And Truhlar Attys NEGOTIATION64Ioni Bowcher
1008Maria T RoysterItaly2024-05-27Morlong Associates QUALIFIED2Anna Fali
1009Aika Q WaycottRussia2024-05-20Rousseaux, Michael Esq RENEWAL4Anna Fali
1010Johnson E FollerJapan2024-05-14Benton, John B Jr RENEWAL41Stephen Shaw
1011Jones Z NestleSpain2024-06-03Printing Dimensions PROPOSAL84Xuxue Feng
1012Smith S AmigonUnited Kingdom2024-06-01Chapman, Ross E Esq PROPOSAL13Xuxue Feng
1013Chavez H RutaAustralia2024-05-16Dorl, James J Esq NEGOTIATION25Stephen Shaw
1014Francesco T StensethFrance2024-05-27Commercial Press NEGOTIATION99Anna Fali
1015James T DarakjyItaly2024-05-17Buckley Miller Wright PROPOSAL60Anna Fali
1016Maria Q GarufiArgentina2024-05-17Printing Dimensions NEGOTIATION71Bernardo Dominic
1017Kaitlin W IturbideGermany2024-05-12Rangoni Of Florence UNQUALIFIED69Elwin Sharvill
1018Nicolas W StockhamBrazil2024-05-22Commercial Press NEW12Ivan Magalhaes
1019Ricardo V MaletSpain2024-05-09Feiner Bros UNQUALIFIED99Stephen Shaw
1020Wickens I FerenczFrance2024-05-16Chemel, James L Cpa NEW53Anna Fali
1021Isabel D MorascaCanada2024-05-13Feiner Bros NEGOTIATION73Xuxue Feng
1022Morrow H TollnerIndia2024-05-20Chapman, Ross E Esq QUALIFIED73Stephen Shaw
1023Ricardo Z OldroydRussia2024-05-11Benton, John B Jr PROPOSAL99Ioni Bowcher
1024Leja W RimBrazil2024-05-09Truhlar And Truhlar Attys NEW45Elwin Sharvill
1025Clifford Q KolmetzItaly2024-05-24Chapman, Ross E Esq NEW69Bernardo Dominic
1026Izzy B MaletRussia2024-05-18Morlong Associates PROPOSAL74Ioni Bowcher
1027James F PerinGermany2024-05-22Commercial Press UNQUALIFIED78Bernardo Dominic
1028Murillo B InouyeItaly2024-05-29Benton, John B Jr QUALIFIED31Xuxue Feng
1029Leon X ButtBrazil2024-05-30Rangoni Of Florence UNQUALIFIED51Bernardo Dominic
1030Nicolas E RutaAustralia2024-05-23Feltz Printing Service NEW51Elwin Sharvill
1031Julie S FigeroaIndia2024-05-15Rousseaux, Michael Esq NEW97Ioni Bowcher
1032Jones B VenereRussia2024-06-07Printing Dimensions PROPOSAL80Asiya Javayant
1033Jeanfrancois U NickaIndia2024-05-18Printing Dimensions UNQUALIFIED16Ivan Magalhaes
1034Ashley N ShinkoJapan2024-05-21Benton, John B Jr PROPOSAL19Stephen Shaw
1035Deepesh Y InouyeArgentina2024-05-26Feltz Printing Service RENEWAL65Stephen Shaw
1036Faith W BowleyBrazil2024-05-10Truhlar And Truhlar Attys NEW10Ioni Bowcher
1037Ricardo K FigeroaGermany2024-05-27Buckley Miller Wright QUALIFIED31Anna Fali
1038Aruna V RoysterCanada2024-05-27King, Christopher A Esq RENEWAL97Ivan Magalhaes
1039Claire S CaldareraAustralia2024-06-07Truhlar And Truhlar Attys QUALIFIED20Onyama Limba
1040Costa V DarakjyArgentina2024-05-24King, Christopher A Esq RENEWAL98Stephen Shaw
1041Aruna Y BriddickGermany2024-05-22Feiner Bros UNQUALIFIED20Ioni Bowcher
1042Morrow J SlusarskiArgentina2024-05-20Feltz Printing Service RENEWAL51Asiya Javayant
1043Adams L BriddickArgentina2024-05-10Truhlar And Truhlar Attys NEW9Stephen Shaw
1044Costa Z FlosiCanada2024-05-25Chemel, James L Cpa PROPOSAL57Bernardo Dominic
1045Isabel Z MaletIndia2024-05-25Truhlar And Truhlar Attys QUALIFIED17Ioni Bowcher
1046Maisha Y MarrierGermany2024-05-16Feltz Printing Service QUALIFIED24Asiya Javayant
1047Salvatore Y StensethCanada2024-05-15Chanay, Jeffrey A Esq RENEWAL18Ivan Magalhaes
1048Stacey W ShinkoJapan2024-05-17Chapman, Ross E Esq NEGOTIATION96Ivan Magalhaes
1049Jennifer J ButtItaly2024-05-14Buckley Miller Wright RENEWAL4Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Greenwood R SaylorsItalyStephen Shaw RENEWAL
Chavez D KolmetzUnited KingdomAsiya Javayant QUALIFIED
Leon I RoysterAustraliaOnyama Limba QUALIFIED
Nicolas O SlusarskiGermanyXuxue Feng RENEWAL
Emily L MaletCanadaIvan Magalhaes NEGOTIATION
Rodrigues X AmigonGermanyElwin Sharvill PROPOSAL
Claire Z VocelkaIndiaIoni Bowcher RENEWAL
Misaki E SchemmerRussiaAsiya Javayant RENEWAL
Julie N SergiRussiaAnna Fali NEW
Jeanfrancois U WaycottGermanyXuxue Feng RENEWAL
Antonio W ChuiJapanAmy Elsner NEW
Silvio H CaudyRussiaStephen Shaw UNQUALIFIED
Aditya T PerinRussiaIoni Bowcher NEGOTIATION
Leja M GauchoItalyIoni Bowcher NEW
Leja H InouyeBrazilOnyama Limba PROPOSAL
Mujtaba A OstroskyGermanyXuxue Feng RENEWAL
Murillo C BowleyGermanyAsiya Javayant NEW
Antonio I FigeroaCanadaAnna Fali UNQUALIFIED
Silvio K ButtUnited KingdomStephen Shaw QUALIFIED
Stacey J AmigonRussiaBernardo Dominic QUALIFIED
Aika N RimBrazilBernardo Dominic UNQUALIFIED
Cody S DarakjyGermanyIvan Magalhaes RENEWAL
Deepesh A ChuiArgentinaStephen Shaw QUALIFIED
Misaki L NickaAustraliaOnyama Limba UNQUALIFIED
Wickens L CaudyBrazilIoni Bowcher UNQUALIFIED
Misaki F OldroydAustraliaElwin Sharvill NEGOTIATION
Stacey H ButtIndiaAsiya Javayant NEGOTIATION
Misaki O AmigonFranceIoni Bowcher PROPOSAL
Maria M RulapaughArgentinaOnyama Limba PROPOSAL
Tony K OstroskyGermanyAnna Fali NEW
Leja W ButtAustraliaXuxue Feng UNQUALIFIED
Misaki G WieserUnited KingdomOnyama Limba NEGOTIATION
Arvin K NestleAustraliaElwin Sharvill NEW
Morrow P FigeroaGermanyStephen Shaw NEGOTIATION
Ivar W KolmetzJapanStephen Shaw NEGOTIATION
Wickens N RulapaughJapanXuxue Feng NEW
Morrow Y WaycottAustraliaAnna Fali NEGOTIATION
Arvin R KolmetzArgentinaIvan Magalhaes NEW
Francesco K ShinkoCanadaBernardo Dominic NEW
Murillo B ButtJapanAsiya Javayant PROPOSAL
Adams R PoquetteItalyXuxue Feng PROPOSAL
Isabel H DoeBrazilXuxue Feng QUALIFIED
Mujtaba T TollnerCanadaStephen Shaw RENEWAL
Francesco S RimUnited KingdomStephen Shaw NEGOTIATION
Clifford A PoquetteSpainStephen Shaw RENEWAL
Misaki E GarufiUnited KingdomAnna Fali NEGOTIATION
Ivar Z RoysterBrazilIoni Bowcher RENEWAL
Smith I PerinAustraliaElwin Sharvill QUALIFIED
Alejandro W StockhamRussiaStephen Shaw PROPOSAL
Aika B FerenczGermanyAmy Elsner QUALIFIED
Frozen Columns
Name
Salvatore T Foller
Alejandro M Whobrey
David J Dilliard
Rodrigues C Malet
Arvin C Amigon
James Z Caudy
Jeanfrancois C Royster
Izzy E Gaucho
Kaitlin V Glick
Misaki P Inouye
Ashley X Ruta
Tony H Ferencz
Mayumi T Amigon
Murillo X Iturbide
Smith B Whobrey
Jones G Royster
Aika Q Royster
Nicolas X Kusko
Arvin X Waycott
Emily N Wieser
Mujtaba O Gaucho
Clifford A Rim
Juan H Gillian
Stacey C Poquette
Rodrigues Y Poquette
Stacey E Venere
Murillo W Poquette
Smith X Bowley
Nicolas O Albares
Jeanfrancois S Tollner
Alejandro G Caldarera
Claire N Ferencz
Aruna K Ruta
Sinclair H Gillian
Claire R Kusko
Morrow P Waycott
Antonio R Morasca
Smith G Waycott
Misaki A Venere
Nicolas P Ostrosky
Aditya B Waycott
Ashley S Stenseth
Cody K Schemmer
Salvatore X Whobrey
Smith B Garufi
Silvio V Venere
Jennifer F Nestle
Silvio N Flosi
Deepesh Q Malet
Jefferson F Paprocki
IdCountryDate
1000Japan2024-05-30
1001India2024-05-18
1002France2024-06-02
1003United Kingdom2024-05-29
1004Germany2024-05-19
1005India2024-05-20
1006Australia2024-05-30
1007France2024-05-13
1008Italy2024-05-18
1009India2024-05-23
1010Germany2024-05-10
1011India2024-05-09
1012Argentina2024-05-23
1013Argentina2024-05-27
1014Brazil2024-05-10
1015United Kingdom2024-05-21
1016India2024-05-24
1017Australia2024-06-05
1018Germany2024-05-21
1019Australia2024-06-01
1020France2024-05-14
1021Japan2024-05-17
1022Germany2024-05-18
1023Brazil2024-05-25
1024Japan2024-06-06
1025Japan2024-05-25
1026Spain2024-05-26
1027India2024-05-28
1028Argentina2024-05-28
1029France2024-05-19
1030Japan2024-06-03
1031France2024-06-06
1032Brazil2024-05-10
1033Germany2024-05-13
1034Japan2024-05-16
1035India2024-05-31
1036France2024-05-22
1037Argentina2024-05-23
1038India2024-05-30
1039Italy2024-05-16
1040Spain2024-05-19
1041Argentina2024-05-29
1042Australia2024-06-01
1043Brazil2024-06-04
1044Japan2024-05-31
1045Australia2024-05-29
1046Brazil2024-05-09
1047Russia2024-05-10
1048Australia2024-06-07
1049Italy2024-05-27

On-Demand Data

NameIdCountryDate
Maisha E Kolmetz1000Russia2024-05-24
Mujtaba J Whobrey1001Canada2024-05-25
Maisha Q Ferencz1002Argentina2024-05-22
Leja X Whobrey1003Brazil2024-05-16
Aika A Foller1004United Kingdom2024-05-24
Aika T Gillian1005Germany2024-05-14
Misaki F Gaucho1006France2024-05-27
Julie R Campain1007India2024-05-26
Alejandro Q Shinko1008Italy2024-05-13
Mujtaba M Doe1009France2024-05-24
Maria S Royster1010Australia2024-05-28
Jeanfrancois V Glick1011France2024-05-15
Cody D Nicka1012Brazil2024-05-27
Salvatore C Figeroa1013France2024-05-31
Adams J Ferencz1014France2024-05-18
Leon Z Kolmetz1015Brazil2024-05-27
Aika Q Shinko1016Italy2024-05-12
Jennifer L Dilliard1017Brazil2024-06-03
Aruna V Perin1018Spain2024-05-28
Jeanfrancois H Maclead1019France2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco J GlickCanadaAnna Fali NEW
Francesco V FerenczGermanyOnyama Limba RENEWAL
Claire L VocelkaFranceAmy Elsner RENEWAL
Arvin V NestleAustraliaAmy Elsner NEW
Jones P MarrierItalyStephen Shaw NEW
David D FerenczIndiaElwin Sharvill NEW
Munro R SchemmerFranceBernardo Dominic RENEWAL
Leja M NestleAustraliaAsiya Javayant QUALIFIED
Alejandro T NestleUnited KingdomOnyama Limba NEW
Wickens T OstroskyCanadaOnyama Limba PROPOSAL
Johnson Y MaletUnited KingdomStephen Shaw QUALIFIED
Morrow S InouyeBrazilBernardo Dominic PROPOSAL
David C FollerBrazilElwin Sharvill PROPOSAL
Kadeem I FigeroaSpainAnna Fali NEGOTIATION
Aruna Z DoeSpainAnna Fali RENEWAL
Maria M StockhamRussiaAnna Fali NEW
Aika M DoeBrazilAmy Elsner QUALIFIED
Chavez O RutaBrazilAsiya Javayant UNQUALIFIED
James L BologniaFranceAmy Elsner NEGOTIATION
Alejandro A ButtRussiaAsiya Javayant RENEWAL
Maria M GarufiItalyIoni Bowcher PROPOSAL
Leja F PoquetteFranceXuxue Feng QUALIFIED
Adams X BologniaIndiaOnyama Limba NEGOTIATION
Izzy T SchemmerIndiaAmy Elsner RENEWAL
Mujtaba P GillianFranceOnyama Limba NEGOTIATION
Wickens S SchemmerArgentinaOnyama Limba PROPOSAL
Alejandro Z ShinkoUnited KingdomIvan Magalhaes QUALIFIED
Octavia O PaprockiBrazilIvan Magalhaes RENEWAL
Antonio R OstroskyUnited KingdomXuxue Feng NEGOTIATION
Arvin X RimAustraliaAmy Elsner UNQUALIFIED
Costa C SaylorsRussiaIoni Bowcher NEGOTIATION
Misaki M OstroskyFranceAsiya Javayant NEGOTIATION
Jeanfrancois K OstroskyGermanyAnna Fali RENEWAL
Mayumi V GillianItalyOnyama Limba PROPOSAL
Jeanfrancois J FerenczArgentinaAmy Elsner PROPOSAL
Wickens M CaldareraAustraliaBernardo Dominic NEW
David F AlbaresCanadaElwin Sharvill RENEWAL
Morrow J GillianItalyStephen Shaw NEW
Maisha N WieserFranceIoni Bowcher RENEWAL
Juan I DoeUnited KingdomElwin Sharvill 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>