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
Munro P GarufiAustraliaOnyama Limba QUALIFIED
Ivar B VocelkaIndiaStephen Shaw QUALIFIED
Murillo F BowleyItalyIoni Bowcher NEGOTIATION
Mayumi H WieserSpainIoni Bowcher RENEWAL
Jones W FollerCanadaOnyama Limba RENEWAL
David L ShinkoIndiaBernardo Dominic QUALIFIED
Salvatore S GarufiJapanOnyama Limba NEW
Munro C SergiSpainIoni Bowcher NEW
Claire T RutaFranceOnyama Limba QUALIFIED
Tony A DilliardBrazilXuxue Feng NEW
Jefferson D RimBrazilStephen Shaw UNQUALIFIED
Wickens V WhobreyCanadaElwin Sharvill UNQUALIFIED
Mayumi Q StockhamAustraliaElwin Sharvill NEGOTIATION
Aika P DilliardIndiaStephen Shaw NEGOTIATION
Tony S GillianBrazilAnna Fali NEW
Munro O BologniaJapanAmy Elsner PROPOSAL
Adams P MarrierJapanStephen Shaw NEGOTIATION
Silvio E PoquetteSpainAmy Elsner RENEWAL
Ricardo S WieserCanadaAmy Elsner NEGOTIATION
Maria S OstroskyFranceStephen Shaw QUALIFIED
Clifford W OldroydSpainAnna Fali QUALIFIED
Rodrigues Q CaldareraArgentinaAsiya Javayant RENEWAL
Jennifer M RutaCanadaAmy Elsner NEGOTIATION
Leja L RimSpainBernardo Dominic RENEWAL
Jefferson Z MaletFranceIoni Bowcher QUALIFIED
Aika M FlosiItalyOnyama Limba UNQUALIFIED
Mujtaba H BowleyCanadaAmy Elsner UNQUALIFIED
Isabel W ChuiFranceBernardo Dominic RENEWAL
Silvio U CampainJapanAmy Elsner PROPOSAL
Greenwood G NickaFranceAsiya Javayant PROPOSAL
Ivar Q RoysterSpainBernardo Dominic PROPOSAL
Faith N PerinCanadaAmy Elsner QUALIFIED
Antonio G RoysterAustraliaElwin Sharvill RENEWAL
James O CampainArgentinaIvan Magalhaes UNQUALIFIED
Leja W DoeItalyElwin Sharvill RENEWAL
Aika R GarufiArgentinaAnna Fali NEW
Isabel F GlickArgentinaOnyama Limba RENEWAL
Alejandro A BologniaArgentinaAnna Fali NEGOTIATION
Faith Y NickaBrazilIvan Magalhaes QUALIFIED
Salvatore H OstroskyGermanyStephen Shaw UNQUALIFIED
Octavia L MacleadCanadaIvan Magalhaes PROPOSAL
Adams D SlusarskiJapanOnyama Limba QUALIFIED
Aika X GillianUnited KingdomXuxue Feng NEW
Rodrigues L GarufiAustraliaXuxue Feng NEGOTIATION
Isabel Q ButtRussiaStephen Shaw QUALIFIED
Isabel S OstroskyGermanyAmy Elsner NEGOTIATION
Nicolas Y DilliardItalyStephen Shaw QUALIFIED
Costa P ShinkoBrazilStephen Shaw RENEWAL
Jennifer F OstroskyCanadaAnna Fali RENEWAL
Leon S ShinkoArgentinaIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kadeem P OldroydIndiaOnyama Limba RENEWAL
Murillo T DarakjyJapanXuxue Feng PROPOSAL
Francesco W OldroydRussiaElwin Sharvill QUALIFIED
Ivar Q CampainArgentinaOnyama Limba NEW
Jefferson R NestleGermanyElwin Sharvill QUALIFIED
Jones M CaudyIndiaAnna Fali UNQUALIFIED
David A WaycottArgentinaAmy Elsner RENEWAL
Octavia O ShinkoBrazilAsiya Javayant NEW
James B RulapaughSpainIoni Bowcher PROPOSAL
Chavez S FerenczIndiaBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro E StockhamFrance2024-05-29Printing Dimensions NEW93Elwin Sharvill
1001Mujtaba Q MaletRussia2024-06-10King, Christopher A Esq NEGOTIATION62Asiya Javayant
1002Misaki E FollerArgentina2024-06-06Rangoni Of Florence QUALIFIED95Elwin Sharvill
1003Rodrigues Z CaldareraItaly2024-06-15Chanay, Jeffrey A Esq QUALIFIED18Elwin Sharvill
1004Jeanfrancois U PaprockiBrazil2024-05-25Commercial Press QUALIFIED33Onyama Limba
1005Munro L StockhamAustralia2024-05-28Feltz Printing Service UNQUALIFIED63Xuxue Feng
1006Salvatore C PerinRussia2024-05-31Chemel, James L Cpa UNQUALIFIED91Ivan Magalhaes
1007Silvio O SchemmerCanada2024-05-27Chanay, Jeffrey A Esq NEGOTIATION91Ioni Bowcher
1008Ricardo D VocelkaAustralia2024-05-20Chanay, Jeffrey A Esq RENEWAL59Xuxue Feng
1009Aditya K AlbaresAustralia2024-05-31Buckley Miller Wright RENEWAL57Elwin Sharvill
1010Octavia W RimIndia2024-06-11Morlong Associates PROPOSAL13Amy Elsner
1011Emily L MorascaIndia2024-05-21Chapman, Ross E Esq QUALIFIED40Bernardo Dominic
1012Greenwood F GillianGermany2024-06-11Benton, John B Jr NEGOTIATION85Ioni Bowcher
1013Leja R PoquetteItaly2024-06-09Feiner Bros NEGOTIATION59Asiya Javayant
1014Johnson Q FerenczGermany2024-05-25Rousseaux, Michael Esq UNQUALIFIED10Ioni Bowcher
1015Izzy J AlbaresIndia2024-06-18Buckley Miller Wright RENEWAL64Ivan Magalhaes
1016Chavez P VenereArgentina2024-05-22Dorl, James J Esq NEGOTIATION0Stephen Shaw
1017Clifford W IturbideSpain2024-06-12Feiner Bros RENEWAL16Asiya Javayant
1018Leon E DilliardFrance2024-06-06Dorl, James J Esq NEW40Stephen Shaw
1019Isabel I CaudyArgentina2024-06-07King, Christopher A Esq NEW92Stephen Shaw
1020Mujtaba O MacleadCanada2024-06-09Rangoni Of Florence QUALIFIED48Elwin Sharvill
1021Munro J WieserFrance2024-05-27Chemel, James L Cpa NEGOTIATION10Ioni Bowcher
1022Francesco H PoquetteCanada2024-06-14Dorl, James J Esq NEGOTIATION25Amy Elsner
1023Arvin P MaletJapan2024-05-20Chapman, Ross E Esq NEW91Amy Elsner
1024Aditya Y WaycottRussia2024-06-16Rangoni Of Florence NEW93Xuxue Feng
1025Morrow B SaylorsBrazil2024-06-18Printing Dimensions NEW96Onyama Limba
1026Maisha F DilliardArgentina2024-06-08Chemel, James L Cpa PROPOSAL68Asiya Javayant
1027Stacey J KuskoRussia2024-06-17Buckley Miller Wright PROPOSAL3Elwin Sharvill
1028Julie L InouyeFrance2024-05-30Feiner Bros NEGOTIATION22Bernardo Dominic
1029Morrow R AmigonArgentina2024-06-06Feltz Printing Service UNQUALIFIED88Ivan Magalhaes
1030Antonio Y FigeroaBrazil2024-06-05Dorl, James J Esq NEW6Onyama Limba
1031Emily B MacleadJapan2024-06-03Feltz Printing Service PROPOSAL38Ivan Magalhaes
1032Jeanfrancois X MaletArgentina2024-05-29Feltz Printing Service NEW50Asiya Javayant
1033Kadeem A DarakjyItaly2024-06-08King, Christopher A Esq NEGOTIATION39Onyama Limba
1034Emily X MorascaRussia2024-06-16Dorl, James J Esq QUALIFIED18Ivan Magalhaes
1035Rodrigues I BowleyFrance2024-06-05Morlong Associates PROPOSAL62Ivan Magalhaes
1036Morrow T FigeroaUnited Kingdom2024-06-14Morlong Associates NEW38Anna Fali
1037Munro E DoeUnited Kingdom2024-05-26Rousseaux, Michael Esq PROPOSAL57Bernardo Dominic
1038Kaitlin U InouyeJapan2024-06-01Chemel, James L Cpa RENEWAL63Anna Fali
1039Aditya Q BologniaAustralia2024-05-25Rousseaux, Michael Esq UNQUALIFIED83Bernardo Dominic
1040Antonio M GarufiItaly2024-05-23Truhlar And Truhlar Attys RENEWAL72Stephen Shaw
1041Maria B OstroskyGermany2024-05-24Chapman, Ross E Esq UNQUALIFIED10Asiya Javayant
1042Salvatore H AlbaresJapan2024-05-23Rousseaux, Michael Esq UNQUALIFIED74Xuxue Feng
1043Silvio T IturbideItaly2024-05-26Chapman, Ross E Esq RENEWAL93Elwin Sharvill
1044Leon B RutaRussia2024-06-06Benton, John B Jr PROPOSAL32Asiya Javayant
1045Leon D SchemmerAustralia2024-06-18Morlong Associates NEW2Anna Fali
1046Leja L CaudyGermany2024-06-03Rousseaux, Michael Esq UNQUALIFIED20Ioni Bowcher
1047Wickens H GillianFrance2024-05-20Chanay, Jeffrey A Esq NEW75Anna Fali
1048Salvatore G WieserSpain2024-06-06Printing Dimensions UNQUALIFIED81Ivan Magalhaes
1049Murillo A MaletUnited Kingdom2024-05-31Rousseaux, Michael Esq RENEWAL33Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Johnson C RimGermanyAmy Elsner RENEWAL
Alejandro H WhobreyAustraliaStephen Shaw RENEWAL
Ashley P CaldareraItalyElwin Sharvill UNQUALIFIED
Darci N PaprockiFranceAnna Fali NEGOTIATION
Maria M StockhamUnited KingdomAmy Elsner NEGOTIATION
Stacey S GillianArgentinaStephen Shaw NEGOTIATION
Faith R RoysterJapanElwin Sharvill QUALIFIED
Johnson P RulapaughUnited KingdomElwin Sharvill RENEWAL
Nicolas B MorascaBrazilBernardo Dominic UNQUALIFIED
Ashley P ButtUnited KingdomElwin Sharvill UNQUALIFIED
Rodrigues F StockhamJapanElwin Sharvill NEGOTIATION
Claire Q PaprockiFranceAsiya Javayant NEW
Clifford J CaudyFranceElwin Sharvill UNQUALIFIED
Morrow W BowleyUnited KingdomIvan Magalhaes NEGOTIATION
Tony S AlbaresIndiaAnna Fali UNQUALIFIED
Kadeem L GillianGermanyStephen Shaw PROPOSAL
Salvatore V ChuiArgentinaBernardo Dominic NEW
Francesco P GauchoBrazilStephen Shaw NEW
Clifford B OstroskyIndiaIvan Magalhaes NEGOTIATION
Tony D PoquetteJapanAmy Elsner NEW
Smith L AlbaresItalyBernardo Dominic NEGOTIATION
Ivar B ButtFranceXuxue Feng QUALIFIED
Kaitlin G NickaSpainXuxue Feng RENEWAL
Costa V TollnerAustraliaAmy Elsner NEW
Claire Q DarakjyRussiaIvan Magalhaes UNQUALIFIED
David Z GlickFranceAsiya Javayant PROPOSAL
Leja T BriddickBrazilElwin Sharvill PROPOSAL
Clifford D VocelkaRussiaIvan Magalhaes UNQUALIFIED
Morrow H GauchoBrazilXuxue Feng RENEWAL
Murillo M SaylorsArgentinaIvan Magalhaes PROPOSAL
Leja S DarakjySpainXuxue Feng UNQUALIFIED
Julie D MaletUnited KingdomBernardo Dominic PROPOSAL
Costa B BologniaJapanIoni Bowcher NEW
Deepesh X NestleBrazilIoni Bowcher QUALIFIED
Munro N StensethSpainElwin Sharvill RENEWAL
Sinclair W InouyeIndiaAmy Elsner RENEWAL
Jones L FlosiRussiaXuxue Feng NEW
Johnson B RulapaughJapanAmy Elsner PROPOSAL
Isabel H MacleadSpainIoni Bowcher QUALIFIED
Jefferson J RimIndiaAsiya Javayant QUALIFIED
Julie M PerinBrazilStephen Shaw RENEWAL
Francesco N CaldareraIndiaIvan Magalhaes UNQUALIFIED
Morrow K BologniaItalyStephen Shaw QUALIFIED
Juan A GauchoGermanyStephen Shaw PROPOSAL
Adams H BriddickRussiaIoni Bowcher NEW
Chavez T BologniaJapanBernardo Dominic RENEWAL
Antonio X CaldareraFranceElwin Sharvill NEGOTIATION
Jefferson Z VocelkaUnited KingdomAmy Elsner NEGOTIATION
Alejandro X RutaFranceElwin Sharvill PROPOSAL
Smith G CampainBrazilElwin Sharvill RENEWAL
Frozen Columns
Name
Cody O Bolognia
Ivar R Flosi
Jefferson Q Wieser
Leon S Shinko
Greenwood D Chui
Chavez F Albares
Antonio D Doe
Misaki Q Tollner
Clifford J Stenseth
Julie E Rulapaugh
Costa X Perin
Emily Q Inouye
Francesco D Shinko
Aditya V Dilliard
Maisha D Glick
Sinclair Q Amigon
James I Flosi
Tony R Ferencz
Mujtaba O Darakjy
Jeanfrancois A Gillian
Kadeem M Foller
Kadeem K Gaucho
Adams N Rim
Ricardo U Kusko
Maisha U Rim
Clifford K Caldarera
Antonio W Sergi
Aika P Ferencz
Aika Y Ostrosky
Alejandro V Kolmetz
Chavez V Nicka
Izzy D Bolognia
Cody I Caldarera
James X Rim
Sinclair T Sergi
Murillo R Gillian
Salvatore T Inouye
Jennifer K Briddick
Stacey Z Paprocki
Mayumi L Stenseth
Stacey M Campain
Murillo F Inouye
Aika G Shinko
Salvatore S Vocelka
Emily Y Venere
Chavez M Bolognia
Misaki H Albares
Stacey E Nicka
Jeanfrancois O Royster
Deepesh C Iturbide
IdCountryDate
1000Japan2024-05-26
1001Italy2024-06-06
1002Italy2024-06-05
1003Spain2024-05-30
1004Canada2024-06-14
1005Australia2024-06-08
1006Japan2024-05-27
1007Argentina2024-05-25
1008Spain2024-05-22
1009France2024-06-08
1010United Kingdom2024-05-20
1011Germany2024-06-01
1012Germany2024-06-06
1013Russia2024-06-18
1014Brazil2024-05-20
1015France2024-06-13
1016Australia2024-06-17
1017Russia2024-06-05
1018France2024-06-09
1019Spain2024-05-20
1020India2024-05-28
1021Canada2024-06-16
1022Russia2024-06-04
1023Russia2024-05-30
1024Canada2024-06-10
1025Argentina2024-06-05
1026Canada2024-06-07
1027Canada2024-06-07
1028United Kingdom2024-06-17
1029Argentina2024-06-13
1030United Kingdom2024-06-03
1031Spain2024-06-07
1032United Kingdom2024-06-06
1033Russia2024-06-09
1034Russia2024-06-09
1035France2024-05-31
1036United Kingdom2024-06-01
1037Germany2024-05-27
1038Germany2024-06-11
1039Australia2024-06-07
1040Spain2024-05-21
1041France2024-06-10
1042France2024-05-23
1043Italy2024-06-07
1044India2024-05-22
1045Australia2024-05-29
1046Argentina2024-05-22
1047Germany2024-05-20
1048France2024-06-01
1049Argentina2024-05-29

On-Demand Data

NameIdCountryDate
Cody T Ruta1000Spain2024-06-17
James K Bolognia1001India2024-05-25
Misaki S Nestle1002Italy2024-06-13
Munro T Saylors1003India2024-05-30
Wickens S Nestle1004Spain2024-06-02
Jennifer O Darakjy1005France2024-06-07
Darci B Campain1006Italy2024-06-12
Antonio E Vocelka1007Australia2024-05-30
James G Glick1008Germany2024-06-10
David R Ruta1009France2024-05-24
Ricardo T Garufi1010Russia2024-05-25
Mayumi G Chui1011Spain2024-05-21
Claire B Ostrosky1012Australia2024-05-25
Octavia B Paprocki1013Russia2024-05-30
Deepesh P Nicka1014Brazil2024-06-15
Cody L Ostrosky1015Argentina2024-05-28
Maria P Ostrosky1016Italy2024-06-04
Leja Z Slusarski1017United Kingdom2024-06-04
Faith R Malet1018Japan2024-06-09
Juan N Bolognia1019United Kingdom2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan X PoquetteJapanElwin Sharvill UNQUALIFIED
Adams P DilliardSpainOnyama Limba NEW
Claire O StensethGermanyAnna Fali UNQUALIFIED
Kaitlin X InouyeSpainIvan Magalhaes NEW
Deepesh F WhobreyRussiaElwin Sharvill NEW
Mujtaba G SaylorsJapanStephen Shaw NEGOTIATION
Emily H SaylorsUnited KingdomAnna Fali UNQUALIFIED
Clifford R MacleadBrazilElwin Sharvill NEW
Deepesh H VocelkaIndiaStephen Shaw QUALIFIED
Arvin Y OldroydCanadaIoni Bowcher PROPOSAL
Octavia B KolmetzGermanyStephen Shaw PROPOSAL
Sinclair H GarufiAustraliaOnyama Limba UNQUALIFIED
Greenwood K StensethJapanOnyama Limba NEW
Greenwood J VenereGermanyIvan Magalhaes UNQUALIFIED
Arvin V SergiAustraliaElwin Sharvill QUALIFIED
James Y DilliardUnited KingdomXuxue Feng QUALIFIED
Alejandro B FigeroaRussiaStephen Shaw PROPOSAL
Izzy X NickaBrazilBernardo Dominic PROPOSAL
Deepesh E VocelkaRussiaBernardo Dominic QUALIFIED
Murillo B OstroskySpainOnyama Limba UNQUALIFIED
Munro V FerenczIndiaStephen Shaw PROPOSAL
Kaitlin E FigeroaJapanElwin Sharvill QUALIFIED
Alejandro Q FollerIndiaAnna Fali RENEWAL
Ricardo S DoeJapanIvan Magalhaes NEGOTIATION
Octavia T ChuiItalyIvan Magalhaes UNQUALIFIED
Tony P FerenczFranceStephen Shaw NEW
Maria T StensethBrazilElwin Sharvill RENEWAL
Adams T AlbaresFranceAmy Elsner UNQUALIFIED
Juan L WhobreyGermanyBernardo Dominic NEW
Kaitlin R MacleadArgentinaOnyama Limba RENEWAL
Tony J VenereRussiaIoni Bowcher RENEWAL
Chavez H RutaBrazilBernardo Dominic UNQUALIFIED
Francesco S VenereItalyOnyama Limba PROPOSAL
Munro C SchemmerGermanyOnyama Limba NEGOTIATION
James W SaylorsUnited KingdomIvan Magalhaes RENEWAL
Jones J WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Juan D PaprockiRussiaIoni Bowcher UNQUALIFIED
Aditya N SergiSpainXuxue Feng RENEWAL
Antonio D DoeIndiaBernardo Dominic QUALIFIED
Mujtaba O MaletCanadaOnyama Limba 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>