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
Morrow H FerenczBrazilXuxue Feng UNQUALIFIED
Ivar N RulapaughCanadaOnyama Limba PROPOSAL
Maria K GillianFranceAsiya Javayant QUALIFIED
Aditya U WaycottRussiaXuxue Feng NEGOTIATION
Ivar S RimIndiaXuxue Feng RENEWAL
Darci Y SchemmerArgentinaIoni Bowcher PROPOSAL
Morrow Z RoysterUnited KingdomOnyama Limba NEGOTIATION
Ivar I TollnerCanadaStephen Shaw NEGOTIATION
Izzy L KolmetzSpainStephen Shaw PROPOSAL
Johnson V MorascaRussiaAsiya Javayant RENEWAL
Julie Y VenereItalyIoni Bowcher NEGOTIATION
Nicolas P VocelkaAustraliaIoni Bowcher NEW
Antonio U MaletBrazilIvan Magalhaes NEGOTIATION
Julie B MaletItalyOnyama Limba NEW
Alejandro K OstroskyGermanyElwin Sharvill PROPOSAL
Deepesh V BologniaUnited KingdomAnna Fali UNQUALIFIED
Juan F VenereGermanyStephen Shaw QUALIFIED
Salvatore T GauchoItalyElwin Sharvill NEGOTIATION
Clifford A VenereAustraliaIvan Magalhaes UNQUALIFIED
Claire N KolmetzIndiaXuxue Feng UNQUALIFIED
Faith F ChuiGermanyBernardo Dominic NEGOTIATION
Ivar M RutaBrazilAmy Elsner NEGOTIATION
Murillo P NestleJapanIvan Magalhaes NEW
Jeanfrancois H SergiAustraliaAnna Fali RENEWAL
Leja N PerinGermanyIvan Magalhaes PROPOSAL
Jeanfrancois D ShinkoIndiaStephen Shaw NEW
Johnson H BriddickFranceIvan Magalhaes RENEWAL
Leja N MaletBrazilAsiya Javayant PROPOSAL
Ivar E BriddickSpainXuxue Feng NEGOTIATION
Salvatore W NickaUnited KingdomXuxue Feng NEGOTIATION
Mujtaba M WaycottRussiaIoni Bowcher QUALIFIED
Deepesh H SlusarskiArgentinaIoni Bowcher PROPOSAL
Jennifer J AlbaresGermanyAmy Elsner RENEWAL
Sinclair H WhobreyArgentinaAsiya Javayant UNQUALIFIED
Salvatore U NickaBrazilOnyama Limba PROPOSAL
Aditya Y MacleadUnited KingdomBernardo Dominic NEGOTIATION
Aruna B GauchoFranceIoni Bowcher QUALIFIED
Francesco M SergiIndiaIoni Bowcher PROPOSAL
Ivar O SergiUnited KingdomStephen Shaw QUALIFIED
Jeanfrancois I InouyeJapanAsiya Javayant UNQUALIFIED
Jennifer M KolmetzFranceStephen Shaw NEW
Arvin D BriddickRussiaIvan Magalhaes NEGOTIATION
Jennifer W CampainIndiaStephen Shaw UNQUALIFIED
Maria H VenereSpainStephen Shaw PROPOSAL
Jennifer S KuskoJapanBernardo Dominic NEGOTIATION
Munro L KuskoFranceXuxue Feng NEGOTIATION
Ashley S NickaArgentinaIoni Bowcher NEW
Murillo X WaycottIndiaAsiya Javayant QUALIFIED
Sinclair K PaprockiIndiaAnna Fali QUALIFIED
Octavia N DoeBrazilAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Chavez C MarrierJapanXuxue Feng NEGOTIATION
David Z CaudyIndiaStephen Shaw QUALIFIED
Morrow L FollerFranceXuxue Feng QUALIFIED
Aruna J NestleRussiaBernardo Dominic PROPOSAL
Salvatore R GillianFranceElwin Sharvill PROPOSAL
Salvatore S DilliardGermanyBernardo Dominic QUALIFIED
Arvin K VocelkaAustraliaOnyama Limba QUALIFIED
Francesco J DilliardJapanXuxue Feng PROPOSAL
Mujtaba Y RoysterSpainAnna Fali UNQUALIFIED
Kaitlin D MaletGermanyOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer R VocelkaAustralia2024-06-12Commercial Press RENEWAL83Amy Elsner
1001Ivar O RoysterAustralia2024-05-26Morlong Associates QUALIFIED39Xuxue Feng
1002Ashley L VenereSpain2024-05-27Dorl, James J Esq NEGOTIATION97Ivan Magalhaes
1003Emily E VenereRussia2024-05-27Chanay, Jeffrey A Esq NEW10Anna Fali
1004Silvio O FigeroaJapan2024-06-05Dorl, James J Esq UNQUALIFIED1Anna Fali
1005James B IturbideRussia2024-06-18Benton, John B Jr NEGOTIATION31Amy Elsner
1006Silvio W RoysterCanada2024-06-16Feltz Printing Service RENEWAL7Onyama Limba
1007Aruna J SlusarskiBrazil2024-05-29Chemel, James L Cpa QUALIFIED25Anna Fali
1008Isabel V DarakjyBrazil2024-06-04Morlong Associates NEGOTIATION73Asiya Javayant
1009Alejandro F AlbaresCanada2024-05-30Printing Dimensions QUALIFIED69Elwin Sharvill
1010Emily F RoysterFrance2024-06-22Chanay, Jeffrey A Esq NEW78Amy Elsner
1011Mayumi K NestleGermany2024-05-25Benton, John B Jr UNQUALIFIED0Ioni Bowcher
1012Claire S KuskoJapan2024-06-21Rangoni Of Florence RENEWAL57Anna Fali
1013Leon H MaletBrazil2024-06-02Morlong Associates QUALIFIED49Ivan Magalhaes
1014Nicolas P StensethAustralia2024-06-13Rousseaux, Michael Esq NEGOTIATION84Elwin Sharvill
1015Stacey L MaletAustralia2024-06-06Chapman, Ross E Esq NEW2Onyama Limba
1016Ivar B DoeArgentina2024-06-01Dorl, James J Esq QUALIFIED25Anna Fali
1017David C FollerBrazil2024-06-07Feltz Printing Service QUALIFIED42Asiya Javayant
1018Jeanfrancois B ChuiItaly2024-06-22Morlong Associates RENEWAL1Xuxue Feng
1019Jennifer N IturbideGermany2024-06-06Feltz Printing Service RENEWAL33Anna Fali
1020Rodrigues B BriddickItaly2024-06-22Chemel, James L Cpa NEGOTIATION2Onyama Limba
1021Costa Z AmigonJapan2024-06-22Rousseaux, Michael Esq NEW58Stephen Shaw
1022Stacey G PerinGermany2024-06-08King, Christopher A Esq UNQUALIFIED48Onyama Limba
1023Johnson Q BriddickCanada2024-05-29Rousseaux, Michael Esq PROPOSAL45Amy Elsner
1024James C DoeJapan2024-06-22Chanay, Jeffrey A Esq NEW21Anna Fali
1025Antonio A CaudyItaly2024-05-27Chapman, Ross E Esq PROPOSAL2Ivan Magalhaes
1026Isabel A FollerCanada2024-05-25King, Christopher A Esq RENEWAL92Anna Fali
1027Deepesh K ChuiArgentina2024-06-13Buckley Miller Wright NEGOTIATION95Asiya Javayant
1028Mujtaba R CaudyItaly2024-05-25Chemel, James L Cpa NEGOTIATION69Onyama Limba
1029Sinclair V KuskoArgentina2024-06-21Chanay, Jeffrey A Esq NEGOTIATION64Asiya Javayant
1030Adams M TollnerArgentina2024-06-03Rangoni Of Florence PROPOSAL69Elwin Sharvill
1031Francesco O CampainBrazil2024-06-13Chanay, Jeffrey A Esq QUALIFIED11Amy Elsner
1032Emily K GauchoRussia2024-06-02Commercial Press UNQUALIFIED27Xuxue Feng
1033Jefferson W TollnerSpain2024-05-31Buckley Miller Wright RENEWAL84Xuxue Feng
1034Aditya T WaycottBrazil2024-06-23Printing Dimensions NEW69Elwin Sharvill
1035Arvin K RoysterFrance2024-06-21Feiner Bros UNQUALIFIED67Amy Elsner
1036Clifford G VocelkaGermany2024-06-04Feltz Printing Service PROPOSAL78Asiya Javayant
1037Aruna M SergiRussia2024-06-19Benton, John B Jr PROPOSAL35Anna Fali
1038Murillo S FerenczUnited Kingdom2024-06-17Morlong Associates NEGOTIATION59Stephen Shaw
1039Jones M SchemmerJapan2024-06-17Buckley Miller Wright NEW57Onyama Limba
1040Maria J OstroskyArgentina2024-06-07Commercial Press NEGOTIATION30Elwin Sharvill
1041Cody D KuskoFrance2024-06-23Feltz Printing Service NEGOTIATION66Elwin Sharvill
1042Alejandro Z ShinkoRussia2024-06-06Feiner Bros NEW54Onyama Limba
1043Salvatore O GillianSpain2024-05-27Buckley Miller Wright NEGOTIATION62Amy Elsner
1044Rodrigues O AlbaresArgentina2024-06-04King, Christopher A Esq NEGOTIATION76Anna Fali
1045Adams G RutaItaly2024-06-17Truhlar And Truhlar Attys NEW97Bernardo Dominic
1046Maria T KolmetzSpain2024-06-01Benton, John B Jr NEGOTIATION99Elwin Sharvill
1047Misaki K MorascaBrazil2024-06-19Chanay, Jeffrey A Esq UNQUALIFIED10Anna Fali
1048Adams V ShinkoUnited Kingdom2024-06-10Chemel, James L Cpa UNQUALIFIED41Asiya Javayant
1049Salvatore D GlickRussia2024-05-31Feltz Printing Service UNQUALIFIED13Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Alejandro X SaylorsRussiaAnna Fali UNQUALIFIED
Stacey F RoysterAustraliaElwin Sharvill NEW
Kaitlin M SergiBrazilOnyama Limba PROPOSAL
Alejandro B RulapaughJapanIvan Magalhaes PROPOSAL
Darci L AmigonJapanAmy Elsner RENEWAL
Mayumi L GlickBrazilStephen Shaw NEW
Jennifer Q ChuiItalyAsiya Javayant RENEWAL
Juan K WaycottIndiaOnyama Limba RENEWAL
Misaki F CampainArgentinaIoni Bowcher PROPOSAL
Kaitlin U ButtIndiaIoni Bowcher PROPOSAL
Wickens R PaprockiAustraliaElwin Sharvill NEGOTIATION
Rodrigues E SchemmerGermanyOnyama Limba RENEWAL
Ricardo Y MacleadFranceXuxue Feng QUALIFIED
Leja R SlusarskiUnited KingdomXuxue Feng UNQUALIFIED
Kadeem M FigeroaUnited KingdomOnyama Limba PROPOSAL
Faith P KuskoRussiaStephen Shaw UNQUALIFIED
Salvatore X NestleItalyElwin Sharvill PROPOSAL
Kadeem D StensethSpainBernardo Dominic NEW
Juan Z MarrierSpainOnyama Limba PROPOSAL
Mujtaba P GauchoFranceElwin Sharvill RENEWAL
Julie C GillianItalyAnna Fali RENEWAL
Smith N BologniaCanadaAmy Elsner NEGOTIATION
Alejandro W MorascaJapanAmy Elsner NEW
Sinclair O StockhamArgentinaXuxue Feng RENEWAL
Nicolas W SergiIndiaIoni Bowcher QUALIFIED
Francesco O FigeroaAustraliaIoni Bowcher NEW
Salvatore J InouyeAustraliaStephen Shaw RENEWAL
Morrow I SchemmerRussiaAmy Elsner UNQUALIFIED
Ricardo Q CaldareraItalyAsiya Javayant UNQUALIFIED
Maria B RulapaughSpainIvan Magalhaes NEW
Wickens C MacleadArgentinaStephen Shaw PROPOSAL
Wickens J InouyeIndiaIvan Magalhaes NEW
Aditya L PerinAustraliaElwin Sharvill NEW
Smith N StockhamAustraliaAnna Fali UNQUALIFIED
Jones K StensethArgentinaBernardo Dominic NEGOTIATION
Salvatore S FollerItalyAmy Elsner UNQUALIFIED
Adams J WieserRussiaAmy Elsner RENEWAL
Maisha M StensethCanadaOnyama Limba RENEWAL
Salvatore H ButtArgentinaIvan Magalhaes RENEWAL
Aruna Z DoeItalyAsiya Javayant UNQUALIFIED
Murillo F OldroydBrazilBernardo Dominic QUALIFIED
Aditya L MaletIndiaAsiya Javayant RENEWAL
Deepesh F FollerGermanyElwin Sharvill RENEWAL
Munro H IturbideSpainElwin Sharvill QUALIFIED
Maria J NestleItalyElwin Sharvill NEGOTIATION
Aditya Y GarufiFranceXuxue Feng NEGOTIATION
Adams G FigeroaGermanyAsiya Javayant PROPOSAL
Munro M VenereFranceIvan Magalhaes QUALIFIED
Maisha Y GlickAustraliaAnna Fali QUALIFIED
Maria K WaycottGermanyXuxue Feng NEGOTIATION
Frozen Columns
Name
Faith A Foller
Julie D Perin
Deepesh U Kolmetz
Ricardo E Maclead
Morrow X Inouye
Kaitlin P Nicka
Morrow Z Amigon
Tony V Darakjy
Jefferson I Inouye
Isabel A Malet
Morrow P Figeroa
Izzy C Glick
Leon H Caldarera
Kaitlin T Nestle
Kadeem U Tollner
Faith A Amigon
Izzy O Wieser
Deepesh Q Campain
Stacey P Bowley
Mujtaba U Flosi
Kadeem Z Caldarera
Salvatore M Oldroyd
Misaki K Tollner
Salvatore U Kusko
Ashley K Gaucho
Emily C Gaucho
James V Paprocki
Ivar N Paprocki
Izzy T Dilliard
Jefferson M Nestle
Alejandro M Iturbide
Darci H Kolmetz
Darci F Maclead
Smith N Sergi
Morrow V Nestle
Emily K Kusko
Greenwood T Malet
Sinclair D Rim
Leon N Foller
Jeanfrancois N Marrier
Ivar G Saylors
Misaki Y Stockham
Costa Z Figeroa
Chavez D Morasca
Maisha S Stenseth
Misaki X Wieser
Munro T Slusarski
Munro M Butt
Emily E Kolmetz
Deepesh L Nicka
IdCountryDate
1000Germany2024-06-22
1001Italy2024-06-23
1002Canada2024-06-16
1003France2024-05-30
1004France2024-06-05
1005Germany2024-06-21
1006Canada2024-06-22
1007Brazil2024-05-27
1008India2024-06-01
1009Brazil2024-06-19
1010Canada2024-05-30
1011Japan2024-06-05
1012India2024-05-28
1013Brazil2024-05-26
1014Japan2024-06-06
1015Russia2024-05-25
1016Italy2024-06-16
1017Spain2024-06-11
1018Brazil2024-06-06
1019Spain2024-06-22
1020Brazil2024-06-19
1021India2024-05-26
1022Brazil2024-06-23
1023Brazil2024-05-28
1024Germany2024-06-22
1025United Kingdom2024-06-23
1026Argentina2024-06-02
1027Canada2024-06-22
1028United Kingdom2024-05-27
1029Spain2024-06-15
1030Russia2024-06-10
1031Japan2024-06-08
1032Argentina2024-06-20
1033United Kingdom2024-05-31
1034Canada2024-05-30
1035United Kingdom2024-06-17
1036Germany2024-06-11
1037Argentina2024-06-06
1038Canada2024-06-02
1039Brazil2024-06-14
1040Italy2024-05-29
1041India2024-05-30
1042France2024-05-28
1043Spain2024-05-25
1044Japan2024-06-17
1045United Kingdom2024-06-01
1046Canada2024-06-01
1047Germany2024-06-05
1048Japan2024-06-13
1049Japan2024-06-20

On-Demand Data

NameIdCountryDate
Alejandro Y Shinko1000Australia2024-05-29
Chavez M Butt1001France2024-05-28
James U Wieser1002Italy2024-06-10
Octavia E Schemmer1003Germany2024-06-09
Sinclair L Whobrey1004India2024-06-06
Smith H Marrier1005France2024-06-07
Greenwood D Whobrey1006India2024-05-25
Faith A Vocelka1007Brazil2024-06-07
Darci D Nicka1008India2024-06-07
Sinclair C Royster1009Germany2024-06-12
Morrow K Ferencz1010Germany2024-06-11
Claire B Ostrosky1011Canada2024-06-16
Alejandro A Perin1012Argentina2024-05-27
Alejandro Z Marrier1013Australia2024-06-14
Francesco P Marrier1014Japan2024-06-18
Aruna C Perin1015Italy2024-05-26
Ashley H Briddick1016Canada2024-06-13
Morrow P Rulapaugh1017Spain2024-05-29
Cody R Inouye1018Canada2024-06-17
Clifford F Bolognia1019Italy2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley H RimBrazilAsiya Javayant UNQUALIFIED
Sinclair T BriddickJapanStephen Shaw NEW
Munro E PoquetteGermanyXuxue Feng UNQUALIFIED
Alejandro O NestleArgentinaIoni Bowcher QUALIFIED
Sinclair T FigeroaIndiaIoni Bowcher NEW
Chavez P RimArgentinaIvan Magalhaes RENEWAL
Jeanfrancois U GillianIndiaAmy Elsner NEW
Francesco V KuskoRussiaAmy Elsner QUALIFIED
Faith D OldroydIndiaBernardo Dominic NEW
Antonio W AlbaresIndiaAmy Elsner NEGOTIATION
Mayumi C PoquetteCanadaAnna Fali RENEWAL
Arvin T OstroskyGermanyIoni Bowcher QUALIFIED
Morrow G FerenczAustraliaAnna Fali QUALIFIED
Cody S GarufiItalyOnyama Limba NEW
Leja B DilliardItalyXuxue Feng QUALIFIED
Jeanfrancois G NickaRussiaOnyama Limba NEGOTIATION
Aika Q BologniaSpainXuxue Feng NEW
Murillo O FigeroaSpainStephen Shaw PROPOSAL
Mujtaba L AlbaresAustraliaStephen Shaw QUALIFIED
David P CampainUnited KingdomAsiya Javayant NEW
Murillo W WieserJapanIoni Bowcher NEW
Jeanfrancois N RoysterGermanyXuxue Feng UNQUALIFIED
Clifford U AlbaresSpainIoni Bowcher NEW
Aruna S DilliardRussiaBernardo Dominic RENEWAL
Stacey J SergiFranceXuxue Feng PROPOSAL
Julie W CaldareraItalyStephen Shaw NEW
Jeanfrancois F VenereArgentinaXuxue Feng RENEWAL
Smith A MaletBrazilOnyama Limba PROPOSAL
Ivar Y MorascaFranceOnyama Limba NEW
Sinclair O IturbideGermanyStephen Shaw QUALIFIED
Jennifer P PaprockiIndiaIoni Bowcher NEW
Francesco D FollerUnited KingdomElwin Sharvill NEGOTIATION
Nicolas Z MorascaIndiaAmy Elsner NEGOTIATION
Mayumi D RoysterArgentinaBernardo Dominic PROPOSAL
Alejandro X KolmetzArgentinaXuxue Feng NEW
Claire A MacleadIndiaIvan Magalhaes QUALIFIED
Munro J GlickCanadaIoni Bowcher QUALIFIED
Smith S WhobreyArgentinaAsiya Javayant PROPOSAL
Kadeem Y PoquetteGermanyAmy Elsner NEGOTIATION
Murillo U StockhamRussiaAsiya Javayant 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>