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
Francesco X OldroydCanadaAnna Fali NEW
Adams X OstroskyJapanIvan Magalhaes PROPOSAL
Aika F DoeArgentinaAmy Elsner NEW
Rodrigues G FlosiIndiaBernardo Dominic PROPOSAL
Murillo H FerenczSpainBernardo Dominic NEGOTIATION
Rodrigues D GillianBrazilStephen Shaw UNQUALIFIED
Juan U RutaCanadaAmy Elsner UNQUALIFIED
Emily H DoeJapanOnyama Limba NEW
Maria W AlbaresFranceIoni Bowcher UNQUALIFIED
Mujtaba I DarakjyJapanOnyama Limba PROPOSAL
Ashley Y ButtFranceIvan Magalhaes NEW
Rodrigues T MarrierAustraliaIvan Magalhaes PROPOSAL
Silvio Q WieserGermanyAsiya Javayant UNQUALIFIED
Ivar F PaprockiGermanyIvan Magalhaes NEW
Rodrigues E BowleyBrazilIoni Bowcher PROPOSAL
Antonio K RimGermanyAmy Elsner UNQUALIFIED
Darci T WieserCanadaStephen Shaw RENEWAL
Francesco N VenereFranceAmy Elsner PROPOSAL
Johnson B AmigonBrazilStephen Shaw PROPOSAL
Jones L SergiArgentinaStephen Shaw PROPOSAL
Aruna T NickaSpainStephen Shaw UNQUALIFIED
Salvatore W FollerJapanXuxue Feng UNQUALIFIED
Jefferson Y GlickIndiaXuxue Feng PROPOSAL
Murillo G MarrierAustraliaOnyama Limba NEGOTIATION
Clifford D WhobreyRussiaOnyama Limba UNQUALIFIED
Costa L WieserFranceAnna Fali NEW
Stacey D BologniaJapanAsiya Javayant UNQUALIFIED
Maisha I MarrierRussiaAsiya Javayant QUALIFIED
Ashley E MaletUnited KingdomStephen Shaw PROPOSAL
Darci O PerinIndiaAmy Elsner NEW
Darci M WhobreyAustraliaAnna Fali UNQUALIFIED
Clifford Z SlusarskiIndiaXuxue Feng UNQUALIFIED
Nicolas G ChuiFranceOnyama Limba NEW
Aika Q ShinkoAustraliaAmy Elsner RENEWAL
Munro R StockhamJapanIoni Bowcher NEGOTIATION
Chavez B RoysterJapanBernardo Dominic UNQUALIFIED
Faith S SchemmerFranceXuxue Feng PROPOSAL
Morrow I RimItalyElwin Sharvill PROPOSAL
Johnson S RoysterSpainStephen Shaw UNQUALIFIED
Wickens R VocelkaFranceOnyama Limba NEW
Jeanfrancois U PaprockiGermanyAmy Elsner QUALIFIED
Adams E AmigonFranceXuxue Feng QUALIFIED
Jefferson W AmigonJapanAsiya Javayant UNQUALIFIED
Rodrigues I DarakjyUnited KingdomAnna Fali PROPOSAL
Mujtaba F PaprockiRussiaAnna Fali RENEWAL
Maisha J SaylorsAustraliaBernardo Dominic NEGOTIATION
Cody O GillianIndiaAnna Fali UNQUALIFIED
Darci U FlosiJapanElwin Sharvill PROPOSAL
Smith W AmigonCanadaAmy Elsner QUALIFIED
Leon R MacleadRussiaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Leja I WaycottGermanyIvan Magalhaes UNQUALIFIED
Faith G CaldareraUnited KingdomElwin Sharvill NEW
Greenwood L IturbideItalyStephen Shaw NEW
Maria C RoysterCanadaBernardo Dominic UNQUALIFIED
Kaitlin Y MorascaGermanyStephen Shaw RENEWAL
Salvatore R GarufiRussiaAmy Elsner UNQUALIFIED
Adams C PaprockiAustraliaXuxue Feng NEW
Morrow S PaprockiUnited KingdomIvan Magalhaes NEW
Munro E PerinArgentinaAsiya Javayant NEGOTIATION
Cody W MacleadSpainAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco K DarakjySpain2024-05-13Benton, John B Jr PROPOSAL41Onyama Limba
1001Costa U IturbideCanada2024-05-21Rousseaux, Michael Esq NEGOTIATION68Asiya Javayant
1002Antonio X BowleyFrance2024-05-16Printing Dimensions NEW23Xuxue Feng
1003Isabel N StensethIndia2024-05-04Rousseaux, Michael Esq PROPOSAL7Bernardo Dominic
1004Stacey B DoeBrazil2024-05-26Feiner Bros NEGOTIATION94Bernardo Dominic
1005Adams E WieserAustralia2024-05-08Truhlar And Truhlar Attys NEGOTIATION95Stephen Shaw
1006Jones D MaletSpain2024-05-19Chemel, James L Cpa RENEWAL19Amy Elsner
1007Sinclair Z GauchoBrazil2024-05-27Feltz Printing Service NEGOTIATION46Anna Fali
1008Sinclair Y BriddickRussia2024-05-04Dorl, James J Esq RENEWAL5Ioni Bowcher
1009Leja Q FigeroaUnited Kingdom2024-05-28Chapman, Ross E Esq UNQUALIFIED9Stephen Shaw
1010Ashley L RutaGermany2024-05-25Buckley Miller Wright RENEWAL85Asiya Javayant
1011Juan Y BowleyBrazil2024-05-15Feltz Printing Service NEW87Bernardo Dominic
1012Stacey W KolmetzJapan2024-05-16Truhlar And Truhlar Attys NEW55Xuxue Feng
1013Claire Z ChuiIndia2024-05-04Rousseaux, Michael Esq QUALIFIED95Ioni Bowcher
1014Julie I OldroydItaly2024-05-29Rangoni Of Florence UNQUALIFIED83Stephen Shaw
1015Chavez Z CaudySpain2024-05-08Dorl, James J Esq QUALIFIED41Onyama Limba
1016Jefferson U WaycottGermany2024-05-23Commercial Press UNQUALIFIED9Asiya Javayant
1017Jennifer A ChuiUnited Kingdom2024-05-24Rangoni Of Florence PROPOSAL69Ioni Bowcher
1018Rodrigues S OldroydAustralia2024-05-15Benton, John B Jr PROPOSAL10Ioni Bowcher
1019Mujtaba O RulapaughJapan2024-05-03Truhlar And Truhlar Attys NEGOTIATION10Amy Elsner
1020Jeanfrancois P DoeGermany2024-05-16King, Christopher A Esq NEGOTIATION30Asiya Javayant
1021Johnson J RimIndia2024-05-06Rangoni Of Florence NEGOTIATION37Ivan Magalhaes
1022Maria G OstroskySpain2024-05-03Feltz Printing Service UNQUALIFIED91Anna Fali
1023Clifford Q PaprockiBrazil2024-05-08Benton, John B Jr RENEWAL93Xuxue Feng
1024Aruna S SchemmerIndia2024-05-01Benton, John B Jr NEGOTIATION31Onyama Limba
1025Murillo R SergiRussia2024-05-25Buckley Miller Wright UNQUALIFIED67Bernardo Dominic
1026Jones E SlusarskiUnited Kingdom2024-05-12Feltz Printing Service NEW16Asiya Javayant
1027Misaki P CaldareraSpain2024-05-13Feiner Bros QUALIFIED4Asiya Javayant
1028Tony R ShinkoJapan2024-05-08Morlong Associates RENEWAL28Amy Elsner
1029Claire N GlickBrazil2024-05-14Benton, John B Jr RENEWAL56Anna Fali
1030Ivar W WhobreyAustralia2024-05-22Buckley Miller Wright RENEWAL8Onyama Limba
1031Nicolas P OldroydFrance2024-05-14Dorl, James J Esq QUALIFIED96Anna Fali
1032Antonio C NickaRussia2024-05-24Truhlar And Truhlar Attys QUALIFIED58Stephen Shaw
1033Maria H StensethGermany2024-05-12Buckley Miller Wright RENEWAL1Onyama Limba
1034Octavia T VocelkaItaly2024-05-26Feiner Bros UNQUALIFIED65Ioni Bowcher
1035Morrow L PerinUnited Kingdom2024-05-14Buckley Miller Wright NEW97Stephen Shaw
1036Jefferson A WieserSpain2024-05-20Commercial Press NEGOTIATION11Amy Elsner
1037Mayumi K PaprockiBrazil2024-05-12Buckley Miller Wright PROPOSAL12Xuxue Feng
1038Wickens S RulapaughBrazil2024-05-28Commercial Press RENEWAL46Stephen Shaw
1039Juan X PoquetteIndia2024-05-21King, Christopher A Esq NEGOTIATION28Amy Elsner
1040Kadeem T DoeArgentina2024-05-18Buckley Miller Wright RENEWAL59Amy Elsner
1041James J CampainGermany2024-05-02Feiner Bros PROPOSAL22Ivan Magalhaes
1042Isabel D InouyeFrance2024-05-11Benton, John B Jr PROPOSAL71Ioni Bowcher
1043Sinclair T GarufiFrance2024-05-21Chapman, Ross E Esq RENEWAL92Ivan Magalhaes
1044Mayumi S DoeItaly2024-05-09Chanay, Jeffrey A Esq RENEWAL32Ivan Magalhaes
1045Wickens N ShinkoGermany2024-05-21Chemel, James L Cpa RENEWAL61Stephen Shaw
1046Arvin W SergiGermany2024-05-08Rousseaux, Michael Esq UNQUALIFIED53Anna Fali
1047Aruna Y FerenczFrance2024-05-17Commercial Press NEW28Stephen Shaw
1048Salvatore S FlosiArgentina2024-05-17Commercial Press UNQUALIFIED91Onyama Limba
1049Smith T VenereJapan2024-05-06King, Christopher A Esq NEW65Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aruna Y SaylorsBrazilOnyama Limba NEW
Aditya E RimJapanOnyama Limba NEGOTIATION
Kaitlin Z SlusarskiAustraliaXuxue Feng NEW
Claire O SchemmerCanadaStephen Shaw RENEWAL
Francesco L RulapaughArgentinaAnna Fali UNQUALIFIED
Salvatore E SlusarskiJapanAsiya Javayant NEW
Maisha U TollnerRussiaXuxue Feng QUALIFIED
Salvatore O ChuiItalyXuxue Feng NEGOTIATION
Emily B BologniaFranceAmy Elsner QUALIFIED
Stacey E RoysterAustraliaAmy Elsner PROPOSAL
Aditya S BologniaJapanAnna Fali NEGOTIATION
Isabel P DilliardGermanyXuxue Feng NEGOTIATION
Aditya U ButtArgentinaXuxue Feng PROPOSAL
Faith V SlusarskiGermanyAnna Fali NEGOTIATION
Rodrigues F PoquetteCanadaBernardo Dominic PROPOSAL
Misaki K StockhamSpainBernardo Dominic NEGOTIATION
Kaitlin S DoeArgentinaOnyama Limba PROPOSAL
Isabel U CaldareraRussiaAnna Fali QUALIFIED
Claire S GauchoUnited KingdomBernardo Dominic NEGOTIATION
Octavia S ChuiCanadaOnyama Limba NEW
Ivar W RimSpainBernardo Dominic RENEWAL
Jefferson T WieserItalyBernardo Dominic NEW
Arvin B AlbaresJapanAmy Elsner NEGOTIATION
Adams K StockhamUnited KingdomXuxue Feng PROPOSAL
Adams V ButtSpainIvan Magalhaes UNQUALIFIED
Jones F FerenczBrazilAsiya Javayant PROPOSAL
Wickens S BriddickSpainAmy Elsner QUALIFIED
Mujtaba Y BowleyFranceBernardo Dominic NEW
Jennifer H CampainSpainXuxue Feng PROPOSAL
Darci F NickaCanadaOnyama Limba NEW
Stacey B FigeroaArgentinaBernardo Dominic NEW
Jefferson E AlbaresSpainBernardo Dominic NEW
Darci H RutaItalyAnna Fali PROPOSAL
Jones Q FigeroaIndiaElwin Sharvill NEGOTIATION
Octavia P RulapaughItalyIvan Magalhaes UNQUALIFIED
Leon G FlosiGermanyAnna Fali UNQUALIFIED
Jeanfrancois X MaletCanadaElwin Sharvill PROPOSAL
Mayumi N NestleCanadaXuxue Feng QUALIFIED
Tony Q AlbaresArgentinaElwin Sharvill RENEWAL
Sinclair Z FollerUnited KingdomAnna Fali NEW
Maria Y ShinkoFranceAnna Fali QUALIFIED
Leja U NestleJapanBernardo Dominic RENEWAL
Misaki R KuskoFranceAsiya Javayant NEGOTIATION
Faith O TollnerItalyElwin Sharvill PROPOSAL
David F SaylorsArgentinaAnna Fali RENEWAL
Juan B KuskoCanadaAnna Fali NEGOTIATION
Emily Q PaprockiSpainAsiya Javayant UNQUALIFIED
Jennifer R VenereRussiaXuxue Feng RENEWAL
Stacey B MaletItalyOnyama Limba QUALIFIED
Octavia R WaycottRussiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Johnson D Venere
Juan N Royster
Cody R Rim
Nicolas Y Rulapaugh
Clifford K Whobrey
Claire T Amigon
Jeanfrancois H Ferencz
Deepesh J Vocelka
Tony A Saylors
David L Garufi
Chavez L Whobrey
Kaitlin I Bowley
Cody G Nicka
Sinclair K Kusko
Salvatore R Shinko
Mayumi Q Gaucho
Misaki M Doe
Aditya T Wieser
Jennifer H Stockham
Sinclair T Poquette
Murillo K Nestle
Jefferson U Chui
Izzy G Perin
Ashley D Perin
Francesco B Rim
Greenwood U Inouye
Kaitlin M Tollner
Maria V Amigon
Ricardo Q Poquette
Jeanfrancois W Iturbide
Darci Z Shinko
Munro T Tollner
Francesco C Royster
Isabel A Caldarera
Arvin D Butt
Salvatore K Royster
Emily W Malet
Darci Y Briddick
Stacey G Gaucho
Leon N Butt
Maisha U Malet
Greenwood H Slusarski
Jeanfrancois I Dilliard
Murillo R Vocelka
Leja M Sergi
Leja I Rim
Deepesh K Nicka
Cody Y Gillian
Deepesh M Nicka
Mayumi R Nicka
IdCountryDate
1000United Kingdom2024-05-28
1001Argentina2024-05-09
1002Spain2024-05-06
1003Germany2024-05-12
1004Brazil2024-05-26
1005India2024-05-08
1006Russia2024-05-12
1007Australia2024-05-12
1008United Kingdom2024-05-05
1009Italy2024-05-08
1010Argentina2024-05-13
1011India2024-05-26
1012India2024-05-16
1013Brazil2024-04-30
1014France2024-05-24
1015India2024-05-19
1016Spain2024-05-27
1017Russia2024-05-09
1018Argentina2024-05-07
1019France2024-05-04
1020Spain2024-05-17
1021Spain2024-05-05
1022Japan2024-04-30
1023Canada2024-05-04
1024Spain2024-05-29
1025Canada2024-05-20
1026Canada2024-05-01
1027India2024-05-04
1028Italy2024-05-23
1029United Kingdom2024-05-28
1030Russia2024-05-14
1031Argentina2024-05-11
1032France2024-05-26
1033Spain2024-05-08
1034Spain2024-05-07
1035Canada2024-04-30
1036Canada2024-05-14
1037Argentina2024-05-01
1038Italy2024-05-05
1039Russia2024-05-06
1040India2024-05-21
1041Germany2024-05-04
1042Brazil2024-05-16
1043Italy2024-05-13
1044Brazil2024-05-09
1045India2024-05-25
1046Russia2024-05-16
1047Russia2024-05-15
1048Brazil2024-05-21
1049Germany2024-05-24

On-Demand Data

NameIdCountryDate
Costa I Rim1000United Kingdom2024-05-07
Julie H Glick1001India2024-05-06
James I Schemmer1002France2024-05-15
Silvio E Stenseth1003Germany2024-05-15
Chavez P Bowley1004India2024-05-15
Murillo Z Venere1005Russia2024-05-07
Jennifer R Oldroyd1006United Kingdom2024-05-01
Juan Y Stockham1007Argentina2024-05-24
Chavez I Inouye1008United Kingdom2024-05-20
Munro N Butt1009India2024-05-14
Sinclair W Kusko1010Germany2024-05-17
Emily Z Garufi1011Canada2024-05-16
Aditya O Whobrey1012Argentina2024-05-11
Alejandro I Slusarski1013United Kingdom2024-05-21
Deepesh E Stockham1014Australia2024-05-17
Stacey N Nestle1015India2024-04-30
David J Poquette1016Japan2024-05-05
Deepesh T Iturbide1017India2024-05-03
Greenwood R Gaucho1018Brazil2024-05-25
Juan P Foller1019Spain2024-05-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony K VenereArgentinaAnna Fali QUALIFIED
Isabel N OstroskyUnited KingdomBernardo Dominic QUALIFIED
Tony P PoquetteFranceXuxue Feng UNQUALIFIED
Misaki O AmigonSpainStephen Shaw NEGOTIATION
Claire X OstroskyArgentinaXuxue Feng QUALIFIED
Adams U VocelkaUnited KingdomAnna Fali QUALIFIED
Faith W GarufiJapanAmy Elsner NEGOTIATION
Wickens I VocelkaGermanyStephen Shaw RENEWAL
Smith P WieserJapanAsiya Javayant NEGOTIATION
Morrow P MaletArgentinaAmy Elsner UNQUALIFIED
Jeanfrancois H CaudySpainStephen Shaw NEW
Kadeem M IturbideAustraliaAmy Elsner UNQUALIFIED
Alejandro T CaldareraIndiaIoni Bowcher UNQUALIFIED
Aika J CaldareraFranceElwin Sharvill RENEWAL
Jones H GarufiJapanOnyama Limba UNQUALIFIED
Morrow L RulapaughSpainIoni Bowcher PROPOSAL
Smith A GarufiItalyOnyama Limba QUALIFIED
Aika K InouyeSpainAsiya Javayant PROPOSAL
Misaki G RimIndiaElwin Sharvill QUALIFIED
Cody C SergiJapanXuxue Feng NEGOTIATION
Jeanfrancois J FerenczGermanyStephen Shaw NEW
Claire B VocelkaBrazilAnna Fali NEGOTIATION
Munro P FlosiItalyIvan Magalhaes NEW
Maria D RutaRussiaBernardo Dominic RENEWAL
Adams L AmigonSpainAmy Elsner NEW
Ashley D GillianArgentinaStephen Shaw NEGOTIATION
Adams G MaletGermanyAmy Elsner NEGOTIATION
Jennifer D BowleyIndiaElwin Sharvill RENEWAL
Jennifer N IturbideRussiaXuxue Feng UNQUALIFIED
Chavez R AlbaresFranceAsiya Javayant UNQUALIFIED
Izzy H IturbideUnited KingdomStephen Shaw RENEWAL
Wickens K InouyeItalyIoni Bowcher NEGOTIATION
Claire Y ChuiAustraliaAsiya Javayant UNQUALIFIED
Misaki Y SlusarskiIndiaStephen Shaw NEW
Clifford S FlosiAustraliaIoni Bowcher RENEWAL
Clifford G VocelkaJapanAnna Fali NEW
Rodrigues X FollerBrazilAsiya Javayant UNQUALIFIED
Emily S WaycottAustraliaBernardo Dominic RENEWAL
David Q BologniaArgentinaIvan Magalhaes NEGOTIATION
Isabel C DoeSpainIvan Magalhaes 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>