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
Juan O SchemmerItalyBernardo Dominic NEGOTIATION
Maisha Q GauchoSpainStephen Shaw NEGOTIATION
Maisha R TollnerItalyIvan Magalhaes UNQUALIFIED
Salvatore B GillianRussiaAnna Fali NEGOTIATION
Maria B CaudyBrazilAsiya Javayant NEW
Aruna X DoeIndiaAnna Fali QUALIFIED
Emily E DarakjyArgentinaOnyama Limba UNQUALIFIED
Ricardo P WieserCanadaAnna Fali NEGOTIATION
Kaitlin F CaudyBrazilXuxue Feng NEW
Nicolas X KuskoRussiaAnna Fali UNQUALIFIED
Greenwood W SaylorsJapanAnna Fali QUALIFIED
Mayumi E RoysterSpainAnna Fali PROPOSAL
Isabel H RutaFranceAsiya Javayant QUALIFIED
Nicolas D ShinkoRussiaAmy Elsner NEW
Costa W MarrierBrazilStephen Shaw PROPOSAL
Juan O AmigonBrazilOnyama Limba UNQUALIFIED
Maisha U WhobreyAustraliaBernardo Dominic UNQUALIFIED
Isabel M ButtCanadaIoni Bowcher PROPOSAL
Tony P PaprockiJapanElwin Sharvill UNQUALIFIED
Octavia L MaletBrazilElwin Sharvill RENEWAL
Misaki P PerinAustraliaIoni Bowcher NEGOTIATION
Tony J GillianIndiaAsiya Javayant UNQUALIFIED
Jeanfrancois X MaletArgentinaOnyama Limba UNQUALIFIED
Mayumi O DoeIndiaAsiya Javayant RENEWAL
Claire G AmigonGermanyElwin Sharvill RENEWAL
Johnson H BologniaFranceIvan Magalhaes NEW
Ivar O VocelkaJapanElwin Sharvill QUALIFIED
Ivar F BowleyUnited KingdomXuxue Feng UNQUALIFIED
Mujtaba W ChuiJapanStephen Shaw NEGOTIATION
Jennifer F SergiSpainElwin Sharvill PROPOSAL
Juan F AlbaresJapanOnyama Limba RENEWAL
Nicolas M KuskoFranceAsiya Javayant UNQUALIFIED
Maria K GillianBrazilOnyama Limba RENEWAL
David O MacleadBrazilAmy Elsner RENEWAL
Emily K IturbideAustraliaAnna Fali QUALIFIED
Jefferson S CaldareraIndiaStephen Shaw RENEWAL
Morrow Y StockhamRussiaAmy Elsner QUALIFIED
Rodrigues J BowleyArgentinaStephen Shaw RENEWAL
Greenwood V BriddickCanadaAmy Elsner NEGOTIATION
Deepesh G GauchoFranceXuxue Feng RENEWAL
Aruna I InouyeUnited KingdomAsiya Javayant PROPOSAL
Rodrigues M BowleyAustraliaAnna Fali PROPOSAL
Julie B TollnerJapanAnna Fali PROPOSAL
Murillo H CaldareraIndiaStephen Shaw PROPOSAL
David E ChuiJapanAnna Fali NEGOTIATION
Antonio V ButtFranceAmy Elsner PROPOSAL
Stacey L WhobreyUnited KingdomAmy Elsner RENEWAL
Izzy K SchemmerArgentinaStephen Shaw RENEWAL
Francesco W FlosiItalyIvan Magalhaes NEGOTIATION
Deepesh K DilliardItalyAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aditya B FollerJapanBernardo Dominic RENEWAL
Costa H KuskoItalyStephen Shaw RENEWAL
Ivar E VenereRussiaIvan Magalhaes NEW
Jennifer W MaletItalyStephen Shaw NEW
Aditya Y MarrierUnited KingdomXuxue Feng QUALIFIED
Isabel K PoquetteGermanyStephen Shaw PROPOSAL
Emily T PerinBrazilStephen Shaw RENEWAL
Smith K BologniaJapanAmy Elsner UNQUALIFIED
Leja P IturbideRussiaBernardo Dominic PROPOSAL
Wickens P PaprockiFranceIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo B RutaJapan2024-06-21Chanay, Jeffrey A Esq UNQUALIFIED38Xuxue Feng
1001Antonio Y IturbideItaly2024-05-26Chanay, Jeffrey A Esq NEGOTIATION44Bernardo Dominic
1002Emily A RimUnited Kingdom2024-05-24Printing Dimensions QUALIFIED43Bernardo Dominic
1003Jennifer J DoeJapan2024-06-02Feltz Printing Service NEW97Ivan Magalhaes
1004Murillo B PaprockiArgentina2024-06-01Chapman, Ross E Esq PROPOSAL79Ivan Magalhaes
1005Alejandro Q GauchoJapan2024-06-10Benton, John B Jr PROPOSAL33Bernardo Dominic
1006Isabel Z PaprockiGermany2024-06-20King, Christopher A Esq RENEWAL25Amy Elsner
1007Adams H ShinkoBrazil2024-06-02Buckley Miller Wright QUALIFIED88Amy Elsner
1008Rodrigues T FollerRussia2024-06-06Feiner Bros QUALIFIED61Amy Elsner
1009Tony R SaylorsRussia2024-05-28Truhlar And Truhlar Attys RENEWAL91Elwin Sharvill
1010Munro Q PerinCanada2024-06-15Truhlar And Truhlar Attys QUALIFIED95Amy Elsner
1011Salvatore D WieserAustralia2024-06-22King, Christopher A Esq NEGOTIATION0Anna Fali
1012Emily B AmigonJapan2024-05-24Rousseaux, Michael Esq UNQUALIFIED36Ivan Magalhaes
1013Izzy A VocelkaItaly2024-06-06Rousseaux, Michael Esq NEW79Onyama Limba
1014Antonio P FerenczRussia2024-06-09Rousseaux, Michael Esq PROPOSAL56Ivan Magalhaes
1015Aruna B TollnerCanada2024-06-12Feiner Bros NEGOTIATION9Anna Fali
1016Murillo G ChuiIndia2024-06-13Benton, John B Jr UNQUALIFIED75Ivan Magalhaes
1017Darci J ButtGermany2024-06-19Chemel, James L Cpa NEGOTIATION1Anna Fali
1018Ivar U IturbideRussia2024-05-28Morlong Associates QUALIFIED35Stephen Shaw
1019Maria O WhobreyAustralia2024-06-11Truhlar And Truhlar Attys NEGOTIATION37Ioni Bowcher
1020Morrow Z WieserJapan2024-06-11Rousseaux, Michael Esq NEGOTIATION98Onyama Limba
1021Silvio G CaudyUnited Kingdom2024-06-09Rangoni Of Florence PROPOSAL93Stephen Shaw
1022Deepesh F WhobreyBrazil2024-06-07Truhlar And Truhlar Attys UNQUALIFIED98Bernardo Dominic
1023Izzy A FollerItaly2024-06-07Printing Dimensions NEW50Stephen Shaw
1024Sinclair Z SaylorsFrance2024-06-18Chemel, James L Cpa RENEWAL65Ivan Magalhaes
1025Antonio Z InouyeCanada2024-06-07Buckley Miller Wright QUALIFIED58Elwin Sharvill
1026Maria S ChuiIndia2024-06-22Rangoni Of Florence RENEWAL49Ioni Bowcher
1027Sinclair F InouyeSpain2024-06-18Feltz Printing Service PROPOSAL17Amy Elsner
1028Maria M MorascaCanada2024-06-15Feltz Printing Service NEGOTIATION84Amy Elsner
1029Jennifer E WhobreyArgentina2024-05-30Commercial Press NEGOTIATION42Elwin Sharvill
1030Nicolas G WieserIndia2024-06-16Morlong Associates RENEWAL77Xuxue Feng
1031Murillo K NickaItaly2024-05-25Chanay, Jeffrey A Esq RENEWAL98Ivan Magalhaes
1032David H SchemmerFrance2024-06-02Rousseaux, Michael Esq UNQUALIFIED62Ioni Bowcher
1033Smith R StockhamBrazil2024-06-12Chapman, Ross E Esq UNQUALIFIED44Asiya Javayant
1034Jefferson C PerinAustralia2024-06-05Benton, John B Jr QUALIFIED2Ioni Bowcher
1035Wickens K MarrierRussia2024-05-29Chapman, Ross E Esq NEGOTIATION85Elwin Sharvill
1036Tony O KolmetzBrazil2024-05-28Chanay, Jeffrey A Esq PROPOSAL89Bernardo Dominic
1037Ricardo S DarakjyBrazil2024-06-13Dorl, James J Esq RENEWAL4Ivan Magalhaes
1038Mujtaba A FigeroaJapan2024-06-22Commercial Press RENEWAL71Bernardo Dominic
1039Aruna K PoquetteIndia2024-05-27Commercial Press QUALIFIED1Amy Elsner
1040Rodrigues S DoeBrazil2024-06-09Feiner Bros PROPOSAL17Elwin Sharvill
1041Maria I CampainFrance2024-05-25Buckley Miller Wright QUALIFIED57Anna Fali
1042Johnson B BologniaRussia2024-06-07Chanay, Jeffrey A Esq RENEWAL15Ioni Bowcher
1043Sinclair B MorascaUnited Kingdom2024-06-09Chemel, James L Cpa UNQUALIFIED67Stephen Shaw
1044James U GillianBrazil2024-05-24Rousseaux, Michael Esq RENEWAL81Xuxue Feng
1045Murillo D CampainCanada2024-06-04Chanay, Jeffrey A Esq QUALIFIED98Bernardo Dominic
1046Smith X ButtItaly2024-06-04Rousseaux, Michael Esq RENEWAL29Ioni Bowcher
1047Kaitlin T StockhamUnited Kingdom2024-06-02Commercial Press NEW70Elwin Sharvill
1048Chavez Z FlosiAustralia2024-06-06Rangoni Of Florence NEGOTIATION54Amy Elsner
1049Maria W MaletSpain2024-06-12Rousseaux, Michael Esq RENEWAL77Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ashley I KuskoIndiaAnna Fali QUALIFIED
Cody S AmigonItalyAnna Fali QUALIFIED
Ivar I SchemmerArgentinaIvan Magalhaes RENEWAL
Ivar M MaletGermanyIvan Magalhaes NEW
Kaitlin U KuskoAustraliaOnyama Limba NEGOTIATION
Mayumi H DarakjyFranceOnyama Limba QUALIFIED
Clifford G IturbideIndiaBernardo Dominic NEGOTIATION
Juan G StensethRussiaIvan Magalhaes UNQUALIFIED
Octavia N PerinAustraliaElwin Sharvill RENEWAL
Leja S GlickRussiaIoni Bowcher QUALIFIED
David S VocelkaJapanIoni Bowcher UNQUALIFIED
Jefferson Z DilliardItalyIvan Magalhaes QUALIFIED
Chavez J StockhamIndiaAmy Elsner PROPOSAL
Costa K VenereGermanyXuxue Feng NEGOTIATION
Clifford Y IturbideSpainAsiya Javayant QUALIFIED
Adams U WhobreyItalyAsiya Javayant QUALIFIED
Stacey K PoquetteUnited KingdomIvan Magalhaes RENEWAL
Ivar E SergiArgentinaAnna Fali QUALIFIED
Darci K SaylorsArgentinaAnna Fali UNQUALIFIED
Darci V TollnerJapanIoni Bowcher RENEWAL
Mujtaba V DoeUnited KingdomAnna Fali UNQUALIFIED
Tony Z ButtSpainOnyama Limba RENEWAL
Aruna T CaldareraArgentinaIvan Magalhaes NEGOTIATION
Chavez B SlusarskiRussiaElwin Sharvill NEW
Ricardo W IturbideJapanIoni Bowcher UNQUALIFIED
Murillo Z BologniaArgentinaElwin Sharvill UNQUALIFIED
Emily F RutaArgentinaXuxue Feng NEW
Darci N WhobreyGermanyBernardo Dominic UNQUALIFIED
Clifford H GlickCanadaIvan Magalhaes QUALIFIED
Faith S GauchoCanadaElwin Sharvill PROPOSAL
Munro C IturbideJapanIvan Magalhaes NEW
Ricardo A FollerIndiaElwin Sharvill NEW
Juan K NickaCanadaOnyama Limba NEGOTIATION
Alejandro I OldroydFranceOnyama Limba PROPOSAL
Sinclair D CampainIndiaAnna Fali UNQUALIFIED
Ricardo G FerenczGermanyStephen Shaw NEW
Aruna D RutaJapanAnna Fali NEGOTIATION
Aditya V CaudyAustraliaStephen Shaw RENEWAL
Jones E BologniaCanadaIvan Magalhaes NEGOTIATION
Jennifer E OstroskyBrazilAmy Elsner NEGOTIATION
Claire V InouyeGermanyElwin Sharvill RENEWAL
Costa F InouyeGermanyElwin Sharvill QUALIFIED
Adams N GillianItalyStephen Shaw NEW
Leon G NestleItalyStephen Shaw QUALIFIED
Rodrigues B RutaIndiaAmy Elsner UNQUALIFIED
Aruna F NestleRussiaXuxue Feng PROPOSAL
Costa N RoysterJapanStephen Shaw PROPOSAL
Kaitlin J OstroskyBrazilAmy Elsner RENEWAL
Jones W BowleyArgentinaOnyama Limba PROPOSAL
Emily Z MaletIndiaElwin Sharvill RENEWAL
Frozen Columns
Name
Chavez B Nestle
Mayumi D Poquette
Wickens O Marrier
Kaitlin F Whobrey
Mujtaba M Doe
Darci J Stockham
Mayumi C Butt
Sinclair W Vocelka
Julie Q Stockham
Julie P Bolognia
Johnson W Morasca
Wickens Z Malet
Maisha T Chui
Mayumi T Dilliard
Mujtaba E Doe
Morrow F Bolognia
Rodrigues G Royster
Arvin A Slusarski
Francesco J Ostrosky
Greenwood J Stockham
Isabel C Shinko
Costa Q Saylors
Wickens B Iturbide
Francesco K Kolmetz
Sinclair G Inouye
Silvio R Ruta
Isabel V Morasca
Misaki Q Shinko
Jefferson U Briddick
Adams E Flosi
Kaitlin F Iturbide
Izzy G Paprocki
Munro R Nicka
Tony B Darakjy
Deepesh E Schemmer
Izzy K Briddick
Nicolas L Gillian
Chavez M Gaucho
Maria D Bolognia
Darci C Ostrosky
Jennifer G Whobrey
Johnson Y Stockham
David I Marrier
Maria L Perin
Jefferson T Vocelka
Greenwood A Stockham
Jeanfrancois W Chui
Tony J Ferencz
Jeanfrancois Q Whobrey
Aruna F Whobrey
IdCountryDate
1000Russia2024-06-19
1001Japan2024-05-29
1002France2024-06-03
1003India2024-06-02
1004Spain2024-05-26
1005Argentina2024-06-03
1006Russia2024-06-14
1007Russia2024-05-28
1008Italy2024-06-08
1009Australia2024-05-29
1010France2024-06-17
1011United Kingdom2024-06-20
1012Australia2024-06-07
1013Australia2024-06-10
1014Japan2024-06-15
1015Russia2024-06-14
1016Australia2024-06-19
1017Japan2024-05-28
1018Argentina2024-06-19
1019Germany2024-05-31
1020Canada2024-06-10
1021Russia2024-06-05
1022Russia2024-05-31
1023Argentina2024-05-27
1024Australia2024-06-04
1025Germany2024-06-09
1026Canada2024-06-21
1027Argentina2024-06-22
1028Spain2024-06-04
1029Canada2024-06-21
1030Spain2024-05-26
1031Australia2024-05-26
1032Spain2024-05-28
1033Russia2024-06-20
1034Australia2024-05-27
1035Russia2024-05-30
1036Brazil2024-05-31
1037Australia2024-06-05
1038Spain2024-05-24
1039Russia2024-06-14
1040Argentina2024-06-14
1041Spain2024-05-28
1042Russia2024-06-11
1043Spain2024-06-02
1044France2024-05-31
1045Spain2024-06-04
1046France2024-06-22
1047Australia2024-06-07
1048Russia2024-06-01
1049Spain2024-06-04

On-Demand Data

NameIdCountryDate
Murillo Q Paprocki1000Spain2024-06-04
Deepesh Y Royster1001Brazil2024-06-11
Faith O Iturbide1002Italy2024-06-10
Ivar X Gaucho1003Canada2024-06-09
Alejandro H Rim1004United Kingdom2024-06-19
Julie E Briddick1005France2024-06-11
Jones O Whobrey1006United Kingdom2024-05-26
Isabel Q Caudy1007Brazil2024-06-21
Antonio L Flosi1008Japan2024-06-06
Cody R Stenseth1009Canada2024-06-09
Isabel V Waycott1010Germany2024-06-01
Ricardo Q Whobrey1011Canada2024-05-29
Rodrigues W Gillian1012Germany2024-06-13
Nicolas E Royster1013United Kingdom2024-06-16
Mayumi J Poquette1014Germany2024-05-25
James E Malet1015Canada2024-06-13
Ivar R Slusarski1016France2024-05-29
Deepesh V Doe1017United Kingdom2024-06-19
Morrow S Campain1018Italy2024-05-28
Morrow O Glick1019India2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem V WhobreyArgentinaBernardo Dominic PROPOSAL
Stacey X GauchoBrazilAnna Fali PROPOSAL
Aditya N InouyeFranceStephen Shaw NEGOTIATION
Ivar B GauchoAustraliaAsiya Javayant UNQUALIFIED
Julie O PoquetteRussiaAnna Fali UNQUALIFIED
Jones V TollnerItalyOnyama Limba QUALIFIED
Silvio L MorascaJapanAmy Elsner QUALIFIED
Wickens S RimAustraliaElwin Sharvill PROPOSAL
Claire T FollerSpainStephen Shaw RENEWAL
Leja J RulapaughArgentinaIvan Magalhaes QUALIFIED
Octavia S CampainIndiaElwin Sharvill RENEWAL
Tony Q FigeroaJapanElwin Sharvill UNQUALIFIED
Kadeem I SlusarskiFranceAsiya Javayant QUALIFIED
Emily Y MorascaJapanIvan Magalhaes NEW
Maria Q DoeGermanyXuxue Feng RENEWAL
Jeanfrancois K GauchoAustraliaElwin Sharvill RENEWAL
Jeanfrancois Y OstroskyUnited KingdomBernardo Dominic NEW
Salvatore K MacleadRussiaAsiya Javayant PROPOSAL
Leon M BologniaArgentinaBernardo Dominic RENEWAL
Clifford T SchemmerAustraliaIoni Bowcher NEW
Claire N NestleFranceStephen Shaw NEW
Morrow S IturbideItalyBernardo Dominic NEW
Octavia Y KolmetzItalyOnyama Limba RENEWAL
Cody N NestleGermanyOnyama Limba PROPOSAL
Deepesh N WhobreyGermanyBernardo Dominic QUALIFIED
Deepesh G SergiCanadaStephen Shaw UNQUALIFIED
Aruna F ButtBrazilIvan Magalhaes PROPOSAL
Alejandro O FigeroaBrazilOnyama Limba RENEWAL
Maisha G FigeroaBrazilElwin Sharvill PROPOSAL
Smith M WieserSpainXuxue Feng PROPOSAL
Arvin U OstroskyJapanXuxue Feng QUALIFIED
David Y VenereFranceAmy Elsner NEGOTIATION
Ivar L VocelkaBrazilBernardo Dominic PROPOSAL
Johnson G BriddickCanadaIoni Bowcher UNQUALIFIED
Johnson T BowleyItalyStephen Shaw RENEWAL
Chavez H PerinUnited KingdomAnna Fali PROPOSAL
Alejandro P NickaItalyAsiya Javayant UNQUALIFIED
Aika Y SaylorsRussiaAmy Elsner PROPOSAL
David H PerinSpainBernardo Dominic UNQUALIFIED
Faith R FerenczArgentinaOnyama Limba RENEWAL

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