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
Arvin D DoeAustraliaBernardo Dominic NEGOTIATION
Wickens N BowleySpainXuxue Feng UNQUALIFIED
Izzy N SergiItalyElwin Sharvill QUALIFIED
Jefferson X SchemmerCanadaStephen Shaw NEW
Jefferson H MacleadBrazilAmy Elsner UNQUALIFIED
Kaitlin X ShinkoUnited KingdomAnna Fali RENEWAL
Kaitlin H MarrierCanadaAmy Elsner RENEWAL
Maria S WhobreyBrazilStephen Shaw NEGOTIATION
Misaki P SergiUnited KingdomOnyama Limba NEGOTIATION
Kadeem C AlbaresGermanyBernardo Dominic NEGOTIATION
Ricardo Q MorascaSpainBernardo Dominic PROPOSAL
Rodrigues D BowleyBrazilElwin Sharvill UNQUALIFIED
Salvatore J RutaIndiaElwin Sharvill PROPOSAL
Mujtaba N VocelkaUnited KingdomBernardo Dominic RENEWAL
Stacey G DilliardBrazilAmy Elsner UNQUALIFIED
Silvio U DoeJapanAmy Elsner NEW
Antonio W TollnerIndiaOnyama Limba RENEWAL
Izzy S RulapaughSpainStephen Shaw NEW
Darci H MaletRussiaElwin Sharvill RENEWAL
Ivar O VenereRussiaOnyama Limba PROPOSAL
Arvin V GlickBrazilAsiya Javayant RENEWAL
Wickens L PoquetteGermanyAmy Elsner RENEWAL
Tony B MorascaSpainAsiya Javayant RENEWAL
Faith R BriddickItalyBernardo Dominic PROPOSAL
Ashley K GlickJapanIoni Bowcher NEW
Jeanfrancois H BowleyRussiaElwin Sharvill NEW
Johnson D MorascaRussiaBernardo Dominic QUALIFIED
Nicolas A MacleadRussiaIvan Magalhaes UNQUALIFIED
Munro N ChuiJapanStephen Shaw QUALIFIED
Wickens A RutaFranceXuxue Feng RENEWAL
Izzy X BologniaGermanyIoni Bowcher RENEWAL
Mujtaba B RimRussiaAmy Elsner NEGOTIATION
Johnson U RulapaughArgentinaIoni Bowcher PROPOSAL
Silvio W KolmetzRussiaStephen Shaw NEGOTIATION
Jeanfrancois E GillianArgentinaIoni Bowcher QUALIFIED
Stacey T RimIndiaAmy Elsner QUALIFIED
Nicolas K GlickBrazilBernardo Dominic NEW
Morrow V KuskoCanadaIvan Magalhaes PROPOSAL
Faith P DilliardArgentinaElwin Sharvill NEW
Ivar C MaletJapanAsiya Javayant NEGOTIATION
Kaitlin D RimGermanyIvan Magalhaes PROPOSAL
Aditya L SergiBrazilOnyama Limba RENEWAL
Ashley J CaldareraArgentinaAnna Fali PROPOSAL
Ivar O SchemmerJapanStephen Shaw NEW
Faith T CaldareraGermanyOnyama Limba PROPOSAL
Aditya M FlosiSpainXuxue Feng UNQUALIFIED
Misaki Y PaprockiCanadaAsiya Javayant NEW
Salvatore J RimCanadaAnna Fali NEGOTIATION
Costa Y ButtArgentinaXuxue Feng UNQUALIFIED
Jeanfrancois M AmigonFranceIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Munro H BowleyUnited KingdomStephen Shaw PROPOSAL
Murillo J ButtAustraliaBernardo Dominic QUALIFIED
Antonio Z GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro Z ButtItalyAmy Elsner NEW
Aruna K NickaGermanyBernardo Dominic NEGOTIATION
Clifford J CampainUnited KingdomIoni Bowcher UNQUALIFIED
Leja E CampainGermanyAsiya Javayant UNQUALIFIED
Adams Q AmigonIndiaElwin Sharvill NEW
Maria E OstroskyJapanAsiya Javayant NEW
Isabel P ChuiRussiaAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues G GarufiFrance2024-05-06Truhlar And Truhlar Attys NEGOTIATION60Stephen Shaw
1001James O RulapaughItaly2024-05-14Dorl, James J Esq PROPOSAL61Xuxue Feng
1002Wickens O CampainJapan2024-05-12King, Christopher A Esq UNQUALIFIED8Stephen Shaw
1003Chavez Q OstroskyJapan2024-05-04Feiner Bros NEW50Stephen Shaw
1004Jeanfrancois P VenereArgentina2024-05-30Buckley Miller Wright NEW3Stephen Shaw
1005Sinclair W RoysterBrazil2024-05-22Feiner Bros NEGOTIATION28Amy Elsner
1006Kadeem C CaudyGermany2024-05-05Chanay, Jeffrey A Esq RENEWAL9Anna Fali
1007Kadeem I OstroskyCanada2024-05-10Buckley Miller Wright QUALIFIED80Asiya Javayant
1008Mayumi S BriddickFrance2024-05-30Benton, John B Jr PROPOSAL70Elwin Sharvill
1009Murillo A DoeCanada2024-05-11Printing Dimensions NEGOTIATION12Bernardo Dominic
1010Clifford T BologniaAustralia2024-05-29Feltz Printing Service PROPOSAL93Onyama Limba
1011Costa N AmigonAustralia2024-05-06Truhlar And Truhlar Attys RENEWAL8Anna Fali
1012Juan S WhobreyFrance2024-05-22Commercial Press RENEWAL47Anna Fali
1013Juan V GillianArgentina2024-05-21Dorl, James J Esq RENEWAL72Ioni Bowcher
1014Julie Q PoquetteSpain2024-05-15Buckley Miller Wright NEGOTIATION77Bernardo Dominic
1015Stacey A BowleyUnited Kingdom2024-05-06Chemel, James L Cpa RENEWAL64Ivan Magalhaes
1016Tony L StensethSpain2024-05-10Truhlar And Truhlar Attys NEW98Xuxue Feng
1017Juan Y GlickJapan2024-05-23Chanay, Jeffrey A Esq RENEWAL11Ivan Magalhaes
1018Aika P VenereArgentina2024-05-27Chapman, Ross E Esq PROPOSAL58Amy Elsner
1019Munro P SaylorsAustralia2024-05-27Chemel, James L Cpa QUALIFIED66Bernardo Dominic
1020Isabel X SchemmerFrance2024-05-07Buckley Miller Wright UNQUALIFIED3Ioni Bowcher
1021Julie Y KolmetzBrazil2024-05-28Dorl, James J Esq PROPOSAL99Ivan Magalhaes
1022Leon T GauchoAustralia2024-05-15Buckley Miller Wright PROPOSAL13Xuxue Feng
1023Johnson K RimBrazil2024-05-11Feiner Bros NEW17Ioni Bowcher
1024Salvatore R StensethGermany2024-05-03Feltz Printing Service QUALIFIED68Bernardo Dominic
1025Chavez T ButtItaly2024-05-24Printing Dimensions NEGOTIATION50Amy Elsner
1026Munro I GillianItaly2024-05-21Truhlar And Truhlar Attys NEW38Bernardo Dominic
1027Darci W SlusarskiItaly2024-05-20Truhlar And Truhlar Attys NEGOTIATION30Onyama Limba
1028Kadeem V MaletGermany2024-05-12Truhlar And Truhlar Attys QUALIFIED50Ivan Magalhaes
1029Rodrigues C BologniaIndia2024-05-19Rousseaux, Michael Esq NEW79Amy Elsner
1030Jennifer D WaycottFrance2024-05-20Chanay, Jeffrey A Esq RENEWAL78Asiya Javayant
1031Leon E VenereIndia2024-05-15Dorl, James J Esq RENEWAL73Onyama Limba
1032Jefferson S ChuiJapan2024-05-08Printing Dimensions RENEWAL15Ioni Bowcher
1033Aruna K GillianFrance2024-05-24Feiner Bros NEGOTIATION81Ivan Magalhaes
1034Kaitlin P OldroydIndia2024-05-23Buckley Miller Wright UNQUALIFIED82Bernardo Dominic
1035Juan W FigeroaJapan2024-05-24Chemel, James L Cpa NEW57Ioni Bowcher
1036Emily Y SergiFrance2024-05-14Dorl, James J Esq PROPOSAL44Ioni Bowcher
1037Isabel X GarufiArgentina2024-05-22Buckley Miller Wright NEW66Ivan Magalhaes
1038Sinclair R WaycottItaly2024-05-28Chemel, James L Cpa QUALIFIED78Bernardo Dominic
1039Jennifer N GlickUnited Kingdom2024-05-12Commercial Press PROPOSAL59Elwin Sharvill
1040Rodrigues X VenereItaly2024-05-26Commercial Press NEGOTIATION20Stephen Shaw
1041Leon N OldroydJapan2024-05-27Chanay, Jeffrey A Esq PROPOSAL34Bernardo Dominic
1042Tony L CaldareraGermany2024-05-19Truhlar And Truhlar Attys NEW74Onyama Limba
1043Ricardo Z RulapaughFrance2024-05-22Rousseaux, Michael Esq RENEWAL25Ioni Bowcher
1044Silvio U KolmetzCanada2024-05-15Buckley Miller Wright PROPOSAL28Bernardo Dominic
1045Salvatore O MaletIndia2024-05-19Chemel, James L Cpa NEGOTIATION43Xuxue Feng
1046Mujtaba T ChuiIndia2024-05-13Dorl, James J Esq QUALIFIED22Onyama Limba
1047Ivar Y SchemmerItaly2024-05-23Commercial Press RENEWAL2Ivan Magalhaes
1048Sinclair L ButtAustralia2024-05-09Printing Dimensions RENEWAL71Bernardo Dominic
1049Aika I WaycottIndia2024-05-27Commercial Press NEW6Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ricardo L DoeFranceBernardo Dominic RENEWAL
Ivar T WhobreyCanadaIvan Magalhaes RENEWAL
Faith X GarufiSpainIoni Bowcher PROPOSAL
Johnson O FollerGermanyAnna Fali UNQUALIFIED
Arvin R WaycottSpainOnyama Limba RENEWAL
Misaki J PaprockiSpainXuxue Feng NEW
Juan L PaprockiArgentinaIoni Bowcher PROPOSAL
Mujtaba Q MacleadArgentinaElwin Sharvill RENEWAL
James E RoysterCanadaAmy Elsner QUALIFIED
Ivar K SchemmerArgentinaBernardo Dominic NEGOTIATION
Maria N PaprockiJapanAmy Elsner RENEWAL
Jennifer F WaycottRussiaBernardo Dominic PROPOSAL
Arvin U OldroydRussiaAmy Elsner NEW
Ivar Y BologniaUnited KingdomBernardo Dominic PROPOSAL
Chavez W BriddickUnited KingdomAnna Fali UNQUALIFIED
David H OldroydAustraliaAsiya Javayant PROPOSAL
Jeanfrancois F SchemmerSpainElwin Sharvill NEW
Clifford F TollnerJapanStephen Shaw UNQUALIFIED
Jones K VocelkaGermanyStephen Shaw UNQUALIFIED
Maisha O StensethJapanXuxue Feng UNQUALIFIED
Cody V AmigonAustraliaXuxue Feng UNQUALIFIED
Maria G IturbideBrazilAsiya Javayant NEGOTIATION
Nicolas Y CaldareraGermanyIoni Bowcher RENEWAL
Munro X MarrierUnited KingdomOnyama Limba NEW
Jefferson P PaprockiJapanOnyama Limba NEW
James W NestleFranceElwin Sharvill UNQUALIFIED
Smith M KuskoCanadaAnna Fali NEGOTIATION
Costa V TollnerIndiaXuxue Feng UNQUALIFIED
Darci N MacleadRussiaIvan Magalhaes QUALIFIED
James C KuskoUnited KingdomElwin Sharvill NEW
Kaitlin V ButtSpainIoni Bowcher NEGOTIATION
Sinclair N NickaJapanAsiya Javayant NEGOTIATION
Isabel D DoeItalyIoni Bowcher QUALIFIED
Murillo H OldroydUnited KingdomIoni Bowcher NEGOTIATION
Munro F VocelkaGermanyOnyama Limba RENEWAL
Jeanfrancois C MaletJapanAnna Fali NEW
Aika C TollnerBrazilAmy Elsner RENEWAL
Claire K MaletIndiaElwin Sharvill QUALIFIED
Wickens B NickaSpainStephen Shaw NEW
Jeanfrancois I AmigonSpainStephen Shaw NEGOTIATION
Darci R BologniaIndiaOnyama Limba QUALIFIED
Faith Q MorascaAustraliaIoni Bowcher NEGOTIATION
Mayumi L RutaIndiaBernardo Dominic UNQUALIFIED
Clifford L TollnerBrazilIvan Magalhaes UNQUALIFIED
Chavez X GillianItalyAnna Fali RENEWAL
Greenwood E FlosiUnited KingdomIvan Magalhaes NEW
Leja S CampainAustraliaAmy Elsner PROPOSAL
Chavez B OstroskyCanadaOnyama Limba RENEWAL
Leja Z BriddickJapanStephen Shaw UNQUALIFIED
Aditya H RutaGermanyElwin Sharvill NEW
Frozen Columns
Name
Ivar T Nicka
Arvin X Nestle
Stacey J Gillian
Silvio V Inouye
Silvio R Ferencz
Juan E Bolognia
Francesco F Nicka
Greenwood V Campain
Wickens V Vocelka
Clifford W Caudy
Ivar I Flosi
Arvin D Foller
Smith M Bolognia
Munro Z Sergi
Stacey U Malet
Maria G Gaucho
Mayumi G Waycott
Wickens A Garufi
Claire K Kusko
Jennifer E Malet
Jeanfrancois X Ruta
Aruna Z Garufi
Greenwood T Venere
Wickens F Garufi
Faith Z Doe
Johnson S Campain
Antonio G Malet
Octavia D Doe
Misaki X Campain
Munro S Butt
Isabel R Paprocki
Johnson Q Slusarski
Ricardo J Nestle
Claire T Butt
Tony O Gaucho
Misaki I Wieser
Costa B Slusarski
Maria L Glick
Rodrigues P Gillian
Chavez Q Venere
Antonio G Garufi
Tony L Gillian
Aika V Glick
Kadeem K Butt
Salvatore I Foller
Ashley E Perin
Ivar A Poquette
Salvatore N Tollner
Sinclair S Marrier
Francesco R Royster
IdCountryDate
1000Spain2024-05-06
1001Russia2024-05-05
1002India2024-05-06
1003India2024-05-21
1004Brazil2024-05-31
1005Canada2024-05-12
1006Spain2024-05-10
1007France2024-05-04
1008Spain2024-05-11
1009Germany2024-05-11
1010Argentina2024-05-22
1011Spain2024-05-03
1012Canada2024-05-12
1013France2024-05-16
1014Spain2024-05-21
1015Spain2024-05-12
1016Argentina2024-05-26
1017Spain2024-05-14
1018Italy2024-05-28
1019United Kingdom2024-05-07
1020Italy2024-05-29
1021Brazil2024-05-27
1022Australia2024-05-30
1023Russia2024-05-13
1024Italy2024-05-21
1025Japan2024-05-21
1026Russia2024-05-06
1027United Kingdom2024-05-20
1028Italy2024-05-20
1029France2024-05-21
1030Argentina2024-05-09
1031Russia2024-05-14
1032Russia2024-05-18
1033Canada2024-05-06
1034France2024-05-04
1035Canada2024-05-11
1036Italy2024-05-05
1037Germany2024-05-16
1038United Kingdom2024-05-08
1039Argentina2024-05-29
1040Brazil2024-05-28
1041Spain2024-05-04
1042United Kingdom2024-05-10
1043Brazil2024-05-13
1044Russia2024-05-04
1045Brazil2024-05-20
1046France2024-05-28
1047Argentina2024-05-22
1048United Kingdom2024-05-09
1049Spain2024-05-04

On-Demand Data

NameIdCountryDate
Nicolas K Campain1000Argentina2024-05-06
Leja N Ferencz1001Italy2024-05-15
Francesco T Perin1002India2024-05-17
Sinclair F Butt1003Brazil2024-05-04
Izzy E Marrier1004Italy2024-05-27
Stacey R Saylors1005United Kingdom2024-05-17
Darci F Gaucho1006Brazil2024-05-11
Jennifer L Marrier1007Germany2024-05-18
Julie M Darakjy1008Argentina2024-05-08
Juan X Saylors1009Russia2024-05-17
Leja C Kolmetz1010Germany2024-05-19
Antonio B Waycott1011Argentina2024-05-28
Emily O Darakjy1012France2024-05-08
Tony E Butt1013Canada2024-05-13
Izzy Q Darakjy1014Australia2024-05-23
Johnson Y Nestle1015Italy2024-05-27
Aruna H Ostrosky1016Brazil2024-05-25
Octavia V Marrier1017Japan2024-05-16
Rodrigues W Butt1018Italy2024-05-06
Jones G Perin1019Brazil2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha O PaprockiBrazilStephen Shaw PROPOSAL
Antonio X CaldareraBrazilIoni Bowcher NEW
Ashley P PerinJapanStephen Shaw RENEWAL
David D DarakjyIndiaAsiya Javayant NEGOTIATION
Faith B TollnerSpainAnna Fali NEGOTIATION
Juan F NickaUnited KingdomAmy Elsner UNQUALIFIED
Antonio Q BowleyIndiaOnyama Limba UNQUALIFIED
Juan L DilliardCanadaAsiya Javayant QUALIFIED
Adams F MaletItalyIvan Magalhaes RENEWAL
Jones M PaprockiRussiaAnna Fali PROPOSAL
Wickens Z CaudyUnited KingdomAmy Elsner PROPOSAL
Jefferson X FollerBrazilElwin Sharvill UNQUALIFIED
Salvatore M FollerItalyElwin Sharvill PROPOSAL
James K AmigonItalyStephen Shaw QUALIFIED
Wickens N OstroskySpainElwin Sharvill NEGOTIATION
Leon R RoysterSpainAmy Elsner QUALIFIED
Darci A MacleadItalyAnna Fali UNQUALIFIED
Munro E MorascaCanadaBernardo Dominic NEW
Morrow O MacleadAustraliaAnna Fali PROPOSAL
Costa X MaletFranceAnna Fali UNQUALIFIED
Ricardo N CaudyGermanyAmy Elsner NEW
Smith L BowleyBrazilElwin Sharvill QUALIFIED
Mujtaba I DarakjyJapanBernardo Dominic RENEWAL
Munro O GarufiFranceAnna Fali RENEWAL
Clifford G GauchoIndiaAmy Elsner RENEWAL
Nicolas S BriddickAustraliaOnyama Limba NEW
Claire L RoysterAustraliaAnna Fali NEGOTIATION
Mayumi O GarufiBrazilAsiya Javayant QUALIFIED
Juan A PaprockiSpainBernardo Dominic NEGOTIATION
Rodrigues N CaldareraUnited KingdomAsiya Javayant UNQUALIFIED
Morrow K CaldareraArgentinaStephen Shaw NEGOTIATION
Arvin W FlosiAustraliaXuxue Feng PROPOSAL
Smith V OstroskyIndiaIoni Bowcher QUALIFIED
Stacey K CaudyBrazilXuxue Feng PROPOSAL
Ivar E RulapaughBrazilBernardo Dominic UNQUALIFIED
Jennifer V RimIndiaIvan Magalhaes PROPOSAL
Chavez Z PoquetteJapanOnyama Limba QUALIFIED
Jones J ShinkoSpainXuxue Feng NEGOTIATION
Rodrigues S ButtUnited KingdomStephen Shaw UNQUALIFIED
Jones Z SchemmerFranceBernardo Dominic 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>