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
Adams D WhobreyIndiaAnna Fali NEGOTIATION
Aditya M WhobreyIndiaBernardo Dominic UNQUALIFIED
Silvio P InouyeCanadaStephen Shaw PROPOSAL
Misaki B ChuiJapanStephen Shaw UNQUALIFIED
Kadeem D OstroskyGermanyAnna Fali NEW
Octavia L RimIndiaOnyama Limba QUALIFIED
Emily C InouyeCanadaAnna Fali RENEWAL
Kaitlin R OldroydUnited KingdomOnyama Limba QUALIFIED
Kadeem U SlusarskiSpainOnyama Limba QUALIFIED
Nicolas V StensethJapanAnna Fali NEGOTIATION
Adams Q ChuiRussiaXuxue Feng NEGOTIATION
Ricardo E FerenczRussiaAsiya Javayant QUALIFIED
Isabel L SergiAustraliaAnna Fali NEGOTIATION
Alejandro T VocelkaItalyIvan Magalhaes NEGOTIATION
Darci W ButtAustraliaBernardo Dominic UNQUALIFIED
Jones H SlusarskiJapanOnyama Limba NEGOTIATION
Stacey O GlickItalyElwin Sharvill NEW
Emily N CampainUnited KingdomIoni Bowcher UNQUALIFIED
Arvin U SlusarskiIndiaIvan Magalhaes NEGOTIATION
Mayumi O BriddickJapanAnna Fali NEW
Kaitlin A RutaJapanIoni Bowcher RENEWAL
Munro Y KolmetzJapanAsiya Javayant UNQUALIFIED
Misaki U KolmetzGermanyAsiya Javayant RENEWAL
Leja C CampainArgentinaElwin Sharvill PROPOSAL
Johnson P SaylorsBrazilOnyama Limba RENEWAL
Francesco O ChuiBrazilBernardo Dominic NEW
Izzy U RoysterItalyElwin Sharvill PROPOSAL
Mayumi P MacleadGermanyXuxue Feng NEW
Jefferson L SergiBrazilIvan Magalhaes QUALIFIED
Alejandro R BologniaFranceXuxue Feng QUALIFIED
David L PerinJapanXuxue Feng RENEWAL
Isabel E WieserRussiaElwin Sharvill QUALIFIED
Misaki L AmigonArgentinaIoni Bowcher RENEWAL
Octavia V ButtSpainBernardo Dominic NEW
Octavia R SergiBrazilOnyama Limba UNQUALIFIED
Nicolas Q ChuiSpainStephen Shaw UNQUALIFIED
Ashley A TollnerArgentinaOnyama Limba NEGOTIATION
Tony K RoysterAustraliaIoni Bowcher PROPOSAL
Aika Z StensethSpainAsiya Javayant RENEWAL
Smith J StensethJapanStephen Shaw RENEWAL
David Z InouyeSpainElwin Sharvill RENEWAL
Jones C AlbaresBrazilOnyama Limba RENEWAL
Izzy K VenereSpainAsiya Javayant UNQUALIFIED
Leon M MacleadSpainBernardo Dominic RENEWAL
Kadeem B KuskoRussiaOnyama Limba QUALIFIED
Leja T KolmetzSpainAsiya Javayant NEW
Ivar A NestleCanadaIvan Magalhaes UNQUALIFIED
Francesco J WieserUnited KingdomAsiya Javayant NEGOTIATION
Emily C WaycottCanadaIoni Bowcher UNQUALIFIED
Deepesh S RoysterRussiaAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
Cody S CaudyCanadaBernardo Dominic QUALIFIED
Emily W VocelkaAustraliaElwin Sharvill NEW
Ricardo M TollnerGermanyStephen Shaw PROPOSAL
Costa S SergiCanadaAmy Elsner QUALIFIED
Morrow J BologniaGermanyAsiya Javayant UNQUALIFIED
Leon E KuskoBrazilAnna Fali NEGOTIATION
Aika R BologniaJapanElwin Sharvill NEGOTIATION
Ashley M BriddickArgentinaElwin Sharvill NEGOTIATION
Kaitlin H StensethSpainAmy Elsner PROPOSAL
Claire V OstroskySpainOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James W FlosiCanada2024-05-26Feiner Bros UNQUALIFIED70Asiya Javayant
1001Rodrigues G IturbideItaly2024-05-29Chapman, Ross E Esq RENEWAL67Bernardo Dominic
1002Mayumi L WaycottJapan2024-06-02King, Christopher A Esq RENEWAL1Ivan Magalhaes
1003Aruna G GlickAustralia2024-05-26Feltz Printing Service PROPOSAL40Asiya Javayant
1004Tony C NestleUnited Kingdom2024-05-28Truhlar And Truhlar Attys RENEWAL71Xuxue Feng
1005Silvio C FlosiRussia2024-05-29Rousseaux, Michael Esq RENEWAL29Ioni Bowcher
1006Silvio W MaletJapan2024-05-11Morlong Associates QUALIFIED59Stephen Shaw
1007Mayumi S ShinkoCanada2024-05-17Rangoni Of Florence RENEWAL98Stephen Shaw
1008Jefferson Z AlbaresGermany2024-05-19Truhlar And Truhlar Attys NEGOTIATION47Elwin Sharvill
1009Leja T StockhamCanada2024-05-13Dorl, James J Esq NEGOTIATION3Stephen Shaw
1010Jeanfrancois V NestleIndia2024-05-20Commercial Press QUALIFIED29Ivan Magalhaes
1011Silvio Y RimGermany2024-05-09Truhlar And Truhlar Attys UNQUALIFIED33Amy Elsner
1012Izzy D WhobreyGermany2024-05-09Feltz Printing Service QUALIFIED49Ioni Bowcher
1013Ricardo U WhobreyCanada2024-06-03Morlong Associates QUALIFIED31Elwin Sharvill
1014Octavia R FigeroaAustralia2024-05-27Buckley Miller Wright NEW30Ivan Magalhaes
1015Smith F KolmetzRussia2024-05-23King, Christopher A Esq UNQUALIFIED44Anna Fali
1016Jefferson Y MacleadGermany2024-05-07Rangoni Of Florence NEW86Ioni Bowcher
1017Stacey H FlosiSpain2024-05-09Rangoni Of Florence PROPOSAL35Stephen Shaw
1018Costa N StockhamItaly2024-06-02Truhlar And Truhlar Attys PROPOSAL41Anna Fali
1019Isabel N GauchoGermany2024-05-08Rangoni Of Florence QUALIFIED93Stephen Shaw
1020Munro I RulapaughGermany2024-05-22King, Christopher A Esq NEW51Anna Fali
1021Arvin O SlusarskiBrazil2024-05-27Chanay, Jeffrey A Esq RENEWAL59Bernardo Dominic
1022Johnson U IturbideArgentina2024-05-09Feiner Bros NEGOTIATION80Elwin Sharvill
1023Costa N FlosiBrazil2024-05-12Truhlar And Truhlar Attys UNQUALIFIED51Onyama Limba
1024Kadeem D VenereJapan2024-05-13Chemel, James L Cpa QUALIFIED36Anna Fali
1025Stacey S OldroydSpain2024-06-01Chapman, Ross E Esq PROPOSAL38Asiya Javayant
1026David A PoquetteUnited Kingdom2024-05-31Chanay, Jeffrey A Esq RENEWAL78Ioni Bowcher
1027Jennifer E OldroydRussia2024-05-14Chanay, Jeffrey A Esq UNQUALIFIED89Xuxue Feng
1028Salvatore I TollnerSpain2024-05-26King, Christopher A Esq RENEWAL37Amy Elsner
1029Wickens P FlosiBrazil2024-05-11Printing Dimensions UNQUALIFIED48Amy Elsner
1030Costa J IturbideFrance2024-05-13Commercial Press NEW92Ioni Bowcher
1031Misaki J RulapaughGermany2024-06-02Commercial Press NEGOTIATION96Ioni Bowcher
1032Maria I ButtFrance2024-05-21Commercial Press QUALIFIED40Elwin Sharvill
1033Munro E NickaBrazil2024-05-11Buckley Miller Wright UNQUALIFIED73Anna Fali
1034Ricardo N PaprockiRussia2024-05-10Rousseaux, Michael Esq NEW67Asiya Javayant
1035Murillo C RoysterGermany2024-05-13Chapman, Ross E Esq NEGOTIATION14Amy Elsner
1036Ivar Y KuskoGermany2024-05-19Chanay, Jeffrey A Esq NEGOTIATION65Ioni Bowcher
1037Jones O DoeSpain2024-05-25King, Christopher A Esq UNQUALIFIED0Onyama Limba
1038Alejandro J MarrierCanada2024-05-31Feiner Bros NEGOTIATION37Anna Fali
1039Maria Z BowleyBrazil2024-05-30Dorl, James J Esq PROPOSAL72Stephen Shaw
1040Claire R DilliardRussia2024-05-22Dorl, James J Esq RENEWAL22Bernardo Dominic
1041Izzy Q MaletSpain2024-06-01Dorl, James J Esq UNQUALIFIED85Xuxue Feng
1042Jeanfrancois M SaylorsItaly2024-05-12Dorl, James J Esq NEW44Ivan Magalhaes
1043Julie C ChuiAustralia2024-05-20Dorl, James J Esq QUALIFIED13Ioni Bowcher
1044James C StensethIndia2024-06-01Rangoni Of Florence NEGOTIATION97Xuxue Feng
1045Isabel Q AlbaresRussia2024-05-26King, Christopher A Esq QUALIFIED23Bernardo Dominic
1046Leon S BriddickRussia2024-05-27Feiner Bros NEW11Asiya Javayant
1047Darci N GillianRussia2024-05-19Buckley Miller Wright NEW9Asiya Javayant
1048Octavia L BologniaJapan2024-05-21Rousseaux, Michael Esq RENEWAL9Amy Elsner
1049Juan J ChuiArgentina2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED5Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Maisha K MarrierRussiaXuxue Feng UNQUALIFIED
Julie E PaprockiFranceIoni Bowcher RENEWAL
Aruna K VenereArgentinaAnna Fali UNQUALIFIED
Ashley F FigeroaJapanStephen Shaw NEGOTIATION
Julie G OstroskyFranceOnyama Limba PROPOSAL
Claire W PerinUnited KingdomAnna Fali RENEWAL
Wickens F PerinUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois S BowleyGermanyIvan Magalhaes UNQUALIFIED
Isabel F CaudyJapanIoni Bowcher NEW
Chavez F KuskoArgentinaXuxue Feng PROPOSAL
Wickens Z WieserItalyAnna Fali NEGOTIATION
Isabel V MorascaSpainIoni Bowcher QUALIFIED
Chavez J AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Leja A PoquetteGermanyBernardo Dominic QUALIFIED
Julie Q AlbaresGermanyAsiya Javayant RENEWAL
Tony J SlusarskiSpainIoni Bowcher QUALIFIED
Ivar V FollerUnited KingdomAnna Fali NEW
Rodrigues K MacleadUnited KingdomElwin Sharvill NEW
Nicolas A RutaItalyIvan Magalhaes UNQUALIFIED
Claire A InouyeBrazilStephen Shaw PROPOSAL
Morrow Z OstroskySpainIoni Bowcher PROPOSAL
Tony A VenereItalyOnyama Limba RENEWAL
Aditya N MaletCanadaBernardo Dominic UNQUALIFIED
Aika I NestleRussiaElwin Sharvill UNQUALIFIED
Jeanfrancois R NestleGermanyXuxue Feng NEGOTIATION
Juan M MacleadJapanIoni Bowcher NEW
Smith M GillianArgentinaElwin Sharvill UNQUALIFIED
Ashley E KuskoBrazilIoni Bowcher RENEWAL
Clifford I KuskoUnited KingdomAmy Elsner QUALIFIED
Leon X MacleadCanadaStephen Shaw NEW
Tony W WhobreyBrazilStephen Shaw NEW
Ricardo P StensethUnited KingdomIoni Bowcher NEW
Jones T BologniaCanadaXuxue Feng QUALIFIED
Claire H FlosiCanadaOnyama Limba UNQUALIFIED
Leja U SaylorsGermanyOnyama Limba UNQUALIFIED
Stacey H MorascaIndiaIoni Bowcher PROPOSAL
Francesco G GauchoSpainStephen Shaw UNQUALIFIED
Izzy D AmigonSpainStephen Shaw RENEWAL
Greenwood Y MarrierAustraliaIoni Bowcher UNQUALIFIED
Wickens P RutaItalyXuxue Feng QUALIFIED
Misaki E RoysterBrazilBernardo Dominic PROPOSAL
Julie O BologniaRussiaBernardo Dominic PROPOSAL
Octavia S WaycottGermanyIoni Bowcher RENEWAL
Izzy S OstroskyAustraliaAsiya Javayant QUALIFIED
Jones T AlbaresFranceIvan Magalhaes RENEWAL
Antonio D FollerCanadaAmy Elsner UNQUALIFIED
Leja S PaprockiUnited KingdomElwin Sharvill QUALIFIED
Sinclair U MaletSpainBernardo Dominic RENEWAL
Costa Y NestleFranceIoni Bowcher NEW
Wickens P ChuiGermanyOnyama Limba NEW
Frozen Columns
Name
Chavez T Rim
Izzy M Butt
Mujtaba N Kolmetz
Francesco W Sergi
Julie I Figeroa
Misaki L Gaucho
Leja J Glick
Wickens T Rulapaugh
Jefferson B Slusarski
Jefferson T Nestle
Ashley N Figeroa
Greenwood J Nestle
Jennifer N Oldroyd
Darci J Poquette
Ashley N Gillian
Rodrigues Z Garufi
Rodrigues X Wieser
Stacey Y Royster
Stacey V Kusko
Faith G Oldroyd
Wickens M Vocelka
Mayumi I Kusko
Wickens U Schemmer
Deepesh F Amigon
Ashley X Kolmetz
Kaitlin K Campain
Munro H Tollner
Aditya I Maclead
Isabel L Doe
Costa C Waycott
Juan L Glick
Nicolas H Vocelka
Alejandro Y Nestle
Francesco Y Caudy
Nicolas D Malet
Emily X Ruta
Johnson O Stenseth
Clifford D Caudy
Claire W Iturbide
Izzy L Morasca
Mujtaba G Albares
Maria S Glick
Juan P Shinko
Mujtaba Q Doe
Jeanfrancois Z Ruta
Antonio Y Nicka
Wickens W Shinko
Ricardo F Vocelka
Smith W Shinko
Juan B Sergi
IdCountryDate
1000Brazil2024-05-22
1001Japan2024-05-09
1002Spain2024-05-20
1003Germany2024-06-03
1004India2024-05-19
1005Germany2024-05-30
1006Russia2024-05-24
1007Germany2024-06-01
1008Brazil2024-06-01
1009India2024-05-29
1010United Kingdom2024-06-04
1011Argentina2024-05-15
1012India2024-05-16
1013Brazil2024-05-20
1014Japan2024-05-11
1015Brazil2024-05-07
1016Argentina2024-05-13
1017Brazil2024-05-31
1018Japan2024-05-26
1019Canada2024-05-24
1020Spain2024-05-16
1021Germany2024-05-29
1022Russia2024-06-03
1023France2024-05-10
1024Australia2024-05-20
1025Argentina2024-05-29
1026Spain2024-05-27
1027Russia2024-05-20
1028Spain2024-05-20
1029France2024-05-30
1030United Kingdom2024-05-29
1031Germany2024-05-23
1032United Kingdom2024-05-25
1033India2024-05-21
1034United Kingdom2024-06-04
1035Canada2024-06-03
1036France2024-05-23
1037Japan2024-05-14
1038Russia2024-05-29
1039Spain2024-05-26
1040India2024-05-29
1041Spain2024-05-18
1042Italy2024-05-27
1043Brazil2024-05-13
1044Argentina2024-06-02
1045India2024-06-04
1046Russia2024-05-20
1047Germany2024-05-19
1048Italy2024-05-18
1049Canada2024-05-15

On-Demand Data

NameIdCountryDate
Wickens G Garufi1000United Kingdom2024-05-21
Deepesh C Tollner1001Spain2024-05-14
Aika F Doe1002Australia2024-05-29
Rodrigues Z Foller1003Italy2024-06-03
Aika A Rim1004Brazil2024-05-27
Adams I Morasca1005India2024-06-01
Tony Z Darakjy1006Brazil2024-05-14
Claire C Royster1007Germany2024-05-13
Cody X Schemmer1008Japan2024-05-31
Ricardo D Foller1009Australia2024-05-12
Maria Y Malet1010United Kingdom2024-05-27
Morrow M Iturbide1011Brazil2024-05-06
Kaitlin R Doe1012Italy2024-05-10
Maisha X Garufi1013Australia2024-05-22
Antonio O Garufi1014France2024-05-09
David W Shinko1015Canada2024-05-09
David W Foller1016Canada2024-05-18
Silvio W Caldarera1017Italy2024-05-13
Tony I Doe1018Brazil2024-05-20
Jeanfrancois U Kusko1019Brazil2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi G SergiFranceAsiya Javayant QUALIFIED
Wickens V PaprockiCanadaOnyama Limba NEW
Munro Z ButtJapanAnna Fali NEGOTIATION
Leon P AlbaresGermanyIvan Magalhaes UNQUALIFIED
Greenwood F DoeAustraliaStephen Shaw RENEWAL
Silvio N OldroydAustraliaAnna Fali UNQUALIFIED
Darci R AlbaresCanadaIoni Bowcher NEW
Antonio M ShinkoRussiaBernardo Dominic NEW
Jeanfrancois W RimAustraliaAsiya Javayant RENEWAL
Clifford B FollerGermanyXuxue Feng UNQUALIFIED
Jennifer I FerenczArgentinaAnna Fali QUALIFIED
Deepesh X WieserUnited KingdomIoni Bowcher PROPOSAL
Octavia W MarrierItalyIoni Bowcher QUALIFIED
Rodrigues I KuskoUnited KingdomElwin Sharvill PROPOSAL
Jeanfrancois F VocelkaRussiaStephen Shaw RENEWAL
Jones C MaletItalyIoni Bowcher NEW
Murillo X DoeArgentinaAnna Fali NEW
Arvin D InouyeRussiaOnyama Limba NEW
Johnson I WaycottIndiaBernardo Dominic QUALIFIED
Johnson S SlusarskiItalyAmy Elsner QUALIFIED
Silvio P DilliardBrazilOnyama Limba QUALIFIED
Claire E BriddickUnited KingdomAsiya Javayant RENEWAL
Rodrigues M CaldareraRussiaIoni Bowcher RENEWAL
Jeanfrancois W FlosiItalyStephen Shaw NEW
Jeanfrancois O GlickArgentinaStephen Shaw QUALIFIED
Julie O SaylorsIndiaElwin Sharvill PROPOSAL
Mayumi K StockhamSpainOnyama Limba QUALIFIED
Tony U GillianBrazilAmy Elsner UNQUALIFIED
Johnson M PerinAustraliaAnna Fali UNQUALIFIED
Juan V PerinSpainIoni Bowcher QUALIFIED
Ivar A VenereUnited KingdomBernardo Dominic UNQUALIFIED
Salvatore N CampainAustraliaBernardo Dominic QUALIFIED
Octavia G InouyeRussiaIoni Bowcher UNQUALIFIED
Greenwood B BologniaSpainStephen Shaw NEW
Antonio S DilliardItalyAsiya Javayant PROPOSAL
Maisha C ChuiRussiaStephen Shaw PROPOSAL
Octavia Q NestleJapanElwin Sharvill PROPOSAL
Munro B CaldareraJapanBernardo Dominic QUALIFIED
Aika O TollnerGermanyAsiya Javayant NEW
Chavez J AmigonGermanyOnyama Limba QUALIFIED

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