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
Jefferson P RimArgentinaIoni Bowcher QUALIFIED
Leon Y MaletGermanyBernardo Dominic UNQUALIFIED
Wickens N OstroskyAustraliaBernardo Dominic RENEWAL
Wickens A IturbideCanadaBernardo Dominic PROPOSAL
Adams B AmigonItalyElwin Sharvill NEW
Cody S OstroskyAustraliaAsiya Javayant NEW
Jeanfrancois S RutaBrazilIvan Magalhaes UNQUALIFIED
Wickens M WhobreyRussiaAsiya Javayant QUALIFIED
Izzy Y WhobreyGermanyIoni Bowcher PROPOSAL
Kaitlin B KuskoItalyAsiya Javayant PROPOSAL
Cody E GillianRussiaAsiya Javayant UNQUALIFIED
Darci P WaycottJapanAmy Elsner PROPOSAL
Octavia K SaylorsItalyIvan Magalhaes NEGOTIATION
Costa W SlusarskiUnited KingdomAmy Elsner RENEWAL
Aditya M FerenczFranceAmy Elsner QUALIFIED
Ivar Y MarrierItalyIoni Bowcher PROPOSAL
Murillo X CaudyUnited KingdomBernardo Dominic NEGOTIATION
Arvin E CaldareraAustraliaXuxue Feng RENEWAL
Salvatore Q DoeBrazilAmy Elsner UNQUALIFIED
David Y WaycottCanadaIoni Bowcher NEW
Darci Z PerinCanadaElwin Sharvill QUALIFIED
Mayumi Y ShinkoGermanyAmy Elsner UNQUALIFIED
Maria E NickaIndiaBernardo Dominic RENEWAL
Costa X KuskoItalyIoni Bowcher RENEWAL
Smith U VocelkaSpainStephen Shaw NEGOTIATION
Rodrigues K KolmetzRussiaAmy Elsner NEW
Octavia J ButtItalyOnyama Limba QUALIFIED
Johnson M NickaSpainAsiya Javayant NEGOTIATION
Octavia H AmigonUnited KingdomElwin Sharvill NEW
Silvio T GauchoAustraliaIoni Bowcher NEGOTIATION
Kaitlin T ButtCanadaElwin Sharvill RENEWAL
Adams K CaudyItalyIoni Bowcher NEW
Jefferson Y VenereRussiaAnna Fali UNQUALIFIED
Alejandro G FigeroaJapanStephen Shaw UNQUALIFIED
Izzy N MarrierSpainAnna Fali NEGOTIATION
Nicolas P AmigonUnited KingdomAnna Fali PROPOSAL
Juan I StockhamGermanyAsiya Javayant NEW
Emily U FlosiJapanAmy Elsner NEW
Greenwood W PerinBrazilAnna Fali UNQUALIFIED
James J FlosiGermanyStephen Shaw NEW
Greenwood T WhobreyGermanyAnna Fali RENEWAL
Clifford D GillianArgentinaXuxue Feng RENEWAL
Wickens I IturbideIndiaElwin Sharvill QUALIFIED
Aika R CaudyGermanyOnyama Limba NEW
Juan L DarakjyCanadaXuxue Feng QUALIFIED
Rodrigues N OstroskyGermanyIoni Bowcher UNQUALIFIED
Sinclair N RulapaughGermanyIvan Magalhaes PROPOSAL
Francesco B MaletArgentinaAmy Elsner UNQUALIFIED
Wickens U RimUnited KingdomAsiya Javayant NEGOTIATION
Nicolas A AlbaresJapanIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Cody I FerenczIndiaOnyama Limba NEW
Salvatore T ButtItalyIvan Magalhaes NEW
Emily Z MaletJapanStephen Shaw UNQUALIFIED
Izzy C GarufiItalyElwin Sharvill RENEWAL
Maria G CaudyUnited KingdomElwin Sharvill QUALIFIED
Claire V GarufiSpainIoni Bowcher NEGOTIATION
Jones R PaprockiGermanyBernardo Dominic NEW
Faith Q TollnerUnited KingdomElwin Sharvill PROPOSAL
Cody D InouyeArgentinaBernardo Dominic PROPOSAL
Maisha Z MorascaRussiaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem P KolmetzCanada2024-05-15Rangoni Of Florence RENEWAL76Asiya Javayant
1001Jones W KuskoFrance2024-05-02Benton, John B Jr NEW68Anna Fali
1002Arvin C AmigonCanada2024-04-30Commercial Press RENEWAL65Onyama Limba
1003Jeanfrancois M GillianCanada2024-05-18Truhlar And Truhlar Attys PROPOSAL17Asiya Javayant
1004Maisha E TollnerSpain2024-05-06Dorl, James J Esq UNQUALIFIED4Ioni Bowcher
1005David L NickaItaly2024-05-26Truhlar And Truhlar Attys RENEWAL88Onyama Limba
1006Jeanfrancois W SlusarskiFrance2024-05-12King, Christopher A Esq UNQUALIFIED92Onyama Limba
1007Antonio B WieserRussia2024-05-15Commercial Press PROPOSAL0Anna Fali
1008Izzy R RutaArgentina2024-04-29Chapman, Ross E Esq RENEWAL95Elwin Sharvill
1009Ashley O VenereUnited Kingdom2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED52Bernardo Dominic
1010Munro V FerenczBrazil2024-05-06Feltz Printing Service UNQUALIFIED6Xuxue Feng
1011Maisha G SergiAustralia2024-04-30Printing Dimensions PROPOSAL64Xuxue Feng
1012Morrow Z OstroskyItaly2024-05-11King, Christopher A Esq QUALIFIED21Xuxue Feng
1013Munro A StensethGermany2024-05-14Buckley Miller Wright RENEWAL31Xuxue Feng
1014Jones V MaletUnited Kingdom2024-05-03Chanay, Jeffrey A Esq NEW51Ioni Bowcher
1015Morrow G PaprockiAustralia2024-05-03Rangoni Of Florence NEGOTIATION55Ivan Magalhaes
1016Kaitlin Y KolmetzIndia2024-05-11King, Christopher A Esq NEW23Ioni Bowcher
1017Jefferson Y OldroydAustralia2024-05-15Feltz Printing Service NEW31Bernardo Dominic
1018Jennifer F ButtGermany2024-04-29Benton, John B Jr NEW0Xuxue Feng
1019Greenwood Y DilliardArgentina2024-05-26Rousseaux, Michael Esq QUALIFIED80Onyama Limba
1020Octavia J GillianItaly2024-05-06Buckley Miller Wright RENEWAL79Bernardo Dominic
1021Leon V WieserGermany2024-05-22Benton, John B Jr NEGOTIATION34Bernardo Dominic
1022Nicolas G DarakjyFrance2024-05-12Printing Dimensions UNQUALIFIED17Ivan Magalhaes
1023Mayumi I NickaBrazil2024-04-28Morlong Associates NEW80Bernardo Dominic
1024Aruna O DoeItaly2024-05-23Feiner Bros UNQUALIFIED92Ivan Magalhaes
1025Misaki F GlickItaly2024-05-20Feltz Printing Service NEGOTIATION7Xuxue Feng
1026Claire J MorascaFrance2024-05-17Feltz Printing Service QUALIFIED30Anna Fali
1027Morrow H OstroskyUnited Kingdom2024-05-08Commercial Press NEW53Ivan Magalhaes
1028Darci N DilliardUnited Kingdom2024-05-20Dorl, James J Esq NEW87Elwin Sharvill
1029Julie T GillianJapan2024-05-07Commercial Press UNQUALIFIED62Bernardo Dominic
1030Claire S GauchoSpain2024-05-25Benton, John B Jr PROPOSAL0Stephen Shaw
1031Chavez W BologniaJapan2024-05-15Rangoni Of Florence NEGOTIATION94Ioni Bowcher
1032Maisha H GauchoCanada2024-05-12Chanay, Jeffrey A Esq PROPOSAL23Onyama Limba
1033Maisha F DoeArgentina2024-05-23Chemel, James L Cpa RENEWAL71Amy Elsner
1034Arvin I CampainBrazil2024-05-04Chanay, Jeffrey A Esq UNQUALIFIED61Onyama Limba
1035Chavez V KolmetzFrance2024-05-21Buckley Miller Wright PROPOSAL14Amy Elsner
1036Jefferson E VenereIndia2024-04-28Rousseaux, Michael Esq QUALIFIED13Asiya Javayant
1037Adams Q RulapaughUnited Kingdom2024-05-25Truhlar And Truhlar Attys PROPOSAL8Amy Elsner
1038Juan J FollerFrance2024-04-30King, Christopher A Esq RENEWAL8Bernardo Dominic
1039Izzy W KolmetzUnited Kingdom2024-05-20Truhlar And Truhlar Attys NEW47Anna Fali
1040Jeanfrancois X RulapaughItaly2024-05-13Buckley Miller Wright RENEWAL66Stephen Shaw
1041Silvio Y SchemmerGermany2024-05-01Chapman, Ross E Esq NEGOTIATION63Xuxue Feng
1042David Z WhobreyIndia2024-04-28King, Christopher A Esq NEW16Xuxue Feng
1043Smith S FigeroaUnited Kingdom2024-04-29Chapman, Ross E Esq UNQUALIFIED54Ioni Bowcher
1044Emily L CaldareraRussia2024-05-01Chapman, Ross E Esq RENEWAL90Xuxue Feng
1045Faith R GauchoRussia2024-05-06Chanay, Jeffrey A Esq NEW57Elwin Sharvill
1046Antonio Z GarufiCanada2024-05-26Benton, John B Jr PROPOSAL50Xuxue Feng
1047Mujtaba Q PaprockiArgentina2024-05-07Feltz Printing Service PROPOSAL20Bernardo Dominic
1048Nicolas O StockhamAustralia2024-05-16Chanay, Jeffrey A Esq QUALIFIED92Ioni Bowcher
1049Adams Y MarrierFrance2024-05-25Printing Dimensions PROPOSAL28Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Arvin Y BowleyAustraliaIvan Magalhaes NEGOTIATION
Isabel L DilliardCanadaIvan Magalhaes NEGOTIATION
Maisha U CaudyJapanElwin Sharvill PROPOSAL
Wickens T IturbideItalyOnyama Limba QUALIFIED
Silvio C ChuiArgentinaAnna Fali PROPOSAL
Deepesh R PerinBrazilStephen Shaw UNQUALIFIED
Rodrigues C RulapaughRussiaAnna Fali NEW
Morrow D PerinCanadaIoni Bowcher NEGOTIATION
Stacey H CaldareraIndiaXuxue Feng QUALIFIED
Ashley L FerenczArgentinaXuxue Feng NEW
Clifford E RulapaughRussiaElwin Sharvill UNQUALIFIED
Ivar W TollnerGermanyBernardo Dominic NEGOTIATION
Aika I SlusarskiItalyAsiya Javayant PROPOSAL
Francesco F RimRussiaXuxue Feng PROPOSAL
Emily V RutaFranceIoni Bowcher QUALIFIED
Morrow U NickaRussiaAnna Fali NEW
Maria S SergiJapanAnna Fali QUALIFIED
Rodrigues I SergiGermanyAnna Fali NEGOTIATION
Aditya O BologniaCanadaAsiya Javayant NEGOTIATION
Stacey V StensethIndiaAsiya Javayant UNQUALIFIED
Leon E RutaAustraliaAsiya Javayant NEGOTIATION
Stacey D GillianUnited KingdomXuxue Feng QUALIFIED
Francesco E MaletItalyElwin Sharvill RENEWAL
Julie Z MaletUnited KingdomOnyama Limba NEW
Murillo P OldroydIndiaOnyama Limba QUALIFIED
Wickens P PerinItalyOnyama Limba NEW
Alejandro K VocelkaItalyOnyama Limba NEGOTIATION
Francesco F FollerAustraliaIoni Bowcher QUALIFIED
Aditya V FigeroaBrazilAmy Elsner NEW
Claire G FollerGermanyIvan Magalhaes QUALIFIED
Aditya V CaldareraCanadaOnyama Limba QUALIFIED
Mujtaba B PaprockiIndiaIoni Bowcher UNQUALIFIED
Ricardo C VenereJapanOnyama Limba RENEWAL
Mayumi G SchemmerBrazilIoni Bowcher UNQUALIFIED
Cody A KuskoArgentinaStephen Shaw UNQUALIFIED
Aruna L FollerUnited KingdomBernardo Dominic NEGOTIATION
Ashley U DilliardBrazilIvan Magalhaes NEW
Kaitlin M CampainBrazilAmy Elsner QUALIFIED
Jeanfrancois G FerenczRussiaIvan Magalhaes NEGOTIATION
Jeanfrancois N BriddickSpainIvan Magalhaes RENEWAL
Isabel J FigeroaAustraliaAnna Fali RENEWAL
Nicolas T RoysterFranceOnyama Limba NEW
Aika R WaycottGermanyAmy Elsner QUALIFIED
Smith A BowleyFranceAnna Fali RENEWAL
Jones C StockhamCanadaStephen Shaw PROPOSAL
Mayumi Y TollnerItalyBernardo Dominic RENEWAL
Sinclair F GillianArgentinaOnyama Limba PROPOSAL
Morrow N TollnerFranceAsiya Javayant QUALIFIED
Isabel M BriddickArgentinaAsiya Javayant RENEWAL
Johnson V BriddickGermanyIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Darci D Paprocki
Octavia A Rulapaugh
Murillo M Stenseth
Clifford B Waycott
Adams W Morasca
Mayumi U Campain
Aditya Q Wieser
Octavia X Malet
Silvio N Rim
Leon Z Nestle
James H Perin
Greenwood E Gaucho
Jennifer M Morasca
Isabel B Wieser
Rodrigues A Garufi
Silvio K Paprocki
Clifford E Doe
Claire D Shinko
Stacey E Ruta
Costa V Iturbide
Greenwood K Gaucho
Murillo O Garufi
Misaki I Doe
Wickens L Flosi
Juan P Marrier
Wickens V Paprocki
Ivar B Ruta
Murillo G Caudy
Nicolas M Wieser
Morrow U Gaucho
Sinclair D Royster
Stacey B Campain
Mayumi D Royster
Ricardo E Waycott
Jones U Tollner
Kaitlin W Chui
Kadeem H Rim
Wickens I Nicka
Antonio K Inouye
Alejandro V Chui
James E Morasca
David E Inouye
Johnson S Sergi
Aika H Butt
Chavez A Wieser
Johnson K Nestle
Kadeem J Poquette
Kaitlin S Gaucho
Nicolas V Amigon
Isabel K Briddick
IdCountryDate
1000Russia2024-05-25
1001Spain2024-05-24
1002United Kingdom2024-05-18
1003India2024-05-14
1004Canada2024-05-20
1005Russia2024-05-09
1006Canada2024-05-14
1007Brazil2024-05-15
1008Japan2024-05-07
1009Russia2024-05-07
1010Australia2024-05-05
1011Australia2024-05-08
1012Italy2024-05-25
1013Italy2024-05-03
1014Spain2024-04-30
1015Germany2024-05-17
1016Japan2024-05-17
1017Japan2024-05-09
1018Australia2024-05-14
1019France2024-05-11
1020Spain2024-05-27
1021Italy2024-05-23
1022Japan2024-05-23
1023France2024-05-23
1024Argentina2024-05-20
1025Japan2024-04-30
1026Italy2024-05-12
1027Brazil2024-05-16
1028United Kingdom2024-05-20
1029Russia2024-05-23
1030Canada2024-05-18
1031Australia2024-04-28
1032Russia2024-05-19
1033France2024-05-11
1034Germany2024-05-11
1035India2024-05-01
1036Canada2024-05-16
1037Canada2024-05-11
1038Australia2024-05-14
1039Spain2024-05-24
1040Spain2024-05-15
1041Japan2024-05-25
1042India2024-04-30
1043Japan2024-05-05
1044Japan2024-05-18
1045Argentina2024-05-08
1046Spain2024-04-28
1047Brazil2024-04-28
1048Japan2024-05-07
1049India2024-05-17

On-Demand Data

NameIdCountryDate
Jeanfrancois N Campain1000Italy2024-05-10
James A Vocelka1001Argentina2024-05-13
Tony I Wieser1002Italy2024-05-19
Jones A Figeroa1003Russia2024-05-24
Kadeem T Amigon1004Russia2024-05-09
Ivar D Tollner1005Italy2024-04-28
Juan T Doe1006Argentina2024-04-29
Mayumi R Kusko1007France2024-05-26
Tony G Chui1008India2024-05-05
Izzy R Figeroa1009Italy2024-05-05
Stacey W Tollner1010Russia2024-05-01
Aditya C Paprocki1011Germany2024-05-25
Isabel M Caldarera1012Italy2024-05-26
Wickens Z Gillian1013United Kingdom2024-05-03
Sinclair O Chui1014Russia2024-05-07
Chavez U Inouye1015Spain2024-05-14
David J Whobrey1016Spain2024-04-30
Munro N Perin1017Brazil2024-05-23
Francesco S Albares1018Italy2024-04-30
Faith Z Shinko1019Germany2024-04-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan V RimUnited KingdomBernardo Dominic UNQUALIFIED
Francesco O RoysterSpainAsiya Javayant PROPOSAL
Chavez D NickaCanadaOnyama Limba UNQUALIFIED
Claire J NestleBrazilElwin Sharvill NEGOTIATION
Mayumi K FollerJapanOnyama Limba QUALIFIED
Wickens J WhobreyItalyBernardo Dominic NEGOTIATION
Juan U ButtFranceElwin Sharvill NEGOTIATION
Francesco Q SchemmerBrazilElwin Sharvill UNQUALIFIED
Jeanfrancois G AmigonRussiaAmy Elsner PROPOSAL
Salvatore X GauchoCanadaBernardo Dominic UNQUALIFIED
Octavia S SchemmerJapanStephen Shaw RENEWAL
Kaitlin V FollerItalyIvan Magalhaes NEW
Juan O DilliardAustraliaIoni Bowcher NEW
Aditya V ButtJapanOnyama Limba RENEWAL
Jefferson T DilliardSpainStephen Shaw NEGOTIATION
Misaki G AmigonItalyElwin Sharvill RENEWAL
Faith Z PoquetteSpainOnyama Limba NEW
Deepesh C CampainIndiaIoni Bowcher PROPOSAL
Silvio N GlickIndiaElwin Sharvill RENEWAL
Murillo N WieserCanadaAnna Fali PROPOSAL
Kadeem A MaletArgentinaIvan Magalhaes UNQUALIFIED
Leja X RimGermanyXuxue Feng QUALIFIED
Faith G CaudyRussiaOnyama Limba UNQUALIFIED
Arvin Y RulapaughItalyOnyama Limba PROPOSAL
Kadeem X GillianUnited KingdomIvan Magalhaes PROPOSAL
Izzy H KuskoCanadaIoni Bowcher RENEWAL
James U SergiAustraliaElwin Sharvill QUALIFIED
Jennifer C BologniaSpainIvan Magalhaes NEGOTIATION
Maria W StensethRussiaAnna Fali NEGOTIATION
Francesco F GarufiRussiaStephen Shaw RENEWAL
Alejandro M InouyeJapanBernardo Dominic PROPOSAL
Johnson N GauchoRussiaIvan Magalhaes PROPOSAL
Jefferson D DilliardBrazilXuxue Feng RENEWAL
Leon F DarakjyGermanyAsiya Javayant NEW
Darci E NickaGermanyStephen Shaw QUALIFIED
Johnson Z ButtGermanyStephen Shaw RENEWAL
Juan C MaletRussiaAmy Elsner NEW
Alejandro L PerinJapanXuxue Feng NEGOTIATION
Sinclair Y RutaRussiaIvan Magalhaes NEGOTIATION
Maria H FerenczJapanAsiya Javayant 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>