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
Munro L MaletUnited KingdomOnyama Limba RENEWAL
Murillo S WieserItalyElwin Sharvill NEGOTIATION
Morrow G WieserJapanAsiya Javayant NEW
Leon F RoysterBrazilAnna Fali NEW
Silvio O RutaItalyIvan Magalhaes UNQUALIFIED
Isabel R ShinkoUnited KingdomElwin Sharvill QUALIFIED
Greenwood E AmigonIndiaElwin Sharvill NEW
Juan C TollnerAustraliaStephen Shaw PROPOSAL
Claire C GillianGermanyElwin Sharvill RENEWAL
Faith Y CampainAustraliaAsiya Javayant NEW
Ivar R CaudyRussiaAmy Elsner NEGOTIATION
Chavez T OldroydCanadaBernardo Dominic PROPOSAL
Ashley Q StensethCanadaXuxue Feng QUALIFIED
Mayumi F GauchoIndiaXuxue Feng UNQUALIFIED
Sinclair K SaylorsJapanAnna Fali NEW
Aruna F TollnerRussiaElwin Sharvill PROPOSAL
Clifford I CampainSpainAnna Fali PROPOSAL
Aruna N NestleJapanXuxue Feng RENEWAL
Mayumi M CaudySpainXuxue Feng RENEWAL
David Y FerenczIndiaOnyama Limba QUALIFIED
Juan N CaldareraFranceAnna Fali NEGOTIATION
Aruna A WhobreyArgentinaXuxue Feng PROPOSAL
Smith T MaletAustraliaAnna Fali RENEWAL
Aruna H PerinItalyAnna Fali NEGOTIATION
Claire O RoysterItalyElwin Sharvill PROPOSAL
Leon B MaletAustraliaAsiya Javayant QUALIFIED
Jefferson J PoquetteBrazilBernardo Dominic RENEWAL
Clifford A FlosiUnited KingdomOnyama Limba RENEWAL
Johnson F DarakjyFranceIoni Bowcher QUALIFIED
Alejandro S SchemmerArgentinaElwin Sharvill QUALIFIED
Wickens L TollnerArgentinaIvan Magalhaes QUALIFIED
Ricardo C GlickSpainIoni Bowcher RENEWAL
Jennifer G FigeroaGermanyIoni Bowcher QUALIFIED
James X MaletBrazilStephen Shaw UNQUALIFIED
Francesco C NestleArgentinaBernardo Dominic NEW
Smith Z SergiRussiaIvan Magalhaes UNQUALIFIED
Kadeem B ChuiItalyAnna Fali RENEWAL
Johnson J SaylorsJapanOnyama Limba RENEWAL
Sinclair Y MaletArgentinaStephen Shaw PROPOSAL
Cody I MaletIndiaStephen Shaw QUALIFIED
Tony H CaudyUnited KingdomIoni Bowcher RENEWAL
Misaki I FigeroaGermanyXuxue Feng QUALIFIED
Alejandro B ButtItalyAsiya Javayant NEW
Izzy M GarufiIndiaOnyama Limba PROPOSAL
Aditya N ChuiArgentinaOnyama Limba UNQUALIFIED
Aruna N MorascaBrazilElwin Sharvill PROPOSAL
Isabel Q PerinJapanElwin Sharvill NEW
Emily T StensethFranceStephen Shaw NEW
Mayumi U FigeroaAustraliaIvan Magalhaes NEGOTIATION
Mayumi O AmigonSpainAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jones T OstroskyArgentinaOnyama Limba NEW
Clifford L RulapaughRussiaBernardo Dominic NEGOTIATION
Chavez D PaprockiCanadaIvan Magalhaes UNQUALIFIED
Francesco V SergiItalyIoni Bowcher NEGOTIATION
Leja I AmigonArgentinaIoni Bowcher UNQUALIFIED
Jennifer P DoeUnited KingdomIoni Bowcher QUALIFIED
Smith H SchemmerRussiaAnna Fali NEGOTIATION
Kaitlin G OldroydSpainElwin Sharvill UNQUALIFIED
Greenwood S StockhamJapanXuxue Feng RENEWAL
Tony G TollnerRussiaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer P InouyeIndia2025-05-25Commercial Press QUALIFIED26Onyama Limba
1001Julie N OstroskyFrance2025-05-20Truhlar And Truhlar Attys NEGOTIATION81Elwin Sharvill
1002Wickens V PerinAustralia2025-06-10Benton, John B Jr RENEWAL22Asiya Javayant
1003Julie R RulapaughJapan2025-06-10Chapman, Ross E Esq NEGOTIATION91Ivan Magalhaes
1004Munro U ChuiRussia2025-05-31Chanay, Jeffrey A Esq QUALIFIED51Amy Elsner
1005Cody A PoquetteCanada2025-06-14Chapman, Ross E Esq RENEWAL56Amy Elsner
1006Isabel G MacleadBrazil2025-05-24Chemel, James L Cpa NEW57Ivan Magalhaes
1007Antonio J GlickArgentina2025-06-10Rangoni Of Florence UNQUALIFIED99Elwin Sharvill
1008Jennifer I PaprockiArgentina2025-06-14Rousseaux, Michael Esq QUALIFIED52Ioni Bowcher
1009Murillo V IturbideJapan2025-05-20Chapman, Ross E Esq QUALIFIED3Amy Elsner
1010Jefferson T GlickJapan2025-05-27King, Christopher A Esq NEW34Ivan Magalhaes
1011Octavia Q StockhamFrance2025-06-09King, Christopher A Esq PROPOSAL16Asiya Javayant
1012Clifford A FerenczItaly2025-05-30Chapman, Ross E Esq PROPOSAL53Onyama Limba
1013Smith W MarrierAustralia2025-06-07Morlong Associates RENEWAL84Bernardo Dominic
1014Morrow X OstroskyIndia2025-05-20King, Christopher A Esq PROPOSAL70Onyama Limba
1015Octavia M DarakjyAustralia2025-05-30King, Christopher A Esq NEW15Asiya Javayant
1016Tony V TollnerIndia2025-05-19Chanay, Jeffrey A Esq RENEWAL40Asiya Javayant
1017Smith A StockhamSpain2025-05-20Rousseaux, Michael Esq NEGOTIATION74Stephen Shaw
1018Izzy Q RutaFrance2025-06-09Commercial Press RENEWAL44Xuxue Feng
1019Leja S VocelkaBrazil2025-05-27Printing Dimensions RENEWAL12Ivan Magalhaes
1020Ivar B OldroydJapan2025-06-13Feltz Printing Service UNQUALIFIED58Amy Elsner
1021Claire L WhobreyFrance2025-05-31Printing Dimensions NEGOTIATION49Asiya Javayant
1022Ricardo A WieserItaly2025-06-05Chemel, James L Cpa QUALIFIED45Ioni Bowcher
1023Misaki E FollerJapan2025-06-05Commercial Press PROPOSAL54Ioni Bowcher
1024Jefferson V NickaItaly2025-06-06Chapman, Ross E Esq RENEWAL63Onyama Limba
1025Isabel X ButtSpain2025-05-28Rousseaux, Michael Esq NEW53Anna Fali
1026Ashley L StockhamFrance2025-05-20Chapman, Ross E Esq RENEWAL90Elwin Sharvill
1027Jefferson I WhobreyUnited Kingdom2025-05-24Benton, John B Jr QUALIFIED87Anna Fali
1028Wickens H MacleadRussia2025-06-04Rangoni Of Florence RENEWAL77Elwin Sharvill
1029Faith O WaycottRussia2025-05-22Feltz Printing Service PROPOSAL2Onyama Limba
1030Ricardo M NestleJapan2025-06-13Chemel, James L Cpa UNQUALIFIED59Onyama Limba
1031David K GarufiJapan2025-05-21Chanay, Jeffrey A Esq RENEWAL8Asiya Javayant
1032Arvin D PaprockiGermany2025-06-12Chemel, James L Cpa NEW16Anna Fali
1033Misaki T PerinAustralia2025-06-10Feltz Printing Service RENEWAL83Amy Elsner
1034Ashley C RoysterAustralia2025-05-18Chapman, Ross E Esq NEW17Anna Fali
1035Salvatore F RutaRussia2025-06-11Rangoni Of Florence RENEWAL96Stephen Shaw
1036Darci E TollnerAustralia2025-06-09Buckley Miller Wright UNQUALIFIED88Xuxue Feng
1037Smith A InouyeBrazil2025-06-10Rousseaux, Michael Esq NEGOTIATION34Ioni Bowcher
1038Greenwood A SaylorsArgentina2025-05-19Rangoni Of Florence PROPOSAL90Elwin Sharvill
1039Alejandro M NickaArgentina2025-06-08Chapman, Ross E Esq QUALIFIED37Elwin Sharvill
1040David L OstroskyArgentina2025-05-27Morlong Associates UNQUALIFIED68Onyama Limba
1041Leja V FigeroaJapan2025-05-24Chemel, James L Cpa NEGOTIATION55Xuxue Feng
1042Ricardo S StensethBrazil2025-05-30Feiner Bros NEW85Ioni Bowcher
1043Kaitlin C AmigonSpain2025-06-08Chemel, James L Cpa PROPOSAL70Xuxue Feng
1044Aruna C KuskoFrance2025-06-07Chapman, Ross E Esq NEGOTIATION47Asiya Javayant
1045Maisha K RutaArgentina2025-06-09King, Christopher A Esq RENEWAL1Stephen Shaw
1046Izzy Z WhobreyItaly2025-06-07Benton, John B Jr PROPOSAL13Ivan Magalhaes
1047Johnson I BologniaBrazil2025-06-01Chapman, Ross E Esq UNQUALIFIED59Bernardo Dominic
1048Izzy S WaycottCanada2025-06-12Rangoni Of Florence QUALIFIED82Ioni Bowcher
1049Adams H OstroskyIndia2025-05-26Chemel, James L Cpa RENEWAL75Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Alejandro U FigeroaRussiaIvan Magalhaes QUALIFIED
Claire H ShinkoBrazilAsiya Javayant UNQUALIFIED
David H CaudyJapanOnyama Limba UNQUALIFIED
Izzy I GillianFranceBernardo Dominic QUALIFIED
Jennifer K GlickFranceAnna Fali PROPOSAL
Mayumi X MaletRussiaOnyama Limba UNQUALIFIED
Misaki Y CaudyGermanyIoni Bowcher QUALIFIED
Ricardo K StockhamUnited KingdomBernardo Dominic RENEWAL
Stacey H InouyeFranceAmy Elsner NEW
Adams W GarufiFranceOnyama Limba NEGOTIATION
Nicolas X VenereCanadaIvan Magalhaes RENEWAL
Murillo E MarrierFranceStephen Shaw RENEWAL
Aruna C DarakjySpainIvan Magalhaes NEW
Claire Z BologniaBrazilIvan Magalhaes RENEWAL
Octavia B CaldareraArgentinaOnyama Limba PROPOSAL
Misaki S SchemmerItalyAnna Fali NEGOTIATION
Isabel X SchemmerItalyElwin Sharvill QUALIFIED
Adams P GillianFranceElwin Sharvill RENEWAL
Misaki I GillianGermanyXuxue Feng QUALIFIED
Deepesh L GillianBrazilIoni Bowcher UNQUALIFIED
Alejandro X RutaRussiaAnna Fali NEGOTIATION
Aika T WaycottItalyXuxue Feng PROPOSAL
Francesco R MaletArgentinaOnyama Limba NEW
Emily V GlickSpainXuxue Feng RENEWAL
Emily Q BriddickAustraliaIoni Bowcher NEW
Faith Z PaprockiJapanIvan Magalhaes QUALIFIED
Arvin W MorascaBrazilAmy Elsner PROPOSAL
Misaki T WaycottArgentinaIvan Magalhaes NEGOTIATION
Silvio M StensethJapanXuxue Feng NEW
Salvatore B IturbideRussiaBernardo Dominic NEGOTIATION
Ashley R RimFranceAmy Elsner PROPOSAL
Murillo S SergiUnited KingdomIoni Bowcher RENEWAL
Nicolas R IturbideIndiaBernardo Dominic UNQUALIFIED
Salvatore A FerenczIndiaOnyama Limba NEGOTIATION
Aruna I WaycottCanadaAsiya Javayant NEGOTIATION
Francesco U GillianIndiaAsiya Javayant UNQUALIFIED
Mayumi Q DilliardItalyAnna Fali NEW
Faith E SlusarskiFranceAnna Fali RENEWAL
Mayumi U WhobreyCanadaBernardo Dominic RENEWAL
Johnson N MaletIndiaOnyama Limba NEGOTIATION
Greenwood G KuskoItalyOnyama Limba NEGOTIATION
Leja S PoquetteCanadaIvan Magalhaes RENEWAL
Sinclair P FollerBrazilElwin Sharvill NEGOTIATION
Smith T FlosiIndiaBernardo Dominic NEGOTIATION
Jones M CaldareraRussiaElwin Sharvill RENEWAL
Jennifer Q InouyeSpainBernardo Dominic QUALIFIED
Morrow J RimFranceBernardo Dominic PROPOSAL
Arvin Z FigeroaCanadaAsiya Javayant QUALIFIED
Murillo U FerenczJapanIvan Magalhaes NEW
Mujtaba Y ChuiSpainOnyama Limba PROPOSAL
Frozen Columns
Name
Leon S Morasca
Greenwood J Rim
Deepesh A Whobrey
Cody I Ruta
Faith Z Albares
Aika E Schemmer
Johnson R Malet
Nicolas E Tollner
Misaki O Sergi
Cody V Rulapaugh
Darci A Venere
Cody F Saylors
Aruna D Nestle
Wickens Y Inouye
Alejandro Q Morasca
Jeanfrancois Z Schemmer
Wickens F Flosi
Salvatore M Amigon
Sinclair X Oldroyd
Jennifer S Waycott
Aditya G Gaucho
Ricardo X Amigon
Emily K Campain
Jefferson B Figeroa
Leja I Inouye
Murillo H Figeroa
Tony Y Caudy
Jefferson G Campain
Costa D Paprocki
Misaki S Darakjy
Morrow L Flosi
Wickens J Paprocki
Maisha Q Nicka
Ashley B Gaucho
Cody X Campain
Silvio X Nicka
Isabel F Maclead
Morrow E Morasca
Silvio L Slusarski
Jeanfrancois W Albares
Nicolas N Stockham
Mayumi D Tollner
Murillo R Ruta
Jeanfrancois Q Nicka
Jeanfrancois G Oldroyd
Aditya V Caudy
Silvio U Rim
Izzy W Nicka
Aditya R Rulapaugh
Mujtaba P Butt
IdCountryDate
1000United Kingdom2025-06-01
1001Italy2025-05-27
1002Italy2025-06-08
1003Germany2025-05-22
1004United Kingdom2025-06-05
1005Spain2025-06-02
1006Spain2025-06-04
1007Italy2025-05-17
1008Canada2025-05-27
1009India2025-05-25
1010Australia2025-06-11
1011Italy2025-06-09
1012Japan2025-06-04
1013Italy2025-06-03
1014Japan2025-06-15
1015Argentina2025-06-05
1016Germany2025-05-25
1017Argentina2025-06-09
1018Brazil2025-05-22
1019Canada2025-06-15
1020India2025-06-14
1021Australia2025-06-13
1022Argentina2025-05-24
1023Canada2025-05-27
1024United Kingdom2025-05-24
1025India2025-05-24
1026Brazil2025-05-30
1027India2025-05-23
1028United Kingdom2025-05-17
1029Australia2025-06-03
1030India2025-06-14
1031Japan2025-05-19
1032Russia2025-06-12
1033France2025-06-09
1034Russia2025-05-20
1035Argentina2025-06-09
1036Italy2025-06-12
1037Russia2025-06-06
1038Brazil2025-06-04
1039Brazil2025-05-20
1040Canada2025-05-22
1041Russia2025-06-09
1042France2025-05-18
1043Brazil2025-05-31
1044Italy2025-05-20
1045India2025-06-12
1046France2025-06-08
1047Argentina2025-06-10
1048Russia2025-05-27
1049Canada2025-06-08

On-Demand Data

NameIdCountryDate
Juan J Iturbide1000Japan2025-05-23
Octavia J Vocelka1001United Kingdom2025-05-17
Aruna A Shinko1002France2025-05-20
Julie H Bolognia1003Japan2025-05-19
Rodrigues D Chui1004Japan2025-06-08
Mayumi J Maclead1005Argentina2025-05-31
Maisha U Kolmetz1006France2025-05-25
Stacey N Gaucho1007Spain2025-06-04
Claire G Vocelka1008India2025-06-01
Adams J Marrier1009Australia2025-06-09
Izzy H Nestle1010India2025-06-03
Aika D Doe1011United Kingdom2025-05-25
Greenwood H Glick1012Argentina2025-05-29
Misaki F Marrier1013France2025-05-20
Cody L Oldroyd1014Germany2025-05-21
Leon H Campain1015Argentina2025-06-10
Salvatore U Stenseth1016Canada2025-06-07
Julie R Figeroa1017Japan2025-06-12
Aruna L Briddick1018India2025-05-29
Aika X Darakjy1019Spain2025-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues J MaletJapanAnna Fali QUALIFIED
Kaitlin A CaldareraItalyAnna Fali QUALIFIED
Nicolas V DarakjyRussiaXuxue Feng UNQUALIFIED
Aika Z GillianAustraliaOnyama Limba NEGOTIATION
Tony E KuskoIndiaStephen Shaw QUALIFIED
Jeanfrancois Q CaudyBrazilIoni Bowcher PROPOSAL
Murillo N AmigonCanadaElwin Sharvill PROPOSAL
Kaitlin N RimGermanyIoni Bowcher QUALIFIED
Kadeem K CaldareraGermanyBernardo Dominic NEGOTIATION
Izzy U CaldareraBrazilElwin Sharvill NEGOTIATION
Stacey U PaprockiSpainElwin Sharvill NEW
Tony T PaprockiGermanyStephen Shaw NEW
Adams S MorascaRussiaElwin Sharvill PROPOSAL
Ashley R PaprockiRussiaOnyama Limba UNQUALIFIED
Juan J InouyeItalyAsiya Javayant UNQUALIFIED
Misaki W RulapaughIndiaStephen Shaw UNQUALIFIED
Darci E FerenczItalyBernardo Dominic PROPOSAL
Rodrigues C VenereGermanyAmy Elsner RENEWAL
Darci A KolmetzUnited KingdomIoni Bowcher PROPOSAL
Stacey C MaletItalyElwin Sharvill RENEWAL
Misaki A PerinRussiaAnna Fali UNQUALIFIED
Leja W TollnerUnited KingdomXuxue Feng NEW
Deepesh T PaprockiCanadaStephen Shaw RENEWAL
Murillo A OldroydGermanyIoni Bowcher QUALIFIED
Tony M CaudyRussiaIvan Magalhaes NEGOTIATION
Aruna X FigeroaIndiaAmy Elsner NEW
Silvio T FollerCanadaAsiya Javayant UNQUALIFIED
Johnson O AlbaresGermanyXuxue Feng QUALIFIED
Smith Y BologniaRussiaElwin Sharvill PROPOSAL
Darci C ButtGermanyXuxue Feng UNQUALIFIED
Costa E FerenczRussiaIvan Magalhaes PROPOSAL
Izzy F GillianSpainAnna Fali PROPOSAL
Maisha X RimIndiaAmy Elsner PROPOSAL
Rodrigues Y AmigonArgentinaElwin Sharvill RENEWAL
Jennifer U FerenczUnited KingdomIvan Magalhaes NEGOTIATION
Tony G BologniaJapanElwin Sharvill NEW
Adams D WaycottIndiaStephen Shaw NEGOTIATION
Leon F IturbideCanadaAmy Elsner NEGOTIATION
Ashley M VenereIndiaBernardo Dominic UNQUALIFIED
Misaki K InouyeCanadaOnyama Limba 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>