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
Maria E RulapaughBrazilAnna Fali NEW
Jones G DarakjyFranceAsiya Javayant NEW
Salvatore V StensethJapanAmy Elsner NEGOTIATION
Cody H PoquetteItalyIoni Bowcher NEGOTIATION
Octavia F MaletAustraliaXuxue Feng PROPOSAL
Francesco A NestleBrazilBernardo Dominic NEGOTIATION
Jones J FigeroaGermanyElwin Sharvill PROPOSAL
Alejandro W WieserIndiaBernardo Dominic NEW
Maria D MaletGermanyStephen Shaw RENEWAL
Adams T GarufiFranceBernardo Dominic UNQUALIFIED
Claire L ChuiArgentinaElwin Sharvill NEGOTIATION
Nicolas Q IturbideJapanBernardo Dominic UNQUALIFIED
Chavez N ShinkoJapanAsiya Javayant UNQUALIFIED
Jennifer S DilliardGermanyIoni Bowcher PROPOSAL
Mayumi Z BologniaBrazilAsiya Javayant RENEWAL
Morrow Y CampainCanadaXuxue Feng RENEWAL
Isabel I MaletFranceIoni Bowcher NEW
Munro K FlosiAustraliaStephen Shaw NEGOTIATION
Mujtaba C OstroskyFranceIvan Magalhaes RENEWAL
Mayumi N IturbideRussiaAsiya Javayant NEGOTIATION
Maria T GlickFranceAsiya Javayant PROPOSAL
Julie A KolmetzItalyIoni Bowcher QUALIFIED
Tony G DoeRussiaIvan Magalhaes NEGOTIATION
Emily F KuskoAustraliaElwin Sharvill RENEWAL
Sinclair U WaycottAustraliaIvan Magalhaes QUALIFIED
Juan H BologniaFranceStephen Shaw RENEWAL
Johnson Y StockhamUnited KingdomIvan Magalhaes QUALIFIED
Cody N AmigonBrazilAmy Elsner UNQUALIFIED
Smith N WaycottBrazilStephen Shaw QUALIFIED
Aruna P WaycottBrazilBernardo Dominic NEGOTIATION
Jennifer W PoquetteJapanStephen Shaw UNQUALIFIED
David J MacleadCanadaOnyama Limba NEGOTIATION
Juan A NestleArgentinaStephen Shaw RENEWAL
Jeanfrancois A SlusarskiSpainIoni Bowcher PROPOSAL
Maisha A DarakjyGermanyStephen Shaw PROPOSAL
Ricardo I RulapaughArgentinaAmy Elsner UNQUALIFIED
Ivar A SergiGermanyOnyama Limba UNQUALIFIED
Kadeem I MaletArgentinaAnna Fali QUALIFIED
Aditya P OstroskyItalyStephen Shaw RENEWAL
Kadeem T RulapaughRussiaAsiya Javayant QUALIFIED
Antonio R CaldareraRussiaXuxue Feng PROPOSAL
Ashley V WieserIndiaAsiya Javayant NEW
Juan H MaletIndiaAsiya Javayant RENEWAL
Greenwood H OstroskyCanadaBernardo Dominic RENEWAL
Juan B OldroydItalyAnna Fali NEW
Maisha T BowleyCanadaXuxue Feng NEW
Darci Y StensethFranceXuxue Feng RENEWAL
Maisha K VocelkaItalyXuxue Feng NEW
Francesco V SaylorsJapanIoni Bowcher QUALIFIED
Maisha C OstroskyRussiaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Misaki H KuskoSpainOnyama Limba UNQUALIFIED
Claire M MaletItalyBernardo Dominic PROPOSAL
Octavia W CaudySpainXuxue Feng QUALIFIED
Silvio F MaletGermanyXuxue Feng QUALIFIED
Aika O RoysterRussiaAsiya Javayant UNQUALIFIED
Munro C InouyeSpainAmy Elsner PROPOSAL
Sinclair N PerinIndiaElwin Sharvill UNQUALIFIED
Misaki M PaprockiFranceOnyama Limba RENEWAL
Aruna U AmigonItalyAmy Elsner NEGOTIATION
Munro O RutaItalyIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith A NickaBrazil2024-06-13Rousseaux, Michael Esq RENEWAL46Xuxue Feng
1001Silvio D CampainAustralia2024-06-10Feiner Bros UNQUALIFIED31Stephen Shaw
1002Emily Z MaletRussia2024-06-22Chapman, Ross E Esq PROPOSAL48Anna Fali
1003Johnson C NestleBrazil2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED63Elwin Sharvill
1004Adams Q AmigonItaly2024-05-30Benton, John B Jr RENEWAL52Anna Fali
1005Ivar Y ButtItaly2024-05-25Commercial Press PROPOSAL75Onyama Limba
1006Jeanfrancois R WaycottGermany2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED45Elwin Sharvill
1007Claire I RulapaughArgentina2024-06-22Morlong Associates RENEWAL57Ioni Bowcher
1008Faith P RulapaughRussia2024-06-09Printing Dimensions QUALIFIED37Asiya Javayant
1009Ivar E VenereItaly2024-05-27King, Christopher A Esq QUALIFIED39Bernardo Dominic
1010Maisha C MaletSpain2024-06-22Feltz Printing Service UNQUALIFIED14Elwin Sharvill
1011Jennifer Z InouyeJapan2024-05-24Commercial Press UNQUALIFIED34Onyama Limba
1012Rodrigues S MorascaArgentina2024-06-22Chanay, Jeffrey A Esq RENEWAL51Stephen Shaw
1013Murillo X GillianAustralia2024-06-08Printing Dimensions QUALIFIED67Ivan Magalhaes
1014Kadeem Z CaudyIndia2024-06-22Chemel, James L Cpa NEW85Xuxue Feng
1015Sinclair A DarakjyArgentina2024-06-16Morlong Associates UNQUALIFIED10Ioni Bowcher
1016Salvatore D CaudyGermany2024-06-03Feltz Printing Service QUALIFIED69Anna Fali
1017Mayumi E NestleFrance2024-06-03King, Christopher A Esq NEGOTIATION23Xuxue Feng
1018David I GarufiFrance2024-05-29Buckley Miller Wright PROPOSAL7Elwin Sharvill
1019Cody U MaletCanada2024-06-01King, Christopher A Esq NEW34Ivan Magalhaes
1020Greenwood K CampainBrazil2024-05-25Chapman, Ross E Esq RENEWAL47Elwin Sharvill
1021Leja L DilliardItaly2024-06-19Printing Dimensions QUALIFIED78Bernardo Dominic
1022Leja U GauchoItaly2024-05-26Morlong Associates NEW29Ivan Magalhaes
1023Jones X MorascaIndia2024-06-13Chapman, Ross E Esq QUALIFIED85Anna Fali
1024Ashley B StockhamRussia2024-05-31Benton, John B Jr RENEWAL41Stephen Shaw
1025Leja W CaudyRussia2024-06-17Benton, John B Jr PROPOSAL70Xuxue Feng
1026Sinclair N ShinkoUnited Kingdom2024-05-26Benton, John B Jr RENEWAL89Xuxue Feng
1027Misaki N SchemmerArgentina2024-06-19King, Christopher A Esq PROPOSAL92Asiya Javayant
1028Francesco X PoquetteItaly2024-06-21Dorl, James J Esq PROPOSAL84Elwin Sharvill
1029Jefferson F ShinkoArgentina2024-05-25Chanay, Jeffrey A Esq PROPOSAL85Amy Elsner
1030Jeanfrancois A InouyeSpain2024-05-26Feiner Bros PROPOSAL24Amy Elsner
1031Aika X KuskoCanada2024-06-21Rangoni Of Florence PROPOSAL51Asiya Javayant
1032Darci I IturbideRussia2024-06-16Commercial Press PROPOSAL77Elwin Sharvill
1033Johnson Q GarufiItaly2024-06-22Feltz Printing Service UNQUALIFIED31Ivan Magalhaes
1034Salvatore T ButtSpain2024-06-04Printing Dimensions PROPOSAL55Ioni Bowcher
1035Aditya Y CampainArgentina2024-05-28Feltz Printing Service PROPOSAL24Amy Elsner
1036Jeanfrancois R IturbideRussia2024-06-04King, Christopher A Esq RENEWAL30Ioni Bowcher
1037Jones E RulapaughCanada2024-06-04Feiner Bros RENEWAL41Ioni Bowcher
1038Kadeem Y PerinUnited Kingdom2024-06-11Rangoni Of Florence RENEWAL68Stephen Shaw
1039Maisha A FigeroaJapan2024-06-13Buckley Miller Wright PROPOSAL59Amy Elsner
1040James Q StockhamGermany2024-06-06Chanay, Jeffrey A Esq NEGOTIATION86Elwin Sharvill
1041Nicolas P MaletAustralia2024-06-15Buckley Miller Wright PROPOSAL70Anna Fali
1042Mayumi B AmigonBrazil2024-05-29Feltz Printing Service PROPOSAL76Xuxue Feng
1043Claire R DilliardItaly2024-06-22Truhlar And Truhlar Attys UNQUALIFIED86Ivan Magalhaes
1044Aditya C WhobreyArgentina2024-06-19Chanay, Jeffrey A Esq RENEWAL51Elwin Sharvill
1045Kaitlin L RulapaughArgentina2024-05-29Chapman, Ross E Esq QUALIFIED54Xuxue Feng
1046David F KuskoGermany2024-06-01Printing Dimensions RENEWAL51Anna Fali
1047Rodrigues P SlusarskiItaly2024-06-04Truhlar And Truhlar Attys QUALIFIED6Xuxue Feng
1048Mayumi F WieserArgentina2024-05-30Printing Dimensions NEW87Elwin Sharvill
1049Tony U FerenczItaly2024-06-04Chapman, Ross E Esq PROPOSAL37Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Faith W WhobreyFranceElwin Sharvill QUALIFIED
James U GillianBrazilIvan Magalhaes RENEWAL
Wickens K GarufiSpainBernardo Dominic NEGOTIATION
Johnson A ChuiRussiaElwin Sharvill PROPOSAL
Antonio K GlickAustraliaStephen Shaw PROPOSAL
Juan P GarufiArgentinaStephen Shaw NEW
Wickens T CaldareraBrazilXuxue Feng QUALIFIED
Mujtaba S StensethFranceAnna Fali PROPOSAL
James C PaprockiBrazilIvan Magalhaes NEGOTIATION
Maisha G FerenczIndiaXuxue Feng NEGOTIATION
Ivar F MaletIndiaIvan Magalhaes RENEWAL
Salvatore A TollnerBrazilIvan Magalhaes NEGOTIATION
Johnson U NestleCanadaIoni Bowcher PROPOSAL
Leja W KolmetzGermanyIvan Magalhaes PROPOSAL
Morrow W RulapaughSpainAnna Fali QUALIFIED
Jones I SergiRussiaAsiya Javayant NEGOTIATION
Costa L PerinIndiaXuxue Feng QUALIFIED
Chavez T BowleyJapanIoni Bowcher NEW
Tony R GillianUnited KingdomAsiya Javayant QUALIFIED
Munro Z VocelkaBrazilAnna Fali QUALIFIED
Darci G WaycottSpainElwin Sharvill NEGOTIATION
Faith K MorascaGermanyIoni Bowcher NEGOTIATION
Ivar C FerenczArgentinaIvan Magalhaes UNQUALIFIED
David A MarrierItalyBernardo Dominic NEW
Ivar T RoysterArgentinaIoni Bowcher NEW
Izzy I SaylorsGermanyElwin Sharvill RENEWAL
Ashley E OstroskyCanadaAsiya Javayant RENEWAL
Ashley V DarakjyUnited KingdomIvan Magalhaes QUALIFIED
Arvin F CaudyFranceIvan Magalhaes QUALIFIED
Arvin E PerinBrazilAsiya Javayant NEW
Ivar W SaylorsUnited KingdomAnna Fali NEW
Izzy T AmigonFranceIoni Bowcher QUALIFIED
Wickens L CaldareraRussiaIvan Magalhaes NEW
Costa P MaletRussiaBernardo Dominic UNQUALIFIED
Murillo O StensethRussiaBernardo Dominic QUALIFIED
Jennifer K AmigonArgentinaBernardo Dominic RENEWAL
Mayumi U GillianBrazilBernardo Dominic RENEWAL
Maria F SergiAustraliaAmy Elsner PROPOSAL
Munro R MaletJapanXuxue Feng NEGOTIATION
Alejandro L AlbaresItalyXuxue Feng UNQUALIFIED
Misaki X DoeAustraliaStephen Shaw QUALIFIED
Aditya L CaudyBrazilAmy Elsner PROPOSAL
James D ChuiRussiaStephen Shaw UNQUALIFIED
Leja M GillianAustraliaAmy Elsner QUALIFIED
Rodrigues K DarakjyAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois B TollnerSpainStephen Shaw RENEWAL
Jefferson K GauchoAustraliaStephen Shaw NEGOTIATION
Rodrigues M RulapaughRussiaAmy Elsner RENEWAL
Octavia K FerenczSpainBernardo Dominic NEW
Darci Y DarakjyItalyBernardo Dominic NEGOTIATION
Frozen Columns
Name
Ashley X Poquette
Greenwood U Stockham
Ricardo T Venere
Darci K Ostrosky
Isabel N Doe
Costa M Caldarera
Costa H Oldroyd
Wickens Y Stockham
Silvio X Wieser
Johnson D Briddick
Izzy K Morasca
Isabel Y Ruta
Emily O Maclead
Misaki Z Royster
David Q Morasca
Ashley L Stockham
Deepesh D Malet
Nicolas W Rim
Leon H Schemmer
Jefferson L Oldroyd
Tony R Perin
Mujtaba S Kusko
Leja B Sergi
Maisha U Amigon
Nicolas Y Inouye
Ricardo B Waycott
Johnson N Vocelka
Adams C Doe
Greenwood T Gaucho
Ivar C Gillian
Salvatore Y Figeroa
Jennifer L Inouye
Ashley K Darakjy
Chavez S Ostrosky
Aditya U Chui
Salvatore W Morasca
Wickens O Chui
Julie H Waycott
Kaitlin E Vocelka
Jennifer Q Flosi
Jefferson X Stenseth
Murillo J Stockham
Nicolas V Caudy
Munro W Figeroa
Aruna I Paprocki
Johnson L Stenseth
Octavia T Rulapaugh
Salvatore W Perin
Maisha Y Doe
Emily W Kolmetz
IdCountryDate
1000Japan2024-06-18
1001Argentina2024-06-05
1002Germany2024-06-19
1003Germany2024-06-08
1004Argentina2024-05-30
1005Argentina2024-06-07
1006Argentina2024-06-22
1007United Kingdom2024-06-20
1008Canada2024-06-16
1009India2024-06-03
1010United Kingdom2024-06-01
1011Italy2024-06-16
1012Spain2024-06-07
1013Argentina2024-06-01
1014Italy2024-05-27
1015Japan2024-06-21
1016Canada2024-05-25
1017Germany2024-06-05
1018Japan2024-05-28
1019India2024-06-11
1020Spain2024-05-29
1021United Kingdom2024-06-12
1022France2024-06-06
1023Spain2024-06-12
1024Brazil2024-06-22
1025United Kingdom2024-06-08
1026Australia2024-06-19
1027Brazil2024-06-20
1028Japan2024-05-31
1029Japan2024-05-31
1030Japan2024-06-18
1031India2024-06-15
1032Australia2024-05-29
1033Russia2024-06-21
1034Australia2024-05-31
1035Russia2024-06-11
1036Canada2024-06-20
1037India2024-06-11
1038Australia2024-06-06
1039Germany2024-06-01
1040Japan2024-06-18
1041Japan2024-05-27
1042Spain2024-06-15
1043Argentina2024-06-17
1044France2024-06-01
1045Canada2024-05-28
1046France2024-05-28
1047France2024-06-09
1048Argentina2024-06-07
1049France2024-06-04

On-Demand Data

NameIdCountryDate
Isabel Z Gaucho1000Russia2024-06-02
Kadeem W Dilliard1001France2024-06-03
Jeanfrancois D Nestle1002Russia2024-06-03
Greenwood J Nestle1003France2024-05-30
Clifford I Wieser1004Canada2024-06-22
Aditya G Poquette1005Germany2024-06-08
Julie P Kusko1006Germany2024-05-28
Julie P Dilliard1007Brazil2024-05-26
Stacey D Slusarski1008Australia2024-06-04
Wickens X Maclead1009Brazil2024-06-17
Juan S Chui1010India2024-06-19
Faith O Whobrey1011Germany2024-06-06
Darci G Chui1012United Kingdom2024-06-10
Ricardo Z Tollner1013India2024-06-08
Mujtaba N Ostrosky1014Argentina2024-06-17
Ricardo T Rim1015Spain2024-05-31
Misaki W Ostrosky1016Germany2024-06-02
Izzy I Perin1017Japan2024-06-21
Jennifer J Paprocki1018United Kingdom2024-05-26
Aditya O Wieser1019Argentina2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia P CampainJapanOnyama Limba NEW
Tony R BriddickRussiaIvan Magalhaes RENEWAL
Antonio Z DilliardUnited KingdomXuxue Feng UNQUALIFIED
Aika H NestleAustraliaStephen Shaw NEGOTIATION
Deepesh M GlickAustraliaAsiya Javayant RENEWAL
Clifford C SchemmerFranceBernardo Dominic NEGOTIATION
Jones H CampainSpainOnyama Limba RENEWAL
Mayumi O NickaIndiaElwin Sharvill QUALIFIED
Sinclair D InouyeItalyXuxue Feng PROPOSAL
Nicolas F ButtArgentinaAnna Fali RENEWAL
Clifford P FigeroaGermanyAnna Fali QUALIFIED
Kadeem G ShinkoCanadaAnna Fali PROPOSAL
Salvatore A MacleadRussiaBernardo Dominic UNQUALIFIED
Rodrigues W SaylorsRussiaAsiya Javayant NEW
Antonio S BologniaFranceIvan Magalhaes UNQUALIFIED
Chavez O DarakjyRussiaStephen Shaw PROPOSAL
Ricardo S AmigonItalyAsiya Javayant PROPOSAL
Alejandro X SergiGermanyOnyama Limba NEW
Faith R PaprockiItalyAsiya Javayant QUALIFIED
Nicolas D PerinItalyBernardo Dominic UNQUALIFIED
Octavia V DoeJapanAnna Fali QUALIFIED
Leja F FlosiArgentinaAnna Fali PROPOSAL
Octavia E OldroydItalyOnyama Limba QUALIFIED
Wickens B SchemmerIndiaBernardo Dominic PROPOSAL
Arvin R PerinArgentinaAmy Elsner PROPOSAL
Mayumi O FlosiGermanyOnyama Limba RENEWAL
Chavez W CampainItalyAmy Elsner NEW
Sinclair S TollnerFranceStephen Shaw RENEWAL
Octavia R SlusarskiRussiaIvan Magalhaes RENEWAL
Morrow L PerinArgentinaXuxue Feng NEGOTIATION
Darci X RutaGermanyIoni Bowcher NEGOTIATION
Morrow L GillianGermanyAmy Elsner UNQUALIFIED
Izzy N MaletJapanBernardo Dominic QUALIFIED
Aditya B WaycottArgentinaStephen Shaw QUALIFIED
Deepesh Y AmigonFranceAmy Elsner UNQUALIFIED
Wickens E WieserBrazilOnyama Limba NEGOTIATION
Jeanfrancois L ShinkoFranceIvan Magalhaes NEW
Claire W ShinkoBrazilStephen Shaw NEW
Kadeem O StensethJapanAsiya Javayant UNQUALIFIED
Isabel R RutaArgentinaXuxue Feng 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>