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
Kaitlin W AmigonIndiaOnyama Limba QUALIFIED
Isabel O GillianRussiaOnyama Limba NEGOTIATION
Wickens F VocelkaRussiaIvan Magalhaes PROPOSAL
Izzy I DilliardIndiaBernardo Dominic UNQUALIFIED
Nicolas K CampainIndiaIoni Bowcher RENEWAL
Kadeem V AmigonUnited KingdomIoni Bowcher PROPOSAL
Kaitlin B SergiCanadaAsiya Javayant PROPOSAL
Deepesh X DoeUnited KingdomStephen Shaw NEGOTIATION
Silvio X VenereFranceXuxue Feng RENEWAL
Aditya I VocelkaArgentinaXuxue Feng QUALIFIED
Rodrigues R TollnerUnited KingdomOnyama Limba RENEWAL
Smith W GlickJapanStephen Shaw NEW
Kaitlin E PoquetteItalyXuxue Feng NEGOTIATION
Jefferson L AlbaresSpainStephen Shaw PROPOSAL
Greenwood C DoeUnited KingdomIoni Bowcher NEGOTIATION
Claire K BologniaArgentinaAmy Elsner QUALIFIED
Stacey E IturbideUnited KingdomElwin Sharvill UNQUALIFIED
Isabel F StockhamSpainAsiya Javayant QUALIFIED
Sinclair G MaletArgentinaBernardo Dominic RENEWAL
Clifford K GauchoGermanyElwin Sharvill QUALIFIED
Sinclair O FerenczItalyXuxue Feng RENEWAL
Smith H MaletSpainIvan Magalhaes NEW
Darci V RutaItalyElwin Sharvill PROPOSAL
Wickens O CampainArgentinaXuxue Feng RENEWAL
Maisha A DilliardAustraliaAsiya Javayant RENEWAL
Faith Z BologniaFranceOnyama Limba QUALIFIED
Sinclair W BowleyFranceIvan Magalhaes UNQUALIFIED
David K CampainUnited KingdomAnna Fali QUALIFIED
Faith B TollnerUnited KingdomOnyama Limba NEW
Rodrigues D StensethJapanAsiya Javayant PROPOSAL
Julie H FollerSpainIoni Bowcher NEGOTIATION
Munro G CaldareraSpainElwin Sharvill NEGOTIATION
Aruna I WieserArgentinaIvan Magalhaes NEW
Nicolas B BologniaAustraliaAsiya Javayant UNQUALIFIED
Misaki Y BriddickUnited KingdomIoni Bowcher PROPOSAL
Francesco Y SaylorsJapanIvan Magalhaes NEW
Aruna M OldroydCanadaIvan Magalhaes NEGOTIATION
Sinclair O NestleRussiaStephen Shaw PROPOSAL
Aruna K BologniaArgentinaAsiya Javayant NEW
Aditya W DilliardGermanyIvan Magalhaes RENEWAL
Ricardo O FlosiJapanAsiya Javayant PROPOSAL
Greenwood L ChuiSpainBernardo Dominic QUALIFIED
James K TollnerUnited KingdomElwin Sharvill PROPOSAL
Jennifer T IturbideSpainAnna Fali NEW
Kaitlin S CaudyUnited KingdomBernardo Dominic RENEWAL
Stacey I TollnerAustraliaIvan Magalhaes RENEWAL
Murillo V OstroskyRussiaIvan Magalhaes NEGOTIATION
Misaki I ChuiIndiaElwin Sharvill PROPOSAL
Misaki H CampainFranceOnyama Limba QUALIFIED
Rodrigues U PoquetteCanadaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Clifford J PaprockiGermanyIvan Magalhaes RENEWAL
Sinclair R GauchoBrazilOnyama Limba RENEWAL
Kadeem Z FigeroaSpainXuxue Feng NEW
Aruna G BologniaSpainAmy Elsner RENEWAL
Arvin D MorascaUnited KingdomBernardo Dominic RENEWAL
Izzy H CaudyItalyAsiya Javayant QUALIFIED
Jefferson T GauchoJapanAsiya Javayant NEGOTIATION
David U WhobreyIndiaElwin Sharvill RENEWAL
Chavez E FigeroaGermanyBernardo Dominic QUALIFIED
Stacey X DarakjyItalyBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro P NestleAustralia2024-05-16Chanay, Jeffrey A Esq PROPOSAL51Stephen Shaw
1001Darci V RimIndia2024-05-27Buckley Miller Wright PROPOSAL4Xuxue Feng
1002Jeanfrancois T OstroskyBrazil2024-05-08Rousseaux, Michael Esq RENEWAL66Bernardo Dominic
1003Nicolas H OldroydRussia2024-05-17Truhlar And Truhlar Attys QUALIFIED32Elwin Sharvill
1004Tony T SaylorsRussia2024-05-15Rangoni Of Florence NEW38Stephen Shaw
1005Rodrigues P ShinkoFrance2024-05-14King, Christopher A Esq PROPOSAL9Anna Fali
1006James I PaprockiBrazil2024-05-26Chemel, James L Cpa PROPOSAL95Stephen Shaw
1007Ivar J SlusarskiJapan2024-05-15Chemel, James L Cpa RENEWAL38Anna Fali
1008Leja D GillianBrazil2024-05-16Morlong Associates NEGOTIATION91Ioni Bowcher
1009Jennifer M DilliardCanada2024-05-20Chapman, Ross E Esq RENEWAL67Onyama Limba
1010Ricardo A FollerRussia2024-05-23Chemel, James L Cpa NEW52Xuxue Feng
1011Leja V WhobreyGermany2024-05-19Buckley Miller Wright NEW13Ioni Bowcher
1012Morrow M RulapaughAustralia2024-05-13Chapman, Ross E Esq UNQUALIFIED68Asiya Javayant
1013Murillo C CampainIndia2024-05-09Rousseaux, Michael Esq NEW72Elwin Sharvill
1014Rodrigues Z GlickFrance2024-05-04Morlong Associates UNQUALIFIED62Elwin Sharvill
1015Jeanfrancois O MacleadRussia2024-05-14Feiner Bros NEGOTIATION27Elwin Sharvill
1016Maria I RutaSpain2024-05-27Commercial Press RENEWAL15Elwin Sharvill
1017Misaki L MaletUnited Kingdom2024-05-05Truhlar And Truhlar Attys PROPOSAL65Asiya Javayant
1018Salvatore Z OldroydFrance2024-05-04Chanay, Jeffrey A Esq NEW50Bernardo Dominic
1019Ivar X PerinItaly2024-05-07King, Christopher A Esq NEGOTIATION18Bernardo Dominic
1020Leon E WhobreyCanada2024-05-08Rangoni Of Florence UNQUALIFIED66Asiya Javayant
1021Juan Q DarakjyAustralia2024-05-22Dorl, James J Esq RENEWAL93Onyama Limba
1022Deepesh W SlusarskiCanada2024-05-20Truhlar And Truhlar Attys RENEWAL89Stephen Shaw
1023Leja P DilliardUnited Kingdom2024-05-09Benton, John B Jr NEGOTIATION57Onyama Limba
1024Leon L CaudyGermany2024-05-02Chemel, James L Cpa PROPOSAL80Amy Elsner
1025Emily T GillianBrazil2024-05-02Chanay, Jeffrey A Esq QUALIFIED21Elwin Sharvill
1026Costa P OldroydGermany2024-05-09Chanay, Jeffrey A Esq NEW98Onyama Limba
1027Jennifer H PerinJapan2024-05-07Truhlar And Truhlar Attys QUALIFIED8Onyama Limba
1028Kadeem Q ButtFrance2024-05-16Chemel, James L Cpa PROPOSAL6Elwin Sharvill
1029Izzy P OldroydAustralia2024-05-17Rangoni Of Florence NEW4Xuxue Feng
1030Ashley I DoeJapan2024-05-04Morlong Associates UNQUALIFIED78Asiya Javayant
1031Maisha C PoquetteRussia2024-05-08Commercial Press PROPOSAL35Bernardo Dominic
1032Smith A GauchoArgentina2024-05-13Commercial Press UNQUALIFIED21Elwin Sharvill
1033Adams J GauchoItaly2024-05-14Printing Dimensions RENEWAL44Onyama Limba
1034Francesco X VenereArgentina2024-05-20Benton, John B Jr NEGOTIATION87Onyama Limba
1035Smith Y FollerJapan2024-05-06Buckley Miller Wright NEGOTIATION45Anna Fali
1036James K InouyeAustralia2024-05-27Printing Dimensions PROPOSAL15Bernardo Dominic
1037Salvatore A SchemmerIndia2024-05-29Rousseaux, Michael Esq NEW17Amy Elsner
1038Mujtaba K StensethCanada2024-05-16Chapman, Ross E Esq PROPOSAL19Ioni Bowcher
1039Kaitlin B VocelkaUnited Kingdom2024-05-16Truhlar And Truhlar Attys NEGOTIATION56Anna Fali
1040Faith W ButtItaly2024-05-06Feiner Bros RENEWAL14Ioni Bowcher
1041Cody H CaudyItaly2024-05-28Rousseaux, Michael Esq UNQUALIFIED42Xuxue Feng
1042Francesco P PoquetteSpain2024-05-28Printing Dimensions QUALIFIED62Ioni Bowcher
1043Darci Y GlickIndia2024-05-12Rangoni Of Florence PROPOSAL5Bernardo Dominic
1044Mujtaba R DarakjyAustralia2024-05-29Rangoni Of Florence PROPOSAL38Onyama Limba
1045Mayumi K WhobreyIndia2024-05-23Truhlar And Truhlar Attys NEGOTIATION38Onyama Limba
1046Arvin E SaylorsCanada2024-05-19Dorl, James J Esq NEGOTIATION67Bernardo Dominic
1047James E AlbaresAustralia2024-05-11Chemel, James L Cpa NEGOTIATION45Bernardo Dominic
1048Adams Q CaldareraCanada2024-05-04Rangoni Of Florence QUALIFIED88Xuxue Feng
1049Mayumi Y GauchoItaly2024-05-30Truhlar And Truhlar Attys PROPOSAL66Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Octavia K FollerSpainIvan Magalhaes RENEWAL
Cody V ChuiGermanyStephen Shaw RENEWAL
Cody V BriddickCanadaAsiya Javayant PROPOSAL
Chavez U KuskoGermanyAmy Elsner PROPOSAL
Octavia V FollerArgentinaIvan Magalhaes PROPOSAL
Izzy E TollnerBrazilIvan Magalhaes UNQUALIFIED
Sinclair W ButtIndiaAmy Elsner QUALIFIED
Cody O PaprockiGermanyIvan Magalhaes NEGOTIATION
Costa U IturbideUnited KingdomBernardo Dominic QUALIFIED
Stacey D PerinRussiaElwin Sharvill NEGOTIATION
Jefferson Q NickaArgentinaAnna Fali PROPOSAL
Octavia J RoysterUnited KingdomXuxue Feng RENEWAL
Salvatore A TollnerUnited KingdomIvan Magalhaes RENEWAL
James N CampainGermanyElwin Sharvill RENEWAL
Ivar Z RoysterGermanyAmy Elsner PROPOSAL
Aika H DoeArgentinaAmy Elsner RENEWAL
Mayumi R OldroydItalyBernardo Dominic QUALIFIED
Ivar A NestleRussiaIoni Bowcher QUALIFIED
Wickens R RulapaughItalyOnyama Limba NEGOTIATION
Silvio C SchemmerRussiaAnna Fali NEGOTIATION
Stacey H KuskoSpainAsiya Javayant NEW
Munro J GauchoJapanIvan Magalhaes NEW
Octavia E BowleyItalyStephen Shaw PROPOSAL
Johnson R KuskoRussiaOnyama Limba NEGOTIATION
Aika V DilliardIndiaStephen Shaw RENEWAL
Izzy Q DilliardAustraliaAsiya Javayant NEW
Mayumi Z GarufiJapanBernardo Dominic PROPOSAL
Julie F MacleadArgentinaStephen Shaw RENEWAL
Cody D VocelkaGermanyAsiya Javayant PROPOSAL
Chavez S StockhamArgentinaIoni Bowcher NEW
Jones C BriddickFranceStephen Shaw NEW
Leon K InouyeJapanElwin Sharvill PROPOSAL
Maisha H BowleyRussiaAmy Elsner UNQUALIFIED
Antonio E FollerUnited KingdomAmy Elsner NEGOTIATION
Ivar K KolmetzGermanyStephen Shaw RENEWAL
Izzy L MarrierItalyStephen Shaw NEW
Jeanfrancois V CaldareraAustraliaAnna Fali PROPOSAL
Isabel I DoeBrazilOnyama Limba QUALIFIED
Smith Q NickaGermanyAsiya Javayant RENEWAL
Jefferson E SlusarskiUnited KingdomStephen Shaw NEGOTIATION
Ivar C ChuiAustraliaStephen Shaw PROPOSAL
Smith T VenereUnited KingdomElwin Sharvill PROPOSAL
Ivar F StensethUnited KingdomOnyama Limba QUALIFIED
Ashley U SlusarskiGermanyBernardo Dominic NEW
Deepesh J FollerFranceIoni Bowcher PROPOSAL
Maisha E MaletItalyXuxue Feng NEGOTIATION
Clifford P PoquetteGermanyIoni Bowcher QUALIFIED
Kadeem K DarakjyJapanStephen Shaw UNQUALIFIED
Ashley K InouyeFranceIoni Bowcher QUALIFIED
Antonio Q OldroydAustraliaAsiya Javayant QUALIFIED
Frozen Columns
Name
Emily G Stenseth
Claire N Perin
Smith E Kolmetz
Misaki H Saylors
Ricardo R Kusko
James R Marrier
Maria V Perin
Cody U Sergi
Chavez V Paprocki
Nicolas N Bowley
Mujtaba T Sergi
Jeanfrancois F Ferencz
Francesco A Dilliard
Chavez E Caudy
Cody O Bowley
Jeanfrancois E Stenseth
Misaki C Perin
Ricardo P Campain
Jefferson F Vocelka
Faith T Dilliard
Maria U Marrier
Jones J Amigon
Greenwood C Morasca
Francesco J Venere
Mujtaba K Caldarera
Faith H Chui
Wickens M Briddick
Munro R Waycott
Kadeem N Whobrey
Jennifer H Iturbide
Kadeem W Maclead
Silvio Z Bolognia
Francesco M Caudy
Arvin G Stockham
Adams F Gillian
Cody Q Dilliard
Antonio C Royster
Claire R Figeroa
Emily E Marrier
Leja C Whobrey
Jones V Kolmetz
Claire U Bolognia
Octavia W Gaucho
Nicolas Z Caudy
Tony D Stenseth
Clifford I Bowley
Rodrigues V Inouye
Misaki Q Campain
Wickens K Slusarski
Costa F Butt
IdCountryDate
1000India2024-05-29
1001Brazil2024-05-17
1002Canada2024-05-19
1003United Kingdom2024-05-21
1004Russia2024-05-17
1005France2024-05-07
1006France2024-05-21
1007Russia2024-05-12
1008Canada2024-05-11
1009Germany2024-05-20
1010Spain2024-05-25
1011Russia2024-05-18
1012Argentina2024-05-30
1013Spain2024-05-03
1014Brazil2024-05-06
1015Australia2024-05-09
1016Spain2024-05-22
1017Brazil2024-05-26
1018France2024-05-01
1019Australia2024-05-25
1020Spain2024-05-29
1021Japan2024-05-13
1022United Kingdom2024-05-29
1023Russia2024-05-21
1024Italy2024-05-26
1025Germany2024-05-17
1026Australia2024-05-27
1027Italy2024-05-08
1028Italy2024-05-21
1029Italy2024-05-18
1030Spain2024-05-18
1031India2024-05-25
1032Spain2024-05-24
1033Japan2024-05-08
1034United Kingdom2024-05-03
1035Australia2024-05-27
1036Argentina2024-05-04
1037Canada2024-05-10
1038Brazil2024-05-24
1039Argentina2024-05-26
1040Australia2024-05-01
1041Italy2024-05-03
1042Germany2024-05-30
1043Argentina2024-05-23
1044India2024-05-29
1045France2024-05-06
1046France2024-05-12
1047France2024-05-05
1048Brazil2024-05-17
1049Germany2024-05-22

On-Demand Data

NameIdCountryDate
Costa C Glick1000Canada2024-05-13
Mujtaba V Ostrosky1001Spain2024-05-09
Salvatore C Waycott1002United Kingdom2024-05-03
James T Waycott1003United Kingdom2024-05-08
Johnson N Dilliard1004Germany2024-05-24
Antonio N Kolmetz1005Canada2024-05-23
Adams N Shinko1006Germany2024-05-13
Morrow S Rim1007France2024-05-13
Misaki U Rim1008Italy2024-05-30
Greenwood C Flosi1009Russia2024-05-25
Cody F Chui1010Japan2024-05-19
Leon S Albares1011Italy2024-05-24
Rodrigues O Kusko1012Australia2024-05-06
Ricardo W Foller1013Canada2024-05-07
Claire F Kusko1014Russia2024-05-16
Nicolas J Venere1015Italy2024-05-06
Tony Z Flosi1016Australia2024-05-04
Darci D Nicka1017India2024-05-25
Jefferson Z Stenseth1018Spain2024-05-19
Adams V Vocelka1019Argentina2024-05-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia M InouyeGermanyIvan Magalhaes QUALIFIED
Isabel W OldroydIndiaElwin Sharvill NEGOTIATION
Claire P OldroydRussiaOnyama Limba UNQUALIFIED
Leja P IturbideIndiaIvan Magalhaes QUALIFIED
Cody C RutaRussiaAmy Elsner QUALIFIED
Izzy D GauchoItalyStephen Shaw PROPOSAL
Johnson P GauchoUnited KingdomAsiya Javayant NEGOTIATION
Emily A SlusarskiAustraliaOnyama Limba NEGOTIATION
Leja M GlickRussiaAsiya Javayant PROPOSAL
Munro C SergiUnited KingdomBernardo Dominic RENEWAL
Aruna C StensethFranceOnyama Limba NEW
Maisha S IturbideJapanBernardo Dominic UNQUALIFIED
Misaki C RimArgentinaOnyama Limba PROPOSAL
Ricardo U StensethRussiaBernardo Dominic NEGOTIATION
Ivar H KolmetzGermanyAsiya Javayant NEW
Kadeem B MarrierJapanIoni Bowcher RENEWAL
Jefferson K VocelkaItalyIvan Magalhaes NEW
Morrow C CampainArgentinaElwin Sharvill NEW
Aruna Q MaletGermanyElwin Sharvill NEGOTIATION
Mujtaba L VenereAustraliaBernardo Dominic NEGOTIATION
Juan R CampainArgentinaStephen Shaw NEW
Kadeem M ButtFranceXuxue Feng RENEWAL
Darci Z FigeroaArgentinaBernardo Dominic NEW
Ashley S VocelkaGermanyElwin Sharvill UNQUALIFIED
Stacey N RulapaughItalyOnyama Limba NEGOTIATION
Ashley I StockhamCanadaXuxue Feng UNQUALIFIED
Tony T CaudyAustraliaOnyama Limba QUALIFIED
Juan F NestleFranceAnna Fali NEW
Octavia P MaletFranceIoni Bowcher QUALIFIED
Antonio T VocelkaIndiaXuxue Feng NEW
Emily L VocelkaGermanyAmy Elsner RENEWAL
Stacey G RutaAustraliaOnyama Limba RENEWAL
Mayumi A NickaFranceBernardo Dominic QUALIFIED
Clifford E CaldareraCanadaIoni Bowcher RENEWAL
Stacey S SchemmerFranceOnyama Limba PROPOSAL
Ricardo V NickaRussiaStephen Shaw UNQUALIFIED
Smith I MaletArgentinaOnyama Limba NEGOTIATION
Jeanfrancois P KolmetzGermanyIvan Magalhaes NEGOTIATION
Clifford B BriddickIndiaElwin Sharvill NEW
Maisha C PaprockiRussiaAsiya Javayant 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>