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
Leja Q ShinkoRussiaAmy Elsner NEGOTIATION
Tony S DoeIndiaXuxue Feng PROPOSAL
Morrow V KolmetzAustraliaElwin Sharvill UNQUALIFIED
Adams N RimJapanStephen Shaw PROPOSAL
Maisha G BologniaSpainElwin Sharvill QUALIFIED
Kaitlin B RoysterJapanAmy Elsner RENEWAL
Mayumi P NestleItalyAnna Fali QUALIFIED
Emily Q StockhamGermanyBernardo Dominic UNQUALIFIED
Leon W BriddickUnited KingdomAnna Fali RENEWAL
Darci Y CaldareraBrazilIoni Bowcher NEW
Aditya V SergiAustraliaXuxue Feng QUALIFIED
Wickens M WhobreyGermanyXuxue Feng RENEWAL
Deepesh H CaudyRussiaBernardo Dominic QUALIFIED
Johnson Q OldroydRussiaAmy Elsner PROPOSAL
Kadeem X KolmetzBrazilBernardo Dominic UNQUALIFIED
Claire G FollerGermanyStephen Shaw NEGOTIATION
David J SchemmerRussiaStephen Shaw NEW
Maria Z GauchoBrazilAnna Fali RENEWAL
Kadeem X MorascaBrazilAmy Elsner NEW
Arvin U PoquetteIndiaElwin Sharvill QUALIFIED
Jennifer B FlosiUnited KingdomIoni Bowcher NEGOTIATION
Claire A FerenczCanadaAnna Fali QUALIFIED
Ricardo N FlosiJapanBernardo Dominic QUALIFIED
Aruna F GauchoJapanIoni Bowcher NEGOTIATION
Kaitlin K MorascaCanadaOnyama Limba NEW
Aruna K FerenczJapanIvan Magalhaes RENEWAL
Misaki M SlusarskiIndiaBernardo Dominic UNQUALIFIED
Morrow V BologniaCanadaOnyama Limba NEW
Murillo O DilliardArgentinaIoni Bowcher NEGOTIATION
Kadeem U ChuiIndiaStephen Shaw RENEWAL
Rodrigues F MaletArgentinaAnna Fali QUALIFIED
Francesco J SlusarskiCanadaIvan Magalhaes NEW
Aruna V BologniaBrazilIoni Bowcher UNQUALIFIED
Jennifer E StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Maria N SergiGermanyElwin Sharvill PROPOSAL
Costa X RimUnited KingdomXuxue Feng NEGOTIATION
Deepesh C AmigonFranceAmy Elsner RENEWAL
Salvatore Z KolmetzCanadaOnyama Limba NEW
James Z BowleyJapanIvan Magalhaes NEGOTIATION
Faith W BologniaUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro S SergiCanadaElwin Sharvill RENEWAL
Wickens Y FerenczRussiaAnna Fali NEW
Julie T WaycottAustraliaAmy Elsner RENEWAL
Chavez K CaldareraIndiaOnyama Limba NEW
Rodrigues Z FollerUnited KingdomOnyama Limba RENEWAL
Faith Z GillianGermanyXuxue Feng UNQUALIFIED
Misaki T PoquetteGermanyIoni Bowcher PROPOSAL
Kadeem S StensethCanadaIoni Bowcher RENEWAL
Jennifer Q MarrierCanadaXuxue Feng RENEWAL
Jefferson O StockhamGermanyStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Silvio M AlbaresArgentinaAmy Elsner RENEWAL
Antonio B ShinkoArgentinaAmy Elsner QUALIFIED
Sinclair Y ButtSpainAnna Fali PROPOSAL
Mujtaba S GarufiRussiaIvan Magalhaes RENEWAL
Murillo N InouyeAustraliaAnna Fali QUALIFIED
Emily K NickaSpainBernardo Dominic PROPOSAL
Murillo K NickaUnited KingdomBernardo Dominic NEW
Darci K MacleadArgentinaBernardo Dominic NEW
Morrow U FigeroaUnited KingdomOnyama Limba NEW
Wickens V VocelkaRussiaElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin U InouyeUnited Kingdom2024-04-25Rousseaux, Michael Esq RENEWAL6Amy Elsner
1001Cody I InouyeSpain2024-05-09Buckley Miller Wright RENEWAL50Amy Elsner
1002Izzy B KuskoUnited Kingdom2024-05-18Benton, John B Jr QUALIFIED32Elwin Sharvill
1003Deepesh K StensethCanada2024-05-23Benton, John B Jr NEW79Xuxue Feng
1004Smith J DarakjyAustralia2024-05-23Chanay, Jeffrey A Esq UNQUALIFIED84Elwin Sharvill
1005Emily J NestleGermany2024-05-04King, Christopher A Esq NEGOTIATION89Elwin Sharvill
1006Kadeem E RoysterArgentina2024-05-10Chanay, Jeffrey A Esq NEW30Ivan Magalhaes
1007Clifford K GillianIndia2024-05-11Buckley Miller Wright QUALIFIED13Onyama Limba
1008Misaki B RutaCanada2024-04-30Rangoni Of Florence PROPOSAL98Stephen Shaw
1009Darci K PoquetteArgentina2024-05-18Commercial Press NEW5Onyama Limba
1010Deepesh W ChuiBrazil2024-05-03Chemel, James L Cpa NEW4Onyama Limba
1011Juan R KuskoJapan2024-05-16Commercial Press RENEWAL28Bernardo Dominic
1012Aika I ShinkoJapan2024-05-22Buckley Miller Wright UNQUALIFIED12Anna Fali
1013Claire C VocelkaArgentina2024-05-01Commercial Press UNQUALIFIED31Xuxue Feng
1014Chavez Z WaycottSpain2024-05-08Dorl, James J Esq RENEWAL48Xuxue Feng
1015Maria F DarakjyFrance2024-05-11Chapman, Ross E Esq NEW65Xuxue Feng
1016Mayumi A InouyeRussia2024-05-03Buckley Miller Wright NEGOTIATION29Xuxue Feng
1017Jones T AlbaresIndia2024-05-12Feltz Printing Service NEGOTIATION86Bernardo Dominic
1018Ivar V ShinkoIndia2024-05-20Rousseaux, Michael Esq PROPOSAL25Amy Elsner
1019Isabel W RulapaughJapan2024-05-23Chapman, Ross E Esq UNQUALIFIED44Asiya Javayant
1020Leon D NestleGermany2024-05-07Chemel, James L Cpa QUALIFIED89Amy Elsner
1021Costa P MarrierUnited Kingdom2024-05-23Feltz Printing Service NEGOTIATION15Xuxue Feng
1022Salvatore I RoysterBrazil2024-05-01Chanay, Jeffrey A Esq UNQUALIFIED17Ioni Bowcher
1023Aditya V GillianItaly2024-04-25Dorl, James J Esq NEGOTIATION60Ivan Magalhaes
1024Rodrigues V FollerCanada2024-05-15Truhlar And Truhlar Attys NEW48Stephen Shaw
1025Claire S DarakjyCanada2024-05-22Dorl, James J Esq QUALIFIED88Stephen Shaw
1026Octavia P GillianFrance2024-05-06Feiner Bros QUALIFIED60Ioni Bowcher
1027Arvin U FlosiFrance2024-05-23Feltz Printing Service NEGOTIATION33Onyama Limba
1028Munro O BowleyRussia2024-05-19Feiner Bros PROPOSAL13Elwin Sharvill
1029Tony Y TollnerItaly2024-05-18King, Christopher A Esq PROPOSAL16Elwin Sharvill
1030Francesco J BologniaFrance2024-04-25Benton, John B Jr RENEWAL53Xuxue Feng
1031Maisha K WaycottBrazil2024-05-22Benton, John B Jr RENEWAL6Anna Fali
1032Francesco Q NickaUnited Kingdom2024-05-01Chapman, Ross E Esq QUALIFIED6Ivan Magalhaes
1033Jennifer R CaudyAustralia2024-04-28King, Christopher A Esq NEGOTIATION2Xuxue Feng
1034Rodrigues G WieserArgentina2024-05-15Benton, John B Jr NEGOTIATION44Amy Elsner
1035Jennifer D NestleFrance2024-05-09King, Christopher A Esq PROPOSAL12Stephen Shaw
1036Wickens U MaletRussia2024-05-22Dorl, James J Esq PROPOSAL51Xuxue Feng
1037Adams Z BologniaCanada2024-05-15Rangoni Of Florence QUALIFIED84Amy Elsner
1038Cody K RutaGermany2024-05-20King, Christopher A Esq RENEWAL91Onyama Limba
1039Jones W PerinArgentina2024-05-05Buckley Miller Wright NEGOTIATION78Amy Elsner
1040Isabel V StensethCanada2024-05-09Benton, John B Jr UNQUALIFIED44Ioni Bowcher
1041Leon V SchemmerArgentina2024-05-23Feltz Printing Service NEGOTIATION85Xuxue Feng
1042Rodrigues S MorascaRussia2024-05-14Truhlar And Truhlar Attys UNQUALIFIED83Xuxue Feng
1043Kadeem K DilliardIndia2024-05-14Feiner Bros RENEWAL69Stephen Shaw
1044Cody Z ChuiBrazil2024-05-19Morlong Associates UNQUALIFIED14Xuxue Feng
1045Maisha F KuskoSpain2024-05-22Chapman, Ross E Esq UNQUALIFIED28Bernardo Dominic
1046Greenwood J DarakjyGermany2024-05-12Morlong Associates QUALIFIED45Bernardo Dominic
1047Darci J WieserAustralia2024-05-10Chapman, Ross E Esq NEW93Anna Fali
1048Munro Y WaycottAustralia2024-04-30Commercial Press PROPOSAL3Anna Fali
1049Jefferson L ShinkoSpain2024-05-09Chemel, James L Cpa UNQUALIFIED76Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
James R MaletJapanOnyama Limba NEW
Aika T MaletCanadaAnna Fali QUALIFIED
Ashley T GillianBrazilAmy Elsner PROPOSAL
Adams N OldroydAustraliaAsiya Javayant NEGOTIATION
Greenwood M FlosiItalyAmy Elsner PROPOSAL
Aruna U RutaRussiaOnyama Limba PROPOSAL
Claire P RimFranceIoni Bowcher NEW
Ricardo G SaylorsJapanIoni Bowcher QUALIFIED
Sinclair B MaletBrazilBernardo Dominic UNQUALIFIED
Johnson R GlickAustraliaOnyama Limba QUALIFIED
Deepesh I ButtAustraliaXuxue Feng PROPOSAL
Clifford Y BowleyGermanyIvan Magalhaes PROPOSAL
Stacey X FigeroaBrazilAmy Elsner PROPOSAL
Cody C SchemmerItalyAmy Elsner RENEWAL
Alejandro L PerinJapanIoni Bowcher NEGOTIATION
Nicolas D InouyeGermanyAnna Fali NEW
Aika C FerenczUnited KingdomAsiya Javayant QUALIFIED
Faith Q SchemmerSpainXuxue Feng RENEWAL
Chavez Z ButtIndiaXuxue Feng NEGOTIATION
Maisha F CaudyGermanyAmy Elsner PROPOSAL
Leon N NestleArgentinaAsiya Javayant PROPOSAL
Silvio T WhobreyRussiaXuxue Feng PROPOSAL
Jefferson N CaudyArgentinaElwin Sharvill UNQUALIFIED
Ashley D PerinArgentinaIoni Bowcher PROPOSAL
Munro J InouyeFranceOnyama Limba NEW
Mujtaba V CaudySpainAsiya Javayant PROPOSAL
Faith H CampainRussiaAnna Fali QUALIFIED
Morrow U RulapaughUnited KingdomAmy Elsner PROPOSAL
Cody I SlusarskiIndiaStephen Shaw QUALIFIED
Jones W PaprockiRussiaAsiya Javayant NEW
Ricardo D CaldareraUnited KingdomOnyama Limba RENEWAL
Rodrigues G NestleUnited KingdomIvan Magalhaes PROPOSAL
Leon U CaudyBrazilStephen Shaw QUALIFIED
Jennifer S RutaGermanyAnna Fali PROPOSAL
Smith Y FlosiItalyIvan Magalhaes PROPOSAL
Costa P ChuiBrazilAsiya Javayant QUALIFIED
Isabel G MacleadCanadaAnna Fali UNQUALIFIED
Kadeem F OstroskyCanadaBernardo Dominic QUALIFIED
Costa K AmigonIndiaAmy Elsner QUALIFIED
Wickens F RulapaughAustraliaBernardo Dominic UNQUALIFIED
Adams G CampainIndiaAnna Fali NEW
Tony S FollerRussiaOnyama Limba UNQUALIFIED
Jeanfrancois B OstroskyUnited KingdomBernardo Dominic NEGOTIATION
Emily K SergiUnited KingdomElwin Sharvill QUALIFIED
Maria N GauchoCanadaAsiya Javayant UNQUALIFIED
Mayumi F KolmetzFranceAsiya Javayant NEW
Jeanfrancois I GarufiFranceXuxue Feng NEW
Jeanfrancois H RutaSpainXuxue Feng UNQUALIFIED
Adams N WaycottUnited KingdomBernardo Dominic NEGOTIATION
Leja A TollnerItalyStephen Shaw RENEWAL
Frozen Columns
Name
Arvin J Tollner
Izzy V Albares
Aditya Z Poquette
Murillo P Vocelka
Aruna Y Flosi
Jennifer J Venere
Salvatore W Albares
Ashley L Whobrey
Jeanfrancois J Marrier
Stacey O Ruta
Greenwood M Kusko
Tony H Albares
Nicolas H Ruta
Darci P Malet
Jefferson F Saylors
Jones X Malet
Tony H Ferencz
Francesco A Marrier
Emily Y Amigon
Isabel Z Gillian
Ashley W Saylors
Wickens N Perin
Smith H Stenseth
Faith P Ferencz
Aditya A Inouye
Aika T Dilliard
Francesco Z Marrier
Costa Y Bolognia
Emily N Garufi
Sinclair L Ferencz
Aika L Chui
Jefferson P Vocelka
Clifford D Chui
Johnson J Nicka
Clifford O Stenseth
Ricardo U Rulapaugh
Isabel A Stockham
Leja Q Butt
Kaitlin N Morasca
Kaitlin N Stenseth
Antonio G Chui
Adams H Stenseth
Munro Y Waycott
Maisha I Oldroyd
Wickens U Marrier
Silvio Q Amigon
Jefferson L Chui
Adams C Amigon
Jennifer F Tollner
Munro Z Maclead
IdCountryDate
1000Canada2024-04-28
1001Italy2024-05-16
1002Canada2024-05-05
1003Australia2024-05-09
1004Spain2024-05-14
1005Brazil2024-04-24
1006Australia2024-04-26
1007Australia2024-05-04
1008Italy2024-05-20
1009Argentina2024-05-23
1010Brazil2024-05-08
1011Brazil2024-04-27
1012India2024-05-01
1013Argentina2024-05-05
1014France2024-05-06
1015Brazil2024-05-23
1016Germany2024-04-28
1017Brazil2024-05-01
1018Argentina2024-05-05
1019India2024-05-07
1020Japan2024-05-02
1021India2024-05-15
1022India2024-05-12
1023India2024-05-17
1024Canada2024-05-04
1025Argentina2024-05-08
1026Italy2024-04-27
1027India2024-05-11
1028United Kingdom2024-05-11
1029Germany2024-05-03
1030Japan2024-05-10
1031Italy2024-04-30
1032France2024-05-21
1033Italy2024-05-13
1034United Kingdom2024-05-23
1035France2024-04-27
1036Australia2024-04-27
1037Brazil2024-05-17
1038Spain2024-04-29
1039France2024-05-11
1040Japan2024-05-08
1041Italy2024-05-19
1042Germany2024-05-22
1043Argentina2024-05-21
1044Germany2024-05-11
1045Russia2024-05-07
1046Italy2024-04-25
1047Brazil2024-05-18
1048Germany2024-04-25
1049Brazil2024-05-13

On-Demand Data

NameIdCountryDate
Jefferson P Maclead1000Argentina2024-05-19
Silvio G Kusko1001Spain2024-05-06
Jones Q Ruta1002Brazil2024-04-27
Morrow V Bolognia1003Spain2024-05-14
Salvatore I Bowley1004France2024-05-07
Francesco F Bolognia1005Italy2024-05-23
Wickens U Doe1006India2024-05-02
Nicolas X Malet1007Japan2024-04-25
Claire Y Butt1008Italy2024-05-15
Emily M Butt1009Australia2024-05-17
Munro D Perin1010Canada2024-05-10
Misaki C Tollner1011Canada2024-05-02
Leja O Amigon1012Canada2024-05-14
Darci F Glick1013Argentina2024-05-08
Greenwood A Briddick1014Spain2024-05-18
Sinclair D Gaucho1015Germany2024-04-26
Munro B Wieser1016Germany2024-05-01
Arvin O Ferencz1017India2024-05-11
Juan B Kolmetz1018India2024-05-20
Francesco D Tollner1019United Kingdom2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja S MorascaSpainBernardo Dominic PROPOSAL
Aditya V MaletFranceStephen Shaw RENEWAL
Emily J IturbideIndiaOnyama Limba NEW
Kadeem Y RulapaughCanadaAnna Fali QUALIFIED
David D ShinkoAustraliaAsiya Javayant NEW
Kadeem B PoquetteGermanyBernardo Dominic UNQUALIFIED
Darci R FollerGermanyAsiya Javayant RENEWAL
Deepesh Y BologniaRussiaOnyama Limba UNQUALIFIED
Wickens P PerinUnited KingdomAsiya Javayant NEW
Salvatore W MorascaItalyAsiya Javayant UNQUALIFIED
Emily X GlickFranceBernardo Dominic NEGOTIATION
Arvin W MorascaAustraliaStephen Shaw QUALIFIED
Sinclair M WaycottSpainIoni Bowcher UNQUALIFIED
Sinclair A TollnerArgentinaStephen Shaw RENEWAL
Rodrigues F FollerAustraliaBernardo Dominic UNQUALIFIED
Misaki C MaletFranceOnyama Limba RENEWAL
Munro W DarakjyAustraliaIvan Magalhaes RENEWAL
Juan Y ButtItalyElwin Sharvill QUALIFIED
Ivar S RulapaughSpainElwin Sharvill NEGOTIATION
Sinclair I VocelkaItalyAsiya Javayant RENEWAL
Emily I MarrierAustraliaAmy Elsner QUALIFIED
Greenwood H FollerAustraliaStephen Shaw NEW
Deepesh N OldroydUnited KingdomAnna Fali NEGOTIATION
Ricardo M FerenczUnited KingdomAsiya Javayant NEGOTIATION
Tony J FigeroaItalyAsiya Javayant RENEWAL
Morrow D MarrierFranceOnyama Limba PROPOSAL
Kaitlin X KuskoSpainIoni Bowcher UNQUALIFIED
Murillo S CampainIndiaElwin Sharvill PROPOSAL
Faith V ShinkoBrazilIvan Magalhaes PROPOSAL
Juan Q AmigonSpainIvan Magalhaes QUALIFIED
Alejandro O WhobreySpainAnna Fali NEW
Smith U DarakjyUnited KingdomOnyama Limba NEW
Nicolas D AmigonUnited KingdomXuxue Feng NEGOTIATION
Murillo B GarufiAustraliaIoni Bowcher QUALIFIED
Julie G NestleRussiaElwin Sharvill PROPOSAL
Jefferson S FollerIndiaStephen Shaw PROPOSAL
Misaki F WhobreySpainBernardo Dominic QUALIFIED
Jefferson T GlickFranceAnna Fali NEGOTIATION
Leon L MaletJapanStephen Shaw NEGOTIATION
Ricardo W SergiBrazilOnyama Limba QUALIFIED

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