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
Aruna A CampainSpainXuxue Feng QUALIFIED
Leon H StensethGermanyIoni Bowcher QUALIFIED
Leon R DoeGermanyXuxue Feng NEW
Greenwood X DoeUnited KingdomAnna Fali RENEWAL
Sinclair E AmigonFranceAsiya Javayant PROPOSAL
Aruna H WhobreyCanadaOnyama Limba QUALIFIED
Julie M FlosiSpainAnna Fali QUALIFIED
Adams F TollnerRussiaXuxue Feng RENEWAL
Ivar R CaldareraUnited KingdomOnyama Limba UNQUALIFIED
Emily S OldroydRussiaIoni Bowcher QUALIFIED
Sinclair O RimItalyAnna Fali NEW
Juan Q MaletGermanyXuxue Feng NEGOTIATION
Faith R FerenczAustraliaAmy Elsner NEW
Octavia P SlusarskiFranceAsiya Javayant RENEWAL
Juan E WaycottCanadaElwin Sharvill UNQUALIFIED
James L PoquetteArgentinaOnyama Limba PROPOSAL
Octavia Z SergiArgentinaAmy Elsner UNQUALIFIED
Nicolas F MaletRussiaIoni Bowcher UNQUALIFIED
Johnson N GarufiIndiaBernardo Dominic PROPOSAL
Jones V DarakjyGermanyIvan Magalhaes NEW
Johnson J CaudyBrazilStephen Shaw QUALIFIED
Deepesh A KolmetzAustraliaAmy Elsner PROPOSAL
Silvio Z RutaFranceElwin Sharvill RENEWAL
Leon N RoysterUnited KingdomElwin Sharvill NEW
Izzy C VenereFranceIoni Bowcher NEGOTIATION
Ivar H PaprockiJapanElwin Sharvill UNQUALIFIED
Clifford F SaylorsCanadaOnyama Limba NEW
Aruna G StensethArgentinaStephen Shaw UNQUALIFIED
James R StensethRussiaAsiya Javayant UNQUALIFIED
Tony Y KolmetzItalyElwin Sharvill QUALIFIED
Jones G VenereArgentinaStephen Shaw QUALIFIED
Darci F ChuiArgentinaIvan Magalhaes NEGOTIATION
Kaitlin E IturbideRussiaAsiya Javayant NEW
Salvatore F GarufiSpainIoni Bowcher PROPOSAL
Deepesh K BriddickAustraliaIvan Magalhaes NEW
Salvatore J OldroydGermanyOnyama Limba PROPOSAL
Maria X FollerSpainStephen Shaw QUALIFIED
Octavia T CaudyJapanXuxue Feng NEGOTIATION
David W GillianItalyElwin Sharvill QUALIFIED
Chavez A FerenczCanadaStephen Shaw NEW
Juan Z InouyeUnited KingdomBernardo Dominic NEGOTIATION
Aditya T GarufiArgentinaIoni Bowcher NEGOTIATION
Izzy D SaylorsIndiaAmy Elsner QUALIFIED
Ivar V PoquetteUnited KingdomAnna Fali QUALIFIED
Mujtaba N MorascaBrazilAsiya Javayant NEGOTIATION
Sinclair C FlosiItalyStephen Shaw UNQUALIFIED
Kadeem C TollnerIndiaIoni Bowcher NEGOTIATION
Wickens R StockhamUnited KingdomStephen Shaw NEW
Ivar S MacleadCanadaIvan Magalhaes UNQUALIFIED
Rodrigues S AmigonArgentinaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan Q FerenczCanadaOnyama Limba UNQUALIFIED
Ivar B FerenczUnited KingdomIvan Magalhaes RENEWAL
Adams O MacleadBrazilOnyama Limba NEW
Emily I PerinItalyAnna Fali RENEWAL
Silvio U InouyeArgentinaOnyama Limba NEW
Stacey L SchemmerRussiaIoni Bowcher UNQUALIFIED
Stacey A BowleyItalyAsiya Javayant UNQUALIFIED
Leja D WaycottBrazilBernardo Dominic UNQUALIFIED
Leon P FollerItalyOnyama Limba PROPOSAL
Tony N InouyeFranceOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria M AlbaresBrazil2024-05-20Printing Dimensions PROPOSAL13Onyama Limba
1001Chavez S RulapaughAustralia2024-05-15Truhlar And Truhlar Attys NEW53Ivan Magalhaes
1002Mujtaba F CaldareraItaly2024-05-13Feltz Printing Service NEW64Asiya Javayant
1003Izzy C BriddickUnited Kingdom2024-05-27Chanay, Jeffrey A Esq NEGOTIATION86Bernardo Dominic
1004Ricardo F BologniaJapan2024-05-15Feltz Printing Service UNQUALIFIED87Ioni Bowcher
1005Emily F ChuiCanada2024-05-14Dorl, James J Esq UNQUALIFIED36Elwin Sharvill
1006Misaki K AlbaresArgentina2024-05-15Feiner Bros RENEWAL36Elwin Sharvill
1007Jeanfrancois Y StockhamRussia2024-05-17Buckley Miller Wright PROPOSAL15Asiya Javayant
1008Izzy Y RoysterSpain2024-05-27King, Christopher A Esq QUALIFIED24Anna Fali
1009Leja E RoysterItaly2024-05-24Rousseaux, Michael Esq QUALIFIED13Ioni Bowcher
1010Stacey K VocelkaRussia2024-05-11Morlong Associates QUALIFIED73Ioni Bowcher
1011Ricardo F CaudyBrazil2024-04-30Feiner Bros NEW58Asiya Javayant
1012Mayumi A BowleyIndia2024-05-09Rousseaux, Michael Esq RENEWAL79Asiya Javayant
1013Jefferson U ShinkoUnited Kingdom2024-05-26Chemel, James L Cpa UNQUALIFIED45Onyama Limba
1014Sinclair M FlosiJapan2024-05-11Feiner Bros NEGOTIATION56Xuxue Feng
1015Ashley C NestleJapan2024-04-30Benton, John B Jr UNQUALIFIED50Ioni Bowcher
1016Smith Z WaycottFrance2024-05-14Commercial Press UNQUALIFIED30Asiya Javayant
1017Darci Y StockhamGermany2024-05-08Rangoni Of Florence UNQUALIFIED12Stephen Shaw
1018Juan X FigeroaSpain2024-05-19Chanay, Jeffrey A Esq NEW46Stephen Shaw
1019Ricardo F NickaCanada2024-04-30Chapman, Ross E Esq PROPOSAL83Bernardo Dominic
1020Faith Y InouyeSpain2024-05-18Dorl, James J Esq UNQUALIFIED93Ivan Magalhaes
1021Stacey Y SaylorsRussia2024-05-08Chanay, Jeffrey A Esq UNQUALIFIED20Stephen Shaw
1022Wickens L OldroydCanada2024-05-25Chanay, Jeffrey A Esq NEGOTIATION85Ivan Magalhaes
1023Jennifer Y RulapaughJapan2024-05-10Benton, John B Jr NEGOTIATION26Bernardo Dominic
1024Faith U RutaBrazil2024-05-08Feltz Printing Service QUALIFIED26Ivan Magalhaes
1025Jefferson Q WaycottArgentina2024-05-18Dorl, James J Esq QUALIFIED75Ioni Bowcher
1026Aruna R WhobreyIndia2024-05-03Morlong Associates NEGOTIATION10Elwin Sharvill
1027Misaki M MarrierRussia2024-05-13Dorl, James J Esq QUALIFIED58Anna Fali
1028Cody C FigeroaItaly2024-05-25Buckley Miller Wright QUALIFIED65Ivan Magalhaes
1029Deepesh S SaylorsSpain2024-05-04Dorl, James J Esq NEW22Onyama Limba
1030Kadeem B SchemmerRussia2024-05-19Rousseaux, Michael Esq NEW96Ivan Magalhaes
1031Kaitlin H CampainAustralia2024-05-06Rousseaux, Michael Esq NEGOTIATION25Xuxue Feng
1032Maisha Z VocelkaRussia2024-05-01Rangoni Of Florence NEW56Stephen Shaw
1033James Q VenereBrazil2024-05-09Truhlar And Truhlar Attys RENEWAL33Stephen Shaw
1034Kaitlin K RimAustralia2024-05-25Printing Dimensions PROPOSAL42Bernardo Dominic
1035Mujtaba Q MacleadSpain2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED63Ivan Magalhaes
1036Maria D KolmetzFrance2024-05-13Chapman, Ross E Esq PROPOSAL18Amy Elsner
1037Sinclair B VenereItaly2024-05-02Rousseaux, Michael Esq RENEWAL66Anna Fali
1038James I DilliardArgentina2024-05-08Chanay, Jeffrey A Esq NEW25Anna Fali
1039Faith N TollnerIndia2024-05-17Chemel, James L Cpa UNQUALIFIED67Ioni Bowcher
1040Johnson H AlbaresAustralia2024-05-02Morlong Associates RENEWAL40Bernardo Dominic
1041Ricardo F MaletFrance2024-05-12Buckley Miller Wright QUALIFIED53Asiya Javayant
1042Ivar H BriddickAustralia2024-05-13Buckley Miller Wright PROPOSAL8Stephen Shaw
1043Maisha M GauchoItaly2024-05-01Dorl, James J Esq NEGOTIATION98Asiya Javayant
1044Greenwood M RoysterAustralia2024-05-14Commercial Press NEW94Amy Elsner
1045Nicolas U CaudyRussia2024-05-08Feltz Printing Service RENEWAL52Asiya Javayant
1046Wickens T NestleItaly2024-05-05Feiner Bros NEW47Ivan Magalhaes
1047Mujtaba P KuskoArgentina2024-05-16Commercial Press NEW56Amy Elsner
1048Greenwood F NestleGermany2024-05-23Rousseaux, Michael Esq NEGOTIATION69Ioni Bowcher
1049Juan G RutaUnited Kingdom2024-05-03Truhlar And Truhlar Attys PROPOSAL57Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Isabel V GarufiJapanIvan Magalhaes NEW
Alejandro U SaylorsItalyStephen Shaw QUALIFIED
Nicolas X GlickRussiaXuxue Feng UNQUALIFIED
Ricardo H SchemmerJapanAsiya Javayant QUALIFIED
Octavia M MarrierSpainAmy Elsner QUALIFIED
Wickens L ChuiGermanyOnyama Limba PROPOSAL
Aika H CaldareraUnited KingdomXuxue Feng RENEWAL
Claire W GillianBrazilBernardo Dominic PROPOSAL
Ashley J AmigonFranceElwin Sharvill QUALIFIED
Arvin R KuskoCanadaAsiya Javayant UNQUALIFIED
Mujtaba O WhobreyArgentinaAmy Elsner NEW
Salvatore A SaylorsCanadaXuxue Feng UNQUALIFIED
Juan E RoysterBrazilIvan Magalhaes UNQUALIFIED
Ivar U AlbaresAustraliaElwin Sharvill NEW
Nicolas V SergiAustraliaOnyama Limba RENEWAL
Arvin H PerinAustraliaAmy Elsner PROPOSAL
Clifford Y MacleadSpainBernardo Dominic PROPOSAL
Maria S MacleadAustraliaBernardo Dominic UNQUALIFIED
Faith J VenereSpainBernardo Dominic PROPOSAL
Alejandro Q BriddickFranceIvan Magalhaes RENEWAL
Leon S RimIndiaIvan Magalhaes NEGOTIATION
Julie G RutaIndiaIoni Bowcher RENEWAL
Misaki G CaudyCanadaAnna Fali UNQUALIFIED
Emily S BologniaItalyAmy Elsner RENEWAL
James L BowleyGermanyAnna Fali NEGOTIATION
Ricardo L GlickBrazilAmy Elsner RENEWAL
Costa T GauchoUnited KingdomIvan Magalhaes NEGOTIATION
Aruna W KuskoSpainBernardo Dominic NEW
Salvatore X DarakjyAustraliaOnyama Limba PROPOSAL
Deepesh Q CampainSpainStephen Shaw UNQUALIFIED
Kadeem J AmigonItalyAmy Elsner NEGOTIATION
Ashley S NestleJapanAmy Elsner RENEWAL
Emily W ChuiBrazilIvan Magalhaes UNQUALIFIED
Munro S OldroydJapanStephen Shaw NEW
Chavez N KolmetzSpainAsiya Javayant PROPOSAL
Leja E KuskoItalyBernardo Dominic NEGOTIATION
Johnson J GlickCanadaElwin Sharvill QUALIFIED
Sinclair Z CaldareraRussiaAmy Elsner RENEWAL
Isabel Q GillianCanadaBernardo Dominic UNQUALIFIED
David H VenereJapanElwin Sharvill RENEWAL
Clifford Q MacleadItalyOnyama Limba PROPOSAL
Tony D WaycottFranceIvan Magalhaes QUALIFIED
Arvin T RulapaughBrazilAmy Elsner NEW
Jeanfrancois Q OstroskyUnited KingdomIvan Magalhaes QUALIFIED
Clifford T GillianFranceIoni Bowcher PROPOSAL
Aika F SlusarskiAustraliaElwin Sharvill UNQUALIFIED
Mujtaba R VenereItalyElwin Sharvill QUALIFIED
Aruna Q CaldareraItalyStephen Shaw PROPOSAL
Ricardo A RimItalyOnyama Limba RENEWAL
Misaki F TollnerArgentinaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Darci V Ruta
Cody Q Rulapaugh
Aika U Schemmer
Ricardo Z Nicka
Kaitlin L Amigon
Clifford W Malet
Mujtaba Y Ruta
Munro A Poquette
Johnson G Gillian
Wickens X Bolognia
Misaki M Darakjy
Julie Q Sergi
Wickens P Nicka
Ashley G Ferencz
Octavia F Maclead
Arvin J Schemmer
Emily R Figeroa
Mayumi P Darakjy
Jennifer J Rulapaugh
Johnson K Ruta
Kadeem X Flosi
Deepesh L Maclead
Leon S Rulapaugh
Ashley P Flosi
Adams M Ostrosky
Julie Q Inouye
Johnson J Glick
Nicolas G Kusko
Maria T Morasca
Claire Q Vocelka
Jefferson P Waycott
Octavia X Foller
Claire E Paprocki
Ricardo J Gillian
Juan G Poquette
Deepesh T Amigon
Juan I Campain
Isabel V Nestle
Aika S Figeroa
Faith E Inouye
Maria E Perin
Isabel O Butt
Wickens E Marrier
Julie T Malet
Stacey R Iturbide
Jones W Shinko
Alejandro U Caudy
Johnson J Foller
Aditya N Inouye
David G Shinko
IdCountryDate
1000Brazil2024-05-24
1001Brazil2024-05-20
1002Brazil2024-05-11
1003India2024-05-01
1004United Kingdom2024-05-26
1005Japan2024-05-13
1006France2024-05-17
1007France2024-05-09
1008Australia2024-05-27
1009France2024-05-11
1010Australia2024-05-04
1011Canada2024-05-13
1012Italy2024-05-16
1013Brazil2024-05-25
1014Spain2024-05-14
1015Spain2024-04-28
1016Australia2024-04-29
1017Australia2024-05-03
1018Canada2024-05-07
1019Brazil2024-05-17
1020United Kingdom2024-05-10
1021Argentina2024-05-22
1022India2024-05-01
1023United Kingdom2024-05-25
1024Argentina2024-05-10
1025Canada2024-05-05
1026Brazil2024-05-04
1027Spain2024-05-07
1028Spain2024-05-09
1029France2024-05-27
1030Japan2024-05-01
1031France2024-05-10
1032Canada2024-05-27
1033Italy2024-05-07
1034Germany2024-04-28
1035Brazil2024-05-04
1036United Kingdom2024-05-11
1037United Kingdom2024-05-09
1038Spain2024-05-17
1039Spain2024-05-24
1040Italy2024-05-10
1041Argentina2024-05-03
1042India2024-05-13
1043Argentina2024-05-03
1044Germany2024-04-30
1045India2024-05-11
1046Spain2024-05-25
1047Australia2024-05-06
1048Argentina2024-04-29
1049United Kingdom2024-05-08

On-Demand Data

NameIdCountryDate
Kadeem J Rulapaugh1000Spain2024-05-14
Kadeem T Paprocki1001Russia2024-05-09
Kadeem U Nicka1002Italy2024-05-09
Deepesh E Slusarski1003Italy2024-05-26
Murillo C Bolognia1004Spain2024-04-30
Julie D Amigon1005Japan2024-05-05
Stacey C Stenseth1006Canada2024-05-14
Jeanfrancois Q Nestle1007Australia2024-05-21
Kaitlin S Stenseth1008Spain2024-05-26
Salvatore A Maclead1009United Kingdom2024-05-20
Aika Z Whobrey1010Japan2024-04-29
Faith R Marrier1011Spain2024-05-09
Mayumi N Amigon1012Italy2024-05-03
Claire J Briddick1013Russia2024-05-05
Tony N Kusko1014Russia2024-04-30
Sinclair W Inouye1015Germany2024-05-16
James W Figeroa1016Spain2024-04-30
Aditya L Caldarera1017Spain2024-05-07
Izzy V Shinko1018Japan2024-05-02
Jones J Doe1019Canada2024-05-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel G GillianUnited KingdomAnna Fali QUALIFIED
Ivar Y KolmetzCanadaElwin Sharvill QUALIFIED
Ivar C RoysterItalyAsiya Javayant UNQUALIFIED
Adams Q PerinSpainAnna Fali NEGOTIATION
Antonio D MorascaIndiaOnyama Limba QUALIFIED
Maisha Q IturbideArgentinaIvan Magalhaes PROPOSAL
Aditya L DilliardRussiaAmy Elsner NEGOTIATION
Costa S GlickArgentinaElwin Sharvill UNQUALIFIED
Arvin M InouyeSpainIvan Magalhaes QUALIFIED
Misaki E GlickFranceElwin Sharvill PROPOSAL
Murillo Y CaudyAustraliaXuxue Feng PROPOSAL
Morrow E PerinItalyAnna Fali NEW
Sinclair K KuskoRussiaBernardo Dominic NEW
Francesco R RulapaughUnited KingdomBernardo Dominic RENEWAL
David K FollerItalyStephen Shaw RENEWAL
Tony Y BologniaJapanAsiya Javayant RENEWAL
Kaitlin B MacleadJapanXuxue Feng QUALIFIED
Tony U KuskoIndiaIvan Magalhaes UNQUALIFIED
Leja C AmigonJapanIoni Bowcher PROPOSAL
Sinclair A FerenczCanadaAsiya Javayant NEGOTIATION
Mujtaba X KuskoFranceAsiya Javayant UNQUALIFIED
David Z DarakjyArgentinaAsiya Javayant UNQUALIFIED
Antonio E NestleFranceXuxue Feng RENEWAL
Salvatore E VocelkaFranceAsiya Javayant PROPOSAL
Izzy U VocelkaSpainXuxue Feng UNQUALIFIED
Faith C BriddickJapanXuxue Feng NEGOTIATION
Antonio W BriddickFranceAmy Elsner PROPOSAL
Smith T AlbaresGermanyOnyama Limba NEW
Rodrigues B BologniaAustraliaAnna Fali QUALIFIED
Smith S TollnerAustraliaStephen Shaw RENEWAL
Wickens A VocelkaIndiaIoni Bowcher QUALIFIED
Isabel K WhobreyBrazilAnna Fali RENEWAL
Chavez Y OstroskyCanadaOnyama Limba RENEWAL
Darci S DarakjyItalyElwin Sharvill RENEWAL
Salvatore Y ShinkoAustraliaIoni Bowcher NEW
Francesco S DarakjySpainStephen Shaw RENEWAL
Antonio O SchemmerJapanStephen Shaw NEGOTIATION
Emily T GillianCanadaStephen Shaw UNQUALIFIED
Smith G AlbaresBrazilXuxue Feng PROPOSAL
Arvin W NestleAustraliaAnna 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>