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
Aika B SlusarskiGermanyXuxue Feng UNQUALIFIED
Costa H PerinSpainStephen Shaw PROPOSAL
Kaitlin R GarufiItalyAmy Elsner RENEWAL
Faith C FigeroaIndiaIvan Magalhaes UNQUALIFIED
David X WhobreyItalyIoni Bowcher QUALIFIED
Emily L FerenczCanadaOnyama Limba NEGOTIATION
Munro S SlusarskiIndiaStephen Shaw NEW
Misaki O IturbideItalyAsiya Javayant NEW
Antonio T BologniaCanadaBernardo Dominic PROPOSAL
Leon P PoquetteAustraliaIoni Bowcher UNQUALIFIED
Costa U DoeArgentinaIvan Magalhaes QUALIFIED
Aika U BriddickGermanyIoni Bowcher RENEWAL
Ivar I GillianRussiaBernardo Dominic RENEWAL
Faith X WieserRussiaStephen Shaw NEW
Emily Q CaudySpainBernardo Dominic RENEWAL
Juan G GauchoGermanyIoni Bowcher NEGOTIATION
Maria S DoeJapanAnna Fali PROPOSAL
Mayumi Y OldroydSpainBernardo Dominic NEW
Deepesh X CaldareraGermanyAmy Elsner NEGOTIATION
Kaitlin W MarrierSpainAsiya Javayant QUALIFIED
Wickens H OldroydUnited KingdomIoni Bowcher NEW
Greenwood O DarakjyFranceIvan Magalhaes RENEWAL
Antonio D DarakjySpainAnna Fali NEW
Aditya R RulapaughSpainIoni Bowcher QUALIFIED
Salvatore K CaudyUnited KingdomIvan Magalhaes NEW
Tony B CaudyAustraliaAmy Elsner PROPOSAL
Kadeem C RoysterUnited KingdomAsiya Javayant NEW
Rodrigues T PaprockiCanadaAnna Fali PROPOSAL
Greenwood X ChuiGermanyIoni Bowcher QUALIFIED
Deepesh D DoeCanadaBernardo Dominic RENEWAL
Nicolas Z StensethAustraliaAmy Elsner PROPOSAL
Emily F VocelkaGermanyIvan Magalhaes PROPOSAL
Leja S CaldareraAustraliaAnna Fali RENEWAL
Aditya T StockhamCanadaIvan Magalhaes UNQUALIFIED
Salvatore S FigeroaItalyElwin Sharvill QUALIFIED
Costa S DarakjyFranceBernardo Dominic QUALIFIED
Maria K FerenczAustraliaIvan Magalhaes UNQUALIFIED
Izzy G KolmetzIndiaStephen Shaw QUALIFIED
Wickens M DarakjyAustraliaIoni Bowcher UNQUALIFIED
Deepesh V AlbaresUnited KingdomAmy Elsner NEW
Smith U GlickIndiaOnyama Limba QUALIFIED
Izzy Y ShinkoRussiaOnyama Limba RENEWAL
Jeanfrancois E RutaGermanyIvan Magalhaes PROPOSAL
Smith A KolmetzArgentinaElwin Sharvill PROPOSAL
James K NickaFranceAmy Elsner PROPOSAL
Ashley K InouyeUnited KingdomAnna Fali NEW
Mayumi S SergiJapanXuxue Feng NEW
Greenwood O MorascaArgentinaIvan Magalhaes NEGOTIATION
Leja U NestleSpainAsiya Javayant UNQUALIFIED
Faith C MorascaCanadaAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Tony N InouyeRussiaBernardo Dominic QUALIFIED
Alejandro T KolmetzAustraliaAsiya Javayant NEGOTIATION
Smith Z DoeCanadaBernardo Dominic RENEWAL
Munro K SlusarskiGermanyAnna Fali NEGOTIATION
Deepesh W DarakjyUnited KingdomElwin Sharvill QUALIFIED
Clifford Z StockhamAustraliaAsiya Javayant NEW
Deepesh G MacleadAustraliaAsiya Javayant QUALIFIED
Silvio R CaudyItalyElwin Sharvill QUALIFIED
Claire G FollerBrazilXuxue Feng NEGOTIATION
James F FigeroaSpainStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna O ChuiIndia2024-06-04Commercial Press RENEWAL54Onyama Limba
1001Maisha B OstroskyGermany2024-06-15Printing Dimensions NEGOTIATION53Onyama Limba
1002Munro Y RulapaughBrazil2024-06-21Buckley Miller Wright PROPOSAL16Stephen Shaw
1003Aditya M RutaItaly2024-06-22Feiner Bros QUALIFIED98Ivan Magalhaes
1004Clifford N WhobreyAustralia2024-06-11Buckley Miller Wright RENEWAL42Elwin Sharvill
1005Sinclair O DarakjyAustralia2024-06-05Feltz Printing Service QUALIFIED87Ioni Bowcher
1006Sinclair A AlbaresIndia2024-06-21Rousseaux, Michael Esq PROPOSAL88Stephen Shaw
1007James P WieserIndia2024-05-26Buckley Miller Wright QUALIFIED32Ioni Bowcher
1008Jefferson M StensethCanada2024-06-15Chapman, Ross E Esq PROPOSAL23Asiya Javayant
1009Arvin B SaylorsIndia2024-06-10Truhlar And Truhlar Attys RENEWAL79Ioni Bowcher
1010Sinclair K SergiBrazil2024-06-19Commercial Press RENEWAL15Amy Elsner
1011Mayumi U VocelkaItaly2024-06-12Benton, John B Jr NEW39Xuxue Feng
1012Sinclair B KolmetzRussia2024-06-02Chapman, Ross E Esq UNQUALIFIED99Anna Fali
1013Jeanfrancois S OldroydAustralia2024-06-02Dorl, James J Esq QUALIFIED73Amy Elsner
1014Wickens B WieserCanada2024-06-24Morlong Associates UNQUALIFIED97Xuxue Feng
1015Jones S CaldareraGermany2024-05-26Commercial Press UNQUALIFIED41Amy Elsner
1016Maria J StensethGermany2024-06-24King, Christopher A Esq PROPOSAL94Elwin Sharvill
1017Izzy I FerenczBrazil2024-06-07Rousseaux, Michael Esq UNQUALIFIED56Onyama Limba
1018Tony S RimUnited Kingdom2024-06-18Chapman, Ross E Esq RENEWAL88Ioni Bowcher
1019Rodrigues G VocelkaAustralia2024-05-26Benton, John B Jr NEW92Bernardo Dominic
1020Costa S BologniaArgentina2024-06-03Dorl, James J Esq RENEWAL31Anna Fali
1021Ricardo T MaletSpain2024-05-27Feltz Printing Service PROPOSAL11Asiya Javayant
1022Stacey R AmigonRussia2024-06-03Feiner Bros NEGOTIATION14Ioni Bowcher
1023Adams R PaprockiGermany2024-05-29Rangoni Of Florence NEW73Ioni Bowcher
1024Tony Z FlosiBrazil2024-06-21Benton, John B Jr PROPOSAL5Anna Fali
1025Ivar S WaycottItaly2024-06-08Buckley Miller Wright RENEWAL94Asiya Javayant
1026Rodrigues W VenereBrazil2024-06-23Feltz Printing Service NEGOTIATION1Ioni Bowcher
1027Costa H CaudyItaly2024-06-13Chapman, Ross E Esq NEGOTIATION57Elwin Sharvill
1028Arvin H FigeroaArgentina2024-06-12Chemel, James L Cpa UNQUALIFIED68Ivan Magalhaes
1029Salvatore L MaletCanada2024-06-09Chapman, Ross E Esq QUALIFIED86Stephen Shaw
1030Stacey A CampainCanada2024-06-01Printing Dimensions QUALIFIED5Anna Fali
1031Ashley P SergiFrance2024-06-10Benton, John B Jr RENEWAL2Asiya Javayant
1032Rodrigues Z CaldareraArgentina2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED68Elwin Sharvill
1033James U RimAustralia2024-06-21Feltz Printing Service QUALIFIED25Bernardo Dominic
1034Emily P ChuiArgentina2024-06-22Feltz Printing Service NEW79Ivan Magalhaes
1035David Z PerinCanada2024-06-08Chapman, Ross E Esq NEW63Amy Elsner
1036Mayumi Z ButtItaly2024-06-12Benton, John B Jr NEGOTIATION50Onyama Limba
1037Jones P ShinkoGermany2024-06-21Printing Dimensions NEW85Asiya Javayant
1038Tony S RulapaughSpain2024-06-04King, Christopher A Esq NEGOTIATION4Ioni Bowcher
1039Salvatore F GillianAustralia2024-06-07Chanay, Jeffrey A Esq NEGOTIATION94Asiya Javayant
1040Jennifer H CampainFrance2024-06-09Rousseaux, Michael Esq NEW71Amy Elsner
1041Ashley S PoquetteRussia2024-06-21Feiner Bros RENEWAL60Ioni Bowcher
1042Emily C InouyeRussia2024-05-26Chapman, Ross E Esq PROPOSAL44Amy Elsner
1043Mujtaba B SlusarskiUnited Kingdom2024-06-07Printing Dimensions RENEWAL91Bernardo Dominic
1044Alejandro C PerinAustralia2024-05-26Chemel, James L Cpa UNQUALIFIED45Ivan Magalhaes
1045Johnson O OldroydIndia2024-06-14Morlong Associates UNQUALIFIED5Xuxue Feng
1046Jones I VocelkaGermany2024-06-13Morlong Associates RENEWAL73Asiya Javayant
1047Munro Y IturbideAustralia2024-06-14Truhlar And Truhlar Attys RENEWAL5Onyama Limba
1048Faith X GauchoAustralia2024-06-06Morlong Associates PROPOSAL15Onyama Limba
1049Murillo E BologniaItaly2024-06-03Rangoni Of Florence PROPOSAL39Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Costa K SaylorsIndiaElwin Sharvill QUALIFIED
Aika R PerinJapanIoni Bowcher NEW
Mujtaba A ShinkoItalyStephen Shaw UNQUALIFIED
Clifford A DarakjyUnited KingdomIoni Bowcher NEW
Greenwood R CampainCanadaElwin Sharvill PROPOSAL
Wickens H DoeArgentinaIvan Magalhaes UNQUALIFIED
Salvatore T DilliardJapanXuxue Feng NEW
Sinclair K DarakjyJapanAsiya Javayant UNQUALIFIED
Maisha D KolmetzGermanyOnyama Limba RENEWAL
Greenwood M GarufiCanadaIvan Magalhaes NEGOTIATION
Maisha C BologniaItalyAnna Fali QUALIFIED
Costa J RulapaughAustraliaAnna Fali NEW
Darci S BologniaItalyXuxue Feng PROPOSAL
Wickens D PaprockiUnited KingdomStephen Shaw UNQUALIFIED
Salvatore R OldroydFranceOnyama Limba NEGOTIATION
Morrow K OldroydSpainAsiya Javayant RENEWAL
Ivar G SergiUnited KingdomIvan Magalhaes QUALIFIED
Emily K KolmetzArgentinaOnyama Limba UNQUALIFIED
Murillo B BowleyAustraliaBernardo Dominic PROPOSAL
Maisha Z FlosiUnited KingdomElwin Sharvill NEGOTIATION
Munro X NestleSpainOnyama Limba PROPOSAL
Darci A SlusarskiIndiaIoni Bowcher NEGOTIATION
Octavia N NickaSpainStephen Shaw QUALIFIED
Morrow I CaudyJapanIvan Magalhaes RENEWAL
Maisha T DarakjyJapanStephen Shaw NEGOTIATION
Sinclair G VocelkaCanadaOnyama Limba NEW
Sinclair M StensethRussiaElwin Sharvill QUALIFIED
Ivar T SchemmerRussiaIvan Magalhaes NEW
Mayumi Z FigeroaCanadaIvan Magalhaes RENEWAL
Juan A MaletAustraliaAmy Elsner QUALIFIED
Nicolas U CampainSpainIoni Bowcher RENEWAL
Leja B NickaJapanOnyama Limba UNQUALIFIED
Leon H BowleySpainElwin Sharvill UNQUALIFIED
Isabel T MaletJapanIoni Bowcher UNQUALIFIED
Mayumi M WieserItalyOnyama Limba NEGOTIATION
Ricardo T MaletRussiaBernardo Dominic NEW
Nicolas R VenereCanadaElwin Sharvill PROPOSAL
Jeanfrancois X ShinkoBrazilAnna Fali NEW
Darci T NestleRussiaIvan Magalhaes QUALIFIED
Kadeem R PoquetteUnited KingdomAnna Fali RENEWAL
Adams X WaycottAustraliaXuxue Feng QUALIFIED
Rodrigues M VenereAustraliaAsiya Javayant PROPOSAL
Costa S ButtAustraliaXuxue Feng NEW
Clifford V FollerRussiaAmy Elsner QUALIFIED
Rodrigues R MaletAustraliaIoni Bowcher UNQUALIFIED
Smith F InouyeGermanyAmy Elsner PROPOSAL
Adams A SlusarskiIndiaStephen Shaw QUALIFIED
Silvio E StockhamFranceAnna Fali NEW
Jennifer B RoysterItalyElwin Sharvill NEGOTIATION
Jennifer U FlosiAustraliaElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Salvatore G Saylors
Francesco M Gaucho
Aruna P Rulapaugh
Tony T Briddick
Johnson N Gillian
Mayumi B Shinko
Isabel B Darakjy
Jones S Butt
Jeanfrancois J Rim
Faith B Caudy
Mayumi H Kolmetz
Kaitlin N Sergi
Jefferson K Iturbide
Kaitlin D Poquette
Silvio E Oldroyd
Octavia N Vocelka
Cody D Iturbide
Adams Q Shinko
James B Maclead
Darci Q Sergi
Aika S Ruta
Arvin D Amigon
Misaki U Albares
Jennifer Z Saylors
Rodrigues D Schemmer
Misaki V Perin
Mujtaba U Chui
Smith D Perin
Cody P Schemmer
Leja M Paprocki
Darci D Caldarera
Rodrigues R Ostrosky
Leja S Schemmer
Tony E Morasca
Tony N Bolognia
Wickens O Campain
Costa J Flosi
Maisha P Campain
Wickens G Butt
Francesco F Venere
Octavia C Caudy
Chavez T Campain
Munro W Malet
Leon U Malet
Jones F Dilliard
Julie C Shinko
Chavez L Malet
Claire L Flosi
Smith Q Sergi
James E Caldarera
IdCountryDate
1000Russia2024-06-09
1001Japan2024-05-27
1002Canada2024-06-13
1003Japan2024-06-18
1004Japan2024-06-06
1005Germany2024-06-11
1006Germany2024-06-24
1007Argentina2024-06-22
1008France2024-06-17
1009United Kingdom2024-05-27
1010France2024-06-05
1011Japan2024-06-05
1012India2024-06-12
1013Russia2024-06-11
1014United Kingdom2024-05-28
1015Italy2024-06-21
1016Russia2024-06-11
1017Germany2024-05-31
1018Brazil2024-06-06
1019Brazil2024-06-12
1020Russia2024-06-09
1021Brazil2024-05-30
1022Canada2024-06-05
1023Germany2024-06-18
1024Italy2024-05-28
1025Brazil2024-05-27
1026Italy2024-06-05
1027Italy2024-06-20
1028Japan2024-06-23
1029Brazil2024-06-21
1030Germany2024-05-26
1031Brazil2024-06-03
1032India2024-06-13
1033France2024-05-27
1034Australia2024-06-03
1035Germany2024-06-17
1036India2024-06-05
1037Italy2024-06-03
1038Brazil2024-06-10
1039France2024-05-30
1040Argentina2024-06-01
1041France2024-06-12
1042Canada2024-06-18
1043Argentina2024-06-05
1044United Kingdom2024-06-23
1045United Kingdom2024-06-07
1046Australia2024-06-02
1047United Kingdom2024-05-29
1048Japan2024-06-17
1049Australia2024-06-04

On-Demand Data

NameIdCountryDate
Murillo V Whobrey1000France2024-05-29
Leon L Inouye1001Brazil2024-05-30
James J Ferencz1002France2024-05-30
Juan E Paprocki1003India2024-06-12
Ashley L Butt1004Italy2024-06-11
Octavia R Tollner1005Japan2024-05-31
Aika O Briddick1006Canada2024-06-11
Clifford C Rulapaugh1007France2024-06-12
Mayumi V Rulapaugh1008Italy2024-06-01
Costa M Morasca1009Brazil2024-06-20
Jefferson L Bolognia1010Canada2024-06-06
Munro E Amigon1011Italy2024-05-28
Aruna H Ostrosky1012Canada2024-05-29
Adams F Morasca1013France2024-06-19
Darci V Nestle1014Brazil2024-05-30
Clifford V Paprocki1015Brazil2024-06-12
Juan Z Whobrey1016Italy2024-05-29
Aruna G Ferencz1017Canada2024-06-11
Aruna M Ferencz1018Canada2024-06-05
David I Malet1019Italy2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James Z StockhamJapanAnna Fali NEGOTIATION
Aditya W OldroydBrazilIoni Bowcher RENEWAL
Mayumi C NickaFranceAmy Elsner PROPOSAL
Arvin S PerinBrazilAsiya Javayant UNQUALIFIED
Isabel I BowleyAustraliaAmy Elsner RENEWAL
Jefferson B NickaAustraliaStephen Shaw NEW
Maria M RutaIndiaAnna Fali NEGOTIATION
Kaitlin G MaletFranceAmy Elsner UNQUALIFIED
Aruna S ButtRussiaOnyama Limba NEGOTIATION
Arvin F StockhamCanadaBernardo Dominic PROPOSAL
Emily W KuskoSpainXuxue Feng RENEWAL
Sinclair U AlbaresGermanyElwin Sharvill NEW
Greenwood Y NickaJapanAnna Fali QUALIFIED
Aruna Y WieserUnited KingdomIoni Bowcher UNQUALIFIED
Morrow U GarufiItalyAnna Fali PROPOSAL
Salvatore Q ButtRussiaIoni Bowcher NEGOTIATION
Juan O BowleyBrazilOnyama Limba NEW
Kaitlin X CampainRussiaAmy Elsner NEW
Clifford W GauchoSpainElwin Sharvill NEW
Kadeem D GlickItalyOnyama Limba NEGOTIATION
Misaki H MarrierGermanyIvan Magalhaes NEW
Jones X ChuiAustraliaStephen Shaw UNQUALIFIED
Misaki H DilliardBrazilElwin Sharvill NEW
Leon L PerinBrazilStephen Shaw NEGOTIATION
Maisha Q CaldareraAustraliaAsiya Javayant NEW
Faith X BologniaAustraliaAmy Elsner NEW
Antonio J SchemmerBrazilXuxue Feng NEW
Wickens O MorascaSpainIoni Bowcher RENEWAL
Murillo L GillianUnited KingdomAnna Fali UNQUALIFIED
Morrow U RoysterRussiaOnyama Limba QUALIFIED
Antonio G BologniaJapanBernardo Dominic RENEWAL
Maisha M StensethSpainXuxue Feng NEGOTIATION
Morrow Q SlusarskiIndiaXuxue Feng PROPOSAL
Maisha Z WieserAustraliaIvan Magalhaes NEW
Silvio V GauchoUnited KingdomIoni Bowcher PROPOSAL
Darci X RutaItalyOnyama Limba NEW
Arvin R ChuiFranceOnyama Limba NEW
Aika J CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
Jeanfrancois G ChuiGermanyXuxue Feng NEGOTIATION
Mujtaba K SaylorsGermanyAmy Elsner 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>