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
Kaitlin B VenereFranceOnyama Limba RENEWAL
James F OstroskyItalyBernardo Dominic NEW
Maria S FigeroaBrazilAsiya Javayant PROPOSAL
Arvin Y BriddickCanadaBernardo Dominic NEGOTIATION
Mayumi H PaprockiAustraliaIoni Bowcher PROPOSAL
Wickens S KolmetzSpainOnyama Limba NEW
David U IturbideIndiaBernardo Dominic NEGOTIATION
Stacey W RimAustraliaIoni Bowcher NEW
Jennifer L NickaItalyXuxue Feng QUALIFIED
Cody R AlbaresUnited KingdomStephen Shaw UNQUALIFIED
Ivar Z StensethAustraliaIoni Bowcher QUALIFIED
Cody U OstroskyCanadaElwin Sharvill UNQUALIFIED
Izzy U AlbaresRussiaXuxue Feng RENEWAL
Salvatore N FerenczArgentinaAsiya Javayant NEGOTIATION
Maria V VenereIndiaOnyama Limba NEW
Deepesh U WaycottCanadaStephen Shaw NEGOTIATION
Alejandro T NickaUnited KingdomXuxue Feng NEW
Aruna V WieserBrazilAmy Elsner UNQUALIFIED
Morrow E KuskoUnited KingdomBernardo Dominic UNQUALIFIED
Wickens C ChuiSpainIoni Bowcher UNQUALIFIED
Tony Z NestleFranceElwin Sharvill RENEWAL
Greenwood I InouyeAustraliaElwin Sharvill QUALIFIED
Clifford F GlickBrazilAnna Fali RENEWAL
Izzy H RulapaughAustraliaXuxue Feng PROPOSAL
Kadeem W MaletUnited KingdomOnyama Limba UNQUALIFIED
Adams G IturbideRussiaAnna Fali PROPOSAL
Octavia L GauchoBrazilIvan Magalhaes NEW
Leja K NickaJapanIoni Bowcher NEGOTIATION
Isabel U FlosiBrazilOnyama Limba PROPOSAL
Francesco U DoeCanadaAmy Elsner PROPOSAL
Jennifer W RoysterSpainBernardo Dominic PROPOSAL
Morrow M StockhamIndiaAnna Fali NEGOTIATION
Ashley H CampainRussiaXuxue Feng NEW
Kadeem M AlbaresArgentinaXuxue Feng PROPOSAL
Silvio H MaletUnited KingdomOnyama Limba QUALIFIED
Kadeem Y VenereAustraliaOnyama Limba RENEWAL
Arvin P GlickBrazilStephen Shaw PROPOSAL
Arvin L RulapaughArgentinaOnyama Limba NEGOTIATION
Sinclair C RutaRussiaIoni Bowcher NEW
Emily O GillianRussiaIoni Bowcher QUALIFIED
Julie S PoquetteSpainOnyama Limba QUALIFIED
Rodrigues G RulapaughFranceIvan Magalhaes NEW
Kaitlin O RulapaughSpainAsiya Javayant NEGOTIATION
Ivar Y ShinkoJapanAnna Fali PROPOSAL
Mayumi Z FollerAustraliaIvan Magalhaes QUALIFIED
Ricardo L StensethArgentinaIoni Bowcher RENEWAL
Clifford D GlickRussiaIoni Bowcher NEGOTIATION
Maisha P RutaIndiaAmy Elsner NEW
Chavez F VocelkaCanadaIvan Magalhaes NEW
Jeanfrancois Z IturbideGermanyAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aika N StensethSpainXuxue Feng UNQUALIFIED
Misaki G PerinSpainAmy Elsner RENEWAL
Leja F CaldareraFranceIvan Magalhaes NEGOTIATION
Kaitlin G TollnerUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin K CaldareraBrazilBernardo Dominic NEGOTIATION
Maria O FollerCanadaOnyama Limba RENEWAL
Aruna K WhobreyUnited KingdomAnna Fali QUALIFIED
Emily S BologniaItalyAnna Fali NEW
Jeanfrancois K PaprockiUnited KingdomBernardo Dominic UNQUALIFIED
Cody F IturbideCanadaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin U SergiCanada2024-06-08Chanay, Jeffrey A Esq NEGOTIATION61Ioni Bowcher
1001Murillo U SlusarskiIndia2024-06-01Rousseaux, Michael Esq PROPOSAL10Anna Fali
1002David X CaudyFrance2024-06-13Feiner Bros PROPOSAL86Anna Fali
1003Octavia I WaycottGermany2024-06-11Chapman, Ross E Esq UNQUALIFIED30Stephen Shaw
1004Tony C CaldareraJapan2024-06-03Printing Dimensions PROPOSAL88Anna Fali
1005Mujtaba N ButtItaly2024-05-27Buckley Miller Wright PROPOSAL76Ioni Bowcher
1006Misaki J VenereArgentina2024-06-17Rousseaux, Michael Esq QUALIFIED80Stephen Shaw
1007Aika A WieserAustralia2024-06-21Chemel, James L Cpa NEW10Stephen Shaw
1008Maria F DoeGermany2024-06-23Morlong Associates QUALIFIED39Onyama Limba
1009Murillo Z AmigonJapan2024-06-20Chemel, James L Cpa NEW13Ioni Bowcher
1010Aruna W DoeGermany2024-06-22Dorl, James J Esq QUALIFIED69Ivan Magalhaes
1011Juan P AlbaresArgentina2024-06-02Chemel, James L Cpa NEW36Stephen Shaw
1012Julie G InouyeUnited Kingdom2024-06-22Rousseaux, Michael Esq UNQUALIFIED46Ivan Magalhaes
1013Adams D VenereGermany2024-06-08Rangoni Of Florence NEGOTIATION25Xuxue Feng
1014Tony V ButtItaly2024-06-09Commercial Press PROPOSAL58Elwin Sharvill
1015Julie T MaletGermany2024-06-17Truhlar And Truhlar Attys UNQUALIFIED9Stephen Shaw
1016Tony X StockhamAustralia2024-06-23Commercial Press NEW82Anna Fali
1017Leon D StockhamItaly2024-05-31Benton, John B Jr NEW99Ioni Bowcher
1018Emily A GlickSpain2024-06-21Rangoni Of Florence NEGOTIATION28Ivan Magalhaes
1019Ivar B GarufiItaly2024-06-07King, Christopher A Esq QUALIFIED40Elwin Sharvill
1020Mayumi T PoquetteAustralia2024-06-24Commercial Press NEGOTIATION50Ioni Bowcher
1021Isabel G MaletCanada2024-06-17King, Christopher A Esq NEGOTIATION58Stephen Shaw
1022Adams W MacleadJapan2024-06-23Feltz Printing Service RENEWAL3Ioni Bowcher
1023Aditya J PerinSpain2024-06-08Rousseaux, Michael Esq RENEWAL79Anna Fali
1024Clifford X CaldareraSpain2024-06-07Benton, John B Jr QUALIFIED19Onyama Limba
1025Octavia O OstroskySpain2024-06-11Feltz Printing Service QUALIFIED87Xuxue Feng
1026Morrow Y DoeGermany2024-06-14Feiner Bros RENEWAL77Ioni Bowcher
1027Kaitlin K GlickUnited Kingdom2024-05-31King, Christopher A Esq PROPOSAL85Onyama Limba
1028Mujtaba Q KolmetzCanada2024-06-01Truhlar And Truhlar Attys NEW85Onyama Limba
1029Julie J MaletAustralia2024-05-29King, Christopher A Esq PROPOSAL74Asiya Javayant
1030Emily B PoquetteJapan2024-06-20Rousseaux, Michael Esq QUALIFIED62Ioni Bowcher
1031Morrow O BologniaCanada2024-06-21Feiner Bros RENEWAL78Stephen Shaw
1032Jennifer T TollnerArgentina2024-05-31Chapman, Ross E Esq PROPOSAL10Elwin Sharvill
1033Cody U AlbaresCanada2024-06-06Truhlar And Truhlar Attys NEGOTIATION78Elwin Sharvill
1034Izzy C FollerItaly2024-06-13Chemel, James L Cpa UNQUALIFIED41Xuxue Feng
1035Leon V WhobreyUnited Kingdom2024-06-03Buckley Miller Wright PROPOSAL58Ivan Magalhaes
1036Francesco U CaldareraCanada2024-06-23Chanay, Jeffrey A Esq NEGOTIATION25Onyama Limba
1037Octavia Y FerenczGermany2024-05-29Printing Dimensions NEW19Amy Elsner
1038Leon Q SlusarskiJapan2024-06-23Morlong Associates QUALIFIED70Elwin Sharvill
1039Jeanfrancois D RutaCanada2024-06-08King, Christopher A Esq RENEWAL51Elwin Sharvill
1040Rodrigues H InouyeIndia2024-06-16Benton, John B Jr RENEWAL69Ioni Bowcher
1041Munro V NestleBrazil2024-06-24Printing Dimensions UNQUALIFIED32Onyama Limba
1042Jefferson P AmigonRussia2024-05-30Printing Dimensions NEW18Ioni Bowcher
1043Rodrigues F SlusarskiItaly2024-06-12Chanay, Jeffrey A Esq NEW25Anna Fali
1044Jones D BologniaJapan2024-06-10Benton, John B Jr NEGOTIATION4Ivan Magalhaes
1045James J MaletGermany2024-06-10Dorl, James J Esq RENEWAL87Xuxue Feng
1046Silvio C GauchoItaly2024-05-30Buckley Miller Wright NEW91Amy Elsner
1047Faith B OstroskyJapan2024-06-05Feiner Bros NEGOTIATION97Amy Elsner
1048Salvatore R DarakjySpain2024-06-21Chanay, Jeffrey A Esq RENEWAL48Anna Fali
1049Chavez K MaletJapan2024-06-12Benton, John B Jr QUALIFIED98Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Nicolas K NestleIndiaIoni Bowcher UNQUALIFIED
Izzy U DoeAustraliaIoni Bowcher QUALIFIED
Ashley H GauchoCanadaStephen Shaw UNQUALIFIED
Sinclair J BowleyJapanAsiya Javayant PROPOSAL
Murillo J FlosiAustraliaAnna Fali RENEWAL
Johnson Z PoquetteArgentinaAsiya Javayant UNQUALIFIED
Ricardo B VenereIndiaAsiya Javayant NEW
Rodrigues N IturbideIndiaIvan Magalhaes RENEWAL
Izzy N IturbideFranceIvan Magalhaes UNQUALIFIED
Deepesh H RoysterSpainXuxue Feng UNQUALIFIED
Mujtaba A OldroydAustraliaAmy Elsner UNQUALIFIED
Aruna S CaldareraGermanyElwin Sharvill NEW
Emily S BriddickCanadaAsiya Javayant NEW
Faith K PoquetteItalyAsiya Javayant QUALIFIED
Jefferson A GauchoArgentinaBernardo Dominic UNQUALIFIED
Jones V TollnerAustraliaStephen Shaw RENEWAL
Darci R RimGermanyBernardo Dominic UNQUALIFIED
Adams D SaylorsAustraliaAmy Elsner NEGOTIATION
Maria I SlusarskiIndiaStephen Shaw QUALIFIED
Clifford W FollerFranceXuxue Feng NEW
Ricardo K NickaItalyAsiya Javayant UNQUALIFIED
Kaitlin L BologniaArgentinaAnna Fali NEGOTIATION
Nicolas I WieserJapanElwin Sharvill NEGOTIATION
Mayumi L BriddickRussiaOnyama Limba NEGOTIATION
Wickens M ButtIndiaXuxue Feng NEW
Kadeem K OldroydBrazilOnyama Limba NEGOTIATION
Clifford S CampainBrazilAnna Fali UNQUALIFIED
Chavez P AlbaresJapanIvan Magalhaes PROPOSAL
Isabel T KuskoSpainBernardo Dominic NEGOTIATION
Wickens N PaprockiItalyOnyama Limba NEGOTIATION
Kaitlin Y WhobreyCanadaBernardo Dominic NEGOTIATION
Murillo W SaylorsRussiaOnyama Limba NEGOTIATION
Kaitlin F ShinkoAustraliaAnna Fali PROPOSAL
Aruna J BowleyAustraliaOnyama Limba UNQUALIFIED
Stacey S SlusarskiItalyIvan Magalhaes PROPOSAL
Alejandro J SaylorsIndiaOnyama Limba QUALIFIED
Mayumi F DarakjyItalyIoni Bowcher PROPOSAL
Munro N MarrierBrazilIoni Bowcher NEW
Murillo A OstroskyRussiaIoni Bowcher UNQUALIFIED
Murillo B ShinkoJapanAnna Fali RENEWAL
Aruna I MarrierAustraliaIvan Magalhaes QUALIFIED
Faith Q ChuiSpainStephen Shaw PROPOSAL
Murillo M WieserItalyAmy Elsner RENEWAL
Alejandro D SlusarskiIndiaAnna Fali PROPOSAL
Mujtaba A FerenczAustraliaAmy Elsner RENEWAL
Jones X ButtItalyAsiya Javayant RENEWAL
Faith D WieserBrazilAnna Fali QUALIFIED
Smith L IturbideUnited KingdomAmy Elsner PROPOSAL
Silvio K NestleCanadaIoni Bowcher QUALIFIED
Kaitlin I PoquetteFranceBernardo Dominic QUALIFIED
Frozen Columns
Name
Misaki C Tollner
Emily F Ostrosky
Greenwood N Oldroyd
Wickens B Maclead
Johnson I Inouye
Nicolas I Slusarski
Mujtaba S Doe
Deepesh U Doe
David Y Albares
Jefferson B Darakjy
James Y Rim
Chavez S Caudy
Ashley Y Saylors
Darci K Perin
Ivar K Maclead
David R Venere
Nicolas C Caldarera
David U Perin
Morrow Y Glick
Leon H Inouye
Deepesh H Doe
Greenwood E Ostrosky
Silvio M Albares
Jones F Vocelka
Isabel A Gillian
Jefferson E Rulapaugh
Mayumi W Ferencz
Julie V Malet
Faith G Gillian
James H Poquette
Morrow G Royster
Tony J Wieser
Julie H Tollner
Darci M Stockham
Greenwood L Albares
Munro R Dilliard
Smith T Sergi
Emily F Paprocki
Murillo I Caudy
Maria C Wieser
Silvio B Glick
Jefferson I Stenseth
Silvio X Foller
Aditya O Marrier
Ashley L Figeroa
Francesco L Butt
Maria A Stockham
Deepesh R Whobrey
Kaitlin G Albares
Faith P Marrier
IdCountryDate
1000United Kingdom2024-05-28
1001Japan2024-06-05
1002Australia2024-06-01
1003United Kingdom2024-06-23
1004Italy2024-06-05
1005Brazil2024-06-23
1006Argentina2024-06-18
1007Germany2024-06-07
1008Italy2024-06-20
1009United Kingdom2024-06-09
1010United Kingdom2024-06-10
1011Spain2024-06-15
1012Brazil2024-06-19
1013Canada2024-06-22
1014Argentina2024-05-28
1015United Kingdom2024-06-01
1016Germany2024-06-05
1017Germany2024-06-01
1018Russia2024-05-31
1019Japan2024-06-15
1020Japan2024-06-14
1021Spain2024-05-28
1022Brazil2024-06-11
1023France2024-05-30
1024India2024-06-24
1025Russia2024-06-08
1026Italy2024-06-16
1027Italy2024-06-09
1028Germany2024-06-20
1029Argentina2024-05-27
1030Spain2024-06-06
1031France2024-06-04
1032Italy2024-05-27
1033France2024-05-26
1034United Kingdom2024-06-02
1035France2024-06-05
1036France2024-06-08
1037Russia2024-06-01
1038Italy2024-06-01
1039Russia2024-06-13
1040France2024-06-11
1041Russia2024-06-03
1042India2024-06-09
1043India2024-06-03
1044Japan2024-05-27
1045Japan2024-05-26
1046Japan2024-05-28
1047Spain2024-06-24
1048India2024-06-21
1049Argentina2024-06-03

On-Demand Data

NameIdCountryDate
Arvin A Malet1000Canada2024-05-30
Salvatore R Darakjy1001Germany2024-06-20
Aruna D Dilliard1002Argentina2024-05-26
Aika O Oldroyd1003India2024-06-22
Munro R Gillian1004Brazil2024-06-21
Maria F Oldroyd1005Russia2024-06-23
Deepesh K Dilliard1006Italy2024-05-30
Deepesh Z Campain1007Japan2024-05-30
Maisha U Glick1008Canada2024-05-30
Aditya U Kolmetz1009India2024-06-12
Kaitlin M Malet1010Canada2024-06-14
Mayumi J Stenseth1011Brazil2024-06-24
Juan Y Malet1012Australia2024-06-15
Tony U Slusarski1013France2024-06-22
Arvin R Caudy1014Russia2024-05-28
Jefferson F Figeroa1015Italy2024-06-16
Wickens A Albares1016India2024-06-08
Leja I Foller1017United Kingdom2024-05-30
Jefferson J Ostrosky1018Argentina2024-06-10
Isabel K Stockham1019France2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika K FigeroaAustraliaOnyama Limba RENEWAL
Aika K ButtBrazilIoni Bowcher PROPOSAL
Ricardo G VocelkaUnited KingdomAnna Fali NEW
Costa Q FigeroaBrazilBernardo Dominic RENEWAL
Mayumi G MorascaAustraliaBernardo Dominic UNQUALIFIED
Greenwood O ButtUnited KingdomOnyama Limba PROPOSAL
Arvin Y NickaFranceAnna Fali PROPOSAL
Cody Q FigeroaSpainStephen Shaw RENEWAL
Nicolas W MacleadIndiaBernardo Dominic UNQUALIFIED
Jeanfrancois L FigeroaBrazilIvan Magalhaes UNQUALIFIED
David J ShinkoJapanOnyama Limba NEW
Maria H VocelkaAustraliaIvan Magalhaes RENEWAL
Cody K RimItalyStephen Shaw QUALIFIED
Claire C CampainIndiaElwin Sharvill QUALIFIED
Isabel O CampainItalyOnyama Limba RENEWAL
Stacey Q SaylorsFranceAmy Elsner RENEWAL
Octavia S MaletRussiaStephen Shaw PROPOSAL
Jones F SchemmerJapanStephen Shaw NEGOTIATION
Aika K NickaUnited KingdomOnyama Limba NEW
Aruna H FlosiRussiaXuxue Feng QUALIFIED
Kadeem S PoquetteBrazilIoni Bowcher RENEWAL
Faith X SaylorsArgentinaElwin Sharvill RENEWAL
Nicolas G CaudyArgentinaStephen Shaw RENEWAL
Morrow P GillianItalyAmy Elsner UNQUALIFIED
Izzy Q KuskoCanadaStephen Shaw QUALIFIED
Salvatore G IturbideRussiaIoni Bowcher NEW
Silvio L SaylorsItalyXuxue Feng NEW
Cody B BologniaUnited KingdomElwin Sharvill PROPOSAL
Isabel K MarrierArgentinaXuxue Feng RENEWAL
Adams Z CaudyArgentinaOnyama Limba QUALIFIED
Stacey P TollnerSpainXuxue Feng NEGOTIATION
Murillo F SlusarskiGermanyOnyama Limba UNQUALIFIED
Cody K VenereFranceXuxue Feng NEGOTIATION
Kadeem B MacleadGermanyBernardo Dominic NEW
Claire S MorascaUnited KingdomElwin Sharvill UNQUALIFIED
Ricardo D TollnerCanadaAnna Fali UNQUALIFIED
Deepesh M AlbaresCanadaAnna Fali RENEWAL
Ricardo H KolmetzFranceIoni Bowcher NEW
Isabel N DilliardJapanStephen Shaw NEW
Silvio Y MaletGermanyXuxue Feng 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>