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 X PoquetteAustraliaAnna Fali NEW
Kaitlin Y AmigonIndiaBernardo Dominic UNQUALIFIED
Maria C SlusarskiArgentinaBernardo Dominic RENEWAL
Julie R ChuiBrazilStephen Shaw PROPOSAL
Cody R BologniaArgentinaAnna Fali NEGOTIATION
Claire Q PaprockiItalyStephen Shaw NEGOTIATION
Aditya Y InouyeAustraliaAmy Elsner PROPOSAL
Izzy S RimIndiaAmy Elsner NEW
Clifford B PoquetteUnited KingdomIvan Magalhaes UNQUALIFIED
Kadeem K GlickUnited KingdomBernardo Dominic PROPOSAL
Octavia B AmigonJapanAmy Elsner RENEWAL
James T PoquetteUnited KingdomAsiya Javayant QUALIFIED
Murillo I InouyeGermanyXuxue Feng QUALIFIED
Chavez L MacleadItalyAnna Fali NEGOTIATION
Johnson G OldroydGermanyXuxue Feng QUALIFIED
Aruna U PoquetteArgentinaAmy Elsner RENEWAL
Silvio M SaylorsItalyAmy Elsner NEW
Claire Y CampainSpainXuxue Feng RENEWAL
Jones U IturbideRussiaIoni Bowcher UNQUALIFIED
Kaitlin F FerenczSpainBernardo Dominic NEW
Francesco X ChuiArgentinaIoni Bowcher QUALIFIED
Munro J GarufiBrazilAnna Fali NEGOTIATION
Mujtaba B RimArgentinaIvan Magalhaes UNQUALIFIED
Munro J VocelkaRussiaXuxue Feng PROPOSAL
Jeanfrancois U KuskoIndiaElwin Sharvill NEW
Morrow J GlickJapanIvan Magalhaes RENEWAL
David L ChuiArgentinaOnyama Limba QUALIFIED
Faith U BologniaAustraliaBernardo Dominic PROPOSAL
Arvin Z AlbaresSpainIoni Bowcher NEW
Emily H RutaCanadaIoni Bowcher RENEWAL
Mujtaba Z StockhamArgentinaStephen Shaw NEGOTIATION
Isabel P ShinkoGermanyXuxue Feng QUALIFIED
Smith T FerenczIndiaIvan Magalhaes PROPOSAL
Francesco W BologniaItalyStephen Shaw RENEWAL
Sinclair B AmigonCanadaIvan Magalhaes QUALIFIED
Maria Q PaprockiBrazilXuxue Feng QUALIFIED
Murillo D IturbideIndiaElwin Sharvill NEW
Emily Z BologniaGermanyOnyama Limba NEGOTIATION
Juan R GarufiSpainAsiya Javayant PROPOSAL
Munro Q ShinkoCanadaAnna Fali PROPOSAL
Smith C WhobreyRussiaAsiya Javayant UNQUALIFIED
Salvatore X GillianGermanyStephen Shaw UNQUALIFIED
Octavia O FerenczItalyBernardo Dominic NEW
David F MaletGermanyXuxue Feng RENEWAL
Morrow S VenereJapanIoni Bowcher NEGOTIATION
Stacey V FollerGermanyXuxue Feng RENEWAL
Smith D RimIndiaStephen Shaw QUALIFIED
Jeanfrancois G MacleadIndiaIoni Bowcher PROPOSAL
Alejandro Y CaudyItalyXuxue Feng RENEWAL
Arvin K AlbaresItalyOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Faith L PaprockiBrazilIoni Bowcher NEW
Aika S ShinkoRussiaOnyama Limba UNQUALIFIED
Ricardo D MorascaIndiaXuxue Feng NEW
Greenwood O KolmetzSpainOnyama Limba RENEWAL
Aika P NestleBrazilStephen Shaw RENEWAL
James J WieserBrazilIoni Bowcher UNQUALIFIED
Greenwood F AlbaresFranceOnyama Limba PROPOSAL
David R CaldareraRussiaStephen Shaw QUALIFIED
Leon O SchemmerUnited KingdomXuxue Feng PROPOSAL
Kadeem C BologniaArgentinaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel U KuskoIndia2024-06-13Rangoni Of Florence NEGOTIATION63Ivan Magalhaes
1001Jefferson L PaprockiAustralia2024-06-09Truhlar And Truhlar Attys PROPOSAL51Ivan Magalhaes
1002Johnson K ButtFrance2024-05-23Feiner Bros QUALIFIED81Elwin Sharvill
1003Deepesh Y MaletUnited Kingdom2024-06-02Chapman, Ross E Esq UNQUALIFIED73Onyama Limba
1004Jones F FigeroaUnited Kingdom2024-06-12Chapman, Ross E Esq RENEWAL28Onyama Limba
1005Ashley B ChuiSpain2024-05-19Chapman, Ross E Esq QUALIFIED50Anna Fali
1006Morrow Q MacleadUnited Kingdom2024-06-08Morlong Associates QUALIFIED25Ioni Bowcher
1007Salvatore M GillianItaly2024-06-08Chanay, Jeffrey A Esq QUALIFIED84Asiya Javayant
1008Francesco V TollnerGermany2024-06-01Morlong Associates QUALIFIED47Stephen Shaw
1009Cody G StockhamUnited Kingdom2024-05-22Chemel, James L Cpa UNQUALIFIED70Anna Fali
1010Arvin T CaudyRussia2024-05-18Feltz Printing Service NEW75Onyama Limba
1011Greenwood B CaudyRussia2024-05-24Feiner Bros NEW22Amy Elsner
1012Nicolas Q TollnerCanada2024-05-18Buckley Miller Wright NEGOTIATION4Bernardo Dominic
1013Izzy E RulapaughAustralia2024-06-13Chemel, James L Cpa UNQUALIFIED22Anna Fali
1014Mayumi Y RimBrazil2024-05-30Dorl, James J Esq UNQUALIFIED97Elwin Sharvill
1015Julie G PerinFrance2024-05-19Rousseaux, Michael Esq RENEWAL89Ivan Magalhaes
1016Cody S AlbaresJapan2024-06-14Morlong Associates NEGOTIATION97Ivan Magalhaes
1017Ashley N TollnerJapan2024-06-14King, Christopher A Esq QUALIFIED63Bernardo Dominic
1018Nicolas L RimFrance2024-06-03Rousseaux, Michael Esq UNQUALIFIED52Amy Elsner
1019Maisha B OstroskyFrance2024-06-01Morlong Associates NEW7Ivan Magalhaes
1020Salvatore X MacleadGermany2024-05-29Rangoni Of Florence QUALIFIED65Amy Elsner
1021Adams D FigeroaItaly2024-06-13Printing Dimensions NEW63Ivan Magalhaes
1022Nicolas K MaletGermany2024-06-10Benton, John B Jr RENEWAL51Elwin Sharvill
1023Aika L SergiRussia2024-05-26King, Christopher A Esq UNQUALIFIED96Xuxue Feng
1024Clifford K GauchoUnited Kingdom2024-06-15King, Christopher A Esq NEGOTIATION63Amy Elsner
1025Juan N CaldareraSpain2024-06-04Buckley Miller Wright QUALIFIED16Elwin Sharvill
1026Costa Q FollerItaly2024-05-29Chapman, Ross E Esq NEW40Xuxue Feng
1027Juan J StensethSpain2024-05-30Chanay, Jeffrey A Esq NEW23Xuxue Feng
1028Isabel B WieserUnited Kingdom2024-06-09Chanay, Jeffrey A Esq RENEWAL9Stephen Shaw
1029Nicolas F NestleArgentina2024-05-29Buckley Miller Wright UNQUALIFIED25Ivan Magalhaes
1030Greenwood Z KolmetzIndia2024-06-02Chemel, James L Cpa QUALIFIED40Onyama Limba
1031Octavia V GillianAustralia2024-05-22Benton, John B Jr RENEWAL1Ivan Magalhaes
1032Darci Q BriddickJapan2024-05-28Rangoni Of Florence RENEWAL73Elwin Sharvill
1033Misaki A DarakjyIndia2024-05-20Benton, John B Jr NEGOTIATION1Xuxue Feng
1034Faith C GauchoUnited Kingdom2024-05-31Printing Dimensions RENEWAL36Xuxue Feng
1035Deepesh R SergiBrazil2024-05-17Truhlar And Truhlar Attys NEW23Xuxue Feng
1036Juan J VenereIndia2024-05-24Benton, John B Jr QUALIFIED32Elwin Sharvill
1037Ivar U StensethBrazil2024-05-20Rousseaux, Michael Esq PROPOSAL36Asiya Javayant
1038Arvin X AlbaresAustralia2024-06-09Rousseaux, Michael Esq PROPOSAL98Stephen Shaw
1039Chavez G PoquetteRussia2024-06-04Truhlar And Truhlar Attys UNQUALIFIED23Ioni Bowcher
1040Jefferson A MorascaJapan2024-06-09Dorl, James J Esq NEW68Asiya Javayant
1041Aika S InouyeItaly2024-05-22Chapman, Ross E Esq PROPOSAL80Onyama Limba
1042Kaitlin Q PerinItaly2024-06-15Morlong Associates UNQUALIFIED80Stephen Shaw
1043Wickens W NestleFrance2024-06-05Chemel, James L Cpa UNQUALIFIED51Onyama Limba
1044Chavez X GlickRussia2024-05-25Chemel, James L Cpa RENEWAL35Ivan Magalhaes
1045Octavia J GarufiRussia2024-05-23Chanay, Jeffrey A Esq NEGOTIATION90Bernardo Dominic
1046Greenwood B GarufiFrance2024-05-30Benton, John B Jr NEW92Onyama Limba
1047Alejandro A RimAustralia2024-06-02Buckley Miller Wright UNQUALIFIED37Onyama Limba
1048Sinclair B SchemmerGermany2024-05-18Buckley Miller Wright QUALIFIED92Elwin Sharvill
1049Deepesh K SergiSpain2024-06-10King, Christopher A Esq NEW92Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Maisha R RutaAustraliaElwin Sharvill NEGOTIATION
Antonio E RulapaughAustraliaAmy Elsner UNQUALIFIED
Mujtaba G WieserFranceAsiya Javayant NEGOTIATION
Mujtaba K AlbaresItalyElwin Sharvill PROPOSAL
Emily I RoysterCanadaAmy Elsner UNQUALIFIED
Munro D GauchoJapanIoni Bowcher PROPOSAL
Sinclair Q ChuiFranceAnna Fali NEW
Mayumi I GlickItalyIoni Bowcher PROPOSAL
Antonio J DarakjyArgentinaElwin Sharvill QUALIFIED
Wickens J VenereGermanyXuxue Feng RENEWAL
Misaki N FerenczFranceIoni Bowcher NEGOTIATION
Mujtaba B OldroydAustraliaAnna Fali NEGOTIATION
Antonio A RimCanadaElwin Sharvill PROPOSAL
Jeanfrancois H VenereCanadaStephen Shaw RENEWAL
Cody B CampainAustraliaXuxue Feng NEGOTIATION
Darci A StensethJapanElwin Sharvill UNQUALIFIED
Murillo M OldroydArgentinaAmy Elsner QUALIFIED
Ricardo Y OldroydItalyIvan Magalhaes NEW
Mujtaba S SergiUnited KingdomBernardo Dominic RENEWAL
Cody V ButtJapanXuxue Feng NEGOTIATION
Kadeem L RulapaughUnited KingdomAsiya Javayant NEW
Silvio S ChuiCanadaBernardo Dominic RENEWAL
Murillo R WhobreyGermanyBernardo Dominic PROPOSAL
Smith A RoysterCanadaStephen Shaw UNQUALIFIED
Juan H MaletCanadaBernardo Dominic UNQUALIFIED
Adams Z DilliardRussiaXuxue Feng RENEWAL
Clifford D RoysterGermanyStephen Shaw PROPOSAL
Alejandro X SlusarskiJapanXuxue Feng NEW
Francesco Z NickaRussiaStephen Shaw UNQUALIFIED
Clifford E BriddickAustraliaAsiya Javayant QUALIFIED
Aditya N GauchoBrazilAmy Elsner QUALIFIED
Maisha Y AmigonArgentinaAnna Fali RENEWAL
Wickens R PerinSpainIoni Bowcher RENEWAL
Murillo X WhobreyUnited KingdomBernardo Dominic QUALIFIED
Leon D ChuiSpainAmy Elsner RENEWAL
Kadeem F ChuiCanadaXuxue Feng NEGOTIATION
Nicolas C MaletGermanyBernardo Dominic QUALIFIED
Francesco C MacleadFranceIoni Bowcher PROPOSAL
Wickens J GauchoBrazilIoni Bowcher UNQUALIFIED
Chavez C RutaItalyIoni Bowcher NEW
Wickens E TollnerUnited KingdomAsiya Javayant PROPOSAL
Stacey W FigeroaAustraliaBernardo Dominic UNQUALIFIED
Nicolas W GauchoRussiaXuxue Feng PROPOSAL
Sinclair W KuskoUnited KingdomAsiya Javayant NEW
Munro V MaletUnited KingdomAnna Fali QUALIFIED
Adams V VocelkaUnited KingdomStephen Shaw UNQUALIFIED
Deepesh G MacleadUnited KingdomXuxue Feng NEGOTIATION
Izzy N OstroskyBrazilIoni Bowcher PROPOSAL
Misaki N WieserAustraliaElwin Sharvill QUALIFIED
Aruna T DoeItalyXuxue Feng NEGOTIATION
Frozen Columns
Name
Aruna T Dilliard
Deepesh G Doe
Kadeem E Maclead
Kaitlin M Ferencz
Alejandro Z Maclead
Emily F Dilliard
Ivar V Darakjy
Kadeem A Nicka
Leon Z Malet
Cody B Dilliard
Kaitlin J Malet
Deepesh K Glick
Aditya S Malet
Maria A Ostrosky
Nicolas Y Vocelka
Ashley M Chui
Claire V Iturbide
Stacey M Tollner
Juan B Inouye
Jeanfrancois K Tollner
Alejandro R Ferencz
Morrow W Malet
Aika R Schemmer
Julie X Royster
Rodrigues O Royster
Jeanfrancois P Nestle
Wickens T Nestle
Cody L Darakjy
Clifford N Caudy
Arvin Y Dilliard
Octavia J Schemmer
Aruna B Dilliard
Izzy A Amigon
Adams F Waycott
Arvin O Darakjy
Leja T Maclead
Jennifer V Paprocki
Kaitlin F Oldroyd
Salvatore V Bolognia
Silvio Z Campain
Jones B Dilliard
Mayumi Q Foller
Darci D Bolognia
Mayumi A Albares
Kaitlin B Poquette
Juan C Vocelka
Misaki J Ruta
Kaitlin L Malet
Mayumi D Malet
Aditya X Wieser
IdCountryDate
1000Australia2024-05-17
1001France2024-06-10
1002Canada2024-06-08
1003France2024-06-12
1004Australia2024-05-29
1005Brazil2024-06-07
1006India2024-05-28
1007United Kingdom2024-05-30
1008Germany2024-06-07
1009Japan2024-05-28
1010Spain2024-05-22
1011France2024-06-13
1012Canada2024-05-26
1013Germany2024-05-17
1014France2024-05-26
1015Australia2024-06-03
1016Japan2024-05-25
1017Argentina2024-05-31
1018United Kingdom2024-06-07
1019Japan2024-06-06
1020Brazil2024-05-18
1021Argentina2024-06-11
1022Italy2024-05-28
1023India2024-05-17
1024Japan2024-05-28
1025Brazil2024-05-26
1026Japan2024-05-30
1027Australia2024-05-22
1028United Kingdom2024-06-07
1029Germany2024-06-06
1030India2024-06-02
1031Canada2024-06-14
1032Italy2024-05-20
1033Russia2024-06-08
1034France2024-05-31
1035India2024-06-02
1036Canada2024-06-11
1037France2024-05-30
1038Brazil2024-06-10
1039Japan2024-05-29
1040Brazil2024-05-18
1041Argentina2024-06-04
1042Japan2024-06-06
1043India2024-06-03
1044Russia2024-06-09
1045Germany2024-05-19
1046Spain2024-05-30
1047Germany2024-06-13
1048Brazil2024-05-31
1049Italy2024-06-14

On-Demand Data

NameIdCountryDate
Jones A Perin1000Brazil2024-05-30
Alejandro I Waycott1001Spain2024-05-19
Adams B Glick1002Australia2024-06-09
Antonio Y Doe1003Australia2024-05-29
Murillo I Figeroa1004Argentina2024-06-09
Jeanfrancois Q Nestle1005India2024-05-25
Kadeem O Iturbide1006India2024-06-02
Cody S Gaucho1007Australia2024-05-19
Faith G Oldroyd1008Argentina2024-06-05
James C Foller1009Russia2024-05-17
Morrow Z Stockham1010Brazil2024-06-04
Adams C Kusko1011India2024-06-10
Greenwood M Inouye1012Canada2024-06-09
Maisha X Ruta1013Brazil2024-05-27
Jennifer R Malet1014Brazil2024-05-30
Isabel W Campain1015Italy2024-06-07
Claire F Ruta1016Spain2024-05-30
Octavia E Schemmer1017Russia2024-06-05
Cody J Stenseth1018Australia2024-06-10
Silvio E Malet1019United Kingdom2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford V WaycottIndiaIoni Bowcher RENEWAL
Arvin U FigeroaArgentinaAnna Fali UNQUALIFIED
Murillo H WaycottBrazilBernardo Dominic RENEWAL
Emily M NickaGermanyElwin Sharvill NEGOTIATION
Isabel Z RulapaughGermanyIoni Bowcher UNQUALIFIED
Jeanfrancois N IturbideFranceAsiya Javayant PROPOSAL
Salvatore N FigeroaJapanAnna Fali NEGOTIATION
Cody W MorascaSpainOnyama Limba PROPOSAL
Costa M RoysterJapanBernardo Dominic RENEWAL
Leja S MarrierBrazilIoni Bowcher NEW
Antonio K MaletBrazilIvan Magalhaes NEW
Francesco F WieserFranceElwin Sharvill RENEWAL
Kadeem G InouyeJapanIvan Magalhaes NEW
Smith S InouyeSpainElwin Sharvill NEW
Francesco A FigeroaCanadaOnyama Limba NEW
David B VenereCanadaBernardo Dominic QUALIFIED
Izzy P GarufiArgentinaAmy Elsner PROPOSAL
James S MaletCanadaXuxue Feng PROPOSAL
Adams T WaycottBrazilXuxue Feng RENEWAL
Munro L InouyeRussiaBernardo Dominic NEW
Misaki K CaudyUnited KingdomIvan Magalhaes QUALIFIED
Jennifer E NickaArgentinaXuxue Feng RENEWAL
Arvin T RutaArgentinaAsiya Javayant QUALIFIED
Deepesh P BriddickRussiaAnna Fali NEW
Isabel N ChuiUnited KingdomIvan Magalhaes QUALIFIED
Sinclair S WhobreyAustraliaXuxue Feng RENEWAL
Francesco A RulapaughItalyStephen Shaw NEGOTIATION
Faith X MacleadSpainIvan Magalhaes NEW
Izzy P DoeRussiaBernardo Dominic NEW
Leja X KolmetzItalyIoni Bowcher RENEWAL
Smith M VocelkaArgentinaIoni Bowcher RENEWAL
Rodrigues K MacleadArgentinaAsiya Javayant QUALIFIED
Sinclair F InouyeAustraliaIvan Magalhaes PROPOSAL
Julie C MaletAustraliaElwin Sharvill NEGOTIATION
Smith M WaycottArgentinaBernardo Dominic NEW
Isabel Q TollnerRussiaIoni Bowcher UNQUALIFIED
Stacey G MacleadAustraliaIvan Magalhaes NEGOTIATION
Leon Y MaletArgentinaElwin Sharvill UNQUALIFIED
Aruna E StensethJapanBernardo Dominic NEW
Leon D BowleyUnited KingdomOnyama Limba 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>