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
Claire O VocelkaJapanAmy Elsner UNQUALIFIED
Faith A FigeroaBrazilIoni Bowcher PROPOSAL
Tony D DarakjyBrazilStephen Shaw RENEWAL
Clifford T AmigonItalyIvan Magalhaes PROPOSAL
Octavia U GillianCanadaStephen Shaw NEGOTIATION
Kadeem Y OstroskyGermanyIvan Magalhaes UNQUALIFIED
Greenwood J CaldareraArgentinaAnna Fali RENEWAL
Smith B GillianJapanAmy Elsner QUALIFIED
Antonio U AlbaresItalyIoni Bowcher UNQUALIFIED
Darci Y MacleadBrazilAnna Fali QUALIFIED
Jones B VocelkaBrazilAnna Fali NEGOTIATION
Murillo X SaylorsAustraliaStephen Shaw NEW
James E IturbideFranceBernardo Dominic QUALIFIED
Isabel E DoeIndiaAnna Fali NEW
Faith Z GauchoBrazilAsiya Javayant QUALIFIED
Ashley P NestleJapanAmy Elsner NEW
Claire R RimFranceElwin Sharvill PROPOSAL
David U VenereBrazilXuxue Feng RENEWAL
Octavia E DoeCanadaElwin Sharvill PROPOSAL
Jefferson P PaprockiRussiaOnyama Limba PROPOSAL
Isabel F GarufiFranceElwin Sharvill NEGOTIATION
James H SergiRussiaAsiya Javayant QUALIFIED
Alejandro F SergiIndiaIoni Bowcher QUALIFIED
Wickens K RutaFranceOnyama Limba NEW
Maisha Z NickaUnited KingdomAmy Elsner RENEWAL
Ashley H MacleadCanadaAsiya Javayant NEGOTIATION
Johnson B FerenczFranceAnna Fali QUALIFIED
Ricardo N MarrierFranceAnna Fali RENEWAL
Johnson J CaudyArgentinaAmy Elsner NEW
Aika Y SergiUnited KingdomAnna Fali NEGOTIATION
Tony Q PoquetteFranceOnyama Limba PROPOSAL
Costa O ButtFranceIoni Bowcher NEW
Aruna Q WaycottGermanyXuxue Feng NEW
Silvio S WieserJapanElwin Sharvill NEW
Ivar Q RimRussiaAsiya Javayant RENEWAL
Isabel C MacleadJapanStephen Shaw RENEWAL
Jeanfrancois D OldroydAustraliaElwin Sharvill NEW
Silvio O RoysterBrazilElwin Sharvill QUALIFIED
Antonio V MorascaBrazilStephen Shaw UNQUALIFIED
Morrow F BowleyIndiaAmy Elsner NEW
Stacey O VocelkaCanadaIoni Bowcher NEGOTIATION
Morrow I SergiSpainXuxue Feng NEGOTIATION
Deepesh O SchemmerSpainOnyama Limba RENEWAL
Izzy H GarufiCanadaAmy Elsner UNQUALIFIED
Claire M RulapaughJapanStephen Shaw RENEWAL
Morrow J GillianCanadaOnyama Limba NEGOTIATION
Johnson J CampainRussiaStephen Shaw PROPOSAL
Leon G GarufiUnited KingdomAsiya Javayant RENEWAL
Francesco G FigeroaIndiaIoni Bowcher RENEWAL
Sinclair W FigeroaGermanyElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Maisha D RulapaughIndiaStephen Shaw NEGOTIATION
Mujtaba R WieserAustraliaElwin Sharvill RENEWAL
Mayumi K ShinkoJapanIoni Bowcher NEW
Aditya P VenereCanadaIoni Bowcher NEGOTIATION
Kadeem A AlbaresUnited KingdomBernardo Dominic RENEWAL
Mujtaba L ButtFranceIoni Bowcher PROPOSAL
Emily K GarufiItalyBernardo Dominic RENEWAL
Maisha F FerenczJapanXuxue Feng RENEWAL
Aika P TollnerCanadaXuxue Feng RENEWAL
Aruna H FollerAustraliaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya A MarrierItaly2024-06-02Morlong Associates QUALIFIED32Xuxue Feng
1001Isabel Y GlickRussia2024-06-15Benton, John B Jr NEW37Onyama Limba
1002Kadeem K MaletAustralia2024-06-07Rousseaux, Michael Esq RENEWAL49Amy Elsner
1003Maria L CaldareraJapan2024-06-13Printing Dimensions UNQUALIFIED9Asiya Javayant
1004Emily U WaycottUnited Kingdom2024-06-01Rousseaux, Michael Esq QUALIFIED42Bernardo Dominic
1005Leon Q FerenczArgentina2024-06-01King, Christopher A Esq UNQUALIFIED36Anna Fali
1006Jefferson M DarakjyFrance2024-05-31Feltz Printing Service QUALIFIED37Asiya Javayant
1007Alejandro Y RutaCanada2024-06-11Dorl, James J Esq NEW44Elwin Sharvill
1008Darci Z RoysterArgentina2024-06-12Chemel, James L Cpa NEW36Ioni Bowcher
1009Sinclair R FlosiAustralia2024-06-19Rangoni Of Florence PROPOSAL59Asiya Javayant
1010Jefferson L TollnerSpain2024-06-07King, Christopher A Esq RENEWAL70Amy Elsner
1011Deepesh G TollnerIndia2024-06-04Commercial Press NEW79Xuxue Feng
1012Adams I PoquetteItaly2024-06-18Rousseaux, Michael Esq NEGOTIATION11Amy Elsner
1013Mayumi Z ButtItaly2024-06-07Morlong Associates PROPOSAL62Elwin Sharvill
1014Jefferson U StockhamJapan2024-06-17Chemel, James L Cpa NEGOTIATION25Onyama Limba
1015Cody A MaletUnited Kingdom2024-06-16Morlong Associates PROPOSAL42Ivan Magalhaes
1016Leja A AmigonBrazil2024-05-29Rousseaux, Michael Esq NEGOTIATION10Onyama Limba
1017Aruna K FlosiAustralia2024-05-29Morlong Associates QUALIFIED24Anna Fali
1018Aditya V VenereSpain2024-06-22Morlong Associates NEW47Ioni Bowcher
1019Kadeem B FerenczGermany2024-06-01Benton, John B Jr UNQUALIFIED81Ivan Magalhaes
1020Rodrigues S FerenczFrance2024-06-17Feltz Printing Service PROPOSAL54Xuxue Feng
1021Faith J VenereGermany2024-06-18Dorl, James J Esq UNQUALIFIED64Stephen Shaw
1022Stacey B GlickJapan2024-06-22Feiner Bros RENEWAL97Onyama Limba
1023Claire N AmigonCanada2024-06-20Printing Dimensions RENEWAL85Anna Fali
1024Deepesh D FigeroaAustralia2024-06-16Truhlar And Truhlar Attys RENEWAL43Anna Fali
1025David S NestleIndia2024-06-15Morlong Associates QUALIFIED97Amy Elsner
1026Leja N SaylorsAustralia2024-06-16Chapman, Ross E Esq PROPOSAL48Bernardo Dominic
1027Stacey W PaprockiUnited Kingdom2024-06-22King, Christopher A Esq PROPOSAL38Onyama Limba
1028Smith M FlosiBrazil2024-05-29Feiner Bros PROPOSAL34Elwin Sharvill
1029Maisha L PoquetteCanada2024-06-17Dorl, James J Esq UNQUALIFIED50Anna Fali
1030Octavia T MaletCanada2024-06-05Chemel, James L Cpa PROPOSAL29Bernardo Dominic
1031Julie B ChuiUnited Kingdom2024-06-15Printing Dimensions UNQUALIFIED93Ivan Magalhaes
1032Darci F KolmetzCanada2024-06-12Benton, John B Jr RENEWAL60Stephen Shaw
1033Mujtaba F BowleyCanada2024-06-18Buckley Miller Wright NEW88Asiya Javayant
1034Smith C CaldareraSpain2024-06-06Buckley Miller Wright RENEWAL90Ivan Magalhaes
1035Mayumi U BologniaUnited Kingdom2024-06-21Truhlar And Truhlar Attys RENEWAL66Asiya Javayant
1036Maisha J RutaSpain2024-06-13Dorl, James J Esq RENEWAL79Stephen Shaw
1037Sinclair T MaletUnited Kingdom2024-06-11Chanay, Jeffrey A Esq RENEWAL4Elwin Sharvill
1038Ivar N SlusarskiGermany2024-06-07Rousseaux, Michael Esq QUALIFIED21Ivan Magalhaes
1039Stacey J DarakjySpain2024-06-06Buckley Miller Wright PROPOSAL89Asiya Javayant
1040Aditya R GillianCanada2024-06-03Truhlar And Truhlar Attys RENEWAL88Ivan Magalhaes
1041Emily N GarufiCanada2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED41Ioni Bowcher
1042Isabel E TollnerUnited Kingdom2024-06-01Dorl, James J Esq RENEWAL9Elwin Sharvill
1043Jones Z CaldareraSpain2024-06-21Printing Dimensions NEGOTIATION11Elwin Sharvill
1044Stacey K MaletBrazil2024-05-26Rangoni Of Florence UNQUALIFIED72Stephen Shaw
1045Jefferson C KuskoBrazil2024-06-19Feltz Printing Service NEW38Ioni Bowcher
1046Misaki O GlickBrazil2024-06-02Dorl, James J Esq NEW41Amy Elsner
1047Alejandro I KolmetzArgentina2024-06-13Rangoni Of Florence PROPOSAL31Stephen Shaw
1048Jefferson I FerenczRussia2024-06-23Feltz Printing Service RENEWAL8Asiya Javayant
1049Leon R WieserCanada2024-06-22Rousseaux, Michael Esq NEW74Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leon U NickaGermanyElwin Sharvill PROPOSAL
Arvin I IturbideGermanyBernardo Dominic PROPOSAL
Mujtaba N VenereIndiaIvan Magalhaes QUALIFIED
Francesco W MarrierArgentinaIvan Magalhaes UNQUALIFIED
Silvio H ShinkoAustraliaAmy Elsner RENEWAL
Leja Y ButtJapanAnna Fali QUALIFIED
Jefferson P FerenczArgentinaOnyama Limba QUALIFIED
Chavez O GauchoJapanAnna Fali PROPOSAL
Jones E PerinAustraliaBernardo Dominic NEGOTIATION
Munro R ButtArgentinaOnyama Limba RENEWAL
Ivar R VenereSpainOnyama Limba UNQUALIFIED
Antonio N FlosiArgentinaAsiya Javayant PROPOSAL
Julie X OldroydJapanAmy Elsner QUALIFIED
Kaitlin Z MaletItalyStephen Shaw QUALIFIED
Aditya Y SchemmerRussiaStephen Shaw UNQUALIFIED
Jennifer J ShinkoUnited KingdomAsiya Javayant PROPOSAL
Maria W VenereRussiaAmy Elsner UNQUALIFIED
Ricardo H CampainFranceStephen Shaw PROPOSAL
Greenwood C WhobreyUnited KingdomStephen Shaw QUALIFIED
Leon O ChuiGermanyAmy Elsner PROPOSAL
Ricardo G RulapaughAustraliaIoni Bowcher QUALIFIED
Costa G FlosiItalyOnyama Limba PROPOSAL
Jeanfrancois K MaletSpainBernardo Dominic PROPOSAL
Leja F MacleadIndiaAsiya Javayant RENEWAL
Deepesh Z SaylorsAustraliaOnyama Limba RENEWAL
Claire A FigeroaGermanyElwin Sharvill RENEWAL
Aruna A DarakjyRussiaElwin Sharvill UNQUALIFIED
Octavia Q SergiRussiaBernardo Dominic RENEWAL
Tony V OldroydGermanyXuxue Feng PROPOSAL
Wickens Z StockhamJapanBernardo Dominic PROPOSAL
Wickens F KuskoJapanBernardo Dominic RENEWAL
Nicolas C DilliardFranceAsiya Javayant PROPOSAL
Antonio C RoysterJapanAmy Elsner RENEWAL
Costa Y DilliardIndiaAnna Fali NEGOTIATION
Ricardo Z FlosiArgentinaIoni Bowcher PROPOSAL
Leja R GarufiCanadaIoni Bowcher NEW
Juan E StensethUnited KingdomOnyama Limba RENEWAL
Mujtaba K KolmetzFranceIvan Magalhaes UNQUALIFIED
Murillo T VocelkaBrazilElwin Sharvill NEGOTIATION
Jennifer G SlusarskiSpainAnna Fali NEW
Faith R RimGermanyXuxue Feng NEGOTIATION
Maria G TollnerAustraliaBernardo Dominic NEW
Murillo G MarrierGermanyAsiya Javayant RENEWAL
Maisha Q MaletRussiaOnyama Limba UNQUALIFIED
Misaki T KuskoItalyStephen Shaw NEW
Octavia J BologniaBrazilIoni Bowcher NEGOTIATION
Mujtaba B CampainAustraliaOnyama Limba PROPOSAL
David H WieserItalyXuxue Feng QUALIFIED
Maisha T VenereSpainElwin Sharvill NEGOTIATION
Nicolas Z BriddickCanadaXuxue Feng NEW
Frozen Columns
Name
Maria A Oldroyd
Aruna E Ferencz
Antonio C Morasca
Octavia H Campain
James G Gaucho
Smith H Butt
Silvio D Stockham
Wickens B Rulapaugh
Clifford L Flosi
Darci G Stockham
Salvatore K Dilliard
Jeanfrancois Z Nestle
Jones F Butt
Munro U Doe
Adams W Dilliard
Maria N Bolognia
Maria K Shinko
Sinclair Q Amigon
Johnson M Perin
Aditya B Bolognia
Silvio O Perin
Ashley F Shinko
Antonio Y Kusko
Mujtaba I Briddick
James N Glick
Jones V Stockham
Morrow F Foller
Adams A Malet
Jennifer P Morasca
Stacey Z Briddick
Costa E Nestle
Ricardo J Stenseth
Morrow Y Doe
Jones C Caldarera
Octavia Z Glick
Morrow Q Amigon
Leja G Flosi
Deepesh C Perin
Aika Y Paprocki
Isabel S Rulapaugh
Alejandro C Nicka
Costa W Chui
Smith V Morasca
Juan U Rim
Claire U Ruta
Octavia E Paprocki
Adams J Waycott
Leon B Darakjy
Misaki Y Glick
Aika X Paprocki
IdCountryDate
1000France2024-06-13
1001Spain2024-06-12
1002Italy2024-06-13
1003Brazil2024-06-23
1004Italy2024-06-11
1005France2024-06-07
1006France2024-06-13
1007Canada2024-05-27
1008Japan2024-06-08
1009Russia2024-05-30
1010Argentina2024-06-21
1011Japan2024-06-02
1012Argentina2024-06-13
1013Japan2024-06-01
1014Canada2024-06-03
1015United Kingdom2024-05-25
1016Italy2024-06-03
1017France2024-05-25
1018Brazil2024-06-12
1019Brazil2024-05-31
1020Russia2024-06-08
1021Argentina2024-06-06
1022United Kingdom2024-05-31
1023Canada2024-06-19
1024Spain2024-06-18
1025France2024-06-13
1026Australia2024-06-16
1027Canada2024-06-21
1028India2024-06-17
1029Spain2024-05-30
1030Brazil2024-06-18
1031Brazil2024-05-27
1032Germany2024-06-07
1033Argentina2024-05-30
1034Germany2024-06-11
1035Japan2024-06-21
1036Canada2024-06-13
1037Russia2024-06-18
1038France2024-06-11
1039Russia2024-06-01
1040Canada2024-06-07
1041Canada2024-06-08
1042Germany2024-06-19
1043France2024-06-04
1044Canada2024-05-26
1045India2024-06-06
1046United Kingdom2024-06-01
1047France2024-06-02
1048Russia2024-06-02
1049Japan2024-06-19

On-Demand Data

NameIdCountryDate
Salvatore F Glick1000Japan2024-05-28
Francesco R Schemmer1001Australia2024-05-25
Maria W Amigon1002Russia2024-06-09
Ricardo T Albares1003Spain2024-06-04
Faith P Garufi1004Canada2024-06-04
Ivar U Bowley1005Russia2024-05-29
Kaitlin T Figeroa1006Russia2024-06-05
Jeanfrancois Z Kolmetz1007Italy2024-06-23
Jennifer T Slusarski1008Japan2024-06-10
Francesco W Malet1009Germany2024-06-17
Kaitlin S Butt1010Italy2024-05-29
Clifford L Morasca1011Russia2024-06-16
Arvin L Albares1012Brazil2024-06-12
Octavia Y Flosi1013Germany2024-06-12
Ashley C Dilliard1014Russia2024-06-12
Murillo V Nicka1015Russia2024-06-18
Tony N Stenseth1016Spain2024-05-31
Izzy J Rim1017Italy2024-06-22
Maria Y Venere1018Australia2024-05-26
Izzy W Stenseth1019Argentina2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody G CaldareraRussiaAmy Elsner UNQUALIFIED
Silvio C RulapaughCanadaStephen Shaw NEGOTIATION
Smith N WaycottFranceElwin Sharvill NEGOTIATION
Izzy M RimIndiaOnyama Limba PROPOSAL
Isabel J RimCanadaIvan Magalhaes NEGOTIATION
Murillo U FigeroaRussiaIvan Magalhaes QUALIFIED
Jefferson N MorascaUnited KingdomStephen Shaw NEW
Adams B VenereCanadaIvan Magalhaes NEGOTIATION
Mayumi M FollerBrazilIvan Magalhaes UNQUALIFIED
Darci W WhobreyFranceXuxue Feng RENEWAL
Octavia H ButtFranceIvan Magalhaes NEGOTIATION
Maria A BologniaItalyElwin Sharvill PROPOSAL
Tony J BologniaBrazilAmy Elsner NEW
James O MaletFranceIvan Magalhaes RENEWAL
Leon F ButtItalyAnna Fali PROPOSAL
Misaki X GarufiGermanyAnna Fali UNQUALIFIED
Costa V WieserArgentinaBernardo Dominic NEW
Ashley K CampainRussiaIvan Magalhaes NEW
Emily J DoeBrazilXuxue Feng PROPOSAL
James X BologniaGermanyAmy Elsner NEGOTIATION
Adams E BriddickItalyIvan Magalhaes NEW
Aditya H MorascaJapanOnyama Limba QUALIFIED
Darci D OstroskyAustraliaAnna Fali NEGOTIATION
Deepesh A PaprockiSpainXuxue Feng NEGOTIATION
Aika P BowleySpainBernardo Dominic NEGOTIATION
Nicolas W KolmetzFranceXuxue Feng NEGOTIATION
Ashley C DoeItalyIoni Bowcher RENEWAL
Darci I MaletArgentinaIoni Bowcher RENEWAL
Leon E GauchoCanadaIvan Magalhaes QUALIFIED
Francesco P ShinkoArgentinaAnna Fali NEGOTIATION
Izzy O CampainArgentinaBernardo Dominic QUALIFIED
Izzy S FlosiFranceXuxue Feng RENEWAL
Ashley P OstroskyJapanAsiya Javayant NEW
Claire V DoeIndiaXuxue Feng NEW
Alejandro C IturbideGermanyOnyama Limba PROPOSAL
Julie G OldroydGermanyIoni Bowcher PROPOSAL
Mayumi L MaletCanadaIoni Bowcher RENEWAL
Alejandro Q OldroydItalyElwin Sharvill UNQUALIFIED
Jefferson H WhobreyAustraliaStephen Shaw QUALIFIED
Murillo T OldroydUnited KingdomIoni Bowcher 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>