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 H StensethAustraliaElwin Sharvill NEGOTIATION
Claire G OstroskyAustraliaAmy Elsner NEW
Johnson W MorascaGermanyElwin Sharvill RENEWAL
Smith C DilliardGermanyIoni Bowcher RENEWAL
Mayumi A RutaSpainOnyama Limba NEW
Mayumi V RulapaughJapanOnyama Limba QUALIFIED
Jefferson W VenereArgentinaElwin Sharvill PROPOSAL
Darci C CampainRussiaElwin Sharvill PROPOSAL
Antonio Y RutaItalyElwin Sharvill PROPOSAL
Kadeem H AmigonSpainXuxue Feng NEGOTIATION
Faith J FlosiCanadaXuxue Feng NEGOTIATION
Antonio W BriddickRussiaAmy Elsner PROPOSAL
Mayumi Z CaldareraSpainAmy Elsner NEW
Juan L RoysterGermanyIoni Bowcher PROPOSAL
Jeanfrancois D DilliardCanadaXuxue Feng NEGOTIATION
Juan D RimArgentinaIoni Bowcher RENEWAL
Izzy S CaudyJapanBernardo Dominic PROPOSAL
Munro X ChuiBrazilIvan Magalhaes PROPOSAL
Ricardo I MorascaRussiaBernardo Dominic NEGOTIATION
Francesco K VenereJapanStephen Shaw QUALIFIED
Darci K MorascaRussiaXuxue Feng UNQUALIFIED
Jones A PoquetteItalyElwin Sharvill QUALIFIED
Johnson J CaldareraAustraliaIvan Magalhaes RENEWAL
Greenwood F MaletJapanIvan Magalhaes UNQUALIFIED
Juan D StockhamRussiaOnyama Limba RENEWAL
Nicolas L GlickBrazilIoni Bowcher QUALIFIED
Kaitlin G PoquetteFranceElwin Sharvill QUALIFIED
Ivar F MacleadGermanyBernardo Dominic QUALIFIED
James O MacleadSpainStephen Shaw RENEWAL
Nicolas B StensethUnited KingdomAmy Elsner PROPOSAL
Faith O AmigonJapanBernardo Dominic UNQUALIFIED
Tony U WhobreyFranceStephen Shaw UNQUALIFIED
Leja D BriddickAustraliaIoni Bowcher QUALIFIED
Jeanfrancois Y FerenczSpainBernardo Dominic PROPOSAL
Mayumi B NestleUnited KingdomBernardo Dominic PROPOSAL
Adams Y DoeFranceAmy Elsner RENEWAL
Mayumi U GarufiFranceIvan Magalhaes PROPOSAL
Jefferson J ShinkoAustraliaXuxue Feng NEGOTIATION
Misaki K GarufiGermanyOnyama Limba UNQUALIFIED
Izzy P FlosiItalyOnyama Limba NEGOTIATION
Juan E AlbaresRussiaIvan Magalhaes NEGOTIATION
Aruna A OstroskyJapanIoni Bowcher NEGOTIATION
Salvatore E RimRussiaIvan Magalhaes PROPOSAL
Deepesh Z MacleadFranceOnyama Limba QUALIFIED
Munro X PerinBrazilOnyama Limba NEW
Francesco R VocelkaIndiaIvan Magalhaes RENEWAL
Izzy U PaprockiBrazilAmy Elsner NEGOTIATION
Mujtaba G RutaBrazilIoni Bowcher QUALIFIED
Cody X BowleyUnited KingdomAmy Elsner NEW
James T SergiBrazilXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Juan Q FollerUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba M FigeroaUnited KingdomStephen Shaw NEW
Faith W AmigonItalyAsiya Javayant UNQUALIFIED
Maria B SlusarskiSpainIoni Bowcher PROPOSAL
Darci Z RimSpainIvan Magalhaes NEGOTIATION
Kaitlin Z VocelkaRussiaElwin Sharvill PROPOSAL
Greenwood R SlusarskiRussiaBernardo Dominic PROPOSAL
Leon Q BowleyFranceIvan Magalhaes RENEWAL
David E MorascaJapanIvan Magalhaes UNQUALIFIED
Arvin P CaudyCanadaIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci R SergiBrazil2024-05-27Truhlar And Truhlar Attys RENEWAL73Asiya Javayant
1001Cody A WieserSpain2024-06-15Buckley Miller Wright NEGOTIATION32Anna Fali
1002Johnson B MarrierGermany2024-05-28Dorl, James J Esq NEGOTIATION36Asiya Javayant
1003Ricardo Z WaycottAustralia2024-05-31Chemel, James L Cpa NEW58Ioni Bowcher
1004Johnson S VenereGermany2024-06-07Chapman, Ross E Esq NEW41Xuxue Feng
1005Maria A PoquetteSpain2024-06-14Buckley Miller Wright QUALIFIED46Amy Elsner
1006Chavez Q PaprockiAustralia2024-05-29Truhlar And Truhlar Attys NEGOTIATION91Xuxue Feng
1007James N BowleyBrazil2024-06-12Feltz Printing Service UNQUALIFIED51Bernardo Dominic
1008Jeanfrancois U WieserIndia2024-06-23Dorl, James J Esq PROPOSAL89Asiya Javayant
1009Alejandro A WieserRussia2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED44Elwin Sharvill
1010Francesco P TollnerRussia2024-06-15Printing Dimensions UNQUALIFIED35Amy Elsner
1011Jeanfrancois Y IturbideBrazil2024-06-09Feiner Bros PROPOSAL3Xuxue Feng
1012Mujtaba P SaylorsFrance2024-06-21Chanay, Jeffrey A Esq RENEWAL75Xuxue Feng
1013Leon I RoysterFrance2024-05-25Benton, John B Jr NEGOTIATION1Stephen Shaw
1014Chavez W MarrierSpain2024-05-29Feltz Printing Service NEGOTIATION91Onyama Limba
1015Alejandro J RulapaughCanada2024-06-19Chanay, Jeffrey A Esq PROPOSAL67Onyama Limba
1016Ivar M KolmetzBrazil2024-06-17Feiner Bros UNQUALIFIED10Elwin Sharvill
1017Leja W PoquetteBrazil2024-06-07Dorl, James J Esq NEW95Onyama Limba
1018Kadeem P GlickArgentina2024-06-13Truhlar And Truhlar Attys RENEWAL39Amy Elsner
1019Costa I WaycottItaly2024-05-29Morlong Associates QUALIFIED69Asiya Javayant
1020Faith W OldroydAustralia2024-06-21Printing Dimensions NEGOTIATION68Onyama Limba
1021Alejandro A OldroydJapan2024-06-17Rangoni Of Florence NEW92Ioni Bowcher
1022Stacey X GillianIndia2024-05-30Chemel, James L Cpa UNQUALIFIED17Elwin Sharvill
1023Tony Z DoeIndia2024-06-19Buckley Miller Wright RENEWAL13Ioni Bowcher
1024Jennifer L FollerSpain2024-06-10King, Christopher A Esq NEGOTIATION27Stephen Shaw
1025Mayumi U RoysterUnited Kingdom2024-05-27Truhlar And Truhlar Attys RENEWAL8Elwin Sharvill
1026Mujtaba B FerenczArgentina2024-06-21Printing Dimensions UNQUALIFIED63Ioni Bowcher
1027Claire Y MaletItaly2024-06-05Chanay, Jeffrey A Esq QUALIFIED40Amy Elsner
1028Rodrigues G StockhamRussia2024-06-15Truhlar And Truhlar Attys NEGOTIATION89Asiya Javayant
1029James Y RutaFrance2024-06-20Printing Dimensions UNQUALIFIED90Ivan Magalhaes
1030Faith K IturbideJapan2024-06-09Morlong Associates RENEWAL91Bernardo Dominic
1031James I BologniaArgentina2024-05-25Dorl, James J Esq NEW66Stephen Shaw
1032Aika A FigeroaGermany2024-06-13Commercial Press PROPOSAL97Anna Fali
1033David Y AlbaresArgentina2024-06-15Rousseaux, Michael Esq NEW83Anna Fali
1034Ivar W MaletSpain2024-06-01Truhlar And Truhlar Attys RENEWAL28Xuxue Feng
1035Munro D MarrierItaly2024-06-01Chemel, James L Cpa RENEWAL70Xuxue Feng
1036Aika R RutaAustralia2024-06-10Chanay, Jeffrey A Esq NEW78Xuxue Feng
1037Rodrigues U OldroydAustralia2024-05-31Chanay, Jeffrey A Esq UNQUALIFIED36Ioni Bowcher
1038Morrow G NestleCanada2024-06-20Benton, John B Jr NEGOTIATION29Amy Elsner
1039Adams S FollerGermany2024-06-20Rangoni Of Florence NEGOTIATION20Ivan Magalhaes
1040Jennifer S StensethItaly2024-05-29Morlong Associates RENEWAL92Ivan Magalhaes
1041Rodrigues Q SaylorsRussia2024-05-27King, Christopher A Esq NEW54Elwin Sharvill
1042Wickens X PerinUnited Kingdom2024-06-17Rousseaux, Michael Esq PROPOSAL43Amy Elsner
1043Morrow T MaletAustralia2024-06-10Commercial Press UNQUALIFIED0Stephen Shaw
1044Octavia O ShinkoSpain2024-06-16Dorl, James J Esq PROPOSAL68Amy Elsner
1045Deepesh G InouyeGermany2024-06-12Benton, John B Jr QUALIFIED73Xuxue Feng
1046Salvatore D MarrierBrazil2024-06-02Rousseaux, Michael Esq PROPOSAL84Amy Elsner
1047Faith P StockhamArgentina2024-06-15Chanay, Jeffrey A Esq NEW10Ivan Magalhaes
1048Jennifer U BowleyCanada2024-06-23Chemel, James L Cpa RENEWAL40Ioni Bowcher
1049Kadeem D MorascaItaly2024-06-19Printing Dimensions RENEWAL97Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Leon F WieserJapanBernardo Dominic QUALIFIED
Leon H PaprockiBrazilXuxue Feng NEW
Cody M MaletUnited KingdomOnyama Limba UNQUALIFIED
Maisha H WhobreyGermanyXuxue Feng UNQUALIFIED
Arvin B ButtArgentinaOnyama Limba UNQUALIFIED
Ricardo B MaletJapanIoni Bowcher PROPOSAL
Alejandro S BologniaRussiaAsiya Javayant QUALIFIED
Alejandro P AmigonBrazilIvan Magalhaes NEGOTIATION
Octavia P NickaItalyElwin Sharvill UNQUALIFIED
Antonio F RutaFranceAnna Fali NEW
Faith S MarrierRussiaOnyama Limba UNQUALIFIED
Misaki V IturbideAustraliaAmy Elsner UNQUALIFIED
Costa Z WhobreyJapanAnna Fali NEGOTIATION
Smith B BowleyItalyElwin Sharvill UNQUALIFIED
Cody B PerinRussiaAmy Elsner NEW
Antonio B WaycottGermanyOnyama Limba NEW
Cody D WhobreyUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi T NickaArgentinaIvan Magalhaes NEGOTIATION
Stacey G MaletUnited KingdomBernardo Dominic NEGOTIATION
Chavez T FlosiArgentinaAsiya Javayant UNQUALIFIED
Murillo C AlbaresItalyIvan Magalhaes PROPOSAL
Leja K PaprockiItalyElwin Sharvill PROPOSAL
Darci L CaudyItalyAnna Fali PROPOSAL
Ivar T StockhamRussiaXuxue Feng PROPOSAL
Antonio N MarrierAustraliaStephen Shaw QUALIFIED
Costa W DoeBrazilAsiya Javayant NEW
Cody P MorascaFranceIoni Bowcher NEGOTIATION
Aruna T FerenczGermanyAmy Elsner RENEWAL
Francesco V RimIndiaAmy Elsner UNQUALIFIED
Murillo K GarufiJapanStephen Shaw PROPOSAL
Morrow E PerinCanadaOnyama Limba PROPOSAL
Jeanfrancois J VocelkaFranceElwin Sharvill QUALIFIED
Darci E StockhamSpainAnna Fali NEW
Smith U PerinUnited KingdomBernardo Dominic UNQUALIFIED
Wickens Y MacleadIndiaAmy Elsner NEGOTIATION
Aika Z VenereItalyXuxue Feng NEW
Greenwood E DarakjyJapanXuxue Feng UNQUALIFIED
Francesco O VenereJapanAsiya Javayant NEGOTIATION
Octavia C MarrierFranceAsiya Javayant PROPOSAL
Mujtaba O SaylorsGermanyIoni Bowcher UNQUALIFIED
Murillo X BowleyRussiaAnna Fali PROPOSAL
Emily I MarrierUnited KingdomOnyama Limba QUALIFIED
Maria P PerinIndiaXuxue Feng QUALIFIED
Jeanfrancois R PaprockiBrazilElwin Sharvill RENEWAL
Ivar K CaldareraIndiaIoni Bowcher NEGOTIATION
Antonio Q SergiGermanyBernardo Dominic NEGOTIATION
Silvio U BologniaRussiaBernardo Dominic QUALIFIED
Emily G OstroskyFranceStephen Shaw QUALIFIED
Aditya D FlosiIndiaElwin Sharvill RENEWAL
Leon C StockhamAustraliaXuxue Feng UNQUALIFIED
Frozen Columns
Name
Julie D Darakjy
Stacey N Gillian
Rodrigues V Bolognia
Wickens F Butt
Arvin J Kusko
Izzy R Vocelka
Chavez L Flosi
Costa Z Nicka
Julie J Saylors
Mayumi L Wieser
Rodrigues D Poquette
Francesco X Marrier
Misaki I Rim
Kaitlin P Sergi
Johnson L Perin
Jones P Gaucho
Wickens L Kusko
Kadeem G Caldarera
Ivar P Ferencz
Greenwood P Campain
Morrow L Saylors
Rodrigues L Glick
Aditya X Whobrey
Kaitlin Q Tollner
Arvin J Gillian
Munro W Dilliard
Emily Y Poquette
David L Amigon
Jeanfrancois B Nicka
Leon M Garufi
Darci I Ostrosky
Julie Z Rulapaugh
Jeanfrancois L Iturbide
Misaki H Malet
Johnson O Caldarera
Izzy T Vocelka
Wickens R Oldroyd
Arvin X Rim
Jeanfrancois P Campain
Kaitlin O Ostrosky
Maria E Poquette
Rodrigues H Malet
Jefferson R Kolmetz
Juan A Maclead
Leja G Whobrey
James X Schemmer
Ashley H Wieser
Silvio H Iturbide
Aika Q Inouye
Leon I Waycott
IdCountryDate
1000Australia2024-06-22
1001India2024-06-04
1002Russia2024-06-02
1003India2024-06-20
1004Spain2024-06-16
1005Russia2024-06-15
1006Germany2024-05-29
1007India2024-06-17
1008Argentina2024-05-25
1009Argentina2024-06-08
1010France2024-06-04
1011Germany2024-06-12
1012France2024-06-23
1013Canada2024-06-18
1014Germany2024-06-19
1015Spain2024-05-28
1016Japan2024-06-05
1017United Kingdom2024-06-10
1018Russia2024-06-11
1019Brazil2024-06-08
1020Russia2024-06-09
1021United Kingdom2024-06-02
1022Russia2024-06-21
1023Japan2024-06-13
1024Australia2024-06-04
1025France2024-05-26
1026Canada2024-06-08
1027Russia2024-05-28
1028Italy2024-06-03
1029Spain2024-06-23
1030France2024-06-03
1031Spain2024-06-16
1032Argentina2024-06-14
1033Australia2024-05-26
1034Brazil2024-06-23
1035Japan2024-06-15
1036India2024-06-14
1037Russia2024-06-02
1038Brazil2024-06-03
1039France2024-06-07
1040United Kingdom2024-06-09
1041Australia2024-06-01
1042India2024-05-29
1043Russia2024-06-07
1044Germany2024-05-31
1045Canada2024-06-18
1046Spain2024-06-12
1047Spain2024-05-29
1048Italy2024-06-08
1049Brazil2024-06-13

On-Demand Data

NameIdCountryDate
Alejandro I Maclead1000Germany2024-06-06
Misaki V Foller1001Argentina2024-06-21
Izzy E Shinko1002Italy2024-06-18
Nicolas B Vocelka1003Canada2024-06-07
Deepesh A Glick1004Canada2024-06-17
Leon M Rim1005Spain2024-06-12
Ricardo X Iturbide1006Australia2024-06-18
Stacey U Oldroyd1007Argentina2024-06-07
Julie Q Ruta1008United Kingdom2024-06-05
Leon W Rulapaugh1009Germany2024-05-31
Chavez Z Waycott1010France2024-05-30
Maisha M Campain1011Germany2024-05-27
Cody T Darakjy1012Canada2024-06-19
Emily D Stenseth1013Russia2024-06-23
Johnson Z Foller1014Brazil2024-06-19
Greenwood L Oldroyd1015Germany2024-05-25
Cody E Saylors1016Germany2024-06-15
Mujtaba X Stenseth1017France2024-05-26
Salvatore A Malet1018Japan2024-06-13
Francesco Q Stenseth1019Germany2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow N ChuiFranceStephen Shaw RENEWAL
Chavez Q WhobreyArgentinaBernardo Dominic UNQUALIFIED
Kaitlin S ShinkoSpainIoni Bowcher NEW
Isabel M CampainArgentinaAsiya Javayant NEW
Wickens U RimUnited KingdomXuxue Feng RENEWAL
Francesco W PaprockiBrazilOnyama Limba RENEWAL
Kaitlin S WieserSpainIvan Magalhaes RENEWAL
Emily J WaycottGermanyXuxue Feng NEW
David C PerinArgentinaAnna Fali NEW
Ricardo S NickaSpainIvan Magalhaes PROPOSAL
Isabel J SchemmerJapanIoni Bowcher NEW
Johnson H NickaGermanyIvan Magalhaes RENEWAL
Salvatore I FlosiAustraliaIoni Bowcher RENEWAL
Leja I FlosiSpainBernardo Dominic PROPOSAL
Julie S StockhamRussiaStephen Shaw PROPOSAL
Juan J FollerItalyAnna Fali QUALIFIED
Mayumi A StockhamJapanXuxue Feng NEGOTIATION
Arvin S StockhamUnited KingdomElwin Sharvill PROPOSAL
Morrow S DarakjyGermanyOnyama Limba QUALIFIED
Chavez E FlosiCanadaOnyama Limba PROPOSAL
Izzy M NestleItalyStephen Shaw PROPOSAL
David L SaylorsItalyOnyama Limba PROPOSAL
Jefferson L AlbaresJapanIoni Bowcher NEW
Ricardo U DarakjyIndiaStephen Shaw PROPOSAL
Ashley Z MacleadRussiaIvan Magalhaes NEGOTIATION
Clifford A RimItalyAmy Elsner UNQUALIFIED
Leon Y MacleadGermanyStephen Shaw QUALIFIED
Isabel X VenereUnited KingdomXuxue Feng RENEWAL
Wickens C StockhamJapanIvan Magalhaes NEGOTIATION
Cody A FigeroaItalyIoni Bowcher QUALIFIED
Leon C PaprockiJapanIvan Magalhaes UNQUALIFIED
Nicolas K AmigonArgentinaAmy Elsner NEW
Costa N IturbideAustraliaBernardo Dominic PROPOSAL
Jefferson K VocelkaUnited KingdomIvan Magalhaes PROPOSAL
Isabel D CampainFranceBernardo Dominic QUALIFIED
Julie X PerinUnited KingdomXuxue Feng NEW
Clifford A ButtItalyXuxue Feng PROPOSAL
Aika G IturbideCanadaIoni Bowcher NEW
Mujtaba Q GlickItalyIvan Magalhaes UNQUALIFIED
Octavia C GillianIndiaStephen Shaw 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>