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 O NestleAustraliaOnyama Limba QUALIFIED
Kaitlin A StensethFranceAmy Elsner NEGOTIATION
Clifford Z OstroskyRussiaStephen Shaw RENEWAL
Jeanfrancois P GillianBrazilIvan Magalhaes PROPOSAL
Cody U DoeSpainIvan Magalhaes UNQUALIFIED
Jeanfrancois T MacleadRussiaIvan Magalhaes NEW
Tony G GlickItalyAsiya Javayant NEW
Izzy L ChuiSpainXuxue Feng PROPOSAL
Aruna X MorascaSpainAmy Elsner PROPOSAL
Stacey V NickaItalyElwin Sharvill NEW
Aruna V SaylorsBrazilIoni Bowcher PROPOSAL
Jennifer O WhobreyAustraliaStephen Shaw NEW
Sinclair M GarufiGermanyStephen Shaw QUALIFIED
Morrow Y FerenczRussiaAnna Fali RENEWAL
Kaitlin V DoeGermanyAnna Fali RENEWAL
Aditya F BowleyArgentinaXuxue Feng RENEWAL
Darci E ButtItalyBernardo Dominic NEW
Leon S PoquetteBrazilAmy Elsner NEW
James D OldroydCanadaElwin Sharvill NEW
Murillo G DoeAustraliaIoni Bowcher NEGOTIATION
Nicolas Y SlusarskiCanadaStephen Shaw NEGOTIATION
Isabel V RulapaughIndiaOnyama Limba PROPOSAL
Leja K PoquetteGermanyIoni Bowcher UNQUALIFIED
Kaitlin M AmigonIndiaXuxue Feng NEGOTIATION
Mujtaba L GarufiRussiaAmy Elsner QUALIFIED
James D RulapaughBrazilIvan Magalhaes RENEWAL
Rodrigues I RutaJapanIvan Magalhaes QUALIFIED
Darci I FlosiFranceStephen Shaw PROPOSAL
Aditya C GauchoItalyAsiya Javayant NEW
Salvatore A StensethAustraliaIvan Magalhaes NEGOTIATION
Aruna A NickaAustraliaAsiya Javayant UNQUALIFIED
Nicolas L RutaGermanyIvan Magalhaes NEW
Ricardo K DoeAustraliaOnyama Limba RENEWAL
Munro O BologniaSpainElwin Sharvill RENEWAL
Isabel I CaldareraJapanStephen Shaw UNQUALIFIED
Jennifer P GlickCanadaOnyama Limba QUALIFIED
David P WaycottCanadaIvan Magalhaes QUALIFIED
Alejandro Y StensethJapanElwin Sharvill PROPOSAL
Jefferson G WaycottJapanXuxue Feng PROPOSAL
Julie O StockhamFranceAmy Elsner RENEWAL
Emily B RulapaughIndiaXuxue Feng RENEWAL
Smith Q SaylorsRussiaBernardo Dominic NEGOTIATION
Cody R InouyeCanadaAmy Elsner UNQUALIFIED
Izzy T WaycottRussiaIvan Magalhaes QUALIFIED
Ivar R StockhamCanadaBernardo Dominic PROPOSAL
Kaitlin R RimBrazilAsiya Javayant UNQUALIFIED
Juan R BowleyUnited KingdomXuxue Feng QUALIFIED
Aruna R SergiArgentinaElwin Sharvill PROPOSAL
Ashley A RimBrazilAsiya Javayant RENEWAL
Adams J OldroydGermanyOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Clifford J PaprockiJapanIoni Bowcher NEGOTIATION
Kadeem E SaylorsCanadaElwin Sharvill NEGOTIATION
Darci X SchemmerAustraliaIvan Magalhaes RENEWAL
Costa F SergiRussiaOnyama Limba RENEWAL
Octavia K IturbideBrazilAsiya Javayant NEW
Octavia U ChuiArgentinaElwin Sharvill QUALIFIED
Clifford H CaudyCanadaElwin Sharvill PROPOSAL
Jeanfrancois N StensethIndiaAsiya Javayant NEGOTIATION
Leja O DoeFranceAsiya Javayant NEGOTIATION
Murillo F MorascaBrazilElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa J StockhamSpain2026-08-03Morlong Associates QUALIFIED57Xuxue Feng
1001Murillo V CaudyUnited Kingdom2026-07-18Printing Dimensions UNQUALIFIED76Xuxue Feng
1002Isabel C MaletFrance2026-08-03Morlong Associates UNQUALIFIED79Ivan Magalhaes
1003Clifford W AlbaresUnited Kingdom2026-07-17Chemel, James L Cpa PROPOSAL77Ivan Magalhaes
1004Arvin Q FollerIndia2026-07-28Feltz Printing Service RENEWAL96Ioni Bowcher
1005Sinclair F MaletGermany2026-07-23Chemel, James L Cpa PROPOSAL35Ioni Bowcher
1006Alejandro T GarufiAustralia2026-07-31Buckley Miller Wright NEGOTIATION49Stephen Shaw
1007Faith Q FollerItaly2026-07-25Chapman, Ross E Esq NEW32Ioni Bowcher
1008Darci C MarrierBrazil2026-07-27Chapman, Ross E Esq RENEWAL32Xuxue Feng
1009Smith W VocelkaCanada2026-07-30Dorl, James J Esq RENEWAL31Anna Fali
1010Chavez P BologniaBrazil2026-07-20Chemel, James L Cpa RENEWAL81Amy Elsner
1011Ashley A StensethFrance2026-07-17Rousseaux, Michael Esq UNQUALIFIED56Amy Elsner
1012Costa G GauchoRussia2026-07-20Rousseaux, Michael Esq PROPOSAL80Elwin Sharvill
1013Juan H SchemmerBrazil2026-07-26Benton, John B Jr NEGOTIATION49Onyama Limba
1014Claire S KolmetzSpain2026-07-16King, Christopher A Esq NEW35Ivan Magalhaes
1015Johnson I GlickCanada2026-08-09King, Christopher A Esq NEGOTIATION24Ivan Magalhaes
1016Deepesh P FlosiItaly2026-07-27Printing Dimensions UNQUALIFIED24Asiya Javayant
1017Darci K RoysterCanada2026-07-28Rousseaux, Michael Esq NEGOTIATION87Elwin Sharvill
1018Emily C SaylorsIndia2026-07-20Chanay, Jeffrey A Esq PROPOSAL97Ioni Bowcher
1019Mayumi C SergiUnited Kingdom2026-07-15Printing Dimensions UNQUALIFIED34Ioni Bowcher
1020Tony K SlusarskiCanada2026-07-15Truhlar And Truhlar Attys UNQUALIFIED94Amy Elsner
1021Isabel U VenereIndia2026-07-31Chapman, Ross E Esq NEW18Bernardo Dominic
1022Wickens E SaylorsRussia2026-07-29Rangoni Of Florence RENEWAL12Anna Fali
1023Wickens C WieserRussia2026-07-24Benton, John B Jr PROPOSAL20Bernardo Dominic
1024Adams B DoeItaly2026-07-26Morlong Associates NEW22Elwin Sharvill
1025Kadeem I WhobreyCanada2026-08-04Feiner Bros QUALIFIED46Onyama Limba
1026Deepesh R SlusarskiIndia2026-07-24King, Christopher A Esq UNQUALIFIED4Stephen Shaw
1027Greenwood S GauchoItaly2026-07-26Chapman, Ross E Esq NEGOTIATION40Amy Elsner
1028Izzy V MaletFrance2026-08-05Truhlar And Truhlar Attys PROPOSAL42Xuxue Feng
1029Kadeem Z OldroydUnited Kingdom2026-07-23Feiner Bros UNQUALIFIED75Xuxue Feng
1030Nicolas B GillianBrazil2026-07-26Chapman, Ross E Esq NEGOTIATION93Ivan Magalhaes
1031James R ButtJapan2026-07-24Feltz Printing Service PROPOSAL73Asiya Javayant
1032Aika K GlickArgentina2026-08-03Chanay, Jeffrey A Esq PROPOSAL66Amy Elsner
1033Deepesh I BologniaRussia2026-07-29Feiner Bros UNQUALIFIED14Ivan Magalhaes
1034Faith S FigeroaSpain2026-08-07Truhlar And Truhlar Attys NEGOTIATION69Asiya Javayant
1035Jennifer U SchemmerRussia2026-07-26Commercial Press NEW44Anna Fali
1036Sinclair Q WieserIndia2026-07-30Printing Dimensions UNQUALIFIED21Stephen Shaw
1037Julie X MacleadItaly2026-07-28Dorl, James J Esq QUALIFIED7Anna Fali
1038David K DilliardCanada2026-08-06Feiner Bros RENEWAL63Amy Elsner
1039Johnson I ChuiGermany2026-07-14Benton, John B Jr RENEWAL16Ioni Bowcher
1040Tony X MarrierJapan2026-07-16Printing Dimensions NEGOTIATION74Onyama Limba
1041Claire V GauchoCanada2026-08-10Chapman, Ross E Esq QUALIFIED71Onyama Limba
1042Maisha C BologniaGermany2026-07-31Rousseaux, Michael Esq RENEWAL18Elwin Sharvill
1043Deepesh D SlusarskiItaly2026-07-31Feltz Printing Service PROPOSAL33Onyama Limba
1044Emily F CaldareraUnited Kingdom2026-08-07Feiner Bros QUALIFIED97Anna Fali
1045Mujtaba F AmigonBrazil2026-08-09Benton, John B Jr NEGOTIATION45Bernardo Dominic
1046Alejandro M SchemmerRussia2026-07-29Dorl, James J Esq NEGOTIATION14Asiya Javayant
1047Leon K VenereCanada2026-08-05Chanay, Jeffrey A Esq NEW68Anna Fali
1048Julie W StockhamCanada2026-07-22Chapman, Ross E Esq NEW32Elwin Sharvill
1049Adams K MaletCanada2026-07-28Feiner Bros RENEWAL58Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin C MorascaGermanyElwin Sharvill UNQUALIFIED
Francesco C CaudySpainOnyama Limba NEGOTIATION
James I ChuiJapanIoni Bowcher NEW
Alejandro W BowleyIndiaIvan Magalhaes PROPOSAL
Adams C GauchoUnited KingdomStephen Shaw NEGOTIATION
James R WieserCanadaStephen Shaw NEGOTIATION
Kaitlin Z StockhamCanadaAsiya Javayant NEGOTIATION
Kaitlin U FerenczItalyBernardo Dominic QUALIFIED
Claire Y SchemmerSpainElwin Sharvill NEGOTIATION
Stacey D WaycottCanadaXuxue Feng NEGOTIATION
Deepesh U GillianBrazilIvan Magalhaes NEW
Misaki X SaylorsSpainBernardo Dominic QUALIFIED
Jeanfrancois R MaletIndiaIoni Bowcher RENEWAL
Faith Y WieserAustraliaElwin Sharvill QUALIFIED
Tony P RoysterAustraliaElwin Sharvill PROPOSAL
Leon F GlickSpainAmy Elsner NEGOTIATION
Darci W MacleadCanadaStephen Shaw QUALIFIED
Kadeem E BologniaUnited KingdomBernardo Dominic RENEWAL
Faith R FollerCanadaIvan Magalhaes PROPOSAL
Mayumi A RutaSpainIvan Magalhaes PROPOSAL
Octavia O SergiFranceIvan Magalhaes NEGOTIATION
Ashley I SaylorsBrazilElwin Sharvill NEGOTIATION
Leja M WieserCanadaOnyama Limba NEW
Mayumi L WaycottAustraliaBernardo Dominic NEGOTIATION
Mayumi T DilliardAustraliaXuxue Feng RENEWAL
Cody N RutaAustraliaElwin Sharvill RENEWAL
Arvin W MorascaCanadaAmy Elsner PROPOSAL
Jeanfrancois S MarrierBrazilOnyama Limba QUALIFIED
Aditya I StockhamBrazilAnna Fali NEW
Munro V WaycottAustraliaElwin Sharvill QUALIFIED
David X MaletAustraliaAsiya Javayant NEW
Stacey Y MaletIndiaXuxue Feng PROPOSAL
Rodrigues M DoeBrazilAsiya Javayant NEGOTIATION
Smith S FerenczAustraliaXuxue Feng QUALIFIED
Deepesh W GillianSpainElwin Sharvill NEW
Aruna M DilliardIndiaIoni Bowcher NEGOTIATION
Morrow N BriddickFranceStephen Shaw PROPOSAL
Maria X ChuiCanadaBernardo Dominic NEGOTIATION
Jones O WieserGermanyXuxue Feng NEGOTIATION
Juan R DoeCanadaBernardo Dominic UNQUALIFIED
Costa Y WhobreyGermanyIvan Magalhaes UNQUALIFIED
Isabel F OldroydArgentinaAmy Elsner PROPOSAL
Emily V BriddickIndiaAsiya Javayant PROPOSAL
Faith R KuskoCanadaXuxue Feng NEW
Jefferson X BologniaSpainOnyama Limba RENEWAL
Smith A ButtArgentinaElwin Sharvill QUALIFIED
Darci D OstroskyFranceAnna Fali RENEWAL
Murillo T TollnerAustraliaAsiya Javayant RENEWAL
Greenwood Y MaletArgentinaOnyama Limba RENEWAL
Tony A WaycottUnited KingdomBernardo Dominic PROPOSAL
Frozen Columns
Name
Octavia P Ruta
Alejandro F Caldarera
Izzy J Foller
Antonio E Nicka
Kaitlin C Campain
Jefferson D Whobrey
Mujtaba F Slusarski
Maisha H Albares
Jefferson O Saylors
Izzy B Ferencz
Alejandro C Inouye
Emily Y Ostrosky
Tony J Tollner
James C Schemmer
Kadeem M Ferencz
Jefferson R Waycott
Maria B Slusarski
David P Doe
Salvatore G Oldroyd
Alejandro H Darakjy
Izzy D Slusarski
Jennifer J Dilliard
Greenwood U Waycott
Julie D Shinko
Arvin T Ostrosky
Jeanfrancois B Schemmer
Leon Q Iturbide
Misaki Y Amigon
Murillo E Butt
Antonio C Nestle
Wickens F Wieser
Francesco B Rulapaugh
Juan W Nicka
Mujtaba H Ferencz
Aditya I Poquette
Greenwood H Malet
Johnson N Saylors
Ashley M Iturbide
Claire M Albares
Mayumi V Whobrey
Cody P Kusko
Johnson M Schemmer
Chavez V Glick
Cody Y Malet
Ricardo V Paprocki
Salvatore R Figeroa
Ashley M Marrier
Octavia G Rulapaugh
Clifford L Nestle
Jefferson L Figeroa
IdCountryDate
1000Italy2026-08-01
1001Japan2026-07-22
1002Argentina2026-08-11
1003Russia2026-08-02
1004Russia2026-07-21
1005Russia2026-08-10
1006Spain2026-07-31
1007Canada2026-07-17
1008Canada2026-08-06
1009Australia2026-07-13
1010India2026-08-09
1011Japan2026-07-31
1012Russia2026-07-16
1013Australia2026-08-09
1014Australia2026-07-26
1015Italy2026-08-04
1016Germany2026-07-24
1017Germany2026-08-06
1018Australia2026-07-16
1019Germany2026-07-31
1020Brazil2026-08-03
1021Italy2026-08-03
1022Australia2026-07-15
1023Australia2026-08-01
1024Australia2026-07-13
1025United Kingdom2026-07-13
1026Argentina2026-08-05
1027Argentina2026-07-17
1028India2026-08-07
1029Australia2026-07-22
1030Argentina2026-08-09
1031Russia2026-08-10
1032Australia2026-07-31
1033Italy2026-08-03
1034United Kingdom2026-07-26
1035Argentina2026-07-19
1036India2026-07-21
1037Japan2026-08-03
1038United Kingdom2026-07-17
1039Italy2026-07-28
1040Brazil2026-07-13
1041Brazil2026-07-22
1042Japan2026-08-03
1043Russia2026-08-11
1044Germany2026-07-21
1045Spain2026-08-11
1046Brazil2026-07-30
1047Japan2026-08-03
1048Australia2026-07-19
1049India2026-07-24

On-Demand Data

NameIdCountryDate
Aika N Malet1000Argentina2026-07-31
Faith V Flosi1001Spain2026-07-18
Jones A Paprocki1002India2026-07-14
Salvatore Z Caudy1003Japan2026-07-30
Izzy O Rulapaugh1004France2026-08-06
Kaitlin Y Figeroa1005Argentina2026-07-30
Mujtaba R Campain1006Australia2026-07-30
Costa H Vocelka1007Australia2026-07-18
Jeanfrancois P Flosi1008Italy2026-07-17
Greenwood I Glick1009Japan2026-07-20
Munro A Shinko1010Germany2026-08-04
Ashley L Gillian1011Australia2026-07-14
Adams D Shinko1012France2026-07-23
Francesco J Slusarski1013India2026-08-05
Isabel B Paprocki1014Canada2026-08-11
Kadeem G Darakjy1015France2026-07-28
Darci W Sergi1016United Kingdom2026-07-24
Darci A Saylors1017Japan2026-08-05
Kadeem L Nicka1018United Kingdom2026-07-22
Chavez F Paprocki1019Japan2026-08-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy K VocelkaUnited KingdomStephen Shaw QUALIFIED
Johnson V MaletFranceIvan Magalhaes PROPOSAL
Adams S DoeItalyIoni Bowcher RENEWAL
Salvatore L GauchoRussiaAmy Elsner NEGOTIATION
Mayumi C DarakjyUnited KingdomXuxue Feng NEGOTIATION
Deepesh M FollerUnited KingdomOnyama Limba NEGOTIATION
Deepesh M OldroydFranceElwin Sharvill NEW
Chavez C MaletUnited KingdomIvan Magalhaes PROPOSAL
David C StensethUnited KingdomIvan Magalhaes UNQUALIFIED
Juan I MaletBrazilAmy Elsner NEW
Johnson C ChuiArgentinaElwin Sharvill RENEWAL
Munro A WieserGermanyBernardo Dominic NEW
Leja L ChuiCanadaOnyama Limba NEGOTIATION
Isabel G DoeItalyAmy Elsner NEGOTIATION
Costa W MaletBrazilStephen Shaw NEGOTIATION
Maria A DoeFranceStephen Shaw PROPOSAL
Claire E OldroydCanadaIvan Magalhaes PROPOSAL
Leja W GarufiUnited KingdomStephen Shaw PROPOSAL
Costa F StensethFranceAmy Elsner NEGOTIATION
Munro S InouyeArgentinaIoni Bowcher NEGOTIATION
Jennifer P GillianIndiaIvan Magalhaes PROPOSAL
Ricardo A SaylorsSpainXuxue Feng NEW
Silvio J PoquetteItalyXuxue Feng UNQUALIFIED
Aika Y StockhamSpainOnyama Limba PROPOSAL
Wickens V TollnerRussiaOnyama Limba NEW
Maisha D TollnerUnited KingdomStephen Shaw QUALIFIED
Darci O NestleBrazilStephen Shaw RENEWAL
Octavia O RutaArgentinaIoni Bowcher UNQUALIFIED
Stacey G CampainJapanOnyama Limba UNQUALIFIED
Jones W ChuiGermanyBernardo Dominic RENEWAL
Misaki W TollnerBrazilBernardo Dominic NEW
Aditya X KuskoSpainAnna Fali UNQUALIFIED
Jennifer R GlickGermanyOnyama Limba UNQUALIFIED
Ivar B VocelkaSpainStephen Shaw NEGOTIATION
Aditya F OldroydItalyStephen Shaw RENEWAL
Greenwood A WaycottAustraliaAnna Fali QUALIFIED
Leja F MaletAustraliaXuxue Feng QUALIFIED
Jefferson C FollerArgentinaAsiya Javayant RENEWAL
Aika O FigeroaSpainAnna Fali RENEWAL
Kadeem O SergiItalyOnyama 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>