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
Tony I FollerBrazilElwin Sharvill PROPOSAL
Greenwood G ChuiArgentinaIoni Bowcher UNQUALIFIED
Maria T FigeroaFranceAnna Fali PROPOSAL
Rodrigues B WieserIndiaIvan Magalhaes NEGOTIATION
Octavia D MaletUnited KingdomAmy Elsner QUALIFIED
Leja Q NestleFranceStephen Shaw PROPOSAL
Maisha S NickaCanadaAmy Elsner NEW
Clifford Z FlosiRussiaAnna Fali NEW
Juan W RulapaughFranceXuxue Feng QUALIFIED
Isabel Y PerinRussiaIvan Magalhaes PROPOSAL
Morrow Z CampainFranceAnna Fali QUALIFIED
Greenwood M IturbideUnited KingdomXuxue Feng QUALIFIED
Clifford P NestleFranceAnna Fali PROPOSAL
Alejandro W DilliardUnited KingdomStephen Shaw UNQUALIFIED
Morrow G PerinSpainAnna Fali UNQUALIFIED
Stacey X StockhamAustraliaIoni Bowcher NEW
Jeanfrancois F DilliardUnited KingdomElwin Sharvill QUALIFIED
Ashley M DilliardIndiaElwin Sharvill UNQUALIFIED
Juan G FlosiUnited KingdomXuxue Feng PROPOSAL
Aruna E SergiRussiaStephen Shaw QUALIFIED
Clifford A ButtUnited KingdomIoni Bowcher PROPOSAL
Munro Y ChuiAustraliaBernardo Dominic PROPOSAL
Salvatore U GlickArgentinaAmy Elsner QUALIFIED
Aika A StockhamItalyOnyama Limba RENEWAL
Ricardo O SlusarskiBrazilBernardo Dominic QUALIFIED
Jennifer K MaletGermanyXuxue Feng UNQUALIFIED
Francesco R NestleArgentinaBernardo Dominic RENEWAL
Costa U MaletIndiaIoni Bowcher NEW
Octavia M PoquetteRussiaIvan Magalhaes UNQUALIFIED
Jones Z StensethGermanyAnna Fali RENEWAL
Stacey Z BologniaAustraliaXuxue Feng NEW
Sinclair C FerenczSpainIoni Bowcher PROPOSAL
Jones P VenereFranceBernardo Dominic QUALIFIED
Aika G NickaItalyAnna Fali NEW
Ivar P OstroskyUnited KingdomIvan Magalhaes QUALIFIED
Juan I AmigonCanadaElwin Sharvill UNQUALIFIED
Claire X DoeSpainAnna Fali NEGOTIATION
Maria J BriddickGermanyOnyama Limba NEGOTIATION
Ivar D DoeAustraliaElwin Sharvill UNQUALIFIED
Kadeem Z GauchoBrazilAnna Fali RENEWAL
Greenwood R AmigonBrazilIvan Magalhaes NEW
Isabel R VocelkaCanadaXuxue Feng RENEWAL
Adams M GauchoSpainElwin Sharvill PROPOSAL
Ricardo R IturbideFranceBernardo Dominic QUALIFIED
Izzy W GillianArgentinaStephen Shaw QUALIFIED
Aika L FollerItalyIvan Magalhaes NEGOTIATION
Jones V MarrierGermanyOnyama Limba PROPOSAL
Clifford P FollerBrazilXuxue Feng QUALIFIED
Salvatore T OstroskyJapanStephen Shaw QUALIFIED
Maisha P OstroskyCanadaIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Stacey M DarakjyFranceIoni Bowcher PROPOSAL
Greenwood A IturbideGermanyStephen Shaw NEGOTIATION
Munro W WhobreyArgentinaOnyama Limba NEGOTIATION
Julie D SlusarskiSpainBernardo Dominic NEGOTIATION
Misaki H ChuiItalyAsiya Javayant PROPOSAL
Claire U MaletSpainOnyama Limba RENEWAL
Silvio G MaletIndiaAmy Elsner NEGOTIATION
Maria F WieserIndiaStephen Shaw PROPOSAL
Izzy P BriddickSpainXuxue Feng NEW
Misaki O DilliardBrazilOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson O MorascaRussia2024-06-08Chemel, James L Cpa PROPOSAL43Bernardo Dominic
1001Jennifer Z SlusarskiAustralia2024-06-01Commercial Press UNQUALIFIED15Asiya Javayant
1002Jones K ChuiItaly2024-06-16Buckley Miller Wright QUALIFIED6Anna Fali
1003Ashley C IturbideCanada2024-05-28King, Christopher A Esq QUALIFIED23Elwin Sharvill
1004Salvatore Y VocelkaBrazil2024-05-27Morlong Associates PROPOSAL54Ivan Magalhaes
1005Nicolas N OldroydIndia2024-05-27Benton, John B Jr PROPOSAL12Ivan Magalhaes
1006Jefferson W NickaFrance2024-05-28King, Christopher A Esq NEGOTIATION48Stephen Shaw
1007Smith H BriddickUnited Kingdom2024-06-15Printing Dimensions PROPOSAL27Xuxue Feng
1008David B ShinkoCanada2024-06-21Feltz Printing Service NEGOTIATION59Asiya Javayant
1009Stacey B RutaGermany2024-06-08Printing Dimensions RENEWAL46Elwin Sharvill
1010Alejandro K WieserFrance2024-06-20Chapman, Ross E Esq QUALIFIED3Amy Elsner
1011Costa Q VenereItaly2024-06-03Printing Dimensions NEW49Amy Elsner
1012Ricardo K GillianRussia2024-06-20Morlong Associates QUALIFIED96Stephen Shaw
1013Octavia A WieserGermany2024-06-18King, Christopher A Esq UNQUALIFIED62Bernardo Dominic
1014Juan T FollerArgentina2024-06-06Feltz Printing Service PROPOSAL51Bernardo Dominic
1015Darci G BologniaIndia2024-05-24Printing Dimensions UNQUALIFIED1Amy Elsner
1016Arvin J KuskoGermany2024-05-23Rousseaux, Michael Esq NEGOTIATION25Bernardo Dominic
1017Stacey O DoeRussia2024-05-27Printing Dimensions NEGOTIATION80Onyama Limba
1018Antonio U AlbaresArgentina2024-05-26Commercial Press QUALIFIED32Ioni Bowcher
1019Kaitlin A FlosiFrance2024-06-21Feiner Bros PROPOSAL91Ioni Bowcher
1020Aditya C VocelkaIndia2024-05-26Rousseaux, Michael Esq NEW17Asiya Javayant
1021Kaitlin R SergiCanada2024-05-23Chanay, Jeffrey A Esq UNQUALIFIED77Stephen Shaw
1022Leon A SlusarskiCanada2024-05-29Buckley Miller Wright QUALIFIED95Bernardo Dominic
1023Rodrigues E SergiItaly2024-06-20Printing Dimensions QUALIFIED82Xuxue Feng
1024Julie P MaletRussia2024-06-18Feltz Printing Service RENEWAL98Xuxue Feng
1025Chavez H GauchoSpain2024-06-14Morlong Associates UNQUALIFIED69Anna Fali
1026Clifford S GillianItaly2024-06-17Feltz Printing Service RENEWAL90Ivan Magalhaes
1027James H WieserItaly2024-05-25Morlong Associates PROPOSAL72Anna Fali
1028Jennifer K MacleadItaly2024-06-06Rousseaux, Michael Esq NEGOTIATION20Anna Fali
1029Ivar L ChuiFrance2024-05-30Chanay, Jeffrey A Esq PROPOSAL54Bernardo Dominic
1030Claire S NickaFrance2024-06-11King, Christopher A Esq RENEWAL76Ioni Bowcher
1031Murillo D GauchoIndia2024-06-18Feiner Bros UNQUALIFIED2Stephen Shaw
1032Octavia S FigeroaAustralia2024-06-19Dorl, James J Esq QUALIFIED27Asiya Javayant
1033Morrow X BowleyAustralia2024-06-01Feiner Bros PROPOSAL15Xuxue Feng
1034Costa U ChuiCanada2024-06-13Rangoni Of Florence NEW96Ioni Bowcher
1035Aruna W BologniaIndia2024-06-04Buckley Miller Wright NEGOTIATION85Stephen Shaw
1036Maisha K BriddickSpain2024-06-14King, Christopher A Esq RENEWAL28Bernardo Dominic
1037Nicolas I PerinJapan2024-06-15Truhlar And Truhlar Attys NEGOTIATION37Asiya Javayant
1038Tony E PoquetteGermany2024-05-31King, Christopher A Esq UNQUALIFIED9Anna Fali
1039Ricardo B SergiCanada2024-06-10Benton, John B Jr UNQUALIFIED16Xuxue Feng
1040Jeanfrancois Y AlbaresJapan2024-06-07Benton, John B Jr UNQUALIFIED33Asiya Javayant
1041Mujtaba H BowleyRussia2024-06-01Truhlar And Truhlar Attys NEW59Bernardo Dominic
1042Emily Y SergiRussia2024-06-01Buckley Miller Wright QUALIFIED68Stephen Shaw
1043Octavia P CaudyCanada2024-06-01King, Christopher A Esq RENEWAL18Xuxue Feng
1044Sinclair O IturbideBrazil2024-06-01Rousseaux, Michael Esq NEW4Xuxue Feng
1045Maria U OstroskyRussia2024-06-02Dorl, James J Esq PROPOSAL90Xuxue Feng
1046Aika C InouyeCanada2024-05-31Printing Dimensions QUALIFIED63Asiya Javayant
1047Nicolas O GlickFrance2024-06-21Chemel, James L Cpa NEW73Ioni Bowcher
1048Leja K MarrierCanada2024-06-17Chanay, Jeffrey A Esq NEGOTIATION83Xuxue Feng
1049Johnson Z ShinkoCanada2024-06-07Buckley Miller Wright PROPOSAL49Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Maisha A NickaCanadaAmy Elsner RENEWAL
Aditya V SaylorsFranceAsiya Javayant NEW
Aika X PoquetteIndiaIvan Magalhaes QUALIFIED
Johnson W PaprockiJapanIvan Magalhaes NEGOTIATION
Emily O RulapaughUnited KingdomAnna Fali NEGOTIATION
Maria Z FollerBrazilIvan Magalhaes PROPOSAL
Maria N WieserSpainStephen Shaw UNQUALIFIED
Antonio B DilliardFranceAsiya Javayant RENEWAL
Octavia M GarufiGermanyStephen Shaw PROPOSAL
Claire U ChuiFranceOnyama Limba UNQUALIFIED
Clifford Q CampainBrazilElwin Sharvill QUALIFIED
Francesco H CaudySpainStephen Shaw UNQUALIFIED
Morrow Y PerinUnited KingdomIvan Magalhaes UNQUALIFIED
Munro I RulapaughFranceAsiya Javayant UNQUALIFIED
Antonio D SaylorsRussiaAmy Elsner QUALIFIED
Isabel U RutaUnited KingdomAmy Elsner UNQUALIFIED
Murillo Z NestleBrazilIoni Bowcher PROPOSAL
Claire S BologniaBrazilAnna Fali RENEWAL
Aika C StensethItalyAnna Fali QUALIFIED
Sinclair Z PerinUnited KingdomBernardo Dominic NEW
Silvio I IturbideGermanyIoni Bowcher NEW
Izzy Z TollnerUnited KingdomAsiya Javayant QUALIFIED
Antonio H RoysterFranceXuxue Feng UNQUALIFIED
Leon J ShinkoFranceBernardo Dominic NEW
Rodrigues F CaudyJapanAmy Elsner RENEWAL
Juan Q StensethFranceIoni Bowcher PROPOSAL
Jefferson K GauchoUnited KingdomOnyama Limba UNQUALIFIED
Francesco L RimUnited KingdomBernardo Dominic RENEWAL
Salvatore N FigeroaArgentinaStephen Shaw UNQUALIFIED
Darci A VocelkaFranceIoni Bowcher QUALIFIED
Aditya Y GauchoItalyXuxue Feng NEW
Aruna G AmigonSpainBernardo Dominic NEW
Johnson G ChuiAustraliaAmy Elsner QUALIFIED
Morrow I FigeroaSpainAsiya Javayant NEGOTIATION
Morrow M StockhamCanadaAnna Fali NEGOTIATION
James B TollnerBrazilBernardo Dominic RENEWAL
Leon P VocelkaCanadaIvan Magalhaes RENEWAL
James C StockhamItalyXuxue Feng RENEWAL
Maria N OstroskyAustraliaXuxue Feng UNQUALIFIED
Greenwood Z FollerFranceBernardo Dominic NEGOTIATION
Darci V KuskoFranceAsiya Javayant RENEWAL
Arvin D SchemmerFranceAmy Elsner NEGOTIATION
Aditya I VenereUnited KingdomElwin Sharvill RENEWAL
Arvin U BowleyUnited KingdomAmy Elsner NEGOTIATION
Cody D MaletIndiaIoni Bowcher NEW
Silvio S MacleadUnited KingdomAnna Fali UNQUALIFIED
Jennifer K RulapaughArgentinaIvan Magalhaes NEW
Kaitlin S NestleGermanyAnna Fali PROPOSAL
Mujtaba T InouyeRussiaBernardo Dominic NEGOTIATION
Aditya G PoquetteBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Salvatore K Saylors
Antonio H Doe
Misaki T Shinko
Ricardo Z Stockham
Adams A Tollner
Rodrigues E Poquette
Jennifer S Foller
Mayumi T Bolognia
Johnson H Stockham
Adams E Flosi
Tony H Malet
Arvin H Iturbide
Alejandro S Saylors
Ashley U Albares
Jefferson M Doe
Kaitlin C Vocelka
Costa I Figeroa
Stacey H Kusko
Aditya C Kolmetz
Izzy G Figeroa
Ivar T Figeroa
Aditya X Doe
Aditya E Stenseth
Arvin D Briddick
James I Rulapaugh
Maisha L Chui
Chavez E Doe
Isabel Q Briddick
Mujtaba O Gaucho
Johnson D Malet
Octavia Z Amigon
Izzy Y Iturbide
Maisha U Kolmetz
James R Darakjy
Aruna G Whobrey
Sinclair C Malet
Aruna G Maclead
Mayumi F Morasca
Misaki X Figeroa
Leja I Chui
Salvatore R Campain
Misaki T Ruta
Juan E Bolognia
Aditya U Figeroa
Darci C Sergi
Tony V Sergi
James J Kusko
Greenwood N Royster
Darci P Doe
Aditya Y Nicka
IdCountryDate
1000United Kingdom2024-06-16
1001Germany2024-05-28
1002Germany2024-06-19
1003India2024-05-28
1004Italy2024-06-20
1005Spain2024-06-02
1006Japan2024-06-03
1007France2024-06-06
1008Italy2024-06-15
1009France2024-05-31
1010Spain2024-06-07
1011United Kingdom2024-06-11
1012Australia2024-06-13
1013Canada2024-06-18
1014Germany2024-06-04
1015Italy2024-06-15
1016Russia2024-06-17
1017Brazil2024-06-07
1018Russia2024-05-29
1019India2024-06-11
1020Canada2024-06-04
1021Russia2024-06-03
1022United Kingdom2024-06-06
1023Brazil2024-06-06
1024Japan2024-06-11
1025Canada2024-06-06
1026Canada2024-06-12
1027Argentina2024-06-16
1028Spain2024-06-20
1029Australia2024-06-02
1030Germany2024-06-17
1031Canada2024-06-01
1032Brazil2024-05-31
1033Australia2024-06-10
1034France2024-06-09
1035Spain2024-05-29
1036Australia2024-05-28
1037Canada2024-05-26
1038Spain2024-06-01
1039Italy2024-06-08
1040Canada2024-06-19
1041Argentina2024-06-02
1042Spain2024-06-16
1043Canada2024-06-01
1044Argentina2024-06-16
1045United Kingdom2024-06-11
1046Germany2024-06-07
1047India2024-06-17
1048France2024-06-08
1049France2024-06-16

On-Demand Data

NameIdCountryDate
Smith I Malet1000France2024-06-17
Aditya M Foller1001Spain2024-06-06
Emily J Nicka1002Russia2024-06-06
Cody Q Flosi1003France2024-06-15
Misaki U Wieser1004Spain2024-06-08
Greenwood Z Ferencz1005Argentina2024-06-03
Sinclair J Darakjy1006Canada2024-06-17
Morrow O Campain1007Spain2024-06-19
Emily Q Malet1008United Kingdom2024-06-09
Misaki C Inouye1009Spain2024-05-29
Jefferson O Darakjy1010Brazil2024-06-07
Jeanfrancois Q Stockham1011Argentina2024-06-14
Costa Q Doe1012United Kingdom2024-06-02
Faith T Nestle1013United Kingdom2024-06-17
Nicolas H Doe1014India2024-06-08
Maria A Ostrosky1015Brazil2024-05-25
Tony Y Venere1016France2024-05-31
Darci Q Bowley1017France2024-05-28
Mayumi T Oldroyd1018Australia2024-06-18
Kadeem T Royster1019France2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody X WaycottItalyXuxue Feng UNQUALIFIED
Cody S DarakjyArgentinaElwin Sharvill RENEWAL
Cody Y PoquetteIndiaBernardo Dominic PROPOSAL
Jeanfrancois C PerinCanadaIvan Magalhaes NEW
Maisha H MarrierRussiaBernardo Dominic NEW
Antonio E NickaBrazilAmy Elsner PROPOSAL
Morrow S KolmetzSpainAmy Elsner PROPOSAL
Aika B DilliardSpainOnyama Limba NEGOTIATION
Mayumi R MorascaUnited KingdomElwin Sharvill PROPOSAL
Morrow G MaletJapanStephen Shaw PROPOSAL
Jones V WieserUnited KingdomXuxue Feng NEGOTIATION
Misaki J DarakjyIndiaAsiya Javayant NEW
Jefferson H NickaArgentinaAsiya Javayant QUALIFIED
David T RoysterSpainIvan Magalhaes UNQUALIFIED
Emily B PaprockiRussiaBernardo Dominic UNQUALIFIED
Jeanfrancois C StockhamUnited KingdomIvan Magalhaes PROPOSAL
Maisha G GlickCanadaElwin Sharvill PROPOSAL
Aika I StensethUnited KingdomIoni Bowcher PROPOSAL
Greenwood G GarufiGermanyElwin Sharvill PROPOSAL
Julie I MaletCanadaXuxue Feng RENEWAL
Darci W SlusarskiFranceAmy Elsner NEW
Aruna G RutaArgentinaBernardo Dominic PROPOSAL
Julie D VocelkaSpainAsiya Javayant NEW
Aditya V WieserUnited KingdomOnyama Limba QUALIFIED
Cody D StensethArgentinaAmy Elsner UNQUALIFIED
Rodrigues C SergiArgentinaIvan Magalhaes UNQUALIFIED
Rodrigues I StensethRussiaStephen Shaw NEGOTIATION
Cody G BologniaCanadaAmy Elsner NEW
Ricardo Q MaletBrazilIoni Bowcher NEGOTIATION
Ricardo J RulapaughArgentinaIoni Bowcher UNQUALIFIED
Johnson W OldroydRussiaElwin Sharvill NEW
Stacey J MaletFranceIoni Bowcher NEGOTIATION
Aditya W StockhamFranceBernardo Dominic QUALIFIED
Claire Y ButtIndiaAmy Elsner NEW
Morrow Q ShinkoSpainOnyama Limba QUALIFIED
Murillo O AlbaresItalyIvan Magalhaes RENEWAL
Costa D StockhamItalyStephen Shaw UNQUALIFIED
Jeanfrancois H FollerCanadaIvan Magalhaes QUALIFIED
Morrow U BriddickArgentinaIoni Bowcher UNQUALIFIED
Johnson E WhobreyItalyIoni Bowcher RENEWAL

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