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
Mayumi W FlosiIndiaAsiya Javayant NEW
Isabel F ButtItalyIoni Bowcher RENEWAL
Maisha G DoeGermanyStephen Shaw UNQUALIFIED
Aditya A DoeUnited KingdomAsiya Javayant RENEWAL
Claire W DilliardUnited KingdomAnna Fali PROPOSAL
Faith O ChuiIndiaXuxue Feng RENEWAL
Adams E MarrierFranceOnyama Limba PROPOSAL
Johnson C MarrierArgentinaOnyama Limba NEW
Jefferson L StensethItalyAnna Fali QUALIFIED
Mujtaba J MarrierFranceOnyama Limba RENEWAL
Cody Z KolmetzGermanyBernardo Dominic UNQUALIFIED
Kadeem D VocelkaArgentinaIoni Bowcher RENEWAL
Smith O BologniaRussiaIvan Magalhaes UNQUALIFIED
Jennifer F OstroskyUnited KingdomStephen Shaw RENEWAL
Antonio J NickaGermanyOnyama Limba RENEWAL
Deepesh A GlickCanadaStephen Shaw NEGOTIATION
Aditya I FlosiAustraliaBernardo Dominic RENEWAL
Julie W TollnerGermanyOnyama Limba NEW
Mujtaba W NickaBrazilIoni Bowcher RENEWAL
Aruna F CampainArgentinaBernardo Dominic QUALIFIED
Cody Q BologniaArgentinaIoni Bowcher NEGOTIATION
James A FigeroaIndiaIvan Magalhaes QUALIFIED
Chavez M VenereGermanyOnyama Limba NEGOTIATION
Cody N WhobreyRussiaAsiya Javayant NEW
Sinclair H FlosiBrazilAsiya Javayant PROPOSAL
Misaki Y MorascaBrazilAsiya Javayant NEW
Smith N BriddickRussiaElwin Sharvill PROPOSAL
Wickens A FerenczSpainElwin Sharvill RENEWAL
Aika E ShinkoBrazilStephen Shaw PROPOSAL
Antonio B ChuiItalyBernardo Dominic NEW
Aditya Q FlosiBrazilXuxue Feng NEGOTIATION
Aruna C TollnerSpainAnna Fali QUALIFIED
Mujtaba S WhobreyFranceAsiya Javayant NEGOTIATION
Jefferson K InouyeCanadaAmy Elsner PROPOSAL
Chavez C TollnerIndiaIoni Bowcher QUALIFIED
Adams M MaletBrazilAnna Fali NEGOTIATION
Kadeem D DilliardCanadaAsiya Javayant UNQUALIFIED
Morrow Z RutaSpainOnyama Limba QUALIFIED
Alejandro H SlusarskiArgentinaElwin Sharvill PROPOSAL
Kadeem B CampainAustraliaBernardo Dominic NEW
Octavia K RulapaughRussiaAsiya Javayant NEGOTIATION
Costa E DoeUnited KingdomXuxue Feng NEW
Juan T MorascaIndiaAsiya Javayant PROPOSAL
Smith V RutaAustraliaAsiya Javayant NEGOTIATION
Juan E VenereCanadaBernardo Dominic PROPOSAL
Faith S StensethItalyAsiya Javayant NEW
Munro B StensethRussiaStephen Shaw PROPOSAL
Stacey X DarakjyCanadaAsiya Javayant UNQUALIFIED
Munro F DarakjyAustraliaBernardo Dominic UNQUALIFIED
Juan E ShinkoRussiaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Wickens D InouyeJapanElwin Sharvill QUALIFIED
Johnson A ButtJapanElwin Sharvill NEW
Munro T GarufiIndiaStephen Shaw NEW
Nicolas R FerenczAustraliaAmy Elsner PROPOSAL
Adams P FerenczUnited KingdomIvan Magalhaes RENEWAL
David L NickaAustraliaBernardo Dominic UNQUALIFIED
Aruna I AmigonIndiaBernardo Dominic RENEWAL
Misaki H VocelkaBrazilElwin Sharvill PROPOSAL
Greenwood H VenereBrazilIvan Magalhaes PROPOSAL
Mujtaba H AmigonIndiaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily E RoysterArgentina2024-06-05King, Christopher A Esq QUALIFIED55Onyama Limba
1001Mujtaba G DilliardCanada2024-06-05Truhlar And Truhlar Attys RENEWAL36Elwin Sharvill
1002Leja E WieserRussia2024-05-23Rousseaux, Michael Esq PROPOSAL57Anna Fali
1003Aditya G WieserArgentina2024-06-08Dorl, James J Esq NEGOTIATION47Elwin Sharvill
1004James S CaldareraUnited Kingdom2024-06-11Chapman, Ross E Esq UNQUALIFIED51Elwin Sharvill
1005Ivar Z DarakjyUnited Kingdom2024-06-17Morlong Associates UNQUALIFIED92Ioni Bowcher
1006Aruna B MacleadFrance2024-05-27Benton, John B Jr UNQUALIFIED99Ivan Magalhaes
1007Aruna Y VocelkaUnited Kingdom2024-06-10Printing Dimensions QUALIFIED1Asiya Javayant
1008Kadeem M BowleyJapan2024-06-04Feltz Printing Service QUALIFIED79Xuxue Feng
1009Mayumi Y MarrierFrance2024-06-13Feltz Printing Service QUALIFIED23Onyama Limba
1010Kadeem V AlbaresItaly2024-05-29King, Christopher A Esq NEGOTIATION89Onyama Limba
1011Arvin E ChuiCanada2024-06-02Chemel, James L Cpa UNQUALIFIED35Xuxue Feng
1012Arvin Q WieserFrance2024-06-08Chapman, Ross E Esq NEGOTIATION51Ivan Magalhaes
1013Jones W BologniaFrance2024-05-24Truhlar And Truhlar Attys UNQUALIFIED26Elwin Sharvill
1014Wickens Z KolmetzFrance2024-05-29Morlong Associates NEW71Xuxue Feng
1015Jefferson H PerinAustralia2024-05-25Rangoni Of Florence UNQUALIFIED36Anna Fali
1016Wickens A OldroydAustralia2024-06-01Truhlar And Truhlar Attys QUALIFIED88Ioni Bowcher
1017Emily K FigeroaGermany2024-05-27Rangoni Of Florence QUALIFIED34Ivan Magalhaes
1018Jennifer K CaudyBrazil2024-06-10Feltz Printing Service PROPOSAL49Ioni Bowcher
1019Mujtaba S NickaJapan2024-06-05Buckley Miller Wright QUALIFIED70Asiya Javayant
1020Maisha J ShinkoArgentina2024-06-05King, Christopher A Esq RENEWAL8Asiya Javayant
1021Emily D GauchoFrance2024-06-03Printing Dimensions RENEWAL46Asiya Javayant
1022David Y ChuiUnited Kingdom2024-06-19Dorl, James J Esq NEGOTIATION42Stephen Shaw
1023Alejandro E AmigonIndia2024-05-24Rangoni Of Florence PROPOSAL30Stephen Shaw
1024Aditya E IturbideFrance2024-06-07Feltz Printing Service NEGOTIATION10Anna Fali
1025Kaitlin R DarakjyBrazil2024-06-08Feltz Printing Service NEW21Bernardo Dominic
1026Leja F SlusarskiArgentina2024-06-02Chanay, Jeffrey A Esq RENEWAL77Anna Fali
1027Johnson H KuskoCanada2024-06-01Chanay, Jeffrey A Esq NEGOTIATION27Ivan Magalhaes
1028Costa S NestleFrance2024-05-24Morlong Associates NEW8Elwin Sharvill
1029Kaitlin L RoysterJapan2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED83Ivan Magalhaes
1030Darci Y AmigonRussia2024-05-27Feiner Bros NEW65Elwin Sharvill
1031Juan X MaletFrance2024-05-29Printing Dimensions NEGOTIATION37Ioni Bowcher
1032Octavia W WieserArgentina2024-06-18Benton, John B Jr RENEWAL69Anna Fali
1033David Z ChuiFrance2024-06-18Dorl, James J Esq PROPOSAL70Amy Elsner
1034Cody Y ButtFrance2024-06-20Benton, John B Jr RENEWAL99Anna Fali
1035Mayumi M MaletUnited Kingdom2024-05-24Chanay, Jeffrey A Esq RENEWAL64Bernardo Dominic
1036Francesco Y IturbideCanada2024-06-07Feiner Bros RENEWAL74Stephen Shaw
1037Ricardo Y MarrierAustralia2024-06-06King, Christopher A Esq RENEWAL72Amy Elsner
1038Aditya O FerenczJapan2024-05-28Dorl, James J Esq QUALIFIED90Asiya Javayant
1039David O DarakjyUnited Kingdom2024-05-28Dorl, James J Esq NEGOTIATION62Asiya Javayant
1040Leja C BriddickIndia2024-06-08Feltz Printing Service QUALIFIED10Stephen Shaw
1041Costa I FlosiBrazil2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED34Elwin Sharvill
1042Murillo U DoeFrance2024-06-14King, Christopher A Esq NEW50Ioni Bowcher
1043Silvio I StensethBrazil2024-06-18Truhlar And Truhlar Attys PROPOSAL68Bernardo Dominic
1044Munro Z KuskoGermany2024-06-09Morlong Associates NEW91Ivan Magalhaes
1045Francesco H NestleJapan2024-06-08Rousseaux, Michael Esq NEGOTIATION3Ioni Bowcher
1046Sinclair H PerinUnited Kingdom2024-06-09Rousseaux, Michael Esq NEW82Bernardo Dominic
1047Izzy R IturbideSpain2024-06-20Morlong Associates UNQUALIFIED48Ioni Bowcher
1048Munro P FollerArgentina2024-05-30Dorl, James J Esq NEGOTIATION27Amy Elsner
1049Jeanfrancois E OstroskyItaly2024-06-13Chemel, James L Cpa UNQUALIFIED42Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Cody V OstroskyAustraliaOnyama Limba RENEWAL
Silvio J GauchoBrazilIoni Bowcher PROPOSAL
Leja T WieserRussiaXuxue Feng QUALIFIED
James X WieserUnited KingdomXuxue Feng RENEWAL
Munro Z NickaFranceElwin Sharvill RENEWAL
Alejandro J RutaItalyIvan Magalhaes UNQUALIFIED
Misaki U DoeFranceAmy Elsner PROPOSAL
Deepesh B WhobreySpainXuxue Feng NEGOTIATION
Mayumi C DarakjyBrazilIvan Magalhaes PROPOSAL
Aditya K MorascaJapanStephen Shaw RENEWAL
Arvin A ButtRussiaAsiya Javayant UNQUALIFIED
Francesco Z RulapaughArgentinaOnyama Limba NEGOTIATION
Silvio L FollerCanadaAmy Elsner NEGOTIATION
Arvin F WhobreyIndiaBernardo Dominic PROPOSAL
Aruna N BologniaSpainIoni Bowcher NEGOTIATION
Ricardo H AmigonFranceIvan Magalhaes PROPOSAL
Rodrigues M FerenczBrazilIoni Bowcher NEGOTIATION
Antonio Z CampainFranceIoni Bowcher NEW
Clifford E BowleyBrazilBernardo Dominic UNQUALIFIED
Darci Y StensethItalyAnna Fali NEW
Mayumi O AlbaresFranceOnyama Limba NEGOTIATION
Maria K IturbideAustraliaStephen Shaw RENEWAL
Leon I PaprockiSpainOnyama Limba UNQUALIFIED
Murillo Y DoeItalyAnna Fali QUALIFIED
Rodrigues Y CaldareraBrazilBernardo Dominic UNQUALIFIED
Emily U RulapaughArgentinaStephen Shaw NEW
Sinclair X MaletGermanyElwin Sharvill NEGOTIATION
Mujtaba H MaletFranceAsiya Javayant NEW
Misaki E WaycottItalyIoni Bowcher PROPOSAL
Munro C SlusarskiAustraliaAnna Fali PROPOSAL
Leja M OstroskyCanadaElwin Sharvill NEGOTIATION
Adams K AmigonCanadaIoni Bowcher QUALIFIED
Maisha I MaletIndiaAmy Elsner RENEWAL
Greenwood B SchemmerGermanyElwin Sharvill NEGOTIATION
Stacey S MacleadUnited KingdomElwin Sharvill NEGOTIATION
Isabel D BologniaGermanyElwin Sharvill RENEWAL
Leja E BologniaCanadaBernardo Dominic QUALIFIED
Aditya W WaycottIndiaBernardo Dominic UNQUALIFIED
Darci E StensethAustraliaIoni Bowcher RENEWAL
Maisha R TollnerGermanyElwin Sharvill NEGOTIATION
Costa J RimUnited KingdomIvan Magalhaes QUALIFIED
Aditya S FollerBrazilElwin Sharvill NEGOTIATION
Kadeem B GlickCanadaAmy Elsner RENEWAL
Jeanfrancois G MaletRussiaBernardo Dominic QUALIFIED
Mujtaba I AlbaresAustraliaAmy Elsner QUALIFIED
James A TollnerCanadaAmy Elsner RENEWAL
Greenwood M SaylorsSpainAmy Elsner NEW
Aika W SchemmerArgentinaBernardo Dominic RENEWAL
Rodrigues O SchemmerGermanyOnyama Limba QUALIFIED
Leon J NickaBrazilBernardo Dominic RENEWAL
Frozen Columns
Name
Rodrigues V Chui
Maria U Darakjy
Greenwood U Iturbide
Ivar K Amigon
Costa J Caldarera
Munro B Venere
Deepesh W Shinko
Wickens X Butt
Mujtaba Q Nicka
Wickens Q Ostrosky
Tony E Vocelka
Octavia O Caudy
Leja N Stockham
Johnson H Wieser
Ashley N Paprocki
Kadeem I Whobrey
Cody I Briddick
Faith R Shinko
Sinclair F Maclead
Emily F Darakjy
Kadeem W Maclead
Claire D Waycott
Faith H Ferencz
Antonio S Stockham
Costa O Royster
Julie F Rulapaugh
Mujtaba M Maclead
Juan Q Shinko
Costa M Maclead
Cody J Morasca
Maria B Darakjy
Misaki C Stenseth
Kadeem Q Gillian
Jennifer Z Caldarera
Mayumi L Waycott
Isabel I Campain
Wickens J Ostrosky
Jefferson F Kolmetz
Leon C Ostrosky
Aditya S Chui
Murillo N Schemmer
Rodrigues M Sergi
Francesco G Nicka
Jones R Perin
Claire O Vocelka
Costa R Chui
Stacey J Iturbide
David N Iturbide
Faith F Nestle
Leja Z Sergi
IdCountryDate
1000Canada2024-06-03
1001United Kingdom2024-05-30
1002Argentina2024-06-03
1003United Kingdom2024-05-31
1004Spain2024-06-03
1005France2024-06-18
1006Canada2024-06-07
1007Brazil2024-06-08
1008Argentina2024-06-11
1009Australia2024-06-17
1010Brazil2024-05-28
1011Japan2024-05-28
1012France2024-06-06
1013France2024-06-01
1014Japan2024-06-03
1015France2024-06-20
1016Australia2024-05-23
1017Canada2024-06-15
1018Spain2024-06-01
1019Italy2024-06-19
1020Brazil2024-06-10
1021Spain2024-06-13
1022Canada2024-06-15
1023Japan2024-05-29
1024India2024-06-07
1025India2024-06-10
1026Germany2024-05-30
1027India2024-05-28
1028Germany2024-06-16
1029Canada2024-06-14
1030France2024-06-15
1031Russia2024-06-04
1032Italy2024-05-30
1033Australia2024-06-08
1034Argentina2024-05-31
1035Germany2024-06-03
1036Argentina2024-06-12
1037Italy2024-05-24
1038France2024-05-31
1039Argentina2024-06-18
1040Argentina2024-06-18
1041India2024-05-31
1042Spain2024-06-12
1043Japan2024-06-01
1044Spain2024-05-23
1045France2024-06-11
1046Brazil2024-06-15
1047Argentina2024-06-15
1048Brazil2024-05-23
1049Argentina2024-05-28

On-Demand Data

NameIdCountryDate
Claire B Darakjy1000Australia2024-05-31
Costa F Vocelka1001Italy2024-06-06
Jones D Ferencz1002India2024-06-20
Mujtaba I Caudy1003Japan2024-05-24
Octavia J Malet1004Japan2024-05-28
Murillo T Slusarski1005India2024-05-25
Tony A Rulapaugh1006United Kingdom2024-06-17
Alejandro A Morasca1007Spain2024-06-17
Maisha R Caldarera1008United Kingdom2024-06-10
Stacey X Flosi1009Italy2024-06-21
Francesco D Sergi1010Germany2024-06-06
Kaitlin K Ferencz1011Canada2024-06-20
Julie B Bolognia1012Japan2024-06-12
Deepesh I Ruta1013Germany2024-05-29
Smith Z Garufi1014Spain2024-05-25
Octavia L Chui1015Spain2024-06-03
Faith H Vocelka1016Russia2024-06-21
Ricardo K Royster1017Brazil2024-06-16
Munro N Campain1018Brazil2024-06-19
Misaki H Malet1019India2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy T SaylorsUnited KingdomStephen Shaw PROPOSAL
Cody Q ChuiBrazilXuxue Feng QUALIFIED
Salvatore X OldroydCanadaIoni Bowcher UNQUALIFIED
Salvatore D NickaCanadaIoni Bowcher RENEWAL
David X NestleUnited KingdomIvan Magalhaes PROPOSAL
Morrow C SergiUnited KingdomAsiya Javayant RENEWAL
Isabel Z MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Salvatore W GarufiUnited KingdomAnna Fali RENEWAL
Clifford U KolmetzAustraliaAmy Elsner QUALIFIED
Francesco B GauchoIndiaXuxue Feng NEGOTIATION
Johnson E FigeroaUnited KingdomOnyama Limba NEGOTIATION
Aika C DilliardGermanyAnna Fali QUALIFIED
Mujtaba A GillianSpainAmy Elsner RENEWAL
Smith N DarakjyArgentinaXuxue Feng QUALIFIED
Ivar V PoquetteUnited KingdomIoni Bowcher NEGOTIATION
Stacey V SchemmerSpainStephen Shaw NEGOTIATION
Jennifer V InouyeGermanyXuxue Feng NEW
James P WhobreyRussiaStephen Shaw RENEWAL
Ivar H GillianIndiaAsiya Javayant RENEWAL
Jennifer L IturbideSpainStephen Shaw NEGOTIATION
Costa T GillianJapanOnyama Limba RENEWAL
Tony C OldroydJapanAsiya Javayant NEGOTIATION
Alejandro V CaudyCanadaIoni Bowcher NEW
Isabel W MaletFranceOnyama Limba UNQUALIFIED
Silvio U MarrierFranceIvan Magalhaes NEW
Aika D FerenczGermanyStephen Shaw UNQUALIFIED
Arvin V TollnerAustraliaAnna Fali UNQUALIFIED
Isabel O RulapaughUnited KingdomOnyama Limba QUALIFIED
Alejandro E KuskoBrazilStephen Shaw QUALIFIED
Izzy M CaudyAustraliaStephen Shaw NEGOTIATION
Izzy C PerinAustraliaAmy Elsner PROPOSAL
Rodrigues I AlbaresItalyAnna Fali NEW
Aditya X CampainJapanStephen Shaw PROPOSAL
Silvio J SlusarskiRussiaOnyama Limba UNQUALIFIED
Isabel C InouyeRussiaElwin Sharvill QUALIFIED
Wickens S BologniaFranceAsiya Javayant PROPOSAL
Chavez A MacleadRussiaIoni Bowcher UNQUALIFIED
Izzy Q FigeroaFranceOnyama Limba PROPOSAL
Misaki K BowleySpainXuxue Feng QUALIFIED
Chavez S IturbideIndiaIvan Magalhaes 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>