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
Smith F MacleadAustraliaIoni Bowcher NEW
Morrow W OldroydIndiaXuxue Feng UNQUALIFIED
Faith Q MacleadCanadaBernardo Dominic PROPOSAL
Misaki F ChuiSpainAsiya Javayant PROPOSAL
Maisha G FigeroaRussiaStephen Shaw NEGOTIATION
Ivar H MaletSpainXuxue Feng NEGOTIATION
Faith R MaletJapanIoni Bowcher PROPOSAL
Aditya Q KuskoJapanOnyama Limba NEW
Misaki X RimSpainIvan Magalhaes QUALIFIED
Octavia P FollerJapanOnyama Limba RENEWAL
Octavia M VocelkaItalyAmy Elsner NEGOTIATION
Kadeem V SlusarskiFranceAmy Elsner PROPOSAL
Faith M GarufiArgentinaIvan Magalhaes QUALIFIED
Salvatore Q BowleyUnited KingdomBernardo Dominic PROPOSAL
Sinclair W FigeroaFranceStephen Shaw QUALIFIED
Chavez F OstroskySpainAnna Fali RENEWAL
Julie S PoquetteUnited KingdomAnna Fali PROPOSAL
Adams P NickaItalyXuxue Feng NEGOTIATION
Julie S StockhamBrazilElwin Sharvill NEW
Aditya P SlusarskiBrazilIoni Bowcher QUALIFIED
Rodrigues L MacleadFranceBernardo Dominic NEGOTIATION
David G BowleyJapanIvan Magalhaes RENEWAL
Claire T SchemmerArgentinaAsiya Javayant NEW
Deepesh E MorascaCanadaElwin Sharvill NEGOTIATION
Faith Q BologniaIndiaAmy Elsner PROPOSAL
Morrow I PaprockiBrazilStephen Shaw QUALIFIED
Nicolas W DarakjyItalyBernardo Dominic RENEWAL
Mayumi I ChuiSpainOnyama Limba NEGOTIATION
Mayumi Q PoquetteItalyIvan Magalhaes PROPOSAL
Antonio D DarakjyItalyBernardo Dominic QUALIFIED
Mayumi W WaycottArgentinaAmy Elsner NEGOTIATION
Jefferson I GauchoBrazilStephen Shaw NEGOTIATION
Misaki N KolmetzArgentinaIoni Bowcher PROPOSAL
Jeanfrancois R MacleadCanadaAmy Elsner PROPOSAL
Adams V RoysterBrazilAnna Fali QUALIFIED
Costa O MacleadIndiaOnyama Limba NEGOTIATION
Costa F MorascaBrazilIoni Bowcher QUALIFIED
Tony Q SaylorsUnited KingdomOnyama Limba RENEWAL
Aika Z GarufiGermanyAsiya Javayant UNQUALIFIED
Wickens A NestleFranceIoni Bowcher QUALIFIED
Adams U AmigonRussiaOnyama Limba RENEWAL
Antonio N SergiIndiaElwin Sharvill PROPOSAL
Kaitlin A IturbideAustraliaAnna Fali NEW
Stacey U OstroskyBrazilBernardo Dominic UNQUALIFIED
Clifford T RutaCanadaIoni Bowcher RENEWAL
Adams O NestleAustraliaOnyama Limba NEGOTIATION
Aditya W NickaBrazilBernardo Dominic NEW
Wickens E GauchoFranceAnna Fali QUALIFIED
Julie E RutaGermanyElwin Sharvill NEW
Tony J RimIndiaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro Q MarrierRussiaAmy Elsner NEGOTIATION
Octavia I RoysterItalyOnyama Limba NEW
Ivar V BowleyArgentinaIvan Magalhaes QUALIFIED
Nicolas L FollerFranceElwin Sharvill PROPOSAL
Maisha B SergiIndiaIoni Bowcher UNQUALIFIED
Faith B VocelkaItalyAmy Elsner PROPOSAL
Aditya T RutaAustraliaBernardo Dominic RENEWAL
Jefferson C PerinSpainXuxue Feng UNQUALIFIED
Jennifer B SlusarskiIndiaOnyama Limba NEW
Francesco T GarufiUnited KingdomAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley C GlickAustralia2024-05-26Buckley Miller Wright RENEWAL37Bernardo Dominic
1001Costa Q RutaAustralia2024-06-15Dorl, James J Esq NEW4Ioni Bowcher
1002Sinclair U RutaRussia2024-06-15Commercial Press RENEWAL45Xuxue Feng
1003Greenwood L OldroydRussia2024-06-18Commercial Press RENEWAL77Amy Elsner
1004Antonio F TollnerFrance2024-05-31Dorl, James J Esq RENEWAL90Amy Elsner
1005Izzy C TollnerGermany2024-06-17Chapman, Ross E Esq RENEWAL19Elwin Sharvill
1006Claire H GauchoJapan2024-05-27Rangoni Of Florence NEW2Ioni Bowcher
1007Morrow W DoeAustralia2024-06-07Morlong Associates QUALIFIED71Elwin Sharvill
1008Jones V RutaCanada2024-05-25Feiner Bros PROPOSAL51Ioni Bowcher
1009Costa K TollnerJapan2024-05-29Benton, John B Jr NEW80Onyama Limba
1010Faith J MaletCanada2024-06-14Morlong Associates PROPOSAL95Elwin Sharvill
1011Stacey T StensethAustralia2024-05-26Feiner Bros NEW6Ioni Bowcher
1012Cody C WaycottIndia2024-06-10Feltz Printing Service QUALIFIED97Ioni Bowcher
1013Clifford I GarufiCanada2024-06-18Chapman, Ross E Esq PROPOSAL65Ioni Bowcher
1014Kadeem Q SchemmerUnited Kingdom2024-06-21Feltz Printing Service QUALIFIED8Bernardo Dominic
1015Francesco J PaprockiUnited Kingdom2024-06-14Rousseaux, Michael Esq QUALIFIED4Xuxue Feng
1016Munro Y WaycottIndia2024-05-30Dorl, James J Esq NEW55Onyama Limba
1017Clifford J WaycottGermany2024-06-19Commercial Press PROPOSAL4Stephen Shaw
1018David X MaletCanada2024-06-14Feiner Bros PROPOSAL87Stephen Shaw
1019Ivar J NestleItaly2024-05-30Rangoni Of Florence PROPOSAL36Ioni Bowcher
1020Aruna G NestleAustralia2024-06-02Chanay, Jeffrey A Esq PROPOSAL28Anna Fali
1021Antonio M GauchoBrazil2024-06-17Rousseaux, Michael Esq UNQUALIFIED3Bernardo Dominic
1022Morrow C MaletSpain2024-06-10Chanay, Jeffrey A Esq NEGOTIATION6Asiya Javayant
1023Aditya S PoquetteRussia2024-05-27Rousseaux, Michael Esq NEGOTIATION32Xuxue Feng
1024Stacey B GarufiSpain2024-06-12Rousseaux, Michael Esq NEGOTIATION49Xuxue Feng
1025Jones M NickaFrance2024-05-27Chemel, James L Cpa PROPOSAL94Asiya Javayant
1026Isabel W ShinkoFrance2024-06-07Truhlar And Truhlar Attys UNQUALIFIED82Amy Elsner
1027Cody F MaletFrance2024-06-13Rousseaux, Michael Esq QUALIFIED98Asiya Javayant
1028Ricardo F SlusarskiArgentina2024-06-21Feltz Printing Service QUALIFIED41Xuxue Feng
1029Adams G BologniaJapan2024-06-13Commercial Press UNQUALIFIED32Anna Fali
1030Faith S KolmetzUnited Kingdom2024-06-01Feiner Bros NEGOTIATION89Bernardo Dominic
1031Francesco U CaudyUnited Kingdom2024-06-14Benton, John B Jr QUALIFIED5Bernardo Dominic
1032Francesco Y RutaAustralia2024-06-17Buckley Miller Wright PROPOSAL16Ioni Bowcher
1033Jennifer U CaldareraCanada2024-05-25Truhlar And Truhlar Attys NEW67Asiya Javayant
1034Cody R CampainSpain2024-06-04Morlong Associates RENEWAL31Asiya Javayant
1035Juan T SaylorsJapan2024-06-13Buckley Miller Wright UNQUALIFIED30Xuxue Feng
1036David M DarakjyBrazil2024-06-15Dorl, James J Esq NEGOTIATION27Anna Fali
1037Jennifer M StensethBrazil2024-06-21Truhlar And Truhlar Attys QUALIFIED75Amy Elsner
1038Silvio F OldroydArgentina2024-06-09Printing Dimensions PROPOSAL0Xuxue Feng
1039Deepesh W ButtIndia2024-06-11King, Christopher A Esq NEW42Asiya Javayant
1040Alejandro H MorascaSpain2024-06-04Buckley Miller Wright PROPOSAL47Asiya Javayant
1041Silvio C WieserSpain2024-06-02Benton, John B Jr RENEWAL39Stephen Shaw
1042Costa Y VocelkaRussia2024-06-11Buckley Miller Wright NEGOTIATION66Bernardo Dominic
1043Leon N InouyeItaly2024-06-17Buckley Miller Wright NEW54Elwin Sharvill
1044Murillo J NickaBrazil2024-06-15Feiner Bros NEW60Onyama Limba
1045Smith X SergiAustralia2024-06-10King, Christopher A Esq QUALIFIED81Onyama Limba
1046Misaki X NestleAustralia2024-05-25Printing Dimensions PROPOSAL11Elwin Sharvill
1047Maisha L SchemmerCanada2024-05-23Feiner Bros UNQUALIFIED89Onyama Limba
1048Arvin D RoysterUnited Kingdom2024-06-21Truhlar And Truhlar Attys UNQUALIFIED4Ivan Magalhaes
1049Claire L ChuiBrazil2024-06-18Feiner Bros UNQUALIFIED71Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Deepesh F MaletBrazilXuxue Feng NEW
Salvatore U ChuiItalyElwin Sharvill UNQUALIFIED
Rodrigues M MaletCanadaAnna Fali PROPOSAL
Leja N BowleySpainIoni Bowcher NEGOTIATION
Aditya I GauchoCanadaAmy Elsner QUALIFIED
Emily O WieserRussiaStephen Shaw RENEWAL
Darci P OldroydRussiaStephen Shaw QUALIFIED
Maisha A StensethJapanBernardo Dominic RENEWAL
Chavez N OldroydItalyAmy Elsner QUALIFIED
Ricardo C BologniaAustraliaAnna Fali NEW
Stacey Q FigeroaBrazilOnyama Limba PROPOSAL
Izzy Y PaprockiItalyIvan Magalhaes UNQUALIFIED
Leon G InouyeUnited KingdomXuxue Feng NEGOTIATION
Juan X ButtItalyElwin Sharvill UNQUALIFIED
Misaki J PerinFranceAnna Fali RENEWAL
Clifford U PoquetteJapanAnna Fali PROPOSAL
Silvio I FollerFranceOnyama Limba NEW
Juan K NickaSpainBernardo Dominic PROPOSAL
Claire J FigeroaSpainAmy Elsner NEGOTIATION
Jefferson W RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Sinclair B StockhamBrazilStephen Shaw RENEWAL
Claire R WhobreySpainAmy Elsner PROPOSAL
Rodrigues D PerinJapanAmy Elsner UNQUALIFIED
Adams J MacleadIndiaElwin Sharvill UNQUALIFIED
Deepesh H FollerBrazilStephen Shaw UNQUALIFIED
Emily P ShinkoItalyXuxue Feng PROPOSAL
Sinclair H SergiCanadaAsiya Javayant PROPOSAL
James T AmigonBrazilStephen Shaw NEW
Alejandro P GauchoAustraliaBernardo Dominic UNQUALIFIED
Arvin K WhobreyRussiaIvan Magalhaes PROPOSAL
Darci K WhobreyBrazilIvan Magalhaes PROPOSAL
Tony T AmigonUnited KingdomStephen Shaw PROPOSAL
Aika O IturbideAustraliaXuxue Feng NEW
Mayumi A VocelkaUnited KingdomXuxue Feng NEW
Jones V SchemmerFranceXuxue Feng NEGOTIATION
Maria L NestleItalyIoni Bowcher QUALIFIED
Murillo J ShinkoItalyIvan Magalhaes PROPOSAL
Kaitlin L CaldareraJapanElwin Sharvill QUALIFIED
Maria J InouyeGermanyBernardo Dominic NEW
Rodrigues I FlosiIndiaAsiya Javayant RENEWAL
Deepesh S NickaItalyAmy Elsner QUALIFIED
Nicolas R OldroydIndiaIvan Magalhaes NEW
Arvin N KuskoItalyBernardo Dominic NEW
Emily G SergiCanadaBernardo Dominic RENEWAL
Clifford N NickaBrazilIvan Magalhaes PROPOSAL
Aika U OldroydIndiaIvan Magalhaes PROPOSAL
Greenwood X IturbideItalyBernardo Dominic RENEWAL
Johnson F SaylorsArgentinaIvan Magalhaes QUALIFIED
Kaitlin S MaletCanadaAnna Fali NEGOTIATION
Jennifer Y WhobreyArgentinaAmy Elsner PROPOSAL
Frozen Columns
Name
Clifford I Glick
Ashley D Maclead
Smith L Kusko
Tony M Briddick
Izzy P Caudy
Adams G Kusko
Ashley M Gillian
Aika Q Saylors
Juan H Caldarera
Ricardo O Gillian
David I Shinko
Sinclair H Flosi
Jeanfrancois Y Maclead
Cody H Oldroyd
Tony B Malet
Kadeem N Waycott
Claire D Tollner
Morrow F Flosi
Adams K Gaucho
Morrow E Dilliard
Tony H Venere
Salvatore T Albares
David G Kolmetz
Emily L Slusarski
Silvio S Stockham
Adams N Paprocki
Ashley V Amigon
Julie B Garufi
Emily X Nicka
Emily I Amigon
Tony Z Flosi
Jefferson T Stenseth
Faith K Albares
Smith G Campain
Kaitlin J Saylors
Octavia O Gillian
Aditya V Chui
Leja W Briddick
Juan U Sergi
Smith H Garufi
Isabel F Perin
Deepesh R Perin
Silvio U Darakjy
Adams H Iturbide
Rodrigues C Campain
Alejandro A Malet
Smith S Stenseth
Cody R Shinko
Izzy H Iturbide
Maria C Bowley
IdCountryDate
1000Argentina2024-06-20
1001Russia2024-06-19
1002France2024-05-25
1003Canada2024-05-25
1004Australia2024-05-25
1005Canada2024-06-18
1006Japan2024-06-17
1007Japan2024-06-18
1008Argentina2024-06-09
1009Spain2024-05-25
1010Russia2024-06-01
1011Russia2024-06-13
1012Spain2024-06-02
1013Spain2024-06-08
1014Russia2024-05-30
1015Australia2024-06-19
1016Germany2024-05-29
1017France2024-06-15
1018Italy2024-05-31
1019Germany2024-05-27
1020Argentina2024-06-06
1021Canada2024-06-09
1022Brazil2024-06-20
1023Spain2024-06-19
1024Brazil2024-05-23
1025Canada2024-06-21
1026Australia2024-05-23
1027France2024-06-03
1028Italy2024-06-08
1029Canada2024-06-17
1030Italy2024-06-15
1031Japan2024-06-13
1032Australia2024-06-10
1033Germany2024-05-31
1034Spain2024-06-20
1035Spain2024-06-10
1036India2024-05-27
1037Argentina2024-05-27
1038Japan2024-06-07
1039United Kingdom2024-06-10
1040Russia2024-06-20
1041United Kingdom2024-06-19
1042Brazil2024-05-27
1043Canada2024-06-02
1044United Kingdom2024-05-30
1045United Kingdom2024-05-23
1046Italy2024-06-05
1047Germany2024-06-03
1048Argentina2024-06-18
1049Russia2024-06-05

On-Demand Data

NameIdCountryDate
Rodrigues G Malet1000Australia2024-05-31
Kaitlin C Venere1001Brazil2024-06-21
Alejandro Y Caudy1002Australia2024-06-13
Aika W Nicka1003Russia2024-06-20
Ricardo N Campain1004Spain2024-05-25
Stacey Z Chui1005India2024-06-07
Aika Z Rulapaugh1006France2024-06-16
Alejandro S Gaucho1007Spain2024-06-14
Jeanfrancois J Amigon1008Argentina2024-05-30
Izzy Y Bowley1009Australia2024-06-10
Adams O Kusko1010India2024-06-21
Misaki K Bowley1011India2024-06-08
Julie X Gaucho1012Russia2024-06-08
Johnson U Caudy1013Spain2024-06-19
Rodrigues W Venere1014United Kingdom2024-06-15
Misaki B Garufi1015Argentina2024-05-30
Julie R Doe1016Japan2024-06-16
Juan Q Schemmer1017Canada2024-06-14
Aruna E Vocelka1018France2024-06-06
Chavez G Caldarera1019Russia2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley J NickaItalyStephen Shaw RENEWAL
Alejandro E DarakjyUnited KingdomIoni Bowcher UNQUALIFIED
Juan A GlickUnited KingdomAnna Fali PROPOSAL
Aika O ButtJapanIvan Magalhaes NEGOTIATION
James F PoquetteUnited KingdomAmy Elsner NEW
Emily L AmigonJapanAsiya Javayant RENEWAL
Kadeem Q FlosiSpainAmy Elsner NEGOTIATION
Kaitlin V BowleyUnited KingdomStephen Shaw NEGOTIATION
Murillo C KuskoJapanStephen Shaw UNQUALIFIED
Misaki Q AmigonJapanStephen Shaw PROPOSAL
Leja I NestleItalyBernardo Dominic NEGOTIATION
Aditya H MacleadFranceAsiya Javayant PROPOSAL
David C BologniaArgentinaAnna Fali UNQUALIFIED
Leja X StockhamBrazilXuxue Feng NEW
Alejandro D OldroydBrazilAnna Fali PROPOSAL
Smith V MaletGermanyXuxue Feng UNQUALIFIED
Salvatore Q GlickSpainAnna Fali QUALIFIED
Costa I DoeBrazilAnna Fali RENEWAL
Emily H BowleyCanadaXuxue Feng NEW
Jefferson X KolmetzAustraliaStephen Shaw UNQUALIFIED
David H BriddickRussiaElwin Sharvill NEW
Arvin K WieserSpainElwin Sharvill NEW
Clifford S IturbideBrazilXuxue Feng QUALIFIED
Mayumi C AmigonUnited KingdomAmy Elsner NEGOTIATION
Octavia A StensethAustraliaAsiya Javayant NEW
Johnson Z VocelkaIndiaAnna Fali NEGOTIATION
Leon A VocelkaAustraliaXuxue Feng PROPOSAL
Stacey H KolmetzSpainStephen Shaw QUALIFIED
Rodrigues I DoeArgentinaIoni Bowcher UNQUALIFIED
Octavia U GauchoUnited KingdomBernardo Dominic RENEWAL
Faith Y BriddickCanadaAnna Fali UNQUALIFIED
Rodrigues O RutaFranceBernardo Dominic QUALIFIED
Greenwood U MaletItalyStephen Shaw QUALIFIED
Adams B SlusarskiSpainAnna Fali NEW
Sinclair H SaylorsSpainIvan Magalhaes RENEWAL
Nicolas D ButtUnited KingdomStephen Shaw RENEWAL
Smith H SaylorsIndiaAnna Fali RENEWAL
Octavia Z PaprockiJapanStephen Shaw UNQUALIFIED
Aditya N SchemmerIndiaXuxue Feng NEW
Julie T WaycottUnited KingdomAnna Fali PROPOSAL

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