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
Nicolas O AlbaresSpainXuxue Feng RENEWAL
Stacey X InouyeArgentinaAmy Elsner NEW
Chavez G RutaRussiaBernardo Dominic NEW
Misaki T MacleadCanadaBernardo Dominic NEGOTIATION
Sinclair R CaldareraGermanyAmy Elsner PROPOSAL
Murillo V StensethBrazilElwin Sharvill QUALIFIED
Rodrigues H VenereRussiaOnyama Limba PROPOSAL
Arvin H TollnerAustraliaElwin Sharvill RENEWAL
Jennifer F DarakjyFranceAsiya Javayant QUALIFIED
Ricardo E BowleyArgentinaAnna Fali UNQUALIFIED
Darci X WaycottFranceAnna Fali QUALIFIED
Murillo E FerenczRussiaIoni Bowcher QUALIFIED
Ricardo H MarrierBrazilAmy Elsner QUALIFIED
Ivar A FerenczUnited KingdomElwin Sharvill NEGOTIATION
Silvio A FlosiJapanXuxue Feng UNQUALIFIED
Jeanfrancois Q OldroydItalyAsiya Javayant RENEWAL
Leon W SergiAustraliaAnna Fali UNQUALIFIED
Misaki A PaprockiCanadaAmy Elsner NEW
Leon B SchemmerFranceAmy Elsner RENEWAL
Jeanfrancois Y WhobreyGermanyAsiya Javayant QUALIFIED
Jefferson I SlusarskiJapanXuxue Feng QUALIFIED
Maisha S CampainRussiaOnyama Limba NEW
Jefferson P GillianJapanIvan Magalhaes UNQUALIFIED
Jeanfrancois G DoeGermanyAmy Elsner RENEWAL
Ivar M KuskoIndiaIoni Bowcher PROPOSAL
Faith H FlosiRussiaOnyama Limba PROPOSAL
Mayumi K SaylorsFranceStephen Shaw NEW
Mayumi U GillianUnited KingdomIvan Magalhaes NEGOTIATION
Nicolas D SchemmerGermanyXuxue Feng RENEWAL
Leon R IturbideIndiaBernardo Dominic NEW
Ricardo R PoquetteFranceAsiya Javayant NEW
Aruna V SchemmerJapanAnna Fali UNQUALIFIED
Rodrigues L DoeUnited KingdomAsiya Javayant RENEWAL
Octavia S VenereUnited KingdomOnyama Limba NEW
Clifford M CampainBrazilIoni Bowcher NEW
Faith J AmigonItalyAsiya Javayant UNQUALIFIED
Mujtaba G MarrierGermanyBernardo Dominic QUALIFIED
Silvio Z AlbaresIndiaStephen Shaw NEW
Julie P DarakjyArgentinaStephen Shaw UNQUALIFIED
Emily T GauchoItalyOnyama Limba QUALIFIED
Aditya J AmigonBrazilIvan Magalhaes UNQUALIFIED
Leon O GillianArgentinaElwin Sharvill NEW
Claire V ButtSpainStephen Shaw RENEWAL
Costa L MaletIndiaIoni Bowcher NEW
Aruna L GauchoBrazilStephen Shaw UNQUALIFIED
Ashley G BologniaJapanIoni Bowcher UNQUALIFIED
Maria U WhobreyFranceStephen Shaw PROPOSAL
Jones N GillianArgentinaAmy Elsner RENEWAL
Izzy E RulapaughArgentinaStephen Shaw PROPOSAL
Silvio P FigeroaUnited KingdomOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Cody N FerenczJapanOnyama Limba NEW
Munro S FlosiCanadaAsiya Javayant PROPOSAL
Smith V OldroydRussiaAnna Fali NEGOTIATION
David L RimCanadaIoni Bowcher UNQUALIFIED
Salvatore Y WhobreySpainOnyama Limba RENEWAL
Leon A MorascaRussiaAmy Elsner NEW
Jeanfrancois U MacleadCanadaIoni Bowcher QUALIFIED
Clifford E SaylorsGermanyBernardo Dominic UNQUALIFIED
Stacey I WaycottGermanyIvan Magalhaes PROPOSAL
Sinclair U WaycottRussiaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez H CaldareraIndia2024-05-22Truhlar And Truhlar Attys NEGOTIATION31Asiya Javayant
1001Juan M WhobreyItaly2024-05-23Chapman, Ross E Esq RENEWAL20Onyama Limba
1002Emily K GillianUnited Kingdom2024-05-20Feiner Bros UNQUALIFIED73Xuxue Feng
1003Johnson Y AmigonCanada2024-05-25Benton, John B Jr NEGOTIATION4Elwin Sharvill
1004Ashley N FollerAustralia2024-05-20Rangoni Of Florence NEW82Amy Elsner
1005Rodrigues Q RutaUnited Kingdom2024-05-04Morlong Associates RENEWAL75Onyama Limba
1006Nicolas I FerenczGermany2024-05-25Rangoni Of Florence PROPOSAL53Amy Elsner
1007Maria R SlusarskiItaly2024-05-18Buckley Miller Wright NEGOTIATION56Xuxue Feng
1008Octavia D ShinkoFrance2024-05-09King, Christopher A Esq NEW51Ioni Bowcher
1009Jefferson O AlbaresFrance2024-05-10Dorl, James J Esq PROPOSAL14Stephen Shaw
1010Silvio L GillianAustralia2024-05-02Buckley Miller Wright NEW8Stephen Shaw
1011Greenwood B TollnerCanada2024-05-07Morlong Associates NEW2Anna Fali
1012Leja T CaldareraUnited Kingdom2024-05-22King, Christopher A Esq NEGOTIATION84Ivan Magalhaes
1013Maisha V ButtGermany2024-05-18Commercial Press NEGOTIATION93Anna Fali
1014Julie L ButtBrazil2024-04-30Rousseaux, Michael Esq PROPOSAL32Asiya Javayant
1015Cody Y MacleadAustralia2024-05-10Truhlar And Truhlar Attys NEW14Ioni Bowcher
1016Aruna A OstroskySpain2024-05-01Dorl, James J Esq RENEWAL13Amy Elsner
1017Claire D TollnerSpain2024-05-02Buckley Miller Wright RENEWAL12Asiya Javayant
1018Johnson Z DarakjyJapan2024-05-04Dorl, James J Esq UNQUALIFIED19Asiya Javayant
1019Chavez R MaletIndia2024-05-03Benton, John B Jr NEW83Stephen Shaw
1020Leja I AmigonCanada2024-05-19Buckley Miller Wright NEW11Anna Fali
1021Aruna K TollnerItaly2024-05-04Feltz Printing Service RENEWAL4Xuxue Feng
1022Jeanfrancois N MorascaJapan2024-05-12Rousseaux, Michael Esq RENEWAL8Bernardo Dominic
1023David D DoeArgentina2024-05-22Truhlar And Truhlar Attys RENEWAL80Asiya Javayant
1024Sinclair M BowleyUnited Kingdom2024-05-15Benton, John B Jr PROPOSAL33Asiya Javayant
1025Sinclair A GauchoCanada2024-05-13Commercial Press NEGOTIATION86Stephen Shaw
1026Salvatore Y VenereItaly2024-05-01Feltz Printing Service PROPOSAL12Ivan Magalhaes
1027Rodrigues Y RutaCanada2024-05-18Buckley Miller Wright PROPOSAL52Xuxue Feng
1028Deepesh Y MorascaUnited Kingdom2024-05-01Rousseaux, Michael Esq PROPOSAL27Xuxue Feng
1029Kaitlin T OstroskyIndia2024-05-14Rangoni Of Florence NEW31Asiya Javayant
1030Ricardo I VenereAustralia2024-05-04Truhlar And Truhlar Attys NEW50Onyama Limba
1031Claire L StockhamSpain2024-05-11Chemel, James L Cpa NEW84Bernardo Dominic
1032Chavez O TollnerArgentina2024-05-27Rangoni Of Florence NEW57Ivan Magalhaes
1033Claire M ChuiRussia2024-05-11Rangoni Of Florence NEGOTIATION62Anna Fali
1034Nicolas Q MorascaAustralia2024-05-03Dorl, James J Esq NEW18Bernardo Dominic
1035Morrow J DilliardUnited Kingdom2024-05-07Feltz Printing Service NEW91Xuxue Feng
1036Mujtaba V SchemmerRussia2024-05-29King, Christopher A Esq RENEWAL76Elwin Sharvill
1037James O CaldareraBrazil2024-05-19Feltz Printing Service NEGOTIATION89Elwin Sharvill
1038Munro U BriddickIndia2024-05-23Morlong Associates RENEWAL51Ivan Magalhaes
1039Greenwood P InouyeSpain2024-05-08Chanay, Jeffrey A Esq RENEWAL25Ioni Bowcher
1040Deepesh L MaletArgentina2024-05-17Rousseaux, Michael Esq RENEWAL72Asiya Javayant
1041Mujtaba I GlickItaly2024-05-29Rangoni Of Florence PROPOSAL89Onyama Limba
1042Salvatore F PoquetteIndia2024-05-07Feiner Bros NEGOTIATION34Xuxue Feng
1043Aditya C FigeroaArgentina2024-05-05Dorl, James J Esq NEGOTIATION97Anna Fali
1044James O MarrierRussia2024-05-17Morlong Associates QUALIFIED81Onyama Limba
1045Darci E GarufiUnited Kingdom2024-05-06Chemel, James L Cpa PROPOSAL82Xuxue Feng
1046Munro S SergiItaly2024-05-05Feltz Printing Service QUALIFIED42Xuxue Feng
1047Deepesh W RulapaughAustralia2024-05-19Chapman, Ross E Esq QUALIFIED43Xuxue Feng
1048Silvio J FlosiCanada2024-05-16King, Christopher A Esq PROPOSAL72Amy Elsner
1049Antonio V RimRussia2024-04-30Printing Dimensions NEGOTIATION52Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Faith V StockhamAustraliaOnyama Limba NEGOTIATION
Wickens U CampainJapanIvan Magalhaes NEW
Maria H WhobreyIndiaBernardo Dominic RENEWAL
Claire K NestleCanadaStephen Shaw PROPOSAL
David D InouyeArgentinaElwin Sharvill NEW
Greenwood K RulapaughIndiaOnyama Limba QUALIFIED
Jennifer H MaletGermanyAmy Elsner RENEWAL
Kadeem S TollnerUnited KingdomOnyama Limba UNQUALIFIED
Tony W CaldareraAustraliaOnyama Limba NEGOTIATION
Misaki A ChuiAustraliaAsiya Javayant PROPOSAL
Mujtaba H BowleyUnited KingdomXuxue Feng NEGOTIATION
Leja S ChuiIndiaBernardo Dominic RENEWAL
Jefferson Y FerenczGermanyIvan Magalhaes QUALIFIED
Jones K GauchoIndiaAnna Fali RENEWAL
Murillo C PaprockiArgentinaIoni Bowcher PROPOSAL
Julie L OstroskyRussiaIvan Magalhaes QUALIFIED
Izzy D SlusarskiJapanAsiya Javayant UNQUALIFIED
Wickens K DoeFranceIvan Magalhaes PROPOSAL
Ricardo N SaylorsIndiaAsiya Javayant RENEWAL
Juan J MaletSpainOnyama Limba RENEWAL
Leon O SergiItalyIoni Bowcher QUALIFIED
Cody R OldroydAustraliaBernardo Dominic PROPOSAL
David R FollerIndiaOnyama Limba NEGOTIATION
Leja S FlosiGermanyIvan Magalhaes PROPOSAL
Jones L RulapaughSpainBernardo Dominic RENEWAL
Silvio L GauchoSpainIoni Bowcher NEGOTIATION
David M BriddickIndiaXuxue Feng NEGOTIATION
Tony A AlbaresCanadaIoni Bowcher UNQUALIFIED
Alejandro C WaycottGermanyOnyama Limba QUALIFIED
Kadeem E CaldareraUnited KingdomIoni Bowcher UNQUALIFIED
Maisha K FollerGermanyAmy Elsner UNQUALIFIED
Izzy W PaprockiIndiaElwin Sharvill RENEWAL
Salvatore H FollerGermanyIoni Bowcher RENEWAL
Leon N MorascaIndiaIoni Bowcher RENEWAL
Murillo Z TollnerCanadaIoni Bowcher RENEWAL
Leja W WhobreyUnited KingdomOnyama Limba NEW
Greenwood P AlbaresSpainAmy Elsner UNQUALIFIED
Nicolas Q GarufiIndiaIvan Magalhaes NEGOTIATION
Faith G DilliardBrazilXuxue Feng PROPOSAL
Sinclair Z NickaUnited KingdomAmy Elsner UNQUALIFIED
Chavez X OstroskyAustraliaBernardo Dominic PROPOSAL
Francesco K PerinUnited KingdomBernardo Dominic QUALIFIED
Ashley X PerinSpainXuxue Feng NEGOTIATION
Cody H BriddickUnited KingdomOnyama Limba RENEWAL
Johnson N RimArgentinaIoni Bowcher NEGOTIATION
David G GillianRussiaOnyama Limba PROPOSAL
Tony N FigeroaFranceIoni Bowcher PROPOSAL
Francesco V KuskoItalyOnyama Limba UNQUALIFIED
Francesco G StensethItalyIvan Magalhaes NEW
Aika H RulapaughUnited KingdomIvan Magalhaes RENEWAL
Frozen Columns
Name
Chavez B Kolmetz
Emily X Briddick
Arvin X Stenseth
Morrow T Ferencz
Leon S Inouye
Maria R Kolmetz
Adams V Bolognia
Tony X Wieser
Wickens E Rim
Deepesh W Garufi
Salvatore L Wieser
Nicolas I Vocelka
Jones N Slusarski
Jefferson Y Amigon
Cody G Wieser
Izzy A Gillian
Ashley Q Sergi
Aika A Stenseth
Claire D Flosi
Clifford W Inouye
Munro R Saylors
Stacey V Ostrosky
Murillo T Maclead
Aika P Marrier
Johnson Y Bolognia
Arvin H Gillian
Isabel Y Dilliard
Isabel Q Dilliard
Ivar B Rulapaugh
Aditya W Stenseth
Jeanfrancois M Caudy
Darci C Butt
Rodrigues V Perin
Aruna P Butt
Aruna R Malet
Jones F Oldroyd
Francesco W Dilliard
Salvatore V Garufi
Isabel M Kusko
Leon V Saylors
Sinclair A Butt
Izzy J Foller
Antonio O Bowley
Johnson C Saylors
Nicolas L Rim
Silvio F Gaucho
Munro B Nicka
Mayumi M Poquette
Tony B Butt
Adams W Rim
IdCountryDate
1000India2024-05-21
1001United Kingdom2024-05-18
1002India2024-05-05
1003Australia2024-05-07
1004Germany2024-05-09
1005France2024-05-07
1006Russia2024-05-12
1007Spain2024-05-21
1008Russia2024-05-24
1009Russia2024-05-15
1010Italy2024-05-27
1011Russia2024-05-20
1012United Kingdom2024-05-06
1013India2024-05-09
1014Brazil2024-05-14
1015Italy2024-05-11
1016Russia2024-05-19
1017Italy2024-05-19
1018India2024-05-21
1019Germany2024-05-03
1020Germany2024-05-14
1021Italy2024-05-15
1022Germany2024-05-08
1023Spain2024-05-25
1024Spain2024-05-27
1025Brazil2024-05-05
1026Canada2024-05-06
1027Brazil2024-05-18
1028Spain2024-05-23
1029Russia2024-05-23
1030Italy2024-05-21
1031France2024-05-23
1032Russia2024-05-29
1033Germany2024-05-24
1034India2024-05-06
1035Canada2024-05-21
1036India2024-05-20
1037United Kingdom2024-05-03
1038Brazil2024-05-28
1039Germany2024-05-02
1040France2024-05-17
1041France2024-05-29
1042Brazil2024-05-09
1043Italy2024-05-22
1044Spain2024-05-18
1045India2024-05-25
1046India2024-05-26
1047Canada2024-05-18
1048Spain2024-05-08
1049Argentina2024-05-14

On-Demand Data

NameIdCountryDate
Chavez J Malet1000Germany2024-05-20
Francesco G Vocelka1001Argentina2024-05-17
Julie F Vocelka1002Argentina2024-05-06
Aditya Y Amigon1003Australia2024-05-23
James X Flosi1004Australia2024-05-29
Juan Z Whobrey1005India2024-05-20
Arvin L Slusarski1006United Kingdom2024-05-03
Mujtaba K Ruta1007Spain2024-04-30
Nicolas O Paprocki1008Spain2024-05-17
Aditya O Ruta1009Spain2024-05-10
Deepesh C Vocelka1010Argentina2024-05-02
Tony G Nestle1011Germany2024-05-26
Francesco X Whobrey1012Canada2024-05-18
Murillo O Figeroa1013United Kingdom2024-05-15
Murillo P Doe1014Brazil2024-05-13
Arvin U Marrier1015Spain2024-05-25
Kaitlin W Glick1016Australia2024-05-06
Kadeem V Wieser1017Brazil2024-05-13
Aruna M Iturbide1018Japan2024-05-22
Ricardo X Paprocki1019Japan2024-05-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez E WhobreyAustraliaIoni Bowcher UNQUALIFIED
Johnson R GarufiItalyElwin Sharvill QUALIFIED
Leja Q PoquetteGermanyIoni Bowcher NEW
Jennifer L ButtAustraliaAsiya Javayant PROPOSAL
Mujtaba W GillianGermanyXuxue Feng NEGOTIATION
Aditya U BologniaBrazilElwin Sharvill NEW
Jennifer V KuskoIndiaAmy Elsner NEW
Chavez X OldroydFranceAsiya Javayant PROPOSAL
Alejandro B GarufiGermanyAmy Elsner RENEWAL
Silvio A OstroskyArgentinaIvan Magalhaes UNQUALIFIED
Salvatore V StockhamUnited KingdomBernardo Dominic NEW
Octavia Q OstroskyItalyIvan Magalhaes UNQUALIFIED
Murillo G NestleRussiaXuxue Feng NEGOTIATION
Tony I ChuiSpainBernardo Dominic RENEWAL
Arvin C MaletItalyBernardo Dominic QUALIFIED
Julie C AlbaresAustraliaElwin Sharvill NEGOTIATION
Octavia H InouyeJapanBernardo Dominic PROPOSAL
Ivar M BologniaSpainElwin Sharvill NEW
Rodrigues M ShinkoAustraliaStephen Shaw NEGOTIATION
Costa J InouyeIndiaIvan Magalhaes NEW
Kaitlin N GarufiJapanXuxue Feng RENEWAL
Smith M OstroskyAustraliaXuxue Feng QUALIFIED
Wickens J MacleadUnited KingdomIoni Bowcher PROPOSAL
Salvatore O PoquetteJapanAnna Fali NEGOTIATION
Adams M StockhamAustraliaIoni Bowcher RENEWAL
Deepesh Q PerinArgentinaAmy Elsner PROPOSAL
Faith J ButtArgentinaAmy Elsner NEW
Darci N BriddickBrazilBernardo Dominic PROPOSAL
Ivar T RimArgentinaAnna Fali UNQUALIFIED
Wickens E FigeroaJapanXuxue Feng RENEWAL
Chavez H BriddickAustraliaElwin Sharvill PROPOSAL
Aruna X SlusarskiIndiaAmy Elsner UNQUALIFIED
Jeanfrancois S RoysterArgentinaXuxue Feng PROPOSAL
Maria S VenereAustraliaXuxue Feng PROPOSAL
Maria M NickaGermanyIvan Magalhaes RENEWAL
Alejandro N ShinkoArgentinaOnyama Limba QUALIFIED
Clifford D RutaArgentinaBernardo Dominic UNQUALIFIED
Maisha D IturbideArgentinaStephen Shaw NEGOTIATION
Deepesh U InouyeSpainOnyama Limba RENEWAL
Jeanfrancois H StensethAustraliaOnyama Limba PROPOSAL

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