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
Deepesh J FigeroaJapanOnyama Limba UNQUALIFIED
Alejandro X DarakjyArgentinaXuxue Feng UNQUALIFIED
Sinclair R BriddickIndiaAsiya Javayant QUALIFIED
Jennifer F SlusarskiCanadaAmy Elsner QUALIFIED
Misaki Q KuskoRussiaAsiya Javayant RENEWAL
Stacey M MaletIndiaOnyama Limba RENEWAL
James U AmigonCanadaBernardo Dominic RENEWAL
Rodrigues F RimSpainOnyama Limba QUALIFIED
Adams T StensethAustraliaElwin Sharvill PROPOSAL
Jefferson M WhobreyCanadaElwin Sharvill QUALIFIED
Aika W FlosiJapanIoni Bowcher QUALIFIED
Maria J KolmetzIndiaOnyama Limba NEW
Alejandro H FlosiUnited KingdomXuxue Feng NEW
Juan W DarakjySpainXuxue Feng RENEWAL
Emily G IturbideGermanyIoni Bowcher PROPOSAL
Aruna T RimItalyAnna Fali QUALIFIED
Juan B StockhamItalyAnna Fali RENEWAL
Munro S MacleadUnited KingdomElwin Sharvill PROPOSAL
Aditya F IturbideCanadaAmy Elsner PROPOSAL
Adams J GarufiSpainAnna Fali PROPOSAL
Jones P DoeIndiaBernardo Dominic QUALIFIED
Adams B ChuiJapanAmy Elsner QUALIFIED
Aika Y NestleBrazilAmy Elsner NEGOTIATION
Kaitlin V CampainIndiaAnna Fali NEW
Julie L OstroskyItalyAnna Fali NEGOTIATION
Jones J RulapaughUnited KingdomOnyama Limba RENEWAL
Jeanfrancois T RulapaughSpainStephen Shaw QUALIFIED
Munro A ShinkoItalyAsiya Javayant NEGOTIATION
David G CampainCanadaBernardo Dominic PROPOSAL
Cody G GillianJapanStephen Shaw NEW
Faith I WaycottBrazilAsiya Javayant NEW
Maisha V DoeItalyIvan Magalhaes NEW
Kadeem H OstroskyGermanyAsiya Javayant NEGOTIATION
Rodrigues G FigeroaGermanyIvan Magalhaes RENEWAL
Morrow A DilliardArgentinaElwin Sharvill RENEWAL
Octavia E BriddickRussiaAsiya Javayant NEW
Sinclair K MaletCanadaOnyama Limba QUALIFIED
Jefferson Q ButtSpainIvan Magalhaes RENEWAL
Ivar M FlosiUnited KingdomBernardo Dominic UNQUALIFIED
Stacey N GillianSpainStephen Shaw NEGOTIATION
Munro Q VenereUnited KingdomAmy Elsner RENEWAL
Octavia V VenereBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois K GlickAustraliaAmy Elsner UNQUALIFIED
Salvatore K SergiGermanyIoni Bowcher QUALIFIED
James U OldroydUnited KingdomXuxue Feng QUALIFIED
Izzy W MarrierFranceXuxue Feng NEW
Ashley H PerinArgentinaAnna Fali NEW
Aruna I MaletFranceIvan Magalhaes QUALIFIED
Francesco G StockhamSpainBernardo Dominic PROPOSAL
Jeanfrancois T PerinBrazilAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Antonio B VenereArgentinaOnyama Limba QUALIFIED
Aruna F ShinkoRussiaAmy Elsner NEW
Chavez Q AmigonRussiaIoni Bowcher PROPOSAL
Jeanfrancois Y TollnerAustraliaStephen Shaw RENEWAL
Sinclair S BologniaArgentinaBernardo Dominic QUALIFIED
Munro T FerenczBrazilElwin Sharvill QUALIFIED
Smith C WhobreyGermanyAnna Fali NEW
Greenwood Q MarrierIndiaBernardo Dominic NEGOTIATION
Leon L OstroskyIndiaAsiya Javayant UNQUALIFIED
Aruna E AmigonGermanyElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria B OldroydAustralia2026-08-01Feltz Printing Service RENEWAL7Amy Elsner
1001Silvio X SchemmerCanada2026-07-30Chemel, James L Cpa NEGOTIATION45Xuxue Feng
1002Cody W MacleadFrance2026-07-27Truhlar And Truhlar Attys NEGOTIATION73Ivan Magalhaes
1003Maisha Q OldroydUnited Kingdom2026-08-02Dorl, James J Esq QUALIFIED62Amy Elsner
1004Costa E KolmetzBrazil2026-07-22Feiner Bros RENEWAL61Elwin Sharvill
1005Mujtaba R GauchoRussia2026-07-18King, Christopher A Esq PROPOSAL85Elwin Sharvill
1006Tony L WhobreyGermany2026-07-20Commercial Press NEW77Elwin Sharvill
1007Julie M ChuiAustralia2026-08-03Rousseaux, Michael Esq NEW95Stephen Shaw
1008Stacey G RimFrance2026-07-21Morlong Associates UNQUALIFIED15Onyama Limba
1009Jefferson O BriddickGermany2026-07-25Rangoni Of Florence NEGOTIATION32Ioni Bowcher
1010Kaitlin I BowleyGermany2026-07-17Truhlar And Truhlar Attys PROPOSAL60Amy Elsner
1011Emily Z KolmetzIndia2026-07-27Morlong Associates RENEWAL54Anna Fali
1012Jeanfrancois A PoquetteGermany2026-07-08Feiner Bros QUALIFIED40Bernardo Dominic
1013Chavez K DilliardUnited Kingdom2026-08-01Feiner Bros NEGOTIATION96Elwin Sharvill
1014Leon Z BologniaBrazil2026-07-27Feltz Printing Service QUALIFIED35Amy Elsner
1015Jeanfrancois X ChuiBrazil2026-07-22Feiner Bros NEW57Ioni Bowcher
1016Greenwood R PaprockiJapan2026-07-15Rangoni Of Florence RENEWAL26Ioni Bowcher
1017Clifford A DoeRussia2026-07-10Feltz Printing Service RENEWAL69Asiya Javayant
1018Faith G DarakjyArgentina2026-08-03Morlong Associates NEGOTIATION72Onyama Limba
1019Alejandro M DilliardFrance2026-07-11Chemel, James L Cpa UNQUALIFIED34Asiya Javayant
1020Faith Z RutaFrance2026-07-13King, Christopher A Esq NEW68Stephen Shaw
1021Aditya W CaldareraRussia2026-07-30Printing Dimensions NEW62Ioni Bowcher
1022Claire J CaudyGermany2026-08-03Buckley Miller Wright NEW32Stephen Shaw
1023Chavez Y StensethBrazil2026-07-30Morlong Associates NEW65Stephen Shaw
1024Julie I MaletJapan2026-07-18Morlong Associates PROPOSAL86Xuxue Feng
1025Darci Z MaletGermany2026-07-10Benton, John B Jr NEW80Onyama Limba
1026Arvin B BologniaCanada2026-07-31Printing Dimensions NEGOTIATION55Xuxue Feng
1027Ricardo L MaletBrazil2026-07-07Rousseaux, Michael Esq NEGOTIATION30Stephen Shaw
1028Adams U ShinkoFrance2026-07-25Chapman, Ross E Esq QUALIFIED11Asiya Javayant
1029Aika E StensethGermany2026-07-18Feiner Bros NEW55Ioni Bowcher
1030Johnson B MacleadCanada2026-08-02Chapman, Ross E Esq UNQUALIFIED89Elwin Sharvill
1031James C KolmetzAustralia2026-07-12Rangoni Of Florence PROPOSAL14Bernardo Dominic
1032Adams F WieserBrazil2026-07-23Truhlar And Truhlar Attys QUALIFIED38Asiya Javayant
1033Octavia Q MaletRussia2026-07-06Morlong Associates UNQUALIFIED36Ioni Bowcher
1034Adams L PaprockiUnited Kingdom2026-07-20Benton, John B Jr UNQUALIFIED76Asiya Javayant
1035Johnson S FollerRussia2026-07-23Dorl, James J Esq NEGOTIATION31Stephen Shaw
1036Deepesh Q BowleyRussia2026-07-29Rousseaux, Michael Esq PROPOSAL95Elwin Sharvill
1037Francesco E RoysterArgentina2026-08-03Chanay, Jeffrey A Esq RENEWAL35Anna Fali
1038Johnson E BowleyFrance2026-07-08Chemel, James L Cpa PROPOSAL37Ioni Bowcher
1039Leja J DarakjyItaly2026-07-18Chapman, Ross E Esq UNQUALIFIED5Bernardo Dominic
1040Ashley M KuskoCanada2026-07-19Feiner Bros RENEWAL69Elwin Sharvill
1041Jones U GauchoBrazil2026-07-14Chanay, Jeffrey A Esq RENEWAL87Stephen Shaw
1042Aditya M PoquetteBrazil2026-07-26Dorl, James J Esq UNQUALIFIED86Onyama Limba
1043Jefferson X WieserGermany2026-07-11Chapman, Ross E Esq QUALIFIED99Ioni Bowcher
1044Antonio N GarufiArgentina2026-08-03Rousseaux, Michael Esq QUALIFIED65Elwin Sharvill
1045Ashley U SlusarskiFrance2026-07-17Chapman, Ross E Esq RENEWAL24Anna Fali
1046Isabel V NestleArgentina2026-07-19Feltz Printing Service UNQUALIFIED96Bernardo Dominic
1047David F VenereUnited Kingdom2026-07-28Feiner Bros NEGOTIATION8Ioni Bowcher
1048Jones C AlbaresArgentina2026-08-04Printing Dimensions UNQUALIFIED60Elwin Sharvill
1049Arvin W NickaCanada2026-07-11Benton, John B Jr QUALIFIED45Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Jefferson H FlosiBrazilIoni Bowcher NEW
Aika M MorascaIndiaStephen Shaw PROPOSAL
Silvio M BriddickJapanAmy Elsner NEW
Kaitlin G StockhamCanadaXuxue Feng NEGOTIATION
Wickens O CampainArgentinaStephen Shaw RENEWAL
Ricardo H AlbaresIndiaStephen Shaw NEGOTIATION
Greenwood N StockhamJapanAnna Fali NEW
Clifford M RutaFranceIvan Magalhaes UNQUALIFIED
Greenwood W FerenczSpainAnna Fali UNQUALIFIED
Julie L MorascaCanadaIoni Bowcher NEW
Faith J DarakjyAustraliaOnyama Limba UNQUALIFIED
Julie H NickaArgentinaIoni Bowcher NEW
Arvin T StockhamUnited KingdomXuxue Feng NEW
Greenwood Y VocelkaItalyOnyama Limba UNQUALIFIED
Isabel J SergiUnited KingdomStephen Shaw UNQUALIFIED
Chavez G SlusarskiCanadaAnna Fali UNQUALIFIED
Morrow D NestleArgentinaXuxue Feng UNQUALIFIED
Emily T VocelkaItalyIoni Bowcher QUALIFIED
Aditya S KuskoAustraliaIoni Bowcher QUALIFIED
Salvatore X OstroskyJapanIvan Magalhaes UNQUALIFIED
Jones H VenereCanadaStephen Shaw NEW
Cody O OstroskyJapanAnna Fali PROPOSAL
Johnson Z PaprockiJapanStephen Shaw QUALIFIED
Stacey B WhobreyIndiaBernardo Dominic NEGOTIATION
Jefferson Y DilliardItalyXuxue Feng RENEWAL
Deepesh I PerinArgentinaOnyama Limba UNQUALIFIED
Aika B KuskoArgentinaXuxue Feng QUALIFIED
Deepesh N RulapaughIndiaAsiya Javayant QUALIFIED
Wickens P CampainSpainElwin Sharvill PROPOSAL
Adams Z WaycottIndiaStephen Shaw NEGOTIATION
Aika V MarrierRussiaElwin Sharvill QUALIFIED
Sinclair M BowleyIndiaElwin Sharvill NEW
Leon K ChuiAustraliaIoni Bowcher UNQUALIFIED
Maria I CampainUnited KingdomXuxue Feng UNQUALIFIED
Mujtaba D NickaIndiaBernardo Dominic PROPOSAL
Ashley W InouyeJapanIvan Magalhaes NEW
Darci T ChuiFranceIvan Magalhaes NEGOTIATION
Salvatore G SlusarskiBrazilXuxue Feng UNQUALIFIED
Juan M AlbaresRussiaIvan Magalhaes PROPOSAL
Sinclair V ShinkoArgentinaElwin Sharvill RENEWAL
Aditya I AmigonIndiaAmy Elsner NEW
Salvatore F KuskoIndiaOnyama Limba UNQUALIFIED
Greenwood X BologniaSpainAnna Fali NEGOTIATION
Adams V AlbaresArgentinaIoni Bowcher NEGOTIATION
Jefferson G CaldareraSpainXuxue Feng PROPOSAL
Nicolas B VocelkaAustraliaStephen Shaw PROPOSAL
Smith S VocelkaBrazilBernardo Dominic RENEWAL
Leja J BologniaItalyElwin Sharvill NEGOTIATION
Jones W WhobreyJapanAmy Elsner NEW
Costa Z ChuiBrazilStephen Shaw PROPOSAL
Frozen Columns
Name
Cody I Royster
Leon Y Dilliard
Claire G Tollner
Adams N Stenseth
Octavia F Venere
Arvin K Poquette
Maria Z Malet
Rodrigues P Paprocki
Clifford W Kolmetz
Maria K Flosi
Clifford F Foller
Murillo I Doe
Salvatore N Caudy
Jones L Poquette
Octavia B Saylors
Adams T Albares
Faith M Kusko
Ashley D Ruta
Ivar S Malet
Jefferson G Darakjy
Jennifer A Saylors
Mujtaba V Whobrey
Jefferson D Iturbide
Faith P Sergi
Salvatore K Briddick
Jones S Rulapaugh
Wickens L Figeroa
Murillo O Shinko
Smith L Gillian
Jennifer R Paprocki
Wickens N Foller
Jones I Chui
Emily A Gaucho
Arvin T Rim
Greenwood V Garufi
Kadeem G Kusko
Nicolas J Nestle
Jones S Garufi
Jefferson J Darakjy
Deepesh B Campain
Smith O Iturbide
Julie Z Waycott
Leon G Morasca
Stacey D Iturbide
Darci L Bolognia
Clifford Z Venere
Jones P Dilliard
Isabel V Flosi
Leja U Gillian
Misaki N Stockham
IdCountryDate
1000Brazil2026-08-02
1001France2026-07-16
1002India2026-07-19
1003United Kingdom2026-07-07
1004Japan2026-07-12
1005Japan2026-07-22
1006Canada2026-08-03
1007Russia2026-07-08
1008Canada2026-07-21
1009Brazil2026-07-12
1010Argentina2026-07-08
1011India2026-07-24
1012Spain2026-07-09
1013Canada2026-07-06
1014United Kingdom2026-07-31
1015Brazil2026-07-17
1016France2026-07-09
1017France2026-07-16
1018Canada2026-07-24
1019India2026-07-21
1020Japan2026-07-28
1021Argentina2026-07-12
1022Brazil2026-07-15
1023Brazil2026-07-22
1024Germany2026-07-24
1025India2026-08-02
1026India2026-07-31
1027United Kingdom2026-08-01
1028United Kingdom2026-08-04
1029Australia2026-07-17
1030India2026-07-19
1031Russia2026-07-07
1032Brazil2026-07-14
1033Australia2026-07-12
1034India2026-07-16
1035Argentina2026-07-27
1036Argentina2026-07-29
1037Russia2026-07-07
1038India2026-07-31
1039Argentina2026-07-09
1040Argentina2026-07-20
1041Russia2026-07-10
1042Canada2026-07-15
1043Argentina2026-07-16
1044Japan2026-07-20
1045Russia2026-07-25
1046Argentina2026-07-06
1047Japan2026-07-27
1048Japan2026-07-11
1049Canada2026-07-19

On-Demand Data

NameIdCountryDate
Claire A Inouye1000Canada2026-07-20
Alejandro T Marrier1001Canada2026-07-21
Isabel X Malet1002Brazil2026-07-13
Morrow O Kusko1003United Kingdom2026-07-15
Stacey X Saylors1004Italy2026-07-20
Kaitlin X Campain1005Spain2026-08-02
Clifford V Kusko1006United Kingdom2026-07-26
Jeanfrancois B Stockham1007Spain2026-07-18
David R Malet1008United Kingdom2026-07-21
Arvin P Bolognia1009United Kingdom2026-07-21
Wickens X Malet1010United Kingdom2026-07-29
Mayumi N Vocelka1011Spain2026-07-27
Cody K Slusarski1012Spain2026-07-15
Alejandro P Briddick1013Japan2026-07-27
Francesco P Dilliard1014Spain2026-07-10
Leon D Venere1015Japan2026-07-30
James M Nestle1016India2026-08-02
Leon Y Maclead1017Japan2026-07-17
Ivar Z Gillian1018Japan2026-08-02
Antonio B Royster1019Germany2026-07-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh G AmigonSpainXuxue Feng QUALIFIED
Darci B FlosiIndiaXuxue Feng UNQUALIFIED
Silvio F GlickItalyAsiya Javayant UNQUALIFIED
Salvatore I AmigonFranceBernardo Dominic QUALIFIED
Costa A PaprockiGermanyXuxue Feng NEGOTIATION
Misaki F AlbaresIndiaOnyama Limba QUALIFIED
Maria Q DoeBrazilOnyama Limba NEW
Aika Y InouyeBrazilBernardo Dominic PROPOSAL
Julie B RoysterSpainAnna Fali RENEWAL
Leja N MarrierSpainXuxue Feng NEW
Francesco F RimArgentinaOnyama Limba RENEWAL
Adams J DarakjyGermanyAmy Elsner NEW
Ivar V RulapaughRussiaAsiya Javayant NEGOTIATION
Arvin D ShinkoBrazilAsiya Javayant NEGOTIATION
Chavez Z AlbaresFranceXuxue Feng NEW
Greenwood K OstroskyArgentinaAsiya Javayant QUALIFIED
Faith G AlbaresUnited KingdomAmy Elsner PROPOSAL
Rodrigues I MarrierItalyAsiya Javayant NEW
Salvatore M BologniaItalyXuxue Feng QUALIFIED
Tony Y WieserCanadaAnna Fali RENEWAL
Johnson J KuskoBrazilIoni Bowcher NEW
Jefferson H SlusarskiBrazilAsiya Javayant NEGOTIATION
Costa W MarrierIndiaBernardo Dominic UNQUALIFIED
Juan A MaletIndiaAnna Fali RENEWAL
David W MorascaJapanBernardo Dominic NEW
Ricardo C WaycottAustraliaXuxue Feng PROPOSAL
Greenwood I IturbideArgentinaBernardo Dominic PROPOSAL
David P FigeroaFranceAnna Fali PROPOSAL
Morrow T MaletBrazilIvan Magalhaes PROPOSAL
Morrow Y RutaAustraliaXuxue Feng QUALIFIED
Octavia R CampainAustraliaElwin Sharvill QUALIFIED
Julie Q CaldareraFranceOnyama Limba NEGOTIATION
Greenwood H FollerFranceAmy Elsner NEGOTIATION
Julie V FerenczJapanStephen Shaw RENEWAL
Adams V TollnerItalyIoni Bowcher QUALIFIED
Kadeem U GlickCanadaStephen Shaw NEW
Alejandro H CampainGermanyAsiya Javayant UNQUALIFIED
Silvio Y BowleyFranceIoni Bowcher RENEWAL
Izzy A GarufiArgentinaBernardo Dominic PROPOSAL
Darci X IturbideSpainStephen Shaw UNQUALIFIED

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