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
Wickens J RulapaughSpainElwin Sharvill NEW
Arvin S WaycottJapanAmy Elsner NEW
Jeanfrancois V WhobreyAustraliaOnyama Limba UNQUALIFIED
Clifford W MarrierFranceAmy Elsner QUALIFIED
Emily G SergiAustraliaAnna Fali NEGOTIATION
Leon Z AlbaresSpainStephen Shaw UNQUALIFIED
Smith A FlosiItalyElwin Sharvill RENEWAL
Costa E ShinkoGermanyAsiya Javayant NEGOTIATION
Kaitlin P StockhamGermanyBernardo Dominic NEW
Kaitlin F MacleadIndiaAnna Fali RENEWAL
Claire O DilliardBrazilElwin Sharvill PROPOSAL
Chavez D OstroskySpainIvan Magalhaes NEW
Maria T RoysterFranceAsiya Javayant QUALIFIED
Ivar E RutaItalyOnyama Limba PROPOSAL
Costa L MacleadItalyIoni Bowcher PROPOSAL
Tony P GauchoJapanStephen Shaw RENEWAL
Clifford N AmigonGermanyElwin Sharvill NEGOTIATION
Mujtaba I GillianItalyIoni Bowcher NEGOTIATION
Mujtaba N SlusarskiBrazilAnna Fali QUALIFIED
Mayumi F FollerBrazilIvan Magalhaes UNQUALIFIED
Alejandro X AlbaresSpainAsiya Javayant PROPOSAL
Deepesh U FlosiAustraliaAmy Elsner PROPOSAL
Misaki Z SchemmerBrazilStephen Shaw QUALIFIED
Sinclair S GlickRussiaXuxue Feng RENEWAL
Morrow T FigeroaFranceAnna Fali NEW
Ricardo B ChuiItalyAnna Fali QUALIFIED
Smith L GlickBrazilAnna Fali PROPOSAL
Maria Q OldroydItalyOnyama Limba NEW
Jefferson Q StensethBrazilStephen Shaw NEW
Faith D PoquetteSpainXuxue Feng NEW
Ashley B AlbaresUnited KingdomXuxue Feng NEGOTIATION
Johnson K ButtAustraliaIoni Bowcher NEGOTIATION
Antonio N RimFranceOnyama Limba RENEWAL
Kaitlin D TollnerItalyElwin Sharvill NEGOTIATION
Sinclair P FigeroaFranceAnna Fali NEGOTIATION
James Y RimIndiaAnna Fali NEW
Stacey U WieserJapanAsiya Javayant PROPOSAL
Jones C StensethFranceStephen Shaw RENEWAL
Faith X SergiArgentinaIoni Bowcher RENEWAL
Octavia T ChuiItalyIvan Magalhaes QUALIFIED
Jennifer O WaycottRussiaAnna Fali NEW
Kadeem A MaletIndiaBernardo Dominic NEW
Stacey F FigeroaJapanXuxue Feng PROPOSAL
Faith K VenereCanadaOnyama Limba RENEWAL
Maria A IturbideJapanElwin Sharvill QUALIFIED
James V KuskoArgentinaElwin Sharvill PROPOSAL
Mujtaba S SlusarskiUnited KingdomAsiya Javayant NEGOTIATION
Misaki K GarufiGermanyXuxue Feng NEGOTIATION
Darci W PoquetteItalyIvan Magalhaes PROPOSAL
Maria C TollnerGermanyStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika P GillianCanadaStephen Shaw PROPOSAL
Misaki N CampainRussiaAnna Fali RENEWAL
Greenwood F NickaRussiaAmy Elsner UNQUALIFIED
Aditya U WhobreyJapanAmy Elsner NEGOTIATION
Arvin S AlbaresSpainStephen Shaw NEW
Claire B CaldareraBrazilIoni Bowcher QUALIFIED
Nicolas P RulapaughIndiaIoni Bowcher UNQUALIFIED
Octavia I AlbaresGermanyXuxue Feng UNQUALIFIED
Francesco N VenereJapanIvan Magalhaes NEGOTIATION
James Z WieserJapanIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams W KolmetzSpain2024-05-15Rangoni Of Florence RENEWAL81Elwin Sharvill
1001Mayumi Z KolmetzRussia2024-05-15Chemel, James L Cpa PROPOSAL16Amy Elsner
1002Stacey C FlosiItaly2024-05-24Printing Dimensions UNQUALIFIED48Elwin Sharvill
1003Wickens K BriddickRussia2024-05-19Rangoni Of Florence UNQUALIFIED45Onyama Limba
1004Aika I KolmetzIndia2024-05-25Chapman, Ross E Esq NEGOTIATION62Xuxue Feng
1005Francesco S OldroydAustralia2024-05-23Dorl, James J Esq UNQUALIFIED16Elwin Sharvill
1006Ricardo H BologniaAustralia2024-05-31King, Christopher A Esq NEW2Xuxue Feng
1007Julie A DilliardUnited Kingdom2024-05-25Feltz Printing Service QUALIFIED34Elwin Sharvill
1008Ricardo I SaylorsJapan2024-05-16Chemel, James L Cpa UNQUALIFIED83Amy Elsner
1009Greenwood V StensethSpain2024-05-25Buckley Miller Wright QUALIFIED63Anna Fali
1010Misaki W InouyeSpain2024-05-17Buckley Miller Wright RENEWAL24Onyama Limba
1011Costa F MacleadUnited Kingdom2024-05-11Truhlar And Truhlar Attys QUALIFIED20Ioni Bowcher
1012Kaitlin R CaudyAustralia2024-05-29Rousseaux, Michael Esq QUALIFIED79Elwin Sharvill
1013Juan B FigeroaFrance2024-05-27Truhlar And Truhlar Attys RENEWAL52Amy Elsner
1014Misaki Q BriddickIndia2024-06-01Morlong Associates PROPOSAL13Bernardo Dominic
1015Jones E MorascaItaly2024-05-13Chapman, Ross E Esq NEW86Asiya Javayant
1016Ivar A CaudyJapan2024-05-20Morlong Associates UNQUALIFIED33Asiya Javayant
1017Arvin K CaldareraGermany2024-05-07Commercial Press QUALIFIED71Ioni Bowcher
1018Ricardo T FerenczRussia2024-05-22Feiner Bros PROPOSAL13Onyama Limba
1019Deepesh Q FlosiArgentina2024-05-11Chapman, Ross E Esq QUALIFIED28Asiya Javayant
1020Julie M SchemmerBrazil2024-05-13Buckley Miller Wright NEGOTIATION80Anna Fali
1021Francesco C RutaAustralia2024-05-30Feiner Bros RENEWAL89Onyama Limba
1022Maisha F FollerUnited Kingdom2024-05-31Buckley Miller Wright PROPOSAL12Amy Elsner
1023Sinclair K MarrierUnited Kingdom2024-05-07Commercial Press NEW98Stephen Shaw
1024Juan H WaycottFrance2024-05-29Chanay, Jeffrey A Esq PROPOSAL68Stephen Shaw
1025Cody K FollerFrance2024-05-07Chanay, Jeffrey A Esq PROPOSAL17Bernardo Dominic
1026Antonio U BriddickItaly2024-05-16Rangoni Of Florence RENEWAL71Onyama Limba
1027Cody Q WhobreyItaly2024-05-27Buckley Miller Wright PROPOSAL59Onyama Limba
1028Darci W WieserIndia2024-05-28Rousseaux, Michael Esq RENEWAL42Stephen Shaw
1029Antonio I IturbideItaly2024-05-24Dorl, James J Esq PROPOSAL96Amy Elsner
1030Octavia K WhobreyItaly2024-05-19King, Christopher A Esq UNQUALIFIED49Onyama Limba
1031Ashley X AmigonFrance2024-05-15Printing Dimensions NEGOTIATION67Ioni Bowcher
1032Wickens T GillianCanada2024-05-14Chanay, Jeffrey A Esq UNQUALIFIED83Anna Fali
1033Smith N RoysterFrance2024-05-13Rousseaux, Michael Esq RENEWAL37Anna Fali
1034Cody M DilliardSpain2024-05-12Feltz Printing Service UNQUALIFIED99Stephen Shaw
1035Smith F SlusarskiItaly2024-05-03Feiner Bros NEGOTIATION12Xuxue Feng
1036Francesco D StockhamIndia2024-05-22Chapman, Ross E Esq UNQUALIFIED49Asiya Javayant
1037Antonio S KuskoAustralia2024-05-03Feltz Printing Service NEW44Anna Fali
1038Deepesh H MaletCanada2024-05-05Benton, John B Jr NEW58Onyama Limba
1039Antonio S SergiUnited Kingdom2024-05-16Feiner Bros QUALIFIED61Elwin Sharvill
1040Cody A CaldareraUnited Kingdom2024-05-14Chemel, James L Cpa RENEWAL31Asiya Javayant
1041Salvatore X WaycottAustralia2024-05-15Feltz Printing Service NEGOTIATION51Amy Elsner
1042Smith M FlosiJapan2024-05-20Benton, John B Jr UNQUALIFIED38Anna Fali
1043Greenwood X ChuiIndia2024-05-04Truhlar And Truhlar Attys NEGOTIATION10Xuxue Feng
1044Izzy Q FlosiIndia2024-05-15Truhlar And Truhlar Attys PROPOSAL67Xuxue Feng
1045Kadeem Y FigeroaGermany2024-05-19Commercial Press NEW18Asiya Javayant
1046Emily T DarakjyAustralia2024-05-18Printing Dimensions QUALIFIED5Xuxue Feng
1047Claire X GlickGermany2024-05-17Rousseaux, Michael Esq QUALIFIED94Amy Elsner
1048Stacey Q ShinkoAustralia2024-05-06Chanay, Jeffrey A Esq PROPOSAL75Stephen Shaw
1049Misaki P ShinkoBrazil2024-05-26Dorl, James J Esq NEGOTIATION9Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jennifer Y NickaJapanOnyama Limba RENEWAL
Sinclair H PoquetteBrazilAsiya Javayant UNQUALIFIED
Aruna F NickaArgentinaAmy Elsner RENEWAL
Murillo B BriddickCanadaXuxue Feng UNQUALIFIED
Ivar V CaudyAustraliaBernardo Dominic QUALIFIED
Smith T AmigonIndiaOnyama Limba NEGOTIATION
Darci W IturbideBrazilAnna Fali NEGOTIATION
Maria B WaycottSpainXuxue Feng NEGOTIATION
Maria G StensethJapanBernardo Dominic RENEWAL
Emily O NickaSpainIoni Bowcher QUALIFIED
Wickens N MaletRussiaElwin Sharvill NEGOTIATION
Adams H DoeGermanyAnna Fali QUALIFIED
Izzy G FigeroaBrazilAnna Fali RENEWAL
Aruna Y CaldareraAustraliaXuxue Feng PROPOSAL
Chavez E StockhamGermanyElwin Sharvill RENEWAL
Stacey O DilliardFranceElwin Sharvill QUALIFIED
Leja N RoysterRussiaElwin Sharvill NEGOTIATION
Kaitlin V RimUnited KingdomIvan Magalhaes QUALIFIED
Wickens T RimGermanyOnyama Limba PROPOSAL
Chavez O AmigonAustraliaAmy Elsner NEGOTIATION
Stacey L RoysterArgentinaAmy Elsner QUALIFIED
Claire J BriddickUnited KingdomOnyama Limba QUALIFIED
Maisha O FlosiSpainOnyama Limba NEW
Juan S MorascaGermanyElwin Sharvill UNQUALIFIED
Juan J SaylorsItalyIoni Bowcher NEGOTIATION
Salvatore U PoquetteJapanXuxue Feng NEGOTIATION
Silvio L AlbaresUnited KingdomOnyama Limba RENEWAL
Murillo A MorascaSpainXuxue Feng UNQUALIFIED
Smith W FigeroaCanadaXuxue Feng UNQUALIFIED
Julie X OstroskyItalyXuxue Feng QUALIFIED
James Z PerinBrazilAmy Elsner QUALIFIED
Octavia V ChuiSpainIoni Bowcher PROPOSAL
Emily V DarakjySpainStephen Shaw UNQUALIFIED
Adams W PerinFranceIvan Magalhaes NEW
Maria W PoquetteSpainElwin Sharvill NEGOTIATION
Murillo A DilliardGermanyAsiya Javayant QUALIFIED
Tony X DilliardUnited KingdomIoni Bowcher NEW
Silvio Y BologniaIndiaStephen Shaw RENEWAL
Salvatore I IturbideCanadaStephen Shaw QUALIFIED
James W GauchoSpainXuxue Feng RENEWAL
Maria N SergiIndiaAsiya Javayant RENEWAL
Claire T RoysterRussiaXuxue Feng NEGOTIATION
Misaki F StockhamRussiaBernardo Dominic NEGOTIATION
David Z GauchoRussiaAmy Elsner PROPOSAL
Mayumi O WaycottUnited KingdomIvan Magalhaes PROPOSAL
Salvatore D PoquetteCanadaElwin Sharvill NEGOTIATION
Kaitlin O GauchoAustraliaIvan Magalhaes RENEWAL
Faith B AmigonIndiaIoni Bowcher NEW
Francesco F DilliardSpainIvan Magalhaes PROPOSAL
Arvin L VocelkaUnited KingdomBernardo Dominic NEW
Frozen Columns
Name
Darci T Paprocki
Morrow V Morasca
Claire A Nestle
Cody Q Perin
Jones Z Royster
David B Flosi
Stacey Z Butt
Jones M Schemmer
Nicolas H Bolognia
Maria F Gillian
Misaki D Garufi
Jones E Tollner
Jones M Albares
Johnson J Chui
Alejandro R Doe
Wickens M Rim
Cody Q Venere
Clifford V Oldroyd
Aditya F Inouye
Ricardo T Kolmetz
Jones F Gaucho
Jefferson Q Garufi
Isabel W Briddick
Salvatore F Glick
Aruna E Foller
Munro Z Schemmer
Silvio N Albares
Mujtaba G Whobrey
Nicolas F Venere
Faith J Garufi
Leon Y Albares
Chavez K Perin
Darci B Gaucho
David A Campain
Francesco C Darakjy
Izzy B Bolognia
Isabel S Royster
Jennifer B Iturbide
Ricardo Q Chui
Aditya V Nestle
Ivar I Poquette
Deepesh C Ostrosky
Salvatore S Ruta
Sinclair J Saylors
Nicolas W Caldarera
Nicolas W Wieser
Misaki U Flosi
Jones H Campain
Aditya B Caldarera
Adams J Inouye
IdCountryDate
1000Canada2024-05-22
1001India2024-05-10
1002Spain2024-05-04
1003Germany2024-05-09
1004India2024-05-22
1005United Kingdom2024-05-11
1006Spain2024-05-27
1007Brazil2024-05-10
1008Japan2024-05-16
1009Japan2024-05-22
1010Brazil2024-05-19
1011Russia2024-05-03
1012France2024-05-15
1013India2024-05-21
1014Brazil2024-05-07
1015Germany2024-05-18
1016Japan2024-05-05
1017France2024-05-27
1018Canada2024-05-16
1019France2024-05-09
1020Brazil2024-05-30
1021Brazil2024-05-27
1022Argentina2024-05-31
1023Brazil2024-05-16
1024Canada2024-05-05
1025Spain2024-05-28
1026Brazil2024-05-23
1027Italy2024-05-19
1028Italy2024-05-12
1029Argentina2024-05-20
1030United Kingdom2024-05-06
1031Argentina2024-05-23
1032Japan2024-05-31
1033United Kingdom2024-05-06
1034Australia2024-05-12
1035Germany2024-05-26
1036Argentina2024-05-04
1037Japan2024-05-23
1038Brazil2024-05-18
1039Italy2024-05-26
1040Japan2024-05-22
1041Russia2024-05-04
1042United Kingdom2024-05-17
1043Japan2024-05-23
1044Italy2024-05-21
1045Italy2024-05-22
1046Canada2024-05-10
1047Italy2024-05-05
1048Japan2024-05-31
1049United Kingdom2024-05-17

On-Demand Data

NameIdCountryDate
Mujtaba N Venere1000Russia2024-05-29
Munro E Maclead1001Australia2024-05-22
Arvin A Caudy1002United Kingdom2024-06-01
Kaitlin W Sergi1003France2024-05-06
Alejandro U Chui1004Italy2024-05-14
Emily S Bolognia1005Russia2024-05-23
Ashley V Rulapaugh1006Canada2024-05-04
Kadeem O Garufi1007Canada2024-05-22
Izzy Y Royster1008Canada2024-05-19
Nicolas U Paprocki1009Russia2024-05-17
Chavez X Albares1010Canada2024-05-18
Johnson C Glick1011Spain2024-05-26
Rodrigues U Nicka1012Brazil2024-05-28
Stacey P Nestle1013Brazil2024-05-03
Emily F Venere1014Australia2024-05-06
Ashley B Slusarski1015Canada2024-05-23
Francesco X Caudy1016France2024-05-24
Ivar T Poquette1017Germany2024-05-17
Jones X Royster1018India2024-05-30
Emily P Venere1019Germany2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya O RoysterJapanAmy Elsner RENEWAL
Darci O AmigonJapanXuxue Feng PROPOSAL
Jones J DoeCanadaOnyama Limba NEW
Mayumi G GarufiSpainElwin Sharvill UNQUALIFIED
Maria C AlbaresJapanStephen Shaw UNQUALIFIED
Claire I KuskoBrazilAsiya Javayant PROPOSAL
Salvatore B NestleRussiaOnyama Limba NEW
Munro N NickaAustraliaStephen Shaw RENEWAL
Antonio K SaylorsSpainIvan Magalhaes UNQUALIFIED
Silvio P SchemmerJapanIvan Magalhaes NEW
Antonio H BologniaIndiaIvan Magalhaes UNQUALIFIED
Arvin J MorascaAustraliaIoni Bowcher NEGOTIATION
Stacey X RutaRussiaIoni Bowcher NEGOTIATION
Smith V NestleBrazilXuxue Feng NEGOTIATION
Adams E BriddickSpainElwin Sharvill QUALIFIED
Greenwood K OldroydAustraliaXuxue Feng PROPOSAL
Leja M RulapaughRussiaStephen Shaw QUALIFIED
Adams R SchemmerRussiaIvan Magalhaes PROPOSAL
Faith Y StensethIndiaAsiya Javayant PROPOSAL
Claire U RimItalyAnna Fali QUALIFIED
Tony C RulapaughBrazilAnna Fali UNQUALIFIED
Antonio Y PoquetteCanadaIvan Magalhaes QUALIFIED
Deepesh U KuskoGermanyStephen Shaw NEW
Leon L KolmetzIndiaOnyama Limba NEW
Jefferson M SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
Murillo O SchemmerArgentinaBernardo Dominic UNQUALIFIED
Misaki H NickaUnited KingdomIoni Bowcher NEGOTIATION
Smith B MaletCanadaXuxue Feng PROPOSAL
Clifford X FerenczJapanBernardo Dominic UNQUALIFIED
Murillo V FlosiFranceStephen Shaw QUALIFIED
Greenwood J MacleadAustraliaAsiya Javayant NEW
Izzy L DarakjyGermanyAmy Elsner QUALIFIED
Julie Z StockhamCanadaIoni Bowcher NEW
Julie B DilliardBrazilAnna Fali RENEWAL
Aditya Q MacleadRussiaAnna Fali RENEWAL
Francesco O AlbaresSpainIoni Bowcher QUALIFIED
Isabel D BowleyBrazilAnna Fali PROPOSAL
Murillo Z PaprockiRussiaOnyama Limba NEW
James U SlusarskiRussiaAmy Elsner PROPOSAL
Faith P FlosiIndiaAnna Fali 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>