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
Antonio D VenereGermanyAnna Fali UNQUALIFIED
Wickens U FlosiIndiaAmy Elsner UNQUALIFIED
Claire W WaycottGermanyAmy Elsner PROPOSAL
Juan H MaletRussiaBernardo Dominic QUALIFIED
Mujtaba F FerenczItalyIoni Bowcher UNQUALIFIED
Smith R MaletUnited KingdomElwin Sharvill RENEWAL
Rodrigues S PaprockiArgentinaAnna Fali RENEWAL
Misaki F CaudyIndiaStephen Shaw UNQUALIFIED
Salvatore Z RutaJapanOnyama Limba RENEWAL
Morrow O ButtAustraliaOnyama Limba NEGOTIATION
Costa V WaycottBrazilBernardo Dominic RENEWAL
Misaki O DoeBrazilAsiya Javayant QUALIFIED
Maisha J AlbaresBrazilAsiya Javayant QUALIFIED
Leon J SaylorsItalyXuxue Feng NEW
Costa U FollerCanadaXuxue Feng RENEWAL
Aditya J KuskoBrazilAmy Elsner NEW
Jones S VenereJapanAnna Fali UNQUALIFIED
David R FollerSpainXuxue Feng QUALIFIED
Julie Z GauchoArgentinaBernardo Dominic QUALIFIED
Wickens J KuskoArgentinaAnna Fali NEGOTIATION
Adams B WaycottJapanAnna Fali RENEWAL
James E PoquetteItalyXuxue Feng PROPOSAL
Arvin X InouyeIndiaAmy Elsner UNQUALIFIED
Francesco J GlickBrazilIvan Magalhaes QUALIFIED
Sinclair H FollerCanadaBernardo Dominic QUALIFIED
Jefferson V AmigonGermanyIvan Magalhaes RENEWAL
Greenwood W MaletCanadaElwin Sharvill PROPOSAL
Jefferson R DilliardRussiaXuxue Feng RENEWAL
Juan D CaudyUnited KingdomBernardo Dominic QUALIFIED
Kaitlin R AlbaresArgentinaXuxue Feng RENEWAL
Claire L GillianJapanAsiya Javayant RENEWAL
Faith Q GauchoGermanyIoni Bowcher QUALIFIED
Chavez U GauchoRussiaStephen Shaw UNQUALIFIED
Leja U SergiFranceAnna Fali PROPOSAL
Wickens E BologniaGermanyOnyama Limba PROPOSAL
Ricardo C NickaGermanyStephen Shaw NEW
Mayumi Q ChuiGermanyStephen Shaw QUALIFIED
Emily C FigeroaSpainIoni Bowcher UNQUALIFIED
Darci Y SergiFranceIvan Magalhaes NEW
Arvin F FlosiItalyOnyama Limba NEW
Misaki E MorascaAustraliaOnyama Limba QUALIFIED
Chavez P IturbideItalyAsiya Javayant NEW
Maisha R RimUnited KingdomAnna Fali NEGOTIATION
Smith G IturbideUnited KingdomStephen Shaw UNQUALIFIED
Nicolas K MaletItalyOnyama Limba PROPOSAL
Cody T RulapaughBrazilOnyama Limba UNQUALIFIED
Cody K AmigonRussiaStephen Shaw QUALIFIED
Kadeem L CaldareraAustraliaIoni Bowcher NEGOTIATION
Kaitlin B MarrierIndiaBernardo Dominic UNQUALIFIED
Jones D CampainJapanIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Smith A PoquetteIndiaAnna Fali UNQUALIFIED
Nicolas H OldroydBrazilBernardo Dominic UNQUALIFIED
Nicolas M MaletAustraliaAnna Fali RENEWAL
Aruna C OstroskyBrazilStephen Shaw NEW
Mujtaba Z MarrierItalyStephen Shaw NEGOTIATION
Sinclair O RutaCanadaAnna Fali RENEWAL
Faith R MaletFranceIoni Bowcher NEGOTIATION
Munro G DilliardFranceElwin Sharvill NEGOTIATION
Kadeem V RulapaughRussiaBernardo Dominic QUALIFIED
Mujtaba O FigeroaJapanIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois U RimRussia2024-06-16Feiner Bros NEGOTIATION98Xuxue Feng
1001Alejandro O MarrierItaly2024-05-26Feiner Bros NEW78Elwin Sharvill
1002Leja U ShinkoArgentina2024-06-16Chemel, James L Cpa NEGOTIATION1Xuxue Feng
1003Isabel T StensethUnited Kingdom2024-06-05Commercial Press QUALIFIED85Onyama Limba
1004Octavia D VenereRussia2024-05-28Feltz Printing Service NEGOTIATION3Asiya Javayant
1005Smith Q GillianRussia2024-06-18Feltz Printing Service RENEWAL7Stephen Shaw
1006Leja B ShinkoUnited Kingdom2024-06-15Dorl, James J Esq UNQUALIFIED12Asiya Javayant
1007Mayumi V IturbideArgentina2024-06-02Rousseaux, Michael Esq NEW30Xuxue Feng
1008Claire G DarakjyJapan2024-05-31Chapman, Ross E Esq QUALIFIED33Elwin Sharvill
1009Julie O PoquetteUnited Kingdom2024-06-16Dorl, James J Esq NEW40Elwin Sharvill
1010David F GarufiFrance2024-06-10Buckley Miller Wright RENEWAL28Ioni Bowcher
1011Francesco S MacleadIndia2024-06-12Chanay, Jeffrey A Esq NEGOTIATION76Bernardo Dominic
1012Sinclair X MacleadRussia2024-05-28Rangoni Of Florence RENEWAL87Onyama Limba
1013Ashley K IturbideSpain2024-06-18Dorl, James J Esq PROPOSAL73Bernardo Dominic
1014Antonio Q SaylorsGermany2024-06-16King, Christopher A Esq UNQUALIFIED5Ivan Magalhaes
1015Mujtaba Q FollerArgentina2024-06-18Rangoni Of Florence NEGOTIATION61Ioni Bowcher
1016Murillo U VocelkaBrazil2024-06-11Benton, John B Jr NEGOTIATION6Bernardo Dominic
1017Jeanfrancois M MaletCanada2024-05-31Benton, John B Jr UNQUALIFIED13Anna Fali
1018Claire M MacleadRussia2024-06-05Dorl, James J Esq RENEWAL87Stephen Shaw
1019Chavez L PerinCanada2024-06-13Truhlar And Truhlar Attys NEGOTIATION76Xuxue Feng
1020Silvio O NestleRussia2024-06-03Feltz Printing Service NEGOTIATION12Asiya Javayant
1021Mayumi D BriddickArgentina2024-06-16Rousseaux, Michael Esq NEW38Ioni Bowcher
1022Murillo B KolmetzSpain2024-06-21Chanay, Jeffrey A Esq RENEWAL57Stephen Shaw
1023Mujtaba B SaylorsFrance2024-06-16Commercial Press QUALIFIED30Ioni Bowcher
1024Costa G WhobreyJapan2024-06-18Benton, John B Jr QUALIFIED14Bernardo Dominic
1025Emily B FlosiRussia2024-06-13Chapman, Ross E Esq UNQUALIFIED53Stephen Shaw
1026Antonio A VenereAustralia2024-06-17Feltz Printing Service RENEWAL83Asiya Javayant
1027Octavia Q PerinIndia2024-06-23Benton, John B Jr QUALIFIED89Stephen Shaw
1028Johnson E PerinAustralia2024-06-16Rangoni Of Florence RENEWAL82Bernardo Dominic
1029Jefferson N MaletBrazil2024-06-05Rangoni Of Florence PROPOSAL98Xuxue Feng
1030Silvio X StensethCanada2024-06-09Rangoni Of Florence UNQUALIFIED8Elwin Sharvill
1031Jennifer G GillianArgentina2024-06-18Printing Dimensions QUALIFIED52Onyama Limba
1032Sinclair V RutaUnited Kingdom2024-06-16Chapman, Ross E Esq PROPOSAL69Bernardo Dominic
1033Izzy G WaycottUnited Kingdom2024-06-13Chapman, Ross E Esq PROPOSAL46Onyama Limba
1034Nicolas V StensethArgentina2024-05-30Rangoni Of Florence UNQUALIFIED50Bernardo Dominic
1035Nicolas V FerenczUnited Kingdom2024-06-09Chanay, Jeffrey A Esq NEGOTIATION61Elwin Sharvill
1036James P PaprockiUnited Kingdom2024-06-16Morlong Associates UNQUALIFIED83Ioni Bowcher
1037Munro L RimRussia2024-06-15Feiner Bros PROPOSAL24Stephen Shaw
1038Arvin N WaycottGermany2024-06-21Chemel, James L Cpa QUALIFIED86Ioni Bowcher
1039Sinclair Z MarrierArgentina2024-06-21Printing Dimensions NEW22Bernardo Dominic
1040Chavez C VenereGermany2024-05-26Buckley Miller Wright NEW15Ioni Bowcher
1041Juan X GauchoIndia2024-06-23Chapman, Ross E Esq QUALIFIED55Elwin Sharvill
1042Jefferson V PaprockiUnited Kingdom2024-06-12Chemel, James L Cpa PROPOSAL26Xuxue Feng
1043Izzy B RoysterCanada2024-06-09Printing Dimensions PROPOSAL80Stephen Shaw
1044Jones L GillianJapan2024-06-07Benton, John B Jr RENEWAL17Bernardo Dominic
1045Clifford E CampainArgentina2024-06-18Feltz Printing Service UNQUALIFIED37Anna Fali
1046Jennifer B KolmetzItaly2024-05-28Dorl, James J Esq QUALIFIED16Elwin Sharvill
1047Octavia O CaldareraItaly2024-05-30Benton, John B Jr PROPOSAL69Stephen Shaw
1048David F SchemmerArgentina2024-06-15Morlong Associates UNQUALIFIED3Ioni Bowcher
1049Antonio W FlosiCanada2024-06-12Morlong Associates UNQUALIFIED75Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Mayumi W OldroydSpainAnna Fali UNQUALIFIED
David O MaletGermanyElwin Sharvill PROPOSAL
James M FigeroaRussiaOnyama Limba UNQUALIFIED
Leja P TollnerAustraliaElwin Sharvill UNQUALIFIED
Tony F FigeroaRussiaIvan Magalhaes QUALIFIED
Rodrigues C MorascaAustraliaElwin Sharvill QUALIFIED
Adams K GauchoAustraliaAsiya Javayant UNQUALIFIED
Francesco H MaletSpainStephen Shaw QUALIFIED
Morrow D MorascaItalyAsiya Javayant RENEWAL
Salvatore M KolmetzJapanAmy Elsner PROPOSAL
Deepesh X OstroskyAustraliaStephen Shaw QUALIFIED
Isabel D FlosiBrazilElwin Sharvill NEW
Morrow F SergiJapanOnyama Limba UNQUALIFIED
Misaki H RoysterIndiaElwin Sharvill RENEWAL
Ivar P BologniaUnited KingdomElwin Sharvill NEGOTIATION
Francesco Q BowleyFranceElwin Sharvill NEW
Antonio A BriddickAustraliaBernardo Dominic RENEWAL
Jones W AmigonGermanyIoni Bowcher PROPOSAL
Aruna K GillianItalyOnyama Limba NEW
Deepesh S VenereAustraliaIoni Bowcher NEGOTIATION
Mujtaba B InouyeSpainOnyama Limba QUALIFIED
Ricardo B CampainFranceOnyama Limba QUALIFIED
Octavia J DarakjyBrazilAmy Elsner QUALIFIED
Misaki G OldroydBrazilStephen Shaw NEGOTIATION
Nicolas U OldroydFranceAsiya Javayant PROPOSAL
Jennifer D InouyeIndiaOnyama Limba RENEWAL
Ashley X VenereBrazilIvan Magalhaes NEW
Jones F VocelkaItalyIvan Magalhaes NEGOTIATION
Johnson O OldroydCanadaIvan Magalhaes NEW
Aditya D IturbideSpainStephen Shaw UNQUALIFIED
Julie E RutaSpainAnna Fali PROPOSAL
Leja V RutaAustraliaXuxue Feng UNQUALIFIED
Mujtaba L WhobreyAustraliaAsiya Javayant PROPOSAL
Munro Y FollerFranceIvan Magalhaes QUALIFIED
Alejandro F MaletGermanyStephen Shaw PROPOSAL
Alejandro S KuskoSpainElwin Sharvill NEW
Leja D StockhamFranceAnna Fali NEW
Chavez H StockhamBrazilStephen Shaw NEW
Ashley Q IturbideRussiaAmy Elsner UNQUALIFIED
Aika J FollerBrazilBernardo Dominic PROPOSAL
Izzy N GillianRussiaAmy Elsner NEGOTIATION
Antonio M FigeroaUnited KingdomAsiya Javayant RENEWAL
Maisha N WhobreyItalyIoni Bowcher UNQUALIFIED
Maisha N CaldareraFranceIoni Bowcher QUALIFIED
Juan Z GillianUnited KingdomBernardo Dominic PROPOSAL
Costa V KuskoIndiaAnna Fali QUALIFIED
Munro R RutaAustraliaIoni Bowcher RENEWAL
Tony Q MaletFranceIoni Bowcher UNQUALIFIED
Faith F FerenczAustraliaBernardo Dominic QUALIFIED
Arvin R DoeItalyIoni Bowcher PROPOSAL
Frozen Columns
Name
Darci S Nestle
Clifford L Vocelka
David E Oldroyd
Deepesh X Iturbide
Francesco O Tollner
Salvatore K Poquette
Kaitlin U Foller
Cody I Campain
Costa C Gaucho
Aruna P Vocelka
Mayumi C Malet
Nicolas C Nicka
Ashley V Gaucho
Izzy M Inouye
Greenwood V Bolognia
Ivar X Kolmetz
Stacey A Vocelka
Aditya D Shinko
Stacey Y Rulapaugh
Ashley Z Dilliard
Maisha Z Royster
Kadeem V Venere
Johnson J Ferencz
Rodrigues V Morasca
Leon N Inouye
Misaki F Albares
Izzy E Rim
Silvio Q Amigon
Chavez Y Stenseth
Leon B Nestle
Octavia P Briddick
Juan B Campain
Francesco R Sergi
Leon U Saylors
Silvio L Foller
Maisha L Shinko
Clifford H Sergi
Emily Y Vocelka
Costa R Waycott
Aditya T Royster
Silvio X Poquette
Leon K Waycott
Ricardo M Stockham
James W Rim
Jeanfrancois B Oldroyd
Aruna L Flosi
Mujtaba G Tollner
Darci H Bolognia
Ivar S Gillian
Mayumi N Paprocki
IdCountryDate
1000United Kingdom2024-05-28
1001Canada2024-06-15
1002Japan2024-06-06
1003Australia2024-06-12
1004Canada2024-06-14
1005Australia2024-06-15
1006Germany2024-06-11
1007Japan2024-05-27
1008Spain2024-06-06
1009Argentina2024-06-05
1010Spain2024-05-31
1011Spain2024-06-08
1012Japan2024-05-28
1013India2024-06-03
1014United Kingdom2024-06-15
1015Argentina2024-06-15
1016Russia2024-06-18
1017Russia2024-05-26
1018Argentina2024-06-17
1019Australia2024-06-22
1020Japan2024-06-09
1021Argentina2024-06-15
1022Australia2024-05-27
1023Argentina2024-06-06
1024Spain2024-06-15
1025Brazil2024-05-31
1026Russia2024-06-17
1027Japan2024-06-23
1028Brazil2024-06-08
1029France2024-06-23
1030Argentina2024-05-27
1031Australia2024-06-05
1032Germany2024-06-24
1033Japan2024-05-27
1034Australia2024-06-24
1035Japan2024-06-16
1036India2024-06-03
1037Russia2024-05-28
1038United Kingdom2024-05-26
1039United Kingdom2024-06-06
1040Spain2024-06-01
1041Argentina2024-06-23
1042Canada2024-05-29
1043Brazil2024-06-16
1044Argentina2024-05-29
1045Canada2024-06-21
1046Germany2024-06-15
1047Germany2024-06-23
1048Russia2024-06-06
1049Germany2024-06-02

On-Demand Data

NameIdCountryDate
Faith M Inouye1000Japan2024-06-16
Cody Z Amigon1001United Kingdom2024-06-22
Francesco R Bolognia1002Russia2024-05-26
Mujtaba P Nicka1003India2024-06-17
Munro N Saylors1004India2024-06-20
Alejandro R Poquette1005Brazil2024-05-31
Adams N Caudy1006Argentina2024-06-03
Julie Z Rulapaugh1007Germany2024-06-06
Kadeem T Rulapaugh1008United Kingdom2024-06-12
Greenwood H Wieser1009Russia2024-06-02
Mayumi N Morasca1010Italy2024-05-26
Arvin Z Marrier1011Spain2024-06-20
Rodrigues J Gillian1012Spain2024-06-15
Ashley A Bowley1013Spain2024-05-28
Jeanfrancois P Flosi1014France2024-06-15
Julie A Royster1015Russia2024-05-28
Octavia D Caldarera1016Japan2024-06-17
Jones D Schemmer1017Canada2024-06-13
Ricardo G Shinko1018Australia2024-06-21
Munro X Nicka1019Brazil2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia Q FollerUnited KingdomBernardo Dominic QUALIFIED
Jefferson R ChuiGermanyIoni Bowcher PROPOSAL
Octavia L GarufiItalyOnyama Limba NEW
Aika D FlosiItalyIvan Magalhaes NEW
Wickens B DilliardGermanyAsiya Javayant NEGOTIATION
Kadeem O IturbideJapanAnna Fali QUALIFIED
Sinclair F RoysterFranceOnyama Limba UNQUALIFIED
Deepesh P GauchoItalyOnyama Limba NEW
Emily B SaylorsIndiaStephen Shaw NEGOTIATION
Aruna F SchemmerCanadaElwin Sharvill RENEWAL
Jennifer D CaudyJapanAsiya Javayant NEGOTIATION
Sinclair I MacleadJapanElwin Sharvill NEGOTIATION
Kaitlin C CaldareraFranceStephen Shaw RENEWAL
Darci D RimArgentinaStephen Shaw PROPOSAL
Adams X WaycottSpainOnyama Limba NEGOTIATION
Munro F PerinItalyXuxue Feng QUALIFIED
Nicolas C BologniaBrazilAsiya Javayant UNQUALIFIED
Jennifer A RimRussiaAnna Fali QUALIFIED
Arvin U DarakjyCanadaBernardo Dominic QUALIFIED
Kadeem Y NestleIndiaOnyama Limba NEW
Tony G KolmetzAustraliaAmy Elsner QUALIFIED
Kaitlin D OldroydItalyXuxue Feng PROPOSAL
Wickens J SlusarskiItalyElwin Sharvill PROPOSAL
Deepesh Q RoysterJapanAnna Fali NEGOTIATION
Murillo V RoysterFranceStephen Shaw QUALIFIED
Maria X SlusarskiItalyAnna Fali NEW
Mujtaba V GauchoCanadaAmy Elsner NEGOTIATION
Faith I GarufiAustraliaOnyama Limba UNQUALIFIED
Clifford X KuskoJapanAsiya Javayant UNQUALIFIED
Jeanfrancois P MorascaRussiaAmy Elsner QUALIFIED
Stacey F AlbaresGermanyBernardo Dominic NEW
Jeanfrancois F ButtBrazilAnna Fali RENEWAL
Salvatore J InouyeBrazilAsiya Javayant NEW
Deepesh W InouyeItalyElwin Sharvill RENEWAL
Deepesh B RulapaughUnited KingdomAmy Elsner NEW
Faith G GauchoJapanElwin Sharvill QUALIFIED
Adams O MacleadUnited KingdomIvan Magalhaes RENEWAL
Maria W CaudySpainStephen Shaw UNQUALIFIED
Maria N NestleArgentinaAsiya Javayant NEW
Kaitlin W ShinkoAustraliaAnna Fali 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>