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
Aika F PerinUnited KingdomIoni Bowcher RENEWAL
Aika D MaletItalyAsiya Javayant PROPOSAL
Maria Z AlbaresJapanElwin Sharvill QUALIFIED
Cody H RulapaughAustraliaOnyama Limba NEW
Kaitlin O SchemmerFranceIvan Magalhaes PROPOSAL
Alejandro S IturbideIndiaAmy Elsner UNQUALIFIED
Maisha Y FollerIndiaAsiya Javayant UNQUALIFIED
Costa P SchemmerJapanAnna Fali NEW
Alejandro P OldroydJapanIoni Bowcher UNQUALIFIED
Darci A AmigonSpainAsiya Javayant NEW
Arvin M ChuiFranceElwin Sharvill UNQUALIFIED
Stacey X OstroskyArgentinaElwin Sharvill QUALIFIED
Maisha S VocelkaAustraliaXuxue Feng RENEWAL
Emily Y VocelkaCanadaIvan Magalhaes NEW
Kadeem N RimAustraliaAsiya Javayant UNQUALIFIED
Kadeem Y ChuiRussiaElwin Sharvill NEGOTIATION
Francesco C BriddickAustraliaAnna Fali PROPOSAL
Rodrigues W AmigonItalyStephen Shaw QUALIFIED
Ivar Q AmigonFranceStephen Shaw PROPOSAL
Jefferson M FollerArgentinaXuxue Feng RENEWAL
Maisha E BowleySpainStephen Shaw NEGOTIATION
Jennifer K BriddickSpainElwin Sharvill PROPOSAL
Mujtaba R SlusarskiRussiaIvan Magalhaes PROPOSAL
Mujtaba X SaylorsUnited KingdomAsiya Javayant NEGOTIATION
Jennifer S OstroskyUnited KingdomAsiya Javayant UNQUALIFIED
Wickens V NickaRussiaBernardo Dominic RENEWAL
Cody X MaletCanadaOnyama Limba PROPOSAL
Sinclair S CaldareraUnited KingdomAmy Elsner PROPOSAL
Clifford A GillianCanadaStephen Shaw NEGOTIATION
Greenwood E StensethArgentinaXuxue Feng UNQUALIFIED
Cody T FollerAustraliaXuxue Feng NEW
Ivar B WieserAustraliaAnna Fali NEW
Mayumi M IturbideAustraliaStephen Shaw NEW
Salvatore G DilliardAustraliaOnyama Limba NEW
Maria F InouyeBrazilXuxue Feng NEW
Emily G BologniaAustraliaElwin Sharvill NEGOTIATION
Mujtaba A WaycottSpainXuxue Feng NEGOTIATION
Morrow C BriddickCanadaOnyama Limba RENEWAL
Maria B DilliardArgentinaOnyama Limba NEGOTIATION
Wickens P WieserIndiaIoni Bowcher RENEWAL
Murillo T SergiBrazilIoni Bowcher PROPOSAL
Juan G CaldareraItalyIvan Magalhaes NEW
Cody P GlickItalyAmy Elsner NEGOTIATION
Darci E SchemmerGermanyAmy Elsner UNQUALIFIED
Leon X OldroydUnited KingdomXuxue Feng QUALIFIED
Misaki Y OldroydJapanElwin Sharvill UNQUALIFIED
Kaitlin D InouyeItalyBernardo Dominic UNQUALIFIED
Deepesh R TollnerItalyOnyama Limba UNQUALIFIED
Johnson E DarakjyArgentinaXuxue Feng NEW
Kadeem T MorascaGermanyStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Silvio D CaldareraCanadaIvan Magalhaes NEGOTIATION
Murillo R ChuiSpainElwin Sharvill QUALIFIED
Murillo O StensethRussiaIoni Bowcher NEW
Mujtaba K VenereSpainAsiya Javayant NEGOTIATION
Francesco J CaudyJapanIoni Bowcher RENEWAL
Claire H MaletUnited KingdomIvan Magalhaes RENEWAL
Jefferson R GlickGermanyAsiya Javayant UNQUALIFIED
Ashley L CampainAustraliaBernardo Dominic PROPOSAL
Jeanfrancois U AmigonCanadaOnyama Limba QUALIFIED
Mujtaba W GauchoIndiaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem B AmigonArgentina2024-05-26Feltz Printing Service NEW67Amy Elsner
1001Maisha Q PoquetteCanada2024-06-05Rangoni Of Florence PROPOSAL64Asiya Javayant
1002Jeanfrancois D RulapaughJapan2024-06-07Chemel, James L Cpa PROPOSAL5Anna Fali
1003Morrow W CampainUnited Kingdom2024-05-22Feltz Printing Service PROPOSAL0Xuxue Feng
1004Misaki N DilliardArgentina2024-06-05Chemel, James L Cpa PROPOSAL76Anna Fali
1005Greenwood S NickaArgentina2024-06-09Feiner Bros QUALIFIED92Anna Fali
1006Izzy C GlickUnited Kingdom2024-06-03Commercial Press PROPOSAL84Stephen Shaw
1007Clifford T WieserArgentina2024-06-12Truhlar And Truhlar Attys RENEWAL95Amy Elsner
1008Darci A DarakjyArgentina2024-05-26Morlong Associates NEW0Onyama Limba
1009Aruna N MorascaFrance2024-05-30Benton, John B Jr NEW28Bernardo Dominic
1010Leon E MarrierRussia2024-05-22Truhlar And Truhlar Attys NEGOTIATION37Asiya Javayant
1011Chavez E StockhamItaly2024-06-10Benton, John B Jr PROPOSAL86Elwin Sharvill
1012Kaitlin E MarrierIndia2024-05-21Rangoni Of Florence PROPOSAL67Stephen Shaw
1013Kaitlin R BriddickBrazil2024-06-04Feiner Bros NEGOTIATION93Bernardo Dominic
1014Adams N DoeSpain2024-05-20Dorl, James J Esq NEGOTIATION59Asiya Javayant
1015Jefferson B FigeroaCanada2024-06-03Truhlar And Truhlar Attys NEW79Ivan Magalhaes
1016Leon Q FlosiItaly2024-06-13Buckley Miller Wright NEGOTIATION6Ioni Bowcher
1017Mayumi L FerenczCanada2024-05-27Truhlar And Truhlar Attys QUALIFIED47Bernardo Dominic
1018Leja P PaprockiItaly2024-05-26Commercial Press QUALIFIED41Anna Fali
1019Kadeem Y AlbaresIndia2024-06-09Chanay, Jeffrey A Esq NEGOTIATION94Xuxue Feng
1020Leja Z NestleItaly2024-05-26Commercial Press UNQUALIFIED94Bernardo Dominic
1021James U GarufiIndia2024-05-21Dorl, James J Esq QUALIFIED96Xuxue Feng
1022Faith W MarrierUnited Kingdom2024-05-25Chapman, Ross E Esq NEW34Ivan Magalhaes
1023Izzy X WaycottArgentina2024-05-29Chanay, Jeffrey A Esq QUALIFIED87Ioni Bowcher
1024Jennifer N AlbaresUnited Kingdom2024-06-04Chapman, Ross E Esq RENEWAL74Ioni Bowcher
1025Morrow K KolmetzRussia2024-06-05Feltz Printing Service PROPOSAL49Amy Elsner
1026Mayumi D OldroydGermany2024-06-02Buckley Miller Wright PROPOSAL36Ivan Magalhaes
1027Aruna G VocelkaGermany2024-05-24Chanay, Jeffrey A Esq PROPOSAL80Ivan Magalhaes
1028Mayumi Z OstroskySpain2024-06-01Commercial Press UNQUALIFIED24Anna Fali
1029Kaitlin R OldroydSpain2024-05-22Feltz Printing Service RENEWAL79Anna Fali
1030Deepesh F CaldareraRussia2024-06-17Buckley Miller Wright UNQUALIFIED73Onyama Limba
1031Jones R CaldareraGermany2024-06-09Buckley Miller Wright PROPOSAL88Amy Elsner
1032Antonio V BriddickRussia2024-06-11Feiner Bros QUALIFIED22Ioni Bowcher
1033Aika H GlickGermany2024-06-13Rousseaux, Michael Esq PROPOSAL98Xuxue Feng
1034Isabel F GlickCanada2024-06-17Feltz Printing Service UNQUALIFIED41Xuxue Feng
1035Darci C MaletItaly2024-05-27Morlong Associates RENEWAL83Asiya Javayant
1036Faith B FlosiSpain2024-05-30King, Christopher A Esq UNQUALIFIED94Stephen Shaw
1037Clifford W SaylorsRussia2024-06-08Buckley Miller Wright NEGOTIATION14Ivan Magalhaes
1038Tony W ChuiItaly2024-05-31Chanay, Jeffrey A Esq NEW23Onyama Limba
1039Salvatore R TollnerCanada2024-06-17Commercial Press NEGOTIATION49Onyama Limba
1040Maisha G VocelkaBrazil2024-06-05Feiner Bros NEW26Ivan Magalhaes
1041Morrow J VocelkaSpain2024-06-07Chemel, James L Cpa NEW93Anna Fali
1042Francesco Z MaletGermany2024-06-06Feiner Bros PROPOSAL13Bernardo Dominic
1043Antonio D PerinIndia2024-05-31Truhlar And Truhlar Attys NEGOTIATION68Stephen Shaw
1044Costa U SchemmerRussia2024-06-04Chanay, Jeffrey A Esq QUALIFIED69Bernardo Dominic
1045Maisha D NestleUnited Kingdom2024-05-23Buckley Miller Wright PROPOSAL34Asiya Javayant
1046Jones G MaletRussia2024-05-19Feiner Bros PROPOSAL58Bernardo Dominic
1047Leon I GauchoArgentina2024-05-25King, Christopher A Esq NEW21Stephen Shaw
1048Mayumi Y SaylorsJapan2024-05-29Chemel, James L Cpa RENEWAL44Anna Fali
1049Leja V MarrierCanada2024-06-17Rousseaux, Michael Esq NEGOTIATION97Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Maisha R SaylorsUnited KingdomAsiya Javayant QUALIFIED
Costa B KolmetzGermanyBernardo Dominic PROPOSAL
Arvin D WaycottSpainIvan Magalhaes NEW
Jennifer M FerenczBrazilIvan Magalhaes RENEWAL
Johnson S RulapaughFranceStephen Shaw NEGOTIATION
Ivar O BowleySpainAsiya Javayant UNQUALIFIED
Misaki J FlosiRussiaAsiya Javayant RENEWAL
Maisha I GlickIndiaBernardo Dominic NEW
Nicolas N CaudyBrazilElwin Sharvill UNQUALIFIED
Costa L BriddickSpainAmy Elsner QUALIFIED
Juan M CampainBrazilAmy Elsner QUALIFIED
Isabel P RutaSpainOnyama Limba UNQUALIFIED
Juan Q BologniaArgentinaBernardo Dominic PROPOSAL
Misaki I NestleJapanXuxue Feng NEW
Julie V GauchoRussiaStephen Shaw PROPOSAL
Murillo I StockhamAustraliaIoni Bowcher NEW
Salvatore L RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Leon M WieserJapanOnyama Limba RENEWAL
Octavia X StockhamIndiaIoni Bowcher NEW
Tony S NickaCanadaElwin Sharvill QUALIFIED
Faith S GlickRussiaElwin Sharvill UNQUALIFIED
Ashley X PaprockiUnited KingdomStephen Shaw QUALIFIED
Julie J MaletJapanAsiya Javayant RENEWAL
Aruna H PoquetteRussiaIoni Bowcher NEW
Faith Q ChuiAustraliaAnna Fali RENEWAL
Sinclair N PoquetteGermanyElwin Sharvill NEGOTIATION
James I ChuiUnited KingdomOnyama Limba RENEWAL
Julie V AmigonItalyAsiya Javayant QUALIFIED
Juan D DilliardCanadaAnna Fali PROPOSAL
Greenwood L StensethGermanyStephen Shaw PROPOSAL
Antonio P CaldareraBrazilAmy Elsner QUALIFIED
Mujtaba L NickaAustraliaIvan Magalhaes NEW
Izzy S RimBrazilStephen Shaw UNQUALIFIED
Salvatore D NickaUnited KingdomIvan Magalhaes QUALIFIED
Jones D MaletAustraliaAmy Elsner NEW
Darci N FlosiIndiaElwin Sharvill NEW
Jones L GillianAustraliaIoni Bowcher UNQUALIFIED
Izzy X SaylorsGermanyStephen Shaw QUALIFIED
Clifford R ChuiRussiaAnna Fali NEW
Stacey Q MaletFranceIoni Bowcher UNQUALIFIED
Aditya Y SchemmerBrazilIvan Magalhaes UNQUALIFIED
Rodrigues K DarakjyUnited KingdomIvan Magalhaes RENEWAL
Antonio M VenereArgentinaIoni Bowcher RENEWAL
Wickens C BologniaFranceIoni Bowcher NEW
Morrow D OstroskyGermanyIvan Magalhaes PROPOSAL
Aruna C BriddickBrazilOnyama Limba NEW
David I ShinkoArgentinaXuxue Feng UNQUALIFIED
Maisha I ChuiBrazilStephen Shaw UNQUALIFIED
Maria Q CaudyArgentinaAmy Elsner NEW
Maria T ButtFranceBernardo Dominic RENEWAL
Frozen Columns
Name
Aruna N Poquette
Maria Q Marrier
Octavia S Dilliard
Izzy Y Tollner
Sinclair B Campain
Ivar N Gaucho
Clifford B Malet
Antonio L Darakjy
Aditya D Briddick
Morrow Q Amigon
Mayumi Y Doe
Deepesh Z Nicka
Sinclair V Oldroyd
Ivar I Campain
Arvin N Nicka
Deepesh J Nicka
Chavez E Gaucho
Aruna C Doe
Deepesh M Tollner
Jeanfrancois P Rim
Aruna K Kolmetz
James Y Garufi
Antonio Q Tollner
Kaitlin B Ruta
Maria P Poquette
Deepesh G Figeroa
Morrow S Foller
Jones G Gillian
Costa H Gaucho
Leon I Morasca
Izzy C Chui
Silvio B Darakjy
Maisha H Poquette
Alejandro H Bowley
Rodrigues N Whobrey
Julie T Campain
Kaitlin Q Schemmer
Johnson G Gillian
Clifford V Wieser
Jefferson C Foller
Silvio B Wieser
Francesco B Ruta
Greenwood R Venere
Izzy H Whobrey
Leja F Tollner
Claire D Bowley
Octavia I Morasca
Costa D Nicka
Francesco V Tollner
Wickens L Foller
IdCountryDate
1000Brazil2024-06-04
1001Canada2024-06-14
1002Germany2024-05-21
1003United Kingdom2024-05-22
1004Germany2024-06-01
1005United Kingdom2024-06-01
1006France2024-06-14
1007Russia2024-06-04
1008France2024-06-06
1009Italy2024-05-23
1010Argentina2024-05-25
1011United Kingdom2024-06-06
1012Italy2024-05-31
1013France2024-06-10
1014India2024-05-19
1015Italy2024-05-22
1016Spain2024-06-17
1017Italy2024-05-29
1018Germany2024-05-25
1019Russia2024-05-29
1020France2024-05-24
1021Germany2024-05-28
1022Italy2024-05-23
1023Brazil2024-06-09
1024United Kingdom2024-06-03
1025Canada2024-06-08
1026France2024-06-05
1027Argentina2024-06-10
1028Russia2024-06-01
1029Canada2024-05-27
1030Brazil2024-06-10
1031India2024-06-05
1032Canada2024-05-22
1033Germany2024-06-11
1034India2024-05-31
1035Brazil2024-06-08
1036Brazil2024-05-31
1037Australia2024-05-29
1038United Kingdom2024-05-28
1039Japan2024-06-05
1040United Kingdom2024-06-11
1041Japan2024-05-28
1042France2024-05-23
1043Australia2024-06-05
1044United Kingdom2024-05-21
1045France2024-06-14
1046Australia2024-06-09
1047Brazil2024-06-13
1048Japan2024-06-16
1049Canada2024-06-17

On-Demand Data

NameIdCountryDate
Izzy B Inouye1000Argentina2024-06-08
Mujtaba C Sergi1001Spain2024-05-19
Maria C Nestle1002Russia2024-06-12
Murillo R Gaucho1003Argentina2024-05-27
Nicolas W Rim1004Japan2024-05-27
Ricardo D Briddick1005India2024-06-01
Morrow J Foller1006Germany2024-06-12
Salvatore R Malet1007Canada2024-06-08
Leon B Kolmetz1008Italy2024-06-09
Alejandro G Tollner1009Russia2024-05-31
Julie D Waycott1010Canada2024-05-24
Leon K Ruta1011Spain2024-06-16
Adams M Iturbide1012Germany2024-06-11
Aditya G Marrier1013India2024-05-20
Misaki K Malet1014Brazil2024-05-30
David Y Figeroa1015India2024-06-04
Ricardo K Dilliard1016Canada2024-06-11
Emily J Schemmer1017United Kingdom2024-05-30
Alejandro C Amigon1018India2024-05-23
Jones O Caudy1019Germany2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin H AmigonBrazilAnna Fali UNQUALIFIED
Jennifer K FigeroaSpainIoni Bowcher UNQUALIFIED
Maria F WaycottSpainAsiya Javayant NEW
Greenwood T InouyeUnited KingdomElwin Sharvill PROPOSAL
Izzy F ShinkoGermanyAsiya Javayant PROPOSAL
James I DoeIndiaAsiya Javayant PROPOSAL
Aditya V FollerBrazilElwin Sharvill PROPOSAL
Juan L GlickSpainAnna Fali PROPOSAL
Aruna V BriddickGermanyAnna Fali PROPOSAL
Claire B DilliardFranceAnna Fali RENEWAL
Ashley G AlbaresRussiaBernardo Dominic QUALIFIED
David O WaycottAustraliaAnna Fali QUALIFIED
Claire Z CampainBrazilBernardo Dominic UNQUALIFIED
Deepesh U AlbaresCanadaXuxue Feng UNQUALIFIED
Leon D BriddickFranceOnyama Limba NEW
Maisha C SergiAustraliaIvan Magalhaes NEW
Stacey I ButtSpainIvan Magalhaes RENEWAL
Claire V KuskoJapanBernardo Dominic UNQUALIFIED
David F MorascaRussiaAnna Fali PROPOSAL
Jeanfrancois E WaycottFranceAsiya Javayant UNQUALIFIED
Alejandro A NickaAustraliaStephen Shaw UNQUALIFIED
Jennifer Z IturbideBrazilIoni Bowcher QUALIFIED
Munro M ShinkoArgentinaBernardo Dominic NEW
Jones H FlosiGermanyStephen Shaw UNQUALIFIED
Adams U SchemmerFranceIvan Magalhaes QUALIFIED
Francesco G AlbaresSpainOnyama Limba PROPOSAL
Aditya S OldroydUnited KingdomXuxue Feng PROPOSAL
Rodrigues X NestleIndiaAmy Elsner NEGOTIATION
Clifford D MaletUnited KingdomIoni Bowcher QUALIFIED
Cody I SchemmerArgentinaStephen Shaw NEW
James U SergiUnited KingdomBernardo Dominic PROPOSAL
Jones K CaudyCanadaIoni Bowcher RENEWAL
Jefferson U MaletRussiaIoni Bowcher RENEWAL
Jennifer D DilliardArgentinaIoni Bowcher NEGOTIATION
Darci F CaldareraArgentinaAnna Fali QUALIFIED
Jefferson N FerenczBrazilAmy Elsner RENEWAL
Murillo B BologniaSpainAsiya Javayant RENEWAL
Silvio R FollerFranceOnyama Limba UNQUALIFIED
Ivar N RulapaughUnited KingdomOnyama Limba NEGOTIATION
Greenwood M KolmetzRussiaIvan Magalhaes UNQUALIFIED

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