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 F FollerBrazilStephen Shaw PROPOSAL
Munro L MorascaArgentinaElwin Sharvill PROPOSAL
Juan P GillianItalyXuxue Feng NEW
Maria E DarakjyGermanyIoni Bowcher NEGOTIATION
Isabel F OstroskyUnited KingdomBernardo Dominic RENEWAL
Wickens W BriddickCanadaAmy Elsner RENEWAL
Emily Q RutaJapanOnyama Limba PROPOSAL
Alejandro V WaycottItalyXuxue Feng QUALIFIED
Jones W NestleUnited KingdomAmy Elsner RENEWAL
Julie M WhobreyIndiaIvan Magalhaes NEW
Tony K StensethUnited KingdomAmy Elsner NEW
Jones U VocelkaCanadaXuxue Feng RENEWAL
Wickens V GillianBrazilStephen Shaw PROPOSAL
Tony L CaudyIndiaElwin Sharvill QUALIFIED
Izzy J TollnerCanadaAsiya Javayant QUALIFIED
Nicolas T BriddickGermanyElwin Sharvill PROPOSAL
Aika C GlickSpainStephen Shaw NEGOTIATION
Wickens L WieserBrazilIvan Magalhaes UNQUALIFIED
Silvio K OstroskyFranceAsiya Javayant NEW
Chavez K FigeroaIndiaAnna Fali NEGOTIATION
Francesco T BriddickRussiaElwin Sharvill RENEWAL
Leon M GarufiArgentinaAsiya Javayant UNQUALIFIED
Jeanfrancois F ChuiAustraliaOnyama Limba UNQUALIFIED
Smith Z AmigonBrazilAnna Fali RENEWAL
Wickens O RutaRussiaOnyama Limba PROPOSAL
Costa I GlickBrazilXuxue Feng UNQUALIFIED
Izzy P FigeroaGermanyOnyama Limba QUALIFIED
Mujtaba B MaletCanadaIoni Bowcher QUALIFIED
Jeanfrancois P ButtFranceOnyama Limba NEW
Maisha N DilliardIndiaStephen Shaw RENEWAL
Munro G GarufiAustraliaElwin Sharvill NEW
Silvio P FigeroaIndiaElwin Sharvill NEW
Mujtaba H OldroydItalyBernardo Dominic PROPOSAL
Clifford Y FigeroaUnited KingdomAsiya Javayant RENEWAL
Claire N NestleRussiaStephen Shaw RENEWAL
Smith C SchemmerIndiaXuxue Feng UNQUALIFIED
Leja D BologniaAustraliaBernardo Dominic NEW
Kadeem G AlbaresItalyOnyama Limba NEW
Jefferson B FigeroaCanadaElwin Sharvill NEW
Sinclair M FerenczFranceAsiya Javayant QUALIFIED
Murillo K CampainArgentinaAsiya Javayant NEW
Mujtaba B StensethFranceAmy Elsner RENEWAL
Jennifer I MaletUnited KingdomIvan Magalhaes UNQUALIFIED
Mujtaba Q WieserAustraliaElwin Sharvill NEW
James F VenereRussiaStephen Shaw NEGOTIATION
Claire W SergiGermanyXuxue Feng QUALIFIED
James E IturbideItalyIoni Bowcher RENEWAL
Darci E MacleadIndiaOnyama Limba NEGOTIATION
Ashley Y AmigonAustraliaElwin Sharvill PROPOSAL
Ricardo A KuskoItalyStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Misaki G DilliardRussiaBernardo Dominic UNQUALIFIED
Murillo E RoysterGermanyStephen Shaw PROPOSAL
Arvin Z OstroskyUnited KingdomElwin Sharvill NEW
Misaki X CaudyCanadaElwin Sharvill NEW
Mujtaba G NestleRussiaOnyama Limba NEW
Ivar B AlbaresGermanyBernardo Dominic PROPOSAL
Jennifer B GlickBrazilAnna Fali NEW
Isabel P SchemmerItalyOnyama Limba QUALIFIED
David B ShinkoBrazilXuxue Feng UNQUALIFIED
Jennifer R WhobreySpainElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon J WaycottUnited Kingdom2024-06-09Feltz Printing Service NEW3Stephen Shaw
1001Adams U MarrierAustralia2024-05-19Dorl, James J Esq QUALIFIED82Ivan Magalhaes
1002Juan B WhobreyArgentina2024-05-19Chemel, James L Cpa NEGOTIATION13Elwin Sharvill
1003Faith G SergiSpain2024-05-31Chanay, Jeffrey A Esq NEGOTIATION98Ioni Bowcher
1004Murillo P CaudyBrazil2024-05-22Commercial Press UNQUALIFIED64Anna Fali
1005Aruna O CaldareraAustralia2024-06-04Chapman, Ross E Esq UNQUALIFIED67Asiya Javayant
1006Leja O CampainUnited Kingdom2024-05-25Feltz Printing Service UNQUALIFIED84Xuxue Feng
1007Mayumi K FollerSpain2024-05-28Truhlar And Truhlar Attys RENEWAL29Ivan Magalhaes
1008Cody T MaletFrance2024-05-22Rangoni Of Florence QUALIFIED90Elwin Sharvill
1009Mayumi P AlbaresItaly2024-05-30Benton, John B Jr UNQUALIFIED70Xuxue Feng
1010Munro S CaudyGermany2024-05-22King, Christopher A Esq NEW1Bernardo Dominic
1011Antonio N MorascaArgentina2024-06-02Morlong Associates QUALIFIED4Ivan Magalhaes
1012Jennifer U KuskoJapan2024-06-04Chapman, Ross E Esq NEW5Xuxue Feng
1013Leja G SaylorsItaly2024-05-25Chapman, Ross E Esq NEGOTIATION93Stephen Shaw
1014Nicolas X IturbideRussia2024-05-31Printing Dimensions NEW14Amy Elsner
1015Salvatore M WhobreyItaly2024-06-12Rangoni Of Florence NEGOTIATION96Ioni Bowcher
1016Ashley Y FerenczRussia2024-06-12Chapman, Ross E Esq UNQUALIFIED18Xuxue Feng
1017Faith Q GarufiArgentina2024-06-13Printing Dimensions PROPOSAL98Asiya Javayant
1018Aditya Z VocelkaItaly2024-05-26Dorl, James J Esq PROPOSAL46Ioni Bowcher
1019Aruna D SchemmerAustralia2024-05-24Benton, John B Jr NEW39Elwin Sharvill
1020Clifford L FigeroaIndia2024-05-23Dorl, James J Esq QUALIFIED42Anna Fali
1021Smith M PerinGermany2024-06-13Chanay, Jeffrey A Esq QUALIFIED81Bernardo Dominic
1022Misaki R CampainBrazil2024-05-26Chapman, Ross E Esq RENEWAL82Onyama Limba
1023Nicolas S BowleyFrance2024-06-11Benton, John B Jr NEGOTIATION97Stephen Shaw
1024Aditya F FollerBrazil2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED52Amy Elsner
1025Munro V ChuiGermany2024-06-03Chemel, James L Cpa UNQUALIFIED53Ioni Bowcher
1026Chavez P WhobreyJapan2024-06-05Feltz Printing Service UNQUALIFIED8Asiya Javayant
1027Misaki H MaletCanada2024-05-19Chapman, Ross E Esq NEGOTIATION65Amy Elsner
1028Maria B MaletSpain2024-05-17Feiner Bros PROPOSAL65Ioni Bowcher
1029Chavez G VenereCanada2024-06-07Truhlar And Truhlar Attys RENEWAL63Amy Elsner
1030Greenwood Z MorascaRussia2024-05-15Commercial Press QUALIFIED43Amy Elsner
1031Arvin D GarufiGermany2024-05-24King, Christopher A Esq UNQUALIFIED41Elwin Sharvill
1032Sinclair W OldroydArgentina2024-06-02Feltz Printing Service UNQUALIFIED82Xuxue Feng
1033Greenwood X WhobreyRussia2024-05-23Feiner Bros PROPOSAL63Xuxue Feng
1034Smith T SaylorsIndia2024-06-13Commercial Press RENEWAL16Anna Fali
1035Aruna L DoeItaly2024-06-05Rangoni Of Florence PROPOSAL52Onyama Limba
1036Silvio N TollnerRussia2024-06-03Commercial Press UNQUALIFIED0Asiya Javayant
1037Chavez F MaletIndia2024-06-02Truhlar And Truhlar Attys NEW67Asiya Javayant
1038Chavez A MacleadJapan2024-05-26Buckley Miller Wright NEW18Xuxue Feng
1039Mujtaba Y GillianSpain2024-05-29Morlong Associates UNQUALIFIED51Asiya Javayant
1040Tony Z VenereFrance2024-06-12Chemel, James L Cpa NEW83Bernardo Dominic
1041Emily D ChuiItaly2024-06-06Benton, John B Jr RENEWAL97Elwin Sharvill
1042David P ButtGermany2024-06-13Printing Dimensions RENEWAL15Anna Fali
1043Emily B BologniaAustralia2024-06-13Commercial Press QUALIFIED99Onyama Limba
1044Adams E NickaBrazil2024-06-12Chemel, James L Cpa PROPOSAL97Bernardo Dominic
1045Silvio S PerinJapan2024-05-20Rangoni Of Florence NEGOTIATION19Xuxue Feng
1046Cody H OstroskyItaly2024-05-18Morlong Associates QUALIFIED65Elwin Sharvill
1047Johnson L WaycottArgentina2024-05-24Truhlar And Truhlar Attys PROPOSAL85Anna Fali
1048Jones S VocelkaArgentina2024-05-16Dorl, James J Esq NEGOTIATION45Ioni Bowcher
1049Misaki D ChuiJapan2024-05-25Printing Dimensions NEGOTIATION29Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Ashley R IturbideBrazilIoni Bowcher UNQUALIFIED
Deepesh P SergiArgentinaAsiya Javayant UNQUALIFIED
Jefferson Q MaletUnited KingdomAmy Elsner RENEWAL
David Z SergiGermanyXuxue Feng RENEWAL
Ashley N TollnerGermanyElwin Sharvill NEW
Johnson K MarrierSpainXuxue Feng UNQUALIFIED
Ricardo Y GarufiAustraliaAmy Elsner RENEWAL
Maria T SergiBrazilBernardo Dominic PROPOSAL
Aditya T KolmetzFranceBernardo Dominic QUALIFIED
Munro H MarrierCanadaXuxue Feng NEW
Juan O RimSpainElwin Sharvill NEW
Jennifer B MacleadBrazilElwin Sharvill UNQUALIFIED
Francesco I VenereBrazilAnna Fali NEGOTIATION
Cody R KolmetzCanadaIoni Bowcher NEGOTIATION
Stacey S OldroydBrazilBernardo Dominic RENEWAL
Silvio X ButtJapanIvan Magalhaes NEGOTIATION
Morrow V SchemmerBrazilStephen Shaw NEGOTIATION
Rodrigues S IturbideBrazilAmy Elsner QUALIFIED
Salvatore X SaylorsBrazilAsiya Javayant NEW
Ricardo A SchemmerCanadaAsiya Javayant RENEWAL
Salvatore W GauchoSpainIoni Bowcher PROPOSAL
Misaki U WhobreyIndiaBernardo Dominic RENEWAL
Smith P FigeroaBrazilAmy Elsner PROPOSAL
Deepesh B ShinkoFranceIvan Magalhaes UNQUALIFIED
Murillo Y MacleadArgentinaXuxue Feng QUALIFIED
Alejandro U FerenczBrazilStephen Shaw UNQUALIFIED
Silvio F GarufiItalyElwin Sharvill NEW
Juan U SchemmerGermanyElwin Sharvill NEGOTIATION
Emily O GauchoIndiaAnna Fali NEGOTIATION
Kaitlin V SchemmerArgentinaAnna Fali NEGOTIATION
Nicolas C ButtIndiaIvan Magalhaes QUALIFIED
Darci M GauchoGermanyXuxue Feng NEW
Smith O NestleAustraliaOnyama Limba QUALIFIED
Alejandro I PaprockiBrazilAmy Elsner UNQUALIFIED
Octavia Y PoquetteIndiaOnyama Limba PROPOSAL
Greenwood C GauchoRussiaXuxue Feng UNQUALIFIED
Stacey N FlosiAustraliaIvan Magalhaes NEGOTIATION
Izzy H FollerGermanyIvan Magalhaes PROPOSAL
Octavia A CaldareraBrazilStephen Shaw RENEWAL
Johnson G StensethIndiaXuxue Feng PROPOSAL
Octavia Y MacleadAustraliaAnna Fali QUALIFIED
Adams V GillianIndiaAnna Fali RENEWAL
David J AlbaresAustraliaAsiya Javayant NEGOTIATION
Arvin Z AmigonUnited KingdomIoni Bowcher NEGOTIATION
Francesco O OldroydUnited KingdomBernardo Dominic NEGOTIATION
Wickens K NickaAustraliaStephen Shaw RENEWAL
Chavez S WhobreyUnited KingdomElwin Sharvill NEW
Sinclair C WaycottGermanyAmy Elsner RENEWAL
Alejandro R ShinkoAustraliaXuxue Feng NEGOTIATION
Arvin T SaylorsItalyIoni Bowcher RENEWAL
Frozen Columns
Name
Aruna U Tollner
Julie N Rulapaugh
Nicolas B Rulapaugh
Octavia P Saylors
Maisha K Doe
Leon A Rulapaugh
Silvio Q Venere
Darci U Kusko
Arvin G Maclead
Kaitlin L Rim
Maria S Tollner
Stacey J Gaucho
Leja T Oldroyd
Jennifer I Slusarski
Faith O Bolognia
Jones J Ruta
Ivar J Amigon
Mayumi T Foller
Darci F Slusarski
Clifford E Stockham
Leon E Gaucho
Kaitlin J Amigon
Francesco T Campain
Aruna W Chui
Ricardo S Stockham
Claire W Ostrosky
Greenwood F Bolognia
Misaki W Malet
Jones N Nicka
Nicolas J Royster
Faith Q Albares
Adams H Paprocki
Cody W Rulapaugh
Isabel N Gillian
Ashley H Tollner
Emily C Rulapaugh
Aruna L Kusko
Francesco S Perin
Nicolas K Poquette
Smith N Rulapaugh
Costa K Bolognia
Morrow Y Nicka
Deepesh W Dilliard
Maria P Stenseth
Rodrigues Q Tollner
Ricardo F Ferencz
Ivar K Nestle
Aruna W Figeroa
Maisha P Glick
Emily I Flosi
IdCountryDate
1000Brazil2024-05-23
1001Italy2024-06-05
1002Canada2024-06-13
1003Germany2024-06-05
1004Russia2024-05-26
1005France2024-05-22
1006Spain2024-05-23
1007Australia2024-06-13
1008Russia2024-05-23
1009France2024-05-22
1010Germany2024-05-26
1011Germany2024-06-07
1012Australia2024-05-30
1013Japan2024-05-18
1014France2024-05-22
1015France2024-05-26
1016Australia2024-06-08
1017Canada2024-06-08
1018Argentina2024-05-15
1019France2024-05-16
1020Germany2024-06-09
1021Germany2024-05-25
1022United Kingdom2024-05-22
1023Japan2024-05-23
1024United Kingdom2024-05-20
1025Italy2024-05-31
1026United Kingdom2024-05-28
1027Canada2024-05-15
1028Germany2024-06-06
1029Canada2024-05-15
1030Argentina2024-05-15
1031Japan2024-05-19
1032United Kingdom2024-06-06
1033Japan2024-05-22
1034India2024-06-10
1035Australia2024-05-16
1036Japan2024-06-11
1037Russia2024-06-02
1038India2024-05-20
1039Japan2024-05-30
1040Japan2024-05-27
1041Australia2024-06-06
1042Brazil2024-05-27
1043Japan2024-06-06
1044Japan2024-05-29
1045Argentina2024-06-06
1046Japan2024-06-05
1047India2024-05-27
1048France2024-05-27
1049Italy2024-05-23

On-Demand Data

NameIdCountryDate
Murillo L Chui1000Italy2024-06-01
Maisha W Kusko1001Japan2024-05-19
Jones E Venere1002United Kingdom2024-06-04
Ivar O Kusko1003Australia2024-06-03
Octavia W Iturbide1004Italy2024-06-06
Aditya B Flosi1005United Kingdom2024-05-16
Greenwood T Perin1006Russia2024-06-11
Stacey V Stenseth1007Germany2024-05-17
Jennifer I Rulapaugh1008United Kingdom2024-05-17
Deepesh S Rulapaugh1009Italy2024-06-13
Isabel Z Rim1010Brazil2024-05-17
Chavez M Tollner1011Argentina2024-05-26
Arvin N Stockham1012France2024-06-08
Ashley D Gillian1013Japan2024-05-21
Johnson U Marrier1014Russia2024-05-20
Jennifer G Oldroyd1015France2024-05-20
Maisha Z Gaucho1016Italy2024-05-23
Jennifer R Rulapaugh1017India2024-05-21
Ivar E Rim1018Argentina2024-06-09
Julie X Bolognia1019France2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh T NickaCanadaAsiya Javayant NEW
Cody G DilliardBrazilElwin Sharvill NEW
Aditya J BologniaBrazilIvan Magalhaes RENEWAL
Stacey K DilliardJapanAmy Elsner NEGOTIATION
Sinclair Z GlickIndiaBernardo Dominic QUALIFIED
Jones T AmigonCanadaBernardo Dominic NEGOTIATION
Jennifer J ShinkoRussiaElwin Sharvill NEW
Darci S AmigonCanadaIoni Bowcher QUALIFIED
Julie K AmigonRussiaIoni Bowcher QUALIFIED
Juan Z RoysterAustraliaAmy Elsner RENEWAL
Ivar F DarakjyAustraliaIoni Bowcher NEW
Claire K ShinkoRussiaAnna Fali NEW
Ricardo B OstroskyAustraliaOnyama Limba UNQUALIFIED
Ashley Z SchemmerGermanyOnyama Limba NEGOTIATION
Morrow S ChuiCanadaIvan Magalhaes NEW
Juan Z InouyeGermanyIvan Magalhaes NEGOTIATION
Silvio P MarrierBrazilAsiya Javayant NEGOTIATION
Rodrigues H IturbideJapanXuxue Feng UNQUALIFIED
Tony U TollnerUnited KingdomIoni Bowcher QUALIFIED
Jennifer C SaylorsIndiaStephen Shaw NEGOTIATION
Aika A ChuiSpainStephen Shaw PROPOSAL
Salvatore I StockhamCanadaAnna Fali NEGOTIATION
Smith U RutaBrazilAnna Fali NEW
Sinclair O BowleyJapanXuxue Feng NEGOTIATION
Aika V InouyeAustraliaBernardo Dominic UNQUALIFIED
Aruna I RimAustraliaIoni Bowcher RENEWAL
Julie M WhobreyRussiaAnna Fali NEGOTIATION
Ricardo D StockhamItalyBernardo Dominic NEGOTIATION
Misaki P OldroydGermanyXuxue Feng QUALIFIED
Octavia F ChuiSpainElwin Sharvill PROPOSAL
Smith J CaudySpainXuxue Feng NEW
Adams N WaycottFranceOnyama Limba UNQUALIFIED
Chavez R OldroydSpainOnyama Limba QUALIFIED
Tony I RutaBrazilAnna Fali UNQUALIFIED
Ricardo A RoysterIndiaStephen Shaw QUALIFIED
Aika L RulapaughCanadaElwin Sharvill NEW
Salvatore Y MarrierSpainElwin Sharvill PROPOSAL
Morrow L BowleyItalyBernardo Dominic QUALIFIED
Chavez H MaletFranceIoni Bowcher NEGOTIATION
Misaki M OstroskyBrazilStephen Shaw 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>