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
Jeanfrancois A FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
James E PerinBrazilAmy Elsner PROPOSAL
Adams T MaletUnited KingdomStephen Shaw PROPOSAL
Costa N RutaGermanyIvan Magalhaes RENEWAL
Maisha E FerenczCanadaBernardo Dominic NEGOTIATION
Morrow Z StockhamCanadaBernardo Dominic NEW
Aika J MaletFranceBernardo Dominic NEGOTIATION
Aika K AlbaresAustraliaXuxue Feng PROPOSAL
Izzy A VocelkaJapanBernardo Dominic UNQUALIFIED
Emily L ChuiBrazilXuxue Feng UNQUALIFIED
Misaki W PoquetteGermanyStephen Shaw UNQUALIFIED
Jefferson R RulapaughArgentinaAnna Fali RENEWAL
Octavia I BowleyRussiaXuxue Feng UNQUALIFIED
Morrow T VenereAustraliaElwin Sharvill RENEWAL
Clifford D WieserFranceXuxue Feng NEW
Chavez H InouyeCanadaAnna Fali NEW
Salvatore E MaletFranceXuxue Feng PROPOSAL
Faith A WhobreyUnited KingdomAmy Elsner PROPOSAL
Murillo F GauchoIndiaIoni Bowcher NEW
Kaitlin L SchemmerBrazilAsiya Javayant QUALIFIED
Aditya S WieserRussiaOnyama Limba NEGOTIATION
Stacey A ShinkoGermanyXuxue Feng NEGOTIATION
Izzy Q FigeroaSpainStephen Shaw QUALIFIED
Maria Y CampainItalyStephen Shaw RENEWAL
Silvio E GillianAustraliaIoni Bowcher UNQUALIFIED
Sinclair U AlbaresCanadaIoni Bowcher UNQUALIFIED
Costa F FerenczJapanIoni Bowcher QUALIFIED
Munro H InouyeRussiaBernardo Dominic NEW
Faith N ShinkoCanadaAnna Fali PROPOSAL
Isabel X IturbideArgentinaAmy Elsner NEGOTIATION
Arvin Y PerinUnited KingdomAmy Elsner QUALIFIED
Julie B WhobreyIndiaIoni Bowcher UNQUALIFIED
Kadeem Z SaylorsFranceElwin Sharvill NEGOTIATION
Rodrigues E ButtAustraliaIvan Magalhaes QUALIFIED
Ivar E GillianJapanOnyama Limba NEGOTIATION
Greenwood O DoeRussiaAmy Elsner QUALIFIED
Claire S WhobreyJapanStephen Shaw UNQUALIFIED
Leon D VenereJapanOnyama Limba UNQUALIFIED
Chavez W FigeroaBrazilAsiya Javayant NEGOTIATION
Mujtaba K SaylorsItalyStephen Shaw NEW
Alejandro G OstroskyFranceXuxue Feng UNQUALIFIED
Wickens T StensethRussiaOnyama Limba NEGOTIATION
Sinclair T PoquetteSpainStephen Shaw NEGOTIATION
Faith Z WieserBrazilElwin Sharvill NEW
David S FigeroaRussiaXuxue Feng UNQUALIFIED
Clifford S NickaGermanyBernardo Dominic PROPOSAL
Aruna Y NestleSpainStephen Shaw QUALIFIED
Smith G DilliardItalyAmy Elsner NEGOTIATION
Izzy X CaudyAustraliaElwin Sharvill PROPOSAL
Alejandro O MorascaUnited KingdomIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
David X SaylorsAustraliaBernardo Dominic RENEWAL
Leon C MarrierIndiaBernardo Dominic UNQUALIFIED
Johnson Y AmigonArgentinaBernardo Dominic NEW
Chavez P OstroskyRussiaOnyama Limba PROPOSAL
Julie Q DarakjyJapanOnyama Limba NEGOTIATION
Maria S NestleItalyElwin Sharvill QUALIFIED
Wickens F PaprockiIndiaBernardo Dominic RENEWAL
Mujtaba H NestleSpainAnna Fali NEGOTIATION
Adams X WieserBrazilElwin Sharvill UNQUALIFIED
Ivar G CaudyIndiaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair B MorascaSpain2024-05-09Feiner Bros PROPOSAL31Ivan Magalhaes
1001Ashley D StockhamCanada2024-05-20Morlong Associates PROPOSAL45Xuxue Feng
1002Wickens S MaletUnited Kingdom2024-05-13Rousseaux, Michael Esq RENEWAL63Xuxue Feng
1003Maria P GauchoRussia2024-05-05Feiner Bros NEGOTIATION4Anna Fali
1004Ricardo X MarrierIndia2024-05-06Feltz Printing Service QUALIFIED3Xuxue Feng
1005Costa L NickaUnited Kingdom2024-05-08Feltz Printing Service UNQUALIFIED34Amy Elsner
1006Wickens R RulapaughAustralia2024-05-11Commercial Press QUALIFIED10Xuxue Feng
1007Rodrigues J DilliardIndia2024-05-08Chanay, Jeffrey A Esq NEW69Bernardo Dominic
1008Wickens F NickaItaly2024-05-18Morlong Associates PROPOSAL88Xuxue Feng
1009Faith D BowleyAustralia2024-05-01Printing Dimensions QUALIFIED2Elwin Sharvill
1010Nicolas Y AlbaresUnited Kingdom2024-05-08Chapman, Ross E Esq PROPOSAL31Bernardo Dominic
1011Aruna P DoeCanada2024-04-30Chanay, Jeffrey A Esq NEGOTIATION93Onyama Limba
1012Adams K TollnerItaly2024-04-29Printing Dimensions NEW26Stephen Shaw
1013Munro Q FlosiJapan2024-05-05Commercial Press PROPOSAL40Bernardo Dominic
1014Faith Q AmigonItaly2024-05-10Rangoni Of Florence RENEWAL58Xuxue Feng
1015Izzy R FerenczUnited Kingdom2024-04-29Truhlar And Truhlar Attys RENEWAL5Asiya Javayant
1016Costa T VocelkaAustralia2024-05-17Benton, John B Jr NEGOTIATION69Asiya Javayant
1017Nicolas T FlosiIndia2024-05-14Rousseaux, Michael Esq PROPOSAL54Amy Elsner
1018Adams X SaylorsItaly2024-05-04King, Christopher A Esq NEGOTIATION21Onyama Limba
1019Julie I DilliardArgentina2024-05-08Chemel, James L Cpa QUALIFIED80Bernardo Dominic
1020David M RutaAustralia2024-05-10Dorl, James J Esq NEGOTIATION42Xuxue Feng
1021Ivar Y ButtItaly2024-05-18Rousseaux, Michael Esq QUALIFIED11Bernardo Dominic
1022Misaki G SchemmerIndia2024-04-30Rousseaux, Michael Esq RENEWAL52Stephen Shaw
1023Silvio F WaycottGermany2024-04-26Truhlar And Truhlar Attys NEW24Onyama Limba
1024Darci E KuskoIndia2024-04-25Chapman, Ross E Esq QUALIFIED19Bernardo Dominic
1025Ashley U GlickArgentina2024-05-20Printing Dimensions RENEWAL82Stephen Shaw
1026Silvio Y MorascaGermany2024-04-30Morlong Associates UNQUALIFIED91Amy Elsner
1027Arvin S MacleadBrazil2024-05-11Feiner Bros QUALIFIED69Anna Fali
1028Johnson Z ShinkoItaly2024-05-07Chemel, James L Cpa QUALIFIED50Stephen Shaw
1029Arvin B AlbaresGermany2024-04-28King, Christopher A Esq PROPOSAL48Asiya Javayant
1030Maria E FlosiCanada2024-04-25Feltz Printing Service NEW97Ivan Magalhaes
1031Juan B ChuiSpain2024-05-22Rousseaux, Michael Esq UNQUALIFIED75Amy Elsner
1032Deepesh S WieserBrazil2024-05-18Rousseaux, Michael Esq RENEWAL13Elwin Sharvill
1033Mujtaba M WaycottFrance2024-04-25Feltz Printing Service RENEWAL17Ioni Bowcher
1034Leja R MaletCanada2024-04-30Chemel, James L Cpa QUALIFIED1Bernardo Dominic
1035Misaki W SaylorsFrance2024-05-07Benton, John B Jr QUALIFIED57Xuxue Feng
1036Sinclair V ShinkoIndia2024-04-29Feltz Printing Service NEGOTIATION8Ivan Magalhaes
1037Mujtaba K VenereIndia2024-05-15Commercial Press UNQUALIFIED99Stephen Shaw
1038Adams D VocelkaAustralia2024-05-23Truhlar And Truhlar Attys PROPOSAL48Amy Elsner
1039Claire L SaylorsFrance2024-05-17Chemel, James L Cpa QUALIFIED55Asiya Javayant
1040Nicolas Z StensethIndia2024-04-28Buckley Miller Wright QUALIFIED67Ivan Magalhaes
1041Ivar M WhobreyBrazil2024-05-06Chanay, Jeffrey A Esq QUALIFIED96Ioni Bowcher
1042Aruna B GarufiIndia2024-05-12Buckley Miller Wright QUALIFIED29Ivan Magalhaes
1043James D RulapaughRussia2024-04-30Feiner Bros PROPOSAL34Stephen Shaw
1044Tony B MaletItaly2024-05-12King, Christopher A Esq PROPOSAL37Stephen Shaw
1045Clifford J FlosiGermany2024-04-27Chemel, James L Cpa PROPOSAL96Ioni Bowcher
1046Juan Q DoeBrazil2024-04-27Rangoni Of Florence NEGOTIATION56Onyama Limba
1047Johnson C AmigonJapan2024-05-14Chemel, James L Cpa UNQUALIFIED55Elwin Sharvill
1048David V RutaFrance2024-05-03Printing Dimensions QUALIFIED38Elwin Sharvill
1049Ricardo R StockhamAustralia2024-04-29Printing Dimensions RENEWAL29Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Alejandro F RutaAustraliaAsiya Javayant PROPOSAL
Claire U InouyeJapanBernardo Dominic UNQUALIFIED
Aruna B FlosiJapanElwin Sharvill NEW
Smith K DoeIndiaAsiya Javayant NEGOTIATION
Jones A StockhamCanadaAsiya Javayant UNQUALIFIED
Arvin P CaudySpainElwin Sharvill NEW
Nicolas A WaycottAustraliaIvan Magalhaes NEW
David D FlosiRussiaElwin Sharvill QUALIFIED
Alejandro D GillianSpainIoni Bowcher UNQUALIFIED
Morrow M VenereItalyOnyama Limba QUALIFIED
Isabel D KolmetzRussiaIvan Magalhaes NEGOTIATION
Kaitlin Y PaprockiCanadaElwin Sharvill PROPOSAL
Juan U MorascaRussiaXuxue Feng RENEWAL
Silvio H InouyeGermanyElwin Sharvill QUALIFIED
Jefferson U DilliardAustraliaAmy Elsner NEGOTIATION
Salvatore J DarakjyUnited KingdomIvan Magalhaes NEGOTIATION
Greenwood A PoquetteBrazilIoni Bowcher RENEWAL
Rodrigues B DilliardSpainAmy Elsner NEGOTIATION
Alejandro G IturbideSpainBernardo Dominic NEW
Ricardo M IturbideFranceAnna Fali NEW
Jeanfrancois J RoysterJapanAsiya Javayant UNQUALIFIED
Munro G DarakjySpainIvan Magalhaes QUALIFIED
James Q BriddickFranceElwin Sharvill NEW
Sinclair M GlickIndiaOnyama Limba NEGOTIATION
Faith M RoysterItalyIoni Bowcher RENEWAL
Jones E WaycottItalyAnna Fali QUALIFIED
Clifford H FerenczArgentinaXuxue Feng PROPOSAL
Chavez T MaletBrazilXuxue Feng QUALIFIED
Salvatore G SaylorsRussiaXuxue Feng NEW
Leon I MacleadArgentinaAmy Elsner RENEWAL
Ricardo S DilliardItalyElwin Sharvill NEGOTIATION
Aika H FerenczJapanElwin Sharvill QUALIFIED
Aruna H OldroydSpainAnna Fali PROPOSAL
Stacey G SergiItalyXuxue Feng UNQUALIFIED
Izzy Z BowleyUnited KingdomIoni Bowcher NEW
Jones V RoysterRussiaXuxue Feng UNQUALIFIED
Maria V AmigonRussiaStephen Shaw RENEWAL
Ashley C StensethAustraliaIoni Bowcher UNQUALIFIED
Julie O WhobreyCanadaIvan Magalhaes NEW
Smith R OldroydArgentinaAnna Fali RENEWAL
James U DoeAustraliaIoni Bowcher QUALIFIED
Ivar R ShinkoUnited KingdomAsiya Javayant UNQUALIFIED
Kaitlin W TollnerFranceStephen Shaw UNQUALIFIED
Jennifer X WhobreyCanadaXuxue Feng NEW
Chavez N KuskoUnited KingdomElwin Sharvill QUALIFIED
Faith W WaycottArgentinaStephen Shaw QUALIFIED
Rodrigues X DilliardArgentinaIoni Bowcher PROPOSAL
Kaitlin U ChuiRussiaXuxue Feng RENEWAL
Julie R PoquetteAustraliaStephen Shaw UNQUALIFIED
Adams A ChuiBrazilAsiya Javayant NEW
Frozen Columns
Name
Emily V Waycott
Jones E Royster
Morrow A Bolognia
Kaitlin T Morasca
Faith R Sergi
Johnson G Campain
Jones L Flosi
Kaitlin R Oldroyd
Clifford U Briddick
Aika M Inouye
Jennifer G Albares
Aika Y Ruta
Nicolas K Maclead
Julie K Flosi
Darci V Ferencz
Jeanfrancois K Morasca
Johnson L Nicka
Kaitlin K Wieser
Stacey A Nestle
Costa R Kusko
Johnson G Amigon
Smith H Chui
Aditya A Briddick
Juan X Caldarera
Aruna O Shinko
Maria X Campain
Kaitlin V Vocelka
Salvatore K Perin
David V Shinko
James H Doe
Costa V Gaucho
Johnson C Gillian
Aditya B Amigon
Jeanfrancois V Vocelka
Octavia T Chui
Jefferson Y Vocelka
Silvio L Schemmer
Julie W Chui
Juan B Gaucho
Maria O Shinko
Emily G Butt
Aditya B Doe
Ashley S Paprocki
Darci W Oldroyd
Isabel G Stenseth
Aruna Q Ruta
Ricardo E Figeroa
Sinclair G Darakjy
Chavez S Campain
Deepesh D Poquette
IdCountryDate
1000Italy2024-05-20
1001Russia2024-05-11
1002Japan2024-05-10
1003Italy2024-04-29
1004Japan2024-05-15
1005Argentina2024-05-18
1006Italy2024-04-27
1007Japan2024-04-26
1008Canada2024-05-02
1009Spain2024-05-17
1010India2024-05-03
1011Germany2024-05-10
1012Brazil2024-05-02
1013Australia2024-05-06
1014France2024-04-25
1015United Kingdom2024-05-08
1016Australia2024-05-11
1017Brazil2024-05-20
1018France2024-05-24
1019Canada2024-05-24
1020India2024-05-17
1021Canada2024-05-14
1022Brazil2024-05-06
1023Russia2024-05-01
1024Brazil2024-05-07
1025Spain2024-05-06
1026Germany2024-05-09
1027Italy2024-05-11
1028France2024-04-26
1029Canada2024-04-28
1030Australia2024-05-12
1031Spain2024-05-18
1032Argentina2024-05-22
1033Brazil2024-05-09
1034Canada2024-04-28
1035Australia2024-05-17
1036Brazil2024-05-12
1037Italy2024-05-03
1038Japan2024-05-20
1039Japan2024-05-24
1040Italy2024-05-16
1041France2024-05-18
1042United Kingdom2024-05-23
1043Canada2024-04-29
1044Spain2024-04-30
1045United Kingdom2024-05-13
1046Australia2024-05-22
1047Spain2024-05-11
1048France2024-05-22
1049Australia2024-05-14

On-Demand Data

NameIdCountryDate
Munro G Foller1000Italy2024-05-20
Claire Q Tollner1001Canada2024-05-04
Ashley X Shinko1002Germany2024-05-14
Juan O Malet1003Canada2024-05-10
Adams W Maclead1004United Kingdom2024-05-13
Rodrigues E Albares1005France2024-05-18
Mayumi A Malet1006Brazil2024-05-15
Jennifer U Tollner1007India2024-05-23
Kaitlin M Nicka1008Russia2024-04-28
Wickens J Bolognia1009Canada2024-05-24
Nicolas M Tollner1010France2024-05-13
Munro I Ferencz1011United Kingdom2024-05-08
Arvin X Tollner1012Italy2024-05-23
Kaitlin A Whobrey1013Australia2024-05-16
Clifford P Darakjy1014Spain2024-04-28
Leon I Tollner1015France2024-04-29
Ricardo T Vocelka1016India2024-05-20
Darci I Schemmer1017Australia2024-05-19
Izzy S Marrier1018Japan2024-04-25
Isabel X Sergi1019Australia2024-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci Q OldroydJapanElwin Sharvill PROPOSAL
Maisha X AmigonRussiaIvan Magalhaes NEW
Jeanfrancois Q ChuiIndiaElwin Sharvill PROPOSAL
Stacey N ChuiBrazilIoni Bowcher QUALIFIED
Kaitlin K CampainItalyOnyama Limba NEW
Aika V SlusarskiSpainIvan Magalhaes RENEWAL
Julie D SergiRussiaXuxue Feng RENEWAL
Arvin W WieserRussiaAmy Elsner NEGOTIATION
Chavez I VocelkaIndiaOnyama Limba NEGOTIATION
Greenwood L StensethArgentinaAsiya Javayant NEGOTIATION
James H FerenczGermanyIoni Bowcher PROPOSAL
Kaitlin W AlbaresFranceBernardo Dominic RENEWAL
Faith G PerinItalyAmy Elsner QUALIFIED
Adams X MacleadFranceAnna Fali NEW
Sinclair M StockhamGermanyBernardo Dominic NEGOTIATION
Costa O CampainRussiaIoni Bowcher NEW
Morrow Y KuskoRussiaAsiya Javayant RENEWAL
Munro A SergiAustraliaAsiya Javayant NEGOTIATION
Sinclair Y RulapaughBrazilOnyama Limba NEGOTIATION
Wickens X IturbideGermanyAnna Fali QUALIFIED
Chavez Q PoquetteArgentinaIvan Magalhaes UNQUALIFIED
Faith F ButtCanadaStephen Shaw NEW
Mayumi G ShinkoAustraliaIoni Bowcher NEW
Jeanfrancois L RutaAustraliaAmy Elsner RENEWAL
Nicolas L DarakjyBrazilXuxue Feng NEW
Tony Z ShinkoUnited KingdomAsiya Javayant PROPOSAL
Murillo S WaycottBrazilOnyama Limba QUALIFIED
Faith W RoysterUnited KingdomStephen Shaw RENEWAL
Darci K WieserBrazilXuxue Feng UNQUALIFIED
James V KuskoRussiaBernardo Dominic PROPOSAL
Maria T DarakjyJapanIoni Bowcher NEGOTIATION
Mayumi M TollnerArgentinaAmy Elsner RENEWAL
Darci R CaldareraJapanXuxue Feng UNQUALIFIED
Nicolas V WaycottArgentinaBernardo Dominic NEGOTIATION
Kaitlin A StockhamAustraliaXuxue Feng NEGOTIATION
Salvatore O StensethAustraliaBernardo Dominic NEW
Leon U TollnerBrazilAsiya Javayant NEW
Johnson V PoquetteRussiaIvan Magalhaes UNQUALIFIED
Kadeem L FlosiUnited KingdomBernardo Dominic UNQUALIFIED
Silvio B DarakjySpainAnna Fali RENEWAL

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