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
Ricardo F SchemmerAustraliaAsiya Javayant UNQUALIFIED
Darci Q MacleadJapanIvan Magalhaes NEW
Kadeem E RutaAustraliaAnna Fali NEGOTIATION
Claire P ShinkoArgentinaElwin Sharvill NEGOTIATION
Kadeem C AlbaresBrazilIvan Magalhaes NEW
Isabel T FerenczBrazilAnna Fali PROPOSAL
Clifford I NestleCanadaAmy Elsner PROPOSAL
Johnson R NickaJapanElwin Sharvill NEW
Izzy Q RulapaughFranceBernardo Dominic NEGOTIATION
Kaitlin T InouyeCanadaAnna Fali NEGOTIATION
Francesco W BologniaRussiaAnna Fali RENEWAL
Johnson S BriddickRussiaIvan Magalhaes RENEWAL
Emily K OldroydCanadaAnna Fali RENEWAL
Jefferson V CampainArgentinaAsiya Javayant PROPOSAL
Stacey W RoysterArgentinaAsiya Javayant NEW
Johnson N SaylorsAustraliaAsiya Javayant RENEWAL
Maisha L StensethIndiaIvan Magalhaes NEW
Isabel F WhobreyGermanyStephen Shaw NEGOTIATION
Maria R StensethAustraliaAsiya Javayant RENEWAL
Ricardo B CaudyFranceAnna Fali NEW
Mayumi Z RutaCanadaAsiya Javayant NEW
Emily P CampainUnited KingdomOnyama Limba NEW
Jennifer R DarakjyBrazilStephen Shaw NEGOTIATION
Costa H IturbideSpainStephen Shaw NEW
Adams F RoysterCanadaAnna Fali PROPOSAL
Sinclair R VenereArgentinaIvan Magalhaes RENEWAL
Jefferson Y CaudySpainIvan Magalhaes NEGOTIATION
Antonio E MorascaJapanAnna Fali NEGOTIATION
Johnson I ButtItalyIvan Magalhaes PROPOSAL
Smith U GauchoItalyBernardo Dominic NEW
Aika I MarrierFranceBernardo Dominic RENEWAL
Chavez S MorascaIndiaIvan Magalhaes RENEWAL
Claire D DilliardSpainBernardo Dominic NEGOTIATION
Aditya I NickaFranceAsiya Javayant RENEWAL
Jeanfrancois K VenereAustraliaIoni Bowcher PROPOSAL
Emily K CaudyArgentinaStephen Shaw RENEWAL
Juan N RulapaughBrazilAsiya Javayant RENEWAL
Leja R GlickBrazilElwin Sharvill PROPOSAL
Morrow B NestleSpainIvan Magalhaes PROPOSAL
Kadeem T GarufiArgentinaStephen Shaw NEW
Greenwood B SchemmerJapanOnyama Limba QUALIFIED
Aruna A NestleAustraliaAsiya Javayant NEGOTIATION
Nicolas U FlosiUnited KingdomIvan Magalhaes UNQUALIFIED
Aika B ShinkoCanadaStephen Shaw PROPOSAL
James W SchemmerArgentinaElwin Sharvill PROPOSAL
Izzy O InouyeIndiaIoni Bowcher NEW
Kadeem W OldroydFranceStephen Shaw PROPOSAL
Wickens H DarakjyFranceAsiya Javayant NEW
Silvio B FerenczSpainBernardo Dominic UNQUALIFIED
Claire U RulapaughFranceAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Misaki S InouyeArgentinaAmy Elsner NEW
Maisha D SchemmerBrazilIvan Magalhaes NEW
James H MarrierIndiaAsiya Javayant NEW
Jones M BologniaRussiaOnyama Limba NEW
Isabel J StockhamJapanIvan Magalhaes PROPOSAL
Darci K MaletRussiaXuxue Feng QUALIFIED
Faith A OstroskySpainBernardo Dominic NEW
Mayumi N PerinArgentinaAnna Fali NEW
Chavez Q SlusarskiArgentinaIvan Magalhaes UNQUALIFIED
Misaki R GillianBrazilElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi Z MarrierArgentina2024-06-04Chapman, Ross E Esq PROPOSAL4Stephen Shaw
1001Sinclair Q WaycottIndia2024-06-22Feltz Printing Service UNQUALIFIED87Anna Fali
1002Antonio U SergiArgentina2024-06-02Feltz Printing Service PROPOSAL98Xuxue Feng
1003Chavez W KolmetzItaly2024-06-09Benton, John B Jr PROPOSAL43Bernardo Dominic
1004Juan B DoeGermany2024-05-31Rousseaux, Michael Esq RENEWAL24Asiya Javayant
1005Francesco B FollerCanada2024-06-11Rousseaux, Michael Esq NEW66Xuxue Feng
1006Wickens A BologniaRussia2024-06-13Commercial Press RENEWAL3Onyama Limba
1007Claire A ShinkoCanada2024-06-03Dorl, James J Esq NEGOTIATION84Asiya Javayant
1008Kaitlin K DoeSpain2024-06-07Buckley Miller Wright QUALIFIED56Ivan Magalhaes
1009Arvin H RimFrance2024-06-13Chanay, Jeffrey A Esq NEGOTIATION28Anna Fali
1010Cody M ChuiItaly2024-06-11Morlong Associates PROPOSAL46Xuxue Feng
1011Adams F GlickRussia2024-06-19Chanay, Jeffrey A Esq RENEWAL51Bernardo Dominic
1012Mayumi M CampainFrance2024-06-02Printing Dimensions RENEWAL7Amy Elsner
1013Kaitlin R PaprockiBrazil2024-06-03Dorl, James J Esq UNQUALIFIED14Elwin Sharvill
1014Johnson E PerinItaly2024-05-29Chemel, James L Cpa QUALIFIED5Bernardo Dominic
1015Leja Y StensethUnited Kingdom2024-06-22Feiner Bros RENEWAL98Amy Elsner
1016Johnson Q MorascaGermany2024-06-10Feltz Printing Service UNQUALIFIED38Bernardo Dominic
1017Aika A WhobreyRussia2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED98Elwin Sharvill
1018Leja F FlosiGermany2024-05-24Commercial Press QUALIFIED62Ioni Bowcher
1019Greenwood C InouyeUnited Kingdom2024-06-12Chapman, Ross E Esq NEGOTIATION74Onyama Limba
1020Sinclair C BriddickFrance2024-05-27Dorl, James J Esq QUALIFIED36Amy Elsner
1021Munro D WhobreyGermany2024-05-31Feiner Bros NEW42Xuxue Feng
1022Kaitlin W BologniaCanada2024-06-06Chapman, Ross E Esq QUALIFIED14Ivan Magalhaes
1023Salvatore V AlbaresUnited Kingdom2024-05-24Feiner Bros NEW1Onyama Limba
1024Aruna C MaletUnited Kingdom2024-06-05Chapman, Ross E Esq PROPOSAL74Stephen Shaw
1025Rodrigues K AmigonJapan2024-06-18Morlong Associates NEGOTIATION4Ivan Magalhaes
1026Jefferson P RimItaly2024-06-14Rousseaux, Michael Esq NEGOTIATION6Anna Fali
1027Aditya H DoeFrance2024-05-25Commercial Press NEW74Bernardo Dominic
1028Kaitlin F MacleadUnited Kingdom2024-06-05Truhlar And Truhlar Attys QUALIFIED54Asiya Javayant
1029Jefferson P BriddickBrazil2024-05-26Buckley Miller Wright NEGOTIATION83Asiya Javayant
1030Munro N InouyeGermany2024-06-08Commercial Press PROPOSAL29Asiya Javayant
1031Munro Z OstroskyRussia2024-06-12Morlong Associates QUALIFIED93Elwin Sharvill
1032Octavia F SaylorsCanada2024-06-08Feltz Printing Service NEW40Onyama Limba
1033Antonio E BowleyAustralia2024-06-10Commercial Press RENEWAL66Anna Fali
1034Francesco O ShinkoFrance2024-06-03Rangoni Of Florence QUALIFIED17Onyama Limba
1035Darci B KuskoUnited Kingdom2024-06-04Chemel, James L Cpa RENEWAL31Ioni Bowcher
1036Rodrigues C MaletSpain2024-06-14Feltz Printing Service UNQUALIFIED69Onyama Limba
1037Johnson L VocelkaFrance2024-06-02King, Christopher A Esq NEW97Anna Fali
1038Isabel S CaudyUnited Kingdom2024-05-30Feltz Printing Service QUALIFIED38Asiya Javayant
1039Deepesh O RimUnited Kingdom2024-06-05Chemel, James L Cpa QUALIFIED61Anna Fali
1040Chavez J KolmetzArgentina2024-06-22Chanay, Jeffrey A Esq UNQUALIFIED56Amy Elsner
1041Stacey Y PaprockiSpain2024-05-30Buckley Miller Wright UNQUALIFIED90Elwin Sharvill
1042Julie V DarakjyGermany2024-06-20King, Christopher A Esq NEW10Amy Elsner
1043Jeanfrancois F IturbideSpain2024-06-16Chanay, Jeffrey A Esq QUALIFIED79Ivan Magalhaes
1044Sinclair Z BriddickRussia2024-05-26Printing Dimensions NEW95Xuxue Feng
1045Sinclair D StensethArgentina2024-06-14Rangoni Of Florence UNQUALIFIED22Elwin Sharvill
1046Julie F RimArgentina2024-05-31Buckley Miller Wright NEGOTIATION98Onyama Limba
1047Chavez R MaletIndia2024-06-10Feiner Bros NEGOTIATION46Xuxue Feng
1048Mujtaba D KuskoAustralia2024-06-19Morlong Associates NEGOTIATION58Stephen Shaw
1049Chavez I SchemmerUnited Kingdom2024-06-06Rousseaux, Michael Esq QUALIFIED79Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Munro K ChuiUnited KingdomAnna Fali RENEWAL
Costa X MaletBrazilBernardo Dominic NEW
Nicolas V FigeroaBrazilAsiya Javayant NEW
Octavia A MarrierJapanElwin Sharvill NEW
Aika I CampainSpainXuxue Feng PROPOSAL
Nicolas V PoquetteUnited KingdomXuxue Feng PROPOSAL
Faith W PoquetteCanadaAsiya Javayant PROPOSAL
Chavez R WaycottItalyElwin Sharvill UNQUALIFIED
Ivar K WaycottJapanIvan Magalhaes NEGOTIATION
Nicolas L BriddickItalyStephen Shaw PROPOSAL
Darci C FigeroaAustraliaOnyama Limba PROPOSAL
Jennifer W TollnerIndiaIoni Bowcher QUALIFIED
Aruna M AlbaresCanadaOnyama Limba NEW
Jefferson N AmigonAustraliaStephen Shaw UNQUALIFIED
Jefferson L FerenczItalyAmy Elsner NEW
Juan R GauchoCanadaElwin Sharvill UNQUALIFIED
Izzy E StockhamArgentinaBernardo Dominic UNQUALIFIED
Jones S PoquetteCanadaIoni Bowcher NEW
Mujtaba B RoysterAustraliaBernardo Dominic NEGOTIATION
David O ShinkoFranceBernardo Dominic NEW
Izzy T CaudyFranceOnyama Limba NEGOTIATION
Mayumi T IturbideItalyAmy Elsner NEW
Ricardo L GauchoJapanOnyama Limba RENEWAL
David S GauchoGermanyStephen Shaw UNQUALIFIED
Munro J NickaFranceIoni Bowcher RENEWAL
Antonio I MorascaFranceElwin Sharvill PROPOSAL
Greenwood U RulapaughRussiaXuxue Feng QUALIFIED
Mujtaba R GlickAustraliaElwin Sharvill PROPOSAL
Rodrigues L KuskoAustraliaIoni Bowcher QUALIFIED
Francesco Q FerenczCanadaIoni Bowcher QUALIFIED
Julie E ChuiItalyXuxue Feng NEW
Arvin Y FlosiAustraliaAsiya Javayant UNQUALIFIED
Alejandro H RimGermanyStephen Shaw UNQUALIFIED
Isabel P GillianCanadaAmy Elsner RENEWAL
Ricardo D WaycottSpainBernardo Dominic QUALIFIED
Isabel Y KuskoSpainXuxue Feng RENEWAL
Salvatore E StensethCanadaIvan Magalhaes QUALIFIED
Aruna B FigeroaFranceOnyama Limba NEGOTIATION
Greenwood P WieserItalyXuxue Feng PROPOSAL
Adams O TollnerBrazilAnna Fali UNQUALIFIED
Antonio E SergiJapanIoni Bowcher RENEWAL
Aruna E StockhamRussiaAmy Elsner NEW
Maria T GauchoJapanIvan Magalhaes RENEWAL
Chavez X CampainArgentinaXuxue Feng QUALIFIED
Ricardo O FollerSpainStephen Shaw RENEWAL
Mujtaba I NestleGermanyAmy Elsner NEW
Aika Q TollnerCanadaElwin Sharvill NEGOTIATION
Jennifer T VenereAustraliaElwin Sharvill PROPOSAL
Alejandro M CaudyAustraliaXuxue Feng PROPOSAL
Jennifer V FollerRussiaAsiya Javayant PROPOSAL
Frozen Columns
Name
Munro H Rulapaugh
Silvio I Ostrosky
Wickens D Amigon
Kaitlin U Marrier
Aditya V Caudy
Costa G Tollner
Leja Z Schemmer
Kadeem E Royster
Aruna T Butt
Ashley Y Garufi
Faith A Poquette
Mujtaba G Marrier
Alejandro T Saylors
Chavez K Gaucho
Leon J Foller
Jefferson O Amigon
Jeanfrancois L Foller
Murillo O Rulapaugh
Rodrigues E Bowley
Misaki Y Glick
Kaitlin R Oldroyd
Jennifer E Caldarera
Kaitlin E Stenseth
Smith D Tollner
Aruna E Garufi
Faith N Wieser
Jeanfrancois H Wieser
Kaitlin U Dilliard
Kaitlin T Morasca
Salvatore Q Paprocki
Silvio L Rim
Smith Z Oldroyd
Kaitlin U Waycott
Costa W Garufi
Juan G Malet
Kadeem B Bolognia
Aruna C Dilliard
Antonio I Butt
Juan S Rulapaugh
Kadeem D Albares
Murillo H Figeroa
Juan T Slusarski
Sinclair O Nestle
Greenwood Y Vocelka
Rodrigues E Gaucho
Jones R Kusko
Izzy Q Nestle
Wickens T Malet
Maria P Venere
Claire Y Nicka
IdCountryDate
1000France2024-06-09
1001United Kingdom2024-05-24
1002Japan2024-05-25
1003Spain2024-05-27
1004Canada2024-05-25
1005Spain2024-06-13
1006United Kingdom2024-05-27
1007France2024-05-25
1008Russia2024-06-14
1009Italy2024-06-02
1010Canada2024-05-27
1011Germany2024-06-07
1012Argentina2024-06-13
1013India2024-06-15
1014Russia2024-06-13
1015Japan2024-06-12
1016United Kingdom2024-06-02
1017Germany2024-06-19
1018India2024-05-26
1019Canada2024-06-15
1020Canada2024-06-10
1021Japan2024-05-28
1022Japan2024-05-26
1023Italy2024-06-16
1024Australia2024-06-19
1025Australia2024-05-28
1026Italy2024-05-24
1027Russia2024-06-10
1028United Kingdom2024-06-05
1029India2024-06-11
1030United Kingdom2024-05-30
1031France2024-06-10
1032India2024-06-14
1033Brazil2024-06-13
1034Italy2024-05-24
1035Japan2024-06-20
1036Italy2024-05-26
1037Japan2024-06-05
1038India2024-05-31
1039India2024-06-03
1040Canada2024-06-06
1041Italy2024-06-19
1042Germany2024-05-30
1043France2024-06-12
1044Italy2024-06-05
1045Russia2024-06-02
1046Japan2024-05-31
1047Japan2024-05-24
1048United Kingdom2024-05-26
1049Argentina2024-05-26

On-Demand Data

NameIdCountryDate
Maria E Slusarski1000France2024-06-09
Smith H Vocelka1001United Kingdom2024-05-26
Clifford U Marrier1002United Kingdom2024-06-09
Morrow Z Tollner1003Argentina2024-06-04
Leon H Amigon1004India2024-06-05
Salvatore J Caudy1005United Kingdom2024-06-19
Rodrigues U Ostrosky1006Canada2024-06-19
Kaitlin Y Ferencz1007Canada2024-06-11
Nicolas P Wieser1008Germany2024-06-09
Jefferson Z Garufi1009United Kingdom2024-06-19
Munro W Rim1010United Kingdom2024-06-03
Aditya A Royster1011Canada2024-06-07
Murillo X Malet1012Russia2024-06-16
David I Shinko1013Spain2024-06-04
Maisha D Nestle1014Russia2024-06-15
Julie M Paprocki1015Russia2024-05-24
Leja T Gaucho1016France2024-05-31
Nicolas Q Briddick1017Italy2024-06-22
Chavez V Waycott1018Russia2024-06-08
Leon J Morasca1019Spain2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya P KolmetzArgentinaXuxue Feng PROPOSAL
Julie C FerenczIndiaAnna Fali PROPOSAL
Smith F GlickAustraliaStephen Shaw QUALIFIED
Octavia B RimSpainElwin Sharvill UNQUALIFIED
Tony T StensethRussiaStephen Shaw RENEWAL
Nicolas F RimRussiaIoni Bowcher PROPOSAL
James H InouyeArgentinaStephen Shaw RENEWAL
David J CaldareraSpainElwin Sharvill NEW
Morrow R CaudyAustraliaXuxue Feng RENEWAL
Greenwood S OstroskyAustraliaBernardo Dominic UNQUALIFIED
Morrow I DilliardUnited KingdomOnyama Limba QUALIFIED
Wickens F SaylorsArgentinaElwin Sharvill QUALIFIED
Mujtaba N CaldareraCanadaXuxue Feng QUALIFIED
Costa F DoeFranceOnyama Limba UNQUALIFIED
Kadeem F CaudyItalyBernardo Dominic UNQUALIFIED
Silvio A IturbideFranceIoni Bowcher RENEWAL
Silvio F GillianItalyXuxue Feng NEW
Chavez M AlbaresFranceStephen Shaw PROPOSAL
Deepesh H KuskoGermanyAnna Fali QUALIFIED
Deepesh Z RulapaughFranceIvan Magalhaes UNQUALIFIED
Juan U PaprockiBrazilOnyama Limba NEGOTIATION
Adams O GarufiAustraliaOnyama Limba PROPOSAL
Faith W WieserAustraliaXuxue Feng QUALIFIED
Julie E PaprockiAustraliaStephen Shaw PROPOSAL
Costa C SaylorsAustraliaAnna Fali QUALIFIED
Julie C VocelkaJapanIoni Bowcher QUALIFIED
Deepesh P GauchoIndiaOnyama Limba RENEWAL
Arvin O GillianGermanyIvan Magalhaes NEW
James X RutaFranceStephen Shaw RENEWAL
Ivar B SaylorsIndiaStephen Shaw UNQUALIFIED
Silvio B WhobreyArgentinaBernardo Dominic PROPOSAL
Chavez Z SlusarskiArgentinaAsiya Javayant QUALIFIED
Munro P NickaCanadaXuxue Feng NEGOTIATION
Adams C ShinkoIndiaBernardo Dominic PROPOSAL
Juan J MarrierRussiaAmy Elsner NEW
Kaitlin B NickaIndiaElwin Sharvill NEW
Costa Q DarakjyItalyBernardo Dominic NEGOTIATION
Maisha Q InouyeCanadaAnna Fali UNQUALIFIED
Jefferson Y RulapaughCanadaAsiya Javayant QUALIFIED
Misaki C StockhamArgentinaIoni Bowcher NEW

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