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
Johnson R OstroskyUnited KingdomElwin Sharvill PROPOSAL
Jeanfrancois L ShinkoItalyAnna Fali PROPOSAL
Silvio S ButtItalyIoni Bowcher QUALIFIED
Arvin D FlosiJapanOnyama Limba QUALIFIED
Ashley H DoeUnited KingdomStephen Shaw NEGOTIATION
Nicolas P NickaCanadaIvan Magalhaes NEGOTIATION
Chavez T WhobreyGermanyAsiya Javayant PROPOSAL
Faith I BriddickSpainIoni Bowcher NEGOTIATION
Mujtaba F SergiItalyAmy Elsner NEGOTIATION
Arvin R GarufiItalyIoni Bowcher NEW
Johnson C WaycottUnited KingdomXuxue Feng UNQUALIFIED
Jennifer M WaycottIndiaBernardo Dominic PROPOSAL
Mayumi C WaycottJapanElwin Sharvill RENEWAL
Deepesh Y RulapaughIndiaBernardo Dominic RENEWAL
Jeanfrancois U BologniaRussiaAnna Fali QUALIFIED
Leja P SlusarskiRussiaIoni Bowcher QUALIFIED
Ricardo E BowleyGermanyStephen Shaw PROPOSAL
Greenwood K FerenczGermanyXuxue Feng NEW
Aruna Z CaldareraAustraliaBernardo Dominic NEGOTIATION
Adams F SaylorsGermanyBernardo Dominic NEW
Costa E RimSpainAsiya Javayant NEGOTIATION
Morrow N CampainRussiaOnyama Limba UNQUALIFIED
Rodrigues M FigeroaCanadaElwin Sharvill NEGOTIATION
David Q AmigonGermanyIvan Magalhaes PROPOSAL
Silvio N GarufiArgentinaElwin Sharvill UNQUALIFIED
Murillo K KolmetzBrazilElwin Sharvill RENEWAL
Ivar R PaprockiAustraliaIvan Magalhaes QUALIFIED
Antonio X StensethRussiaIvan Magalhaes UNQUALIFIED
Mayumi X VocelkaItalyAmy Elsner NEW
Ricardo F WhobreyRussiaBernardo Dominic QUALIFIED
Kaitlin I AlbaresFranceBernardo Dominic RENEWAL
Johnson F MarrierItalyOnyama Limba NEGOTIATION
Izzy F AlbaresCanadaAnna Fali QUALIFIED
Isabel L NestleFranceAmy Elsner NEGOTIATION
Sinclair Q RoysterAustraliaOnyama Limba NEGOTIATION
Maisha H MacleadGermanyXuxue Feng NEW
Stacey J GauchoIndiaIvan Magalhaes QUALIFIED
Emily I IturbideJapanIvan Magalhaes QUALIFIED
Munro N SchemmerItalyStephen Shaw NEGOTIATION
Smith R GlickCanadaStephen Shaw PROPOSAL
Maisha U AlbaresCanadaBernardo Dominic RENEWAL
Murillo L PoquetteArgentinaElwin Sharvill NEGOTIATION
Jefferson M RutaArgentinaElwin Sharvill NEW
Tony X NickaArgentinaAmy Elsner NEW
Aditya X MaletJapanAsiya Javayant NEGOTIATION
Ivar I WhobreyFranceElwin Sharvill UNQUALIFIED
Kaitlin K FigeroaGermanyIvan Magalhaes QUALIFIED
Arvin M FerenczIndiaAsiya Javayant NEW
Stacey N GillianRussiaStephen Shaw NEW
Stacey L VocelkaSpainElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin Y InouyeSpainAmy Elsner NEGOTIATION
Arvin S SchemmerIndiaAsiya Javayant UNQUALIFIED
Jeanfrancois M BologniaAustraliaOnyama Limba UNQUALIFIED
Julie P CampainBrazilAsiya Javayant RENEWAL
Smith M RutaSpainIoni Bowcher QUALIFIED
Ricardo Q NickaFranceAnna Fali NEGOTIATION
Jennifer U PoquetteJapanXuxue Feng UNQUALIFIED
Jeanfrancois L CaldareraRussiaStephen Shaw QUALIFIED
Maisha J StockhamItalyAnna Fali NEGOTIATION
Aika B VocelkaArgentinaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa H BriddickRussia2024-06-19Benton, John B Jr PROPOSAL6Ioni Bowcher
1001Wickens E SlusarskiUnited Kingdom2024-06-02Dorl, James J Esq PROPOSAL27Stephen Shaw
1002Johnson E RutaRussia2024-06-13Benton, John B Jr QUALIFIED47Ioni Bowcher
1003Jefferson V InouyeJapan2024-05-31Rangoni Of Florence UNQUALIFIED53Asiya Javayant
1004Chavez Z DarakjyAustralia2024-06-20Buckley Miller Wright PROPOSAL42Elwin Sharvill
1005Rodrigues T GarufiItaly2024-06-05Feiner Bros UNQUALIFIED50Ioni Bowcher
1006Leon F OstroskyCanada2024-05-31Feltz Printing Service QUALIFIED17Bernardo Dominic
1007Antonio K StockhamGermany2024-05-30Chemel, James L Cpa NEW22Onyama Limba
1008Murillo I ChuiGermany2024-05-31Feiner Bros QUALIFIED45Xuxue Feng
1009Leja G SaylorsBrazil2024-06-19Benton, John B Jr NEW60Elwin Sharvill
1010Ivar L FlosiIndia2024-06-16Dorl, James J Esq UNQUALIFIED51Onyama Limba
1011Jeanfrancois H MorascaCanada2024-06-14Truhlar And Truhlar Attys PROPOSAL11Onyama Limba
1012Jeanfrancois J ShinkoBrazil2024-06-20Chemel, James L Cpa PROPOSAL96Asiya Javayant
1013Greenwood V WieserIndia2024-06-17Truhlar And Truhlar Attys UNQUALIFIED89Asiya Javayant
1014Stacey Q DoeIndia2024-05-25Rousseaux, Michael Esq QUALIFIED74Ioni Bowcher
1015Claire D OstroskyCanada2024-06-06Buckley Miller Wright PROPOSAL68Stephen Shaw
1016Emily O MarrierArgentina2024-05-23Truhlar And Truhlar Attys RENEWAL34Xuxue Feng
1017Clifford T FigeroaItaly2024-06-17Rangoni Of Florence PROPOSAL10Anna Fali
1018Clifford P RutaUnited Kingdom2024-06-06King, Christopher A Esq QUALIFIED88Anna Fali
1019Maisha X DarakjyItaly2024-06-16Truhlar And Truhlar Attys NEW50Stephen Shaw
1020Arvin W PoquetteUnited Kingdom2024-05-27Feltz Printing Service NEW44Ivan Magalhaes
1021Ivar O VenereJapan2024-06-08King, Christopher A Esq UNQUALIFIED93Elwin Sharvill
1022Smith T BriddickArgentina2024-05-31King, Christopher A Esq NEGOTIATION64Xuxue Feng
1023Nicolas U MaletAustralia2024-05-28Chapman, Ross E Esq NEW34Ivan Magalhaes
1024Maisha D GillianArgentina2024-06-05Feltz Printing Service RENEWAL96Anna Fali
1025Smith C CaldareraIndia2024-06-10Chemel, James L Cpa NEW34Amy Elsner
1026Smith C VenereUnited Kingdom2024-06-11Feltz Printing Service RENEWAL29Anna Fali
1027Izzy W StockhamJapan2024-06-10Morlong Associates QUALIFIED75Anna Fali
1028Julie X NestleCanada2024-05-25Feiner Bros PROPOSAL77Asiya Javayant
1029Maria P BriddickArgentina2024-06-21Morlong Associates UNQUALIFIED81Xuxue Feng
1030Julie N MacleadCanada2024-05-29Feltz Printing Service UNQUALIFIED2Ivan Magalhaes
1031Alejandro T NestleFrance2024-06-20Benton, John B Jr UNQUALIFIED25Ivan Magalhaes
1032Misaki V GarufiIndia2024-06-03Benton, John B Jr PROPOSAL75Anna Fali
1033Darci B AmigonJapan2024-06-03Dorl, James J Esq PROPOSAL41Stephen Shaw
1034Isabel E TollnerCanada2024-06-04Dorl, James J Esq NEW2Ioni Bowcher
1035Francesco T AmigonGermany2024-06-17Chapman, Ross E Esq RENEWAL46Xuxue Feng
1036Claire D KuskoUnited Kingdom2024-06-03Truhlar And Truhlar Attys NEGOTIATION54Onyama Limba
1037Izzy V KolmetzItaly2024-06-21Rangoni Of Florence PROPOSAL48Amy Elsner
1038Smith R SergiSpain2024-06-20Commercial Press QUALIFIED32Asiya Javayant
1039Silvio Z WhobreyIndia2024-06-19Morlong Associates NEGOTIATION20Amy Elsner
1040Antonio P MorascaArgentina2024-06-03King, Christopher A Esq QUALIFIED76Onyama Limba
1041Jennifer B WieserIndia2024-05-29Chapman, Ross E Esq PROPOSAL41Elwin Sharvill
1042Leja Z SchemmerJapan2024-06-08Benton, John B Jr RENEWAL62Amy Elsner
1043Faith Z BowleyBrazil2024-06-12Chemel, James L Cpa RENEWAL22Onyama Limba
1044Juan Q WhobreyArgentina2024-06-01Morlong Associates NEGOTIATION18Asiya Javayant
1045Smith T MaletArgentina2024-05-30Rousseaux, Michael Esq PROPOSAL20Bernardo Dominic
1046Stacey U GauchoBrazil2024-06-04Chapman, Ross E Esq QUALIFIED59Elwin Sharvill
1047Salvatore N DarakjyRussia2024-06-13Chanay, Jeffrey A Esq NEGOTIATION28Anna Fali
1048Octavia R StockhamAustralia2024-05-24Feiner Bros UNQUALIFIED4Anna Fali
1049Munro L VocelkaIndia2024-06-17Chapman, Ross E Esq PROPOSAL22Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Isabel O VocelkaItalyAmy Elsner QUALIFIED
Wickens W MacleadUnited KingdomAnna Fali PROPOSAL
Juan M NestleGermanyIvan Magalhaes UNQUALIFIED
Aditya Z TollnerRussiaBernardo Dominic NEW
Clifford N SlusarskiSpainXuxue Feng QUALIFIED
Francesco Z CaldareraJapanElwin Sharvill NEW
Salvatore L PaprockiArgentinaAnna Fali NEGOTIATION
Mujtaba R AmigonGermanyAnna Fali NEGOTIATION
Mayumi M MaletCanadaIvan Magalhaes NEW
Jeanfrancois X WieserJapanStephen Shaw RENEWAL
Francesco K NickaSpainBernardo Dominic RENEWAL
Kadeem U StensethUnited KingdomIoni Bowcher PROPOSAL
Nicolas U WaycottItalyAmy Elsner RENEWAL
Johnson J AlbaresUnited KingdomElwin Sharvill NEW
Misaki S TollnerFranceXuxue Feng RENEWAL
Silvio S GarufiSpainIoni Bowcher PROPOSAL
Mayumi H KuskoUnited KingdomIoni Bowcher PROPOSAL
Murillo X WhobreyArgentinaIvan Magalhaes QUALIFIED
Rodrigues X CaudySpainAsiya Javayant QUALIFIED
Johnson N FerenczJapanAnna Fali QUALIFIED
Alejandro N ButtAustraliaAnna Fali NEW
Jefferson V GarufiAustraliaXuxue Feng UNQUALIFIED
Julie G CampainUnited KingdomAmy Elsner PROPOSAL
Stacey A RimSpainAsiya Javayant RENEWAL
Ivar S IturbideBrazilElwin Sharvill NEW
Faith I BologniaGermanyElwin Sharvill QUALIFIED
Octavia H RoysterCanadaAnna Fali PROPOSAL
Aika C CampainRussiaStephen Shaw NEW
Isabel M InouyeCanadaElwin Sharvill RENEWAL
Emily L FollerGermanyStephen Shaw UNQUALIFIED
Johnson Y VocelkaAustraliaBernardo Dominic RENEWAL
Maisha U DilliardRussiaBernardo Dominic UNQUALIFIED
Murillo F StockhamIndiaElwin Sharvill PROPOSAL
Maisha O FigeroaSpainAmy Elsner NEGOTIATION
Johnson X SaylorsGermanyElwin Sharvill NEGOTIATION
Ashley A FigeroaItalyAsiya Javayant QUALIFIED
Mujtaba Z BologniaJapanXuxue Feng PROPOSAL
Emily C MarrierAustraliaElwin Sharvill UNQUALIFIED
Greenwood K RutaItalyXuxue Feng QUALIFIED
Rodrigues B KuskoIndiaXuxue Feng RENEWAL
Kaitlin S PerinArgentinaBernardo Dominic PROPOSAL
Costa X BowleyCanadaAmy Elsner UNQUALIFIED
Jones B GlickAustraliaOnyama Limba NEW
Claire Y KuskoJapanElwin Sharvill UNQUALIFIED
Aditya Y GillianRussiaXuxue Feng UNQUALIFIED
Salvatore Z VocelkaJapanXuxue Feng PROPOSAL
Aruna Q StensethIndiaElwin Sharvill QUALIFIED
Ashley O AlbaresRussiaIoni Bowcher PROPOSAL
Costa S PaprockiRussiaAmy Elsner RENEWAL
Aika D SergiJapanAsiya Javayant PROPOSAL
Frozen Columns
Name
Emily R Maclead
Alejandro L Rim
Arvin I Ostrosky
Arvin C Malet
Tony D Caldarera
David F Poquette
Tony I Ostrosky
Munro X Malet
Izzy I Briddick
Sinclair J Saylors
Antonio D Paprocki
Deepesh T Glick
Aika Q Morasca
Faith F Caldarera
Jefferson O Darakjy
Faith N Gaucho
Kaitlin O Morasca
Darci V Albares
Sinclair O Glick
Francesco Y Butt
Greenwood C Kolmetz
Nicolas A Ostrosky
Deepesh H Waycott
Julie X Glick
Rodrigues L Kolmetz
Claire A Malet
Mujtaba H Wieser
Jennifer H Venere
Ashley P Saylors
Jennifer E Ferencz
Johnson F Chui
Claire G Iturbide
Clifford Y Poquette
Mujtaba L Marrier
Kadeem K Ruta
Chavez F Iturbide
Murillo S Ferencz
Aruna O Ruta
Clifford O Darakjy
Johnson M Royster
Maisha C Iturbide
Nicolas F Ruta
Darci C Figeroa
Jeanfrancois B Caldarera
Murillo Y Sergi
Tony U Caudy
Adams I Sergi
Stacey X Morasca
Costa Q Amigon
Costa F Bolognia
IdCountryDate
1000France2024-06-01
1001Brazil2024-05-27
1002Spain2024-05-27
1003Canada2024-06-17
1004Japan2024-05-29
1005United Kingdom2024-05-26
1006Canada2024-06-15
1007Russia2024-05-24
1008Spain2024-05-25
1009Japan2024-06-03
1010Japan2024-05-25
1011India2024-06-11
1012United Kingdom2024-06-16
1013Brazil2024-05-26
1014Spain2024-05-25
1015Canada2024-06-13
1016Italy2024-05-31
1017Spain2024-05-30
1018Italy2024-06-09
1019Germany2024-05-30
1020Russia2024-06-09
1021Canada2024-06-03
1022Canada2024-05-23
1023Japan2024-06-16
1024Spain2024-06-20
1025Japan2024-06-10
1026United Kingdom2024-06-21
1027France2024-06-05
1028Brazil2024-06-05
1029Germany2024-06-03
1030France2024-06-12
1031France2024-06-13
1032Canada2024-06-21
1033Canada2024-06-10
1034Spain2024-05-24
1035India2024-05-27
1036France2024-06-19
1037Argentina2024-06-18
1038Canada2024-06-15
1039India2024-06-13
1040United Kingdom2024-05-24
1041Australia2024-05-25
1042Germany2024-06-06
1043France2024-06-17
1044Canada2024-05-31
1045Russia2024-06-01
1046France2024-06-08
1047Japan2024-05-24
1048Spain2024-06-01
1049Australia2024-05-28

On-Demand Data

NameIdCountryDate
Wickens O Whobrey1000Australia2024-06-01
Arvin U Kusko1001Russia2024-06-05
Sinclair C Oldroyd1002Russia2024-05-27
Aditya G Tollner1003India2024-05-25
Murillo C Perin1004Canada2024-05-30
Greenwood Y Flosi1005United Kingdom2024-05-29
Murillo P Oldroyd1006India2024-05-31
Aruna X Flosi1007Italy2024-06-19
Antonio S Shinko1008United Kingdom2024-06-20
Murillo T Rulapaugh1009India2024-06-01
Arvin A Doe1010France2024-06-14
Misaki A Malet1011Australia2024-06-11
Mayumi O Kolmetz1012Japan2024-05-30
Morrow D Ostrosky1013Germany2024-06-21
Adams C Ostrosky1014Brazil2024-06-08
Izzy M Briddick1015India2024-05-29
Jeanfrancois R Malet1016Australia2024-05-23
Mayumi T Stenseth1017Russia2024-06-01
Jeanfrancois D Oldroyd1018India2024-06-12
Maisha H Butt1019Japan2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson S VenereGermanyIvan Magalhaes UNQUALIFIED
Wickens O RimFranceElwin Sharvill QUALIFIED
Juan T StockhamUnited KingdomStephen Shaw QUALIFIED
Ashley D WieserJapanIvan Magalhaes UNQUALIFIED
Claire R KolmetzRussiaBernardo Dominic NEGOTIATION
Alejandro J ButtSpainAsiya Javayant PROPOSAL
Costa T AlbaresArgentinaAmy Elsner NEW
Jeanfrancois E GillianFranceAmy Elsner UNQUALIFIED
Leja R VenereSpainOnyama Limba PROPOSAL
Clifford W SergiIndiaAsiya Javayant NEGOTIATION
Chavez Z PaprockiIndiaIvan Magalhaes RENEWAL
Aika V DilliardSpainIoni Bowcher NEW
Johnson S BowleyRussiaAsiya Javayant RENEWAL
Murillo D SlusarskiAustraliaAnna Fali NEGOTIATION
Morrow R MacleadItalyIoni Bowcher RENEWAL
David Z PoquetteArgentinaAsiya Javayant NEGOTIATION
Aruna M FlosiRussiaIvan Magalhaes QUALIFIED
Silvio I GauchoAustraliaElwin Sharvill PROPOSAL
Maria B OstroskyRussiaAnna Fali PROPOSAL
Adams X PoquetteBrazilAnna Fali PROPOSAL
Kadeem Z MarrierGermanyElwin Sharvill PROPOSAL
Costa N FlosiIndiaIvan Magalhaes NEGOTIATION
Arvin N DilliardRussiaIvan Magalhaes NEW
Rodrigues E WhobreyUnited KingdomOnyama Limba NEW
Francesco R RulapaughCanadaIoni Bowcher RENEWAL
Mujtaba D ButtItalyIvan Magalhaes RENEWAL
Arvin X VenereFranceElwin Sharvill NEW
David P FerenczRussiaElwin Sharvill NEW
Maisha R GauchoIndiaBernardo Dominic NEGOTIATION
Adams X GarufiItalyXuxue Feng QUALIFIED
Emily M SaylorsAustraliaOnyama Limba PROPOSAL
Aika N WhobreySpainStephen Shaw PROPOSAL
Chavez I BologniaCanadaAsiya Javayant NEW
Kaitlin U KolmetzUnited KingdomIoni Bowcher NEW
David N MaletAustraliaIoni Bowcher UNQUALIFIED
David K RutaAustraliaAmy Elsner NEGOTIATION
Juan U CaudyCanadaIvan Magalhaes PROPOSAL
Aruna N AmigonSpainAsiya Javayant RENEWAL
Mayumi I ChuiIndiaAsiya Javayant UNQUALIFIED
Salvatore Y GarufiCanadaAnna Fali NEGOTIATION

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