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
Arvin G GlickFranceAmy Elsner NEW
Deepesh R FollerSpainOnyama Limba PROPOSAL
Maria U TollnerCanadaAsiya Javayant NEGOTIATION
Faith G FollerBrazilStephen Shaw PROPOSAL
Izzy P BriddickFranceElwin Sharvill PROPOSAL
Clifford B GlickAustraliaXuxue Feng QUALIFIED
Francesco V MarrierItalyXuxue Feng RENEWAL
Faith I KolmetzIndiaBernardo Dominic QUALIFIED
Jefferson U AmigonRussiaAnna Fali RENEWAL
Salvatore H GauchoJapanAnna Fali RENEWAL
Silvio Q TollnerSpainIvan Magalhaes PROPOSAL
Jefferson Y MaletAustraliaStephen Shaw NEW
Clifford A WieserUnited KingdomIoni Bowcher QUALIFIED
Tony P RimFranceAnna Fali PROPOSAL
Faith K SergiBrazilBernardo Dominic UNQUALIFIED
Cody M WhobreyRussiaAsiya Javayant PROPOSAL
Tony G MarrierJapanIoni Bowcher RENEWAL
Darci S SergiUnited KingdomElwin Sharvill PROPOSAL
Julie O InouyeIndiaIvan Magalhaes NEGOTIATION
Johnson F SlusarskiAustraliaAnna Fali NEGOTIATION
Isabel P AmigonAustraliaAnna Fali NEGOTIATION
Ivar B FlosiCanadaIoni Bowcher NEW
Leon W CaldareraBrazilXuxue Feng NEGOTIATION
Costa U FlosiBrazilOnyama Limba QUALIFIED
Darci X DoeUnited KingdomAsiya Javayant PROPOSAL
Greenwood I VenereItalyAsiya Javayant PROPOSAL
Emily J GarufiUnited KingdomElwin Sharvill UNQUALIFIED
Aika O CampainCanadaXuxue Feng NEW
Smith M SlusarskiCanadaIoni Bowcher RENEWAL
Jones T FigeroaCanadaAnna Fali RENEWAL
Maisha M MarrierArgentinaIoni Bowcher RENEWAL
Maisha Q SergiItalyIvan Magalhaes NEW
Rodrigues X KolmetzFranceAnna Fali PROPOSAL
Stacey G NestleUnited KingdomAnna Fali QUALIFIED
Jones L ShinkoItalyAmy Elsner NEGOTIATION
Deepesh S VenereAustraliaIoni Bowcher QUALIFIED
Rodrigues D RutaBrazilIoni Bowcher RENEWAL
Leon P BowleyBrazilIvan Magalhaes PROPOSAL
Silvio Q MacleadAustraliaBernardo Dominic NEGOTIATION
Rodrigues D SergiArgentinaAsiya Javayant NEGOTIATION
Ivar U ButtSpainAsiya Javayant QUALIFIED
Ivar P StensethCanadaAnna Fali RENEWAL
Arvin L FigeroaCanadaAnna Fali NEGOTIATION
Mayumi J MarrierFranceElwin Sharvill RENEWAL
Emily A FerenczBrazilOnyama Limba NEGOTIATION
Aditya C NestleIndiaBernardo Dominic QUALIFIED
Jeanfrancois L BowleyRussiaOnyama Limba PROPOSAL
Murillo B MorascaIndiaAnna Fali NEW
Smith X DilliardFranceStephen Shaw NEGOTIATION
Maisha T PoquetteBrazilXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Wickens O GillianItalyIoni Bowcher UNQUALIFIED
Aika J GarufiFranceOnyama Limba QUALIFIED
Aditya A WieserFranceIvan Magalhaes NEW
Francesco Z ShinkoJapanStephen Shaw QUALIFIED
Ivar E SchemmerIndiaXuxue Feng QUALIFIED
Misaki K MorascaCanadaAsiya Javayant PROPOSAL
Leja N MaletArgentinaElwin Sharvill UNQUALIFIED
Tony J DilliardRussiaAmy Elsner QUALIFIED
Nicolas B SaylorsIndiaBernardo Dominic NEW
Aditya U BologniaAustraliaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki L MorascaGermany2024-05-26King, Christopher A Esq NEGOTIATION94Onyama Limba
1001Antonio K WhobreyIndia2024-05-27Chemel, James L Cpa RENEWAL72Elwin Sharvill
1002Maria E GarufiRussia2024-05-29Benton, John B Jr UNQUALIFIED19Onyama Limba
1003Ashley M FerenczUnited Kingdom2024-06-18Printing Dimensions PROPOSAL54Asiya Javayant
1004Kaitlin P IturbideFrance2024-06-19Dorl, James J Esq NEGOTIATION26Asiya Javayant
1005Maisha K CaldareraArgentina2024-06-04Feiner Bros NEGOTIATION23Ioni Bowcher
1006Leon R BowleyGermany2024-05-23Chapman, Ross E Esq PROPOSAL57Ivan Magalhaes
1007Wickens X NestleCanada2024-06-15Rousseaux, Michael Esq UNQUALIFIED81Anna Fali
1008Emily C GarufiArgentina2024-06-07Printing Dimensions PROPOSAL79Stephen Shaw
1009Rodrigues M PaprockiSpain2024-06-05Feltz Printing Service NEGOTIATION14Onyama Limba
1010Leon V NickaJapan2024-06-04Dorl, James J Esq NEW55Anna Fali
1011David V PaprockiAustralia2024-06-05Chemel, James L Cpa NEGOTIATION40Ivan Magalhaes
1012Julie Q OstroskyArgentina2024-05-26Feltz Printing Service QUALIFIED69Stephen Shaw
1013Ricardo R NickaAustralia2024-06-12Printing Dimensions NEGOTIATION10Bernardo Dominic
1014Claire Q SaylorsIndia2024-06-03Chanay, Jeffrey A Esq NEGOTIATION64Elwin Sharvill
1015Mayumi J PerinCanada2024-06-18Printing Dimensions NEW63Asiya Javayant
1016Faith O BowleyFrance2024-06-14Dorl, James J Esq NEGOTIATION79Anna Fali
1017Faith G VenereSpain2024-06-13Feltz Printing Service UNQUALIFIED15Onyama Limba
1018Darci G MaletCanada2024-05-24Rangoni Of Florence PROPOSAL4Bernardo Dominic
1019Morrow L DilliardJapan2024-06-13Chanay, Jeffrey A Esq PROPOSAL77Xuxue Feng
1020Stacey L AmigonGermany2024-06-01King, Christopher A Esq QUALIFIED13Amy Elsner
1021Salvatore K GarufiGermany2024-05-28Benton, John B Jr RENEWAL82Bernardo Dominic
1022Nicolas M PaprockiRussia2024-06-15Chanay, Jeffrey A Esq QUALIFIED29Ivan Magalhaes
1023Aruna J ChuiCanada2024-05-31Chemel, James L Cpa RENEWAL70Amy Elsner
1024Silvio E WaycottBrazil2024-06-17Feltz Printing Service QUALIFIED72Bernardo Dominic
1025Silvio L MorascaBrazil2024-06-02Chemel, James L Cpa RENEWAL64Amy Elsner
1026Ashley I ButtArgentina2024-06-06Benton, John B Jr UNQUALIFIED42Ioni Bowcher
1027Leja Q OstroskySpain2024-06-06Feltz Printing Service RENEWAL73Onyama Limba
1028Cody X CaudyJapan2024-05-26Feltz Printing Service PROPOSAL94Stephen Shaw
1029Murillo V AmigonIndia2024-06-04Buckley Miller Wright NEW63Ioni Bowcher
1030Alejandro I OldroydRussia2024-06-13Dorl, James J Esq NEGOTIATION17Ioni Bowcher
1031Costa D OstroskyItaly2024-05-26Commercial Press PROPOSAL97Asiya Javayant
1032Adams M KuskoRussia2024-06-11Printing Dimensions PROPOSAL11Anna Fali
1033Kaitlin K PerinRussia2024-06-11Truhlar And Truhlar Attys QUALIFIED30Amy Elsner
1034Aruna Q SaylorsCanada2024-06-02Benton, John B Jr UNQUALIFIED4Onyama Limba
1035Johnson T GillianGermany2024-06-10Feiner Bros PROPOSAL4Anna Fali
1036Maria M KuskoRussia2024-05-27Printing Dimensions NEGOTIATION5Anna Fali
1037Arvin O ButtCanada2024-06-03Printing Dimensions NEW44Anna Fali
1038Kaitlin T MaletArgentina2024-05-30Feiner Bros NEW4Xuxue Feng
1039Jeanfrancois O DarakjyJapan2024-05-27Morlong Associates PROPOSAL8Xuxue Feng
1040Maria X VenereSpain2024-05-26Chapman, Ross E Esq QUALIFIED82Xuxue Feng
1041Stacey R VocelkaSpain2024-06-04Morlong Associates PROPOSAL4Stephen Shaw
1042Jones A RimIndia2024-06-03Chapman, Ross E Esq NEGOTIATION75Bernardo Dominic
1043Isabel I FigeroaArgentina2024-06-03King, Christopher A Esq UNQUALIFIED31Elwin Sharvill
1044Maisha O ShinkoGermany2024-06-13King, Christopher A Esq PROPOSAL21Anna Fali
1045Adams W GauchoRussia2024-05-23Morlong Associates PROPOSAL80Xuxue Feng
1046Izzy C VocelkaAustralia2024-06-15Rangoni Of Florence RENEWAL11Asiya Javayant
1047Jefferson D FollerAustralia2024-06-06Feiner Bros NEW40Amy Elsner
1048Aika H SaylorsRussia2024-05-26Feltz Printing Service NEGOTIATION16Elwin Sharvill
1049Jones U KolmetzArgentina2024-05-30Morlong Associates RENEWAL62Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Costa K RoysterItalyElwin Sharvill RENEWAL
Nicolas H RutaAustraliaAmy Elsner UNQUALIFIED
Nicolas P WhobreyBrazilStephen Shaw NEGOTIATION
Aika M VocelkaFranceBernardo Dominic QUALIFIED
Adams L DilliardRussiaStephen Shaw NEW
Isabel X ShinkoFranceIvan Magalhaes UNQUALIFIED
Morrow H WieserFranceIoni Bowcher RENEWAL
Emily V SchemmerIndiaAsiya Javayant RENEWAL
Nicolas P FollerSpainAsiya Javayant QUALIFIED
Cody D MorascaIndiaElwin Sharvill PROPOSAL
Faith R FlosiAustraliaIvan Magalhaes RENEWAL
Sinclair K BowleyUnited KingdomStephen Shaw NEW
Silvio P ShinkoItalyOnyama Limba QUALIFIED
Jeanfrancois B SaylorsJapanXuxue Feng RENEWAL
Chavez I FerenczFranceOnyama Limba QUALIFIED
Aika W KolmetzJapanAsiya Javayant RENEWAL
Claire Y BriddickCanadaXuxue Feng RENEWAL
Clifford M MacleadItalyOnyama Limba UNQUALIFIED
Emily H WieserGermanyStephen Shaw QUALIFIED
Isabel K ShinkoFranceOnyama Limba UNQUALIFIED
James A RoysterItalyBernardo Dominic PROPOSAL
Munro E MorascaFranceAnna Fali PROPOSAL
Maisha X WieserRussiaIvan Magalhaes NEGOTIATION
Silvio D KolmetzSpainIvan Magalhaes QUALIFIED
Jefferson T FollerAustraliaAsiya Javayant UNQUALIFIED
Murillo F StensethGermanyElwin Sharvill QUALIFIED
Salvatore M KuskoSpainOnyama Limba NEGOTIATION
Octavia N StockhamJapanAmy Elsner RENEWAL
Juan X StensethUnited KingdomIvan Magalhaes PROPOSAL
Juan J RulapaughCanadaIoni Bowcher UNQUALIFIED
Kaitlin B NickaIndiaBernardo Dominic QUALIFIED
Nicolas M RoysterRussiaIoni Bowcher NEW
Morrow D MorascaGermanyBernardo Dominic NEW
Cody T VenereArgentinaAnna Fali UNQUALIFIED
Nicolas G FollerSpainAmy Elsner NEGOTIATION
Costa P GillianIndiaBernardo Dominic NEGOTIATION
Tony X PerinRussiaIvan Magalhaes NEW
Jones I PerinBrazilIvan Magalhaes NEGOTIATION
Adams H FerenczGermanyAsiya Javayant PROPOSAL
Izzy V SergiFranceIoni Bowcher NEW
Greenwood A AmigonSpainAnna Fali RENEWAL
Ricardo D BologniaCanadaAsiya Javayant PROPOSAL
Adams O StensethFranceBernardo Dominic UNQUALIFIED
Deepesh L VenereBrazilXuxue Feng UNQUALIFIED
Stacey G TollnerFranceIvan Magalhaes NEGOTIATION
Francesco P PerinGermanyAsiya Javayant PROPOSAL
Misaki J VocelkaCanadaIoni Bowcher RENEWAL
Wickens V WaycottFranceAmy Elsner NEW
Faith P CampainIndiaIvan Magalhaes UNQUALIFIED
Salvatore H BriddickCanadaXuxue Feng NEGOTIATION
Frozen Columns
Name
Arvin I Caudy
Jennifer I Bowley
Nicolas W Darakjy
Deepesh M Maclead
Kadeem Y Iturbide
Darci X Vocelka
Wickens W Schemmer
Nicolas G Albares
Johnson O Morasca
Jeanfrancois K Sergi
Clifford T Whobrey
David I Nicka
Maria S Sergi
Antonio E Royster
Ricardo S Bowley
Claire C Wieser
Jeanfrancois C Whobrey
Maisha O Tollner
Wickens M Stockham
Rodrigues M Albares
Nicolas M Albares
Kaitlin A Kusko
Claire Y Schemmer
Jones W Schemmer
Clifford X Glick
Murillo O Foller
Faith A Dilliard
Jeanfrancois X Paprocki
Costa U Ostrosky
Kaitlin G Glick
Isabel M Briddick
Francesco T Glick
Maisha O Paprocki
Cody G Stockham
Johnson G Malet
Ashley E Figeroa
Jones F Caldarera
Kadeem L Kusko
Kaitlin B Campain
Silvio H Maclead
Aditya Y Caldarera
Ivar N Stockham
Izzy K Vocelka
Nicolas D Waycott
Maria D Gaucho
Wickens Z Caudy
Clifford A Flosi
Chavez H Caldarera
Leon I Morasca
Tony T Oldroyd
IdCountryDate
1000Germany2024-05-30
1001India2024-05-29
1002Canada2024-05-31
1003Argentina2024-06-11
1004France2024-06-21
1005France2024-06-17
1006India2024-05-27
1007India2024-06-10
1008Australia2024-05-31
1009France2024-05-26
1010Italy2024-05-28
1011Germany2024-06-15
1012France2024-06-04
1013Australia2024-06-18
1014Russia2024-06-06
1015Japan2024-06-21
1016Japan2024-05-26
1017Australia2024-05-27
1018Japan2024-06-02
1019Japan2024-06-15
1020Italy2024-06-18
1021Argentina2024-06-06
1022Spain2024-06-18
1023India2024-06-20
1024Italy2024-06-15
1025Brazil2024-06-16
1026Russia2024-06-05
1027Canada2024-06-05
1028Italy2024-06-04
1029Japan2024-06-15
1030Germany2024-06-12
1031Japan2024-06-13
1032Russia2024-05-30
1033Germany2024-06-03
1034India2024-05-24
1035Germany2024-06-13
1036Brazil2024-06-16
1037France2024-06-09
1038United Kingdom2024-06-08
1039Russia2024-06-07
1040United Kingdom2024-06-07
1041Spain2024-06-15
1042Japan2024-05-23
1043Brazil2024-06-11
1044Italy2024-06-20
1045India2024-06-08
1046India2024-06-01
1047Canada2024-05-23
1048Argentina2024-05-29
1049Argentina2024-06-03

On-Demand Data

NameIdCountryDate
Chavez P Amigon1000Canada2024-06-11
Jefferson A Schemmer1001Italy2024-06-18
Claire Y Schemmer1002United Kingdom2024-05-30
Francesco B Kolmetz1003Russia2024-05-24
Aika X Shinko1004Italy2024-06-07
Silvio F Chui1005Brazil2024-05-30
Arvin M Rim1006Spain2024-06-06
Aika A Nestle1007Russia2024-06-21
Leon U Chui1008Germany2024-06-13
Silvio W Inouye1009India2024-06-14
Rodrigues W Whobrey1010France2024-06-19
Stacey W Gaucho1011Russia2024-06-10
Alejandro C Royster1012Australia2024-06-20
Jones Q Poquette1013Spain2024-06-11
Tony C Ferencz1014Germany2024-06-08
James Q Wieser1015Argentina2024-05-31
Arvin K Kusko1016United Kingdom2024-06-12
Jeanfrancois M Ostrosky1017United Kingdom2024-06-15
Adams M Paprocki1018Spain2024-06-06
Maria N Venere1019Japan2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo V VocelkaRussiaBernardo Dominic RENEWAL
Greenwood N PerinJapanIvan Magalhaes QUALIFIED
Faith D NickaArgentinaIvan Magalhaes PROPOSAL
Wickens T GauchoBrazilElwin Sharvill NEW
Izzy V RulapaughUnited KingdomOnyama Limba UNQUALIFIED
Izzy U FlosiUnited KingdomOnyama Limba NEW
Mujtaba S FigeroaSpainAmy Elsner PROPOSAL
Clifford V FigeroaFranceBernardo Dominic NEW
Wickens I PaprockiCanadaAnna Fali NEGOTIATION
Rodrigues M AlbaresItalyIoni Bowcher NEW
Aika H FerenczItalyIvan Magalhaes NEW
Emily D MaletBrazilIvan Magalhaes PROPOSAL
Jones N GarufiSpainElwin Sharvill NEGOTIATION
Kaitlin R CaudyUnited KingdomXuxue Feng NEGOTIATION
Isabel J DoeIndiaIoni Bowcher RENEWAL
Leja O CampainItalyAsiya Javayant UNQUALIFIED
Deepesh U GillianUnited KingdomIoni Bowcher QUALIFIED
Julie Z MaletIndiaStephen Shaw UNQUALIFIED
Leja Q RoysterBrazilOnyama Limba RENEWAL
Ashley D PaprockiBrazilAmy Elsner UNQUALIFIED
Faith W InouyeGermanyAsiya Javayant QUALIFIED
Mayumi R IturbideJapanAnna Fali NEGOTIATION
Octavia J RoysterCanadaBernardo Dominic PROPOSAL
Ricardo M StockhamGermanyStephen Shaw RENEWAL
James M WieserArgentinaIvan Magalhaes PROPOSAL
Izzy K NestleIndiaAnna Fali NEGOTIATION
Kaitlin C VocelkaBrazilStephen Shaw UNQUALIFIED
Claire U MarrierGermanyAsiya Javayant QUALIFIED
Silvio J VenereUnited KingdomIvan Magalhaes NEW
James L FigeroaJapanXuxue Feng QUALIFIED
Mujtaba T GauchoCanadaStephen Shaw UNQUALIFIED
Greenwood J PerinAustraliaAnna Fali NEGOTIATION
Misaki F GlickArgentinaBernardo Dominic UNQUALIFIED
Julie H GlickArgentinaAsiya Javayant UNQUALIFIED
Salvatore T StockhamJapanXuxue Feng NEGOTIATION
Aika X ShinkoFranceIoni Bowcher NEW
Claire Z PaprockiRussiaIoni Bowcher PROPOSAL
Antonio L IturbideItalyXuxue Feng NEGOTIATION
Jones S MacleadAustraliaStephen Shaw NEGOTIATION
Emily L DarakjyUnited KingdomOnyama Limba NEW

<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>