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
Claire E PerinSpainIoni Bowcher QUALIFIED
Juan V DilliardGermanyStephen Shaw RENEWAL
Faith S StockhamFranceElwin Sharvill RENEWAL
Julie Z StensethItalyAmy Elsner UNQUALIFIED
Juan X PerinAustraliaXuxue Feng QUALIFIED
Deepesh W CampainFranceStephen Shaw RENEWAL
James K PerinUnited KingdomElwin Sharvill PROPOSAL
Salvatore W StensethCanadaAmy Elsner PROPOSAL
Smith O FigeroaJapanAnna Fali NEW
Izzy O StensethItalyOnyama Limba NEGOTIATION
Alejandro P FollerCanadaElwin Sharvill QUALIFIED
Darci I ShinkoArgentinaIoni Bowcher UNQUALIFIED
Misaki W TollnerCanadaAmy Elsner RENEWAL
Jennifer E AlbaresJapanStephen Shaw NEGOTIATION
Mayumi V MaletIndiaStephen Shaw UNQUALIFIED
Claire E GlickCanadaAmy Elsner QUALIFIED
Clifford F TollnerRussiaAnna Fali QUALIFIED
Alejandro D RimItalyBernardo Dominic NEGOTIATION
Arvin J FigeroaItalyElwin Sharvill NEW
Murillo A OstroskyIndiaAmy Elsner QUALIFIED
Mujtaba I KuskoGermanyElwin Sharvill QUALIFIED
Alejandro W BologniaJapanElwin Sharvill PROPOSAL
Mayumi Z BowleyJapanStephen Shaw NEGOTIATION
Ricardo W FlosiBrazilIoni Bowcher NEW
Maria I InouyeArgentinaAnna Fali RENEWAL
Jefferson R FigeroaGermanyAmy Elsner PROPOSAL
Rodrigues V RimAustraliaXuxue Feng NEGOTIATION
Alejandro T OstroskySpainOnyama Limba QUALIFIED
Kaitlin J ShinkoAustraliaXuxue Feng NEGOTIATION
Ashley O AlbaresIndiaAmy Elsner QUALIFIED
Morrow C SaylorsCanadaElwin Sharvill QUALIFIED
Cody V VenereAustraliaOnyama Limba NEGOTIATION
David V VenereJapanAmy Elsner QUALIFIED
Jeanfrancois P SlusarskiAustraliaAsiya Javayant RENEWAL
Mayumi E GarufiItalyXuxue Feng PROPOSAL
Aditya G CaldareraGermanyOnyama Limba NEW
Murillo X IturbideFranceAnna Fali PROPOSAL
Antonio Q OldroydUnited KingdomXuxue Feng QUALIFIED
Silvio W FlosiBrazilXuxue Feng QUALIFIED
Tony O DarakjyBrazilIvan Magalhaes NEW
Aruna S SaylorsBrazilStephen Shaw RENEWAL
Francesco S GlickGermanyXuxue Feng PROPOSAL
Adams Y ShinkoItalyIvan Magalhaes UNQUALIFIED
Salvatore V InouyeBrazilAsiya Javayant QUALIFIED
Mujtaba N KuskoRussiaXuxue Feng UNQUALIFIED
Leja V CaudyGermanyIvan Magalhaes RENEWAL
Claire C NickaUnited KingdomBernardo Dominic QUALIFIED
Maisha K IturbideCanadaElwin Sharvill UNQUALIFIED
Aruna H DilliardGermanyIoni Bowcher QUALIFIED
Ricardo X DoeSpainAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ivar G MacleadItalyOnyama Limba QUALIFIED
Aruna R FollerBrazilAnna Fali PROPOSAL
Octavia A AlbaresRussiaStephen Shaw NEW
Aditya H VocelkaGermanyIvan Magalhaes NEW
Aditya L AlbaresItalyIoni Bowcher RENEWAL
Julie O AmigonRussiaXuxue Feng NEGOTIATION
Adams H RutaItalyElwin Sharvill NEGOTIATION
Aika B GarufiCanadaXuxue Feng UNQUALIFIED
Stacey Z AmigonCanadaBernardo Dominic QUALIFIED
Deepesh L GillianBrazilAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois I StensethGermany2024-05-19Rangoni Of Florence NEGOTIATION3Stephen Shaw
1001Salvatore F VenereCanada2024-06-03King, Christopher A Esq NEGOTIATION17Anna Fali
1002Arvin X SaylorsUnited Kingdom2024-05-17Dorl, James J Esq UNQUALIFIED38Onyama Limba
1003Faith G AlbaresJapan2024-05-22King, Christopher A Esq PROPOSAL78Stephen Shaw
1004Jeanfrancois C MaletGermany2024-06-12Feiner Bros NEGOTIATION40Bernardo Dominic
1005Chavez M RutaBrazil2024-06-03Benton, John B Jr PROPOSAL70Amy Elsner
1006Francesco Y GillianItaly2024-05-31Chapman, Ross E Esq NEGOTIATION28Xuxue Feng
1007Julie U GillianFrance2024-06-13Truhlar And Truhlar Attys UNQUALIFIED29Stephen Shaw
1008Smith A WaycottItaly2024-06-12Chanay, Jeffrey A Esq NEGOTIATION84Stephen Shaw
1009Ivar S OstroskyArgentina2024-05-23King, Christopher A Esq QUALIFIED82Amy Elsner
1010Johnson N BowleyAustralia2024-05-20Chapman, Ross E Esq NEW32Asiya Javayant
1011Alejandro O RulapaughAustralia2024-06-06Chemel, James L Cpa QUALIFIED3Stephen Shaw
1012Johnson X BologniaGermany2024-05-17Commercial Press NEGOTIATION53Ivan Magalhaes
1013James F FerenczGermany2024-06-09Printing Dimensions NEW88Asiya Javayant
1014Salvatore F BriddickBrazil2024-06-01Buckley Miller Wright UNQUALIFIED70Anna Fali
1015Leja X GillianFrance2024-06-14Commercial Press UNQUALIFIED18Elwin Sharvill
1016Juan P IturbideCanada2024-05-21Buckley Miller Wright PROPOSAL49Amy Elsner
1017Julie R RulapaughCanada2024-05-27Chemel, James L Cpa PROPOSAL82Onyama Limba
1018Maisha F FlosiRussia2024-06-01Chemel, James L Cpa PROPOSAL13Bernardo Dominic
1019Tony W SaylorsIndia2024-06-06Truhlar And Truhlar Attys RENEWAL29Bernardo Dominic
1020Aika H KolmetzIndia2024-05-30Chanay, Jeffrey A Esq RENEWAL10Onyama Limba
1021Ricardo Y WieserJapan2024-06-03Morlong Associates QUALIFIED35Stephen Shaw
1022Salvatore R MarrierCanada2024-06-07Truhlar And Truhlar Attys PROPOSAL89Anna Fali
1023Kaitlin E ButtAustralia2024-06-11King, Christopher A Esq NEGOTIATION25Asiya Javayant
1024Greenwood X SergiAustralia2024-06-10Benton, John B Jr UNQUALIFIED95Ivan Magalhaes
1025Leja F RoysterFrance2024-06-10Buckley Miller Wright NEW29Xuxue Feng
1026Maisha W WaycottUnited Kingdom2024-05-21Commercial Press PROPOSAL12Xuxue Feng
1027Leja E KolmetzCanada2024-06-06Morlong Associates PROPOSAL10Bernardo Dominic
1028Sinclair A OstroskyFrance2024-05-29Benton, John B Jr PROPOSAL73Amy Elsner
1029Tony Y RimFrance2024-05-23Buckley Miller Wright NEW13Ioni Bowcher
1030Jeanfrancois E NickaBrazil2024-06-07Morlong Associates RENEWAL33Asiya Javayant
1031Chavez Z FollerRussia2024-05-22Chapman, Ross E Esq QUALIFIED69Ioni Bowcher
1032Salvatore I MarrierBrazil2024-05-19Feiner Bros RENEWAL35Asiya Javayant
1033Silvio F WieserUnited Kingdom2024-05-23Rousseaux, Michael Esq UNQUALIFIED90Stephen Shaw
1034Maisha I OstroskyAustralia2024-05-30Buckley Miller Wright RENEWAL15Ivan Magalhaes
1035Jennifer E CampainArgentina2024-06-10Morlong Associates UNQUALIFIED55Stephen Shaw
1036Jennifer Z GauchoUnited Kingdom2024-06-01King, Christopher A Esq UNQUALIFIED70Anna Fali
1037Jennifer G KolmetzRussia2024-06-14Commercial Press UNQUALIFIED19Onyama Limba
1038Kadeem B AmigonBrazil2024-06-11Printing Dimensions UNQUALIFIED3Ioni Bowcher
1039Silvio F StensethGermany2024-05-29Chanay, Jeffrey A Esq NEW95Ivan Magalhaes
1040Kadeem Y TollnerSpain2024-05-28Commercial Press RENEWAL12Elwin Sharvill
1041Jefferson R SergiUnited Kingdom2024-05-24Feiner Bros PROPOSAL62Anna Fali
1042Isabel Y SlusarskiJapan2024-05-20Morlong Associates NEW68Asiya Javayant
1043Ricardo S DoeCanada2024-05-25Printing Dimensions NEGOTIATION85Onyama Limba
1044Juan Y MorascaBrazil2024-06-05Rousseaux, Michael Esq QUALIFIED77Stephen Shaw
1045Maria T PaprockiGermany2024-05-31Buckley Miller Wright RENEWAL97Elwin Sharvill
1046Deepesh B NestleAustralia2024-06-05Printing Dimensions NEW30Ivan Magalhaes
1047Arvin R KolmetzCanada2024-06-12King, Christopher A Esq NEGOTIATION26Ioni Bowcher
1048James T KolmetzUnited Kingdom2024-06-13Benton, John B Jr NEGOTIATION46Onyama Limba
1049Silvio P BowleyJapan2024-06-10Rangoni Of Florence RENEWAL63Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Stacey Y StensethItalyAnna Fali UNQUALIFIED
Jones Z BriddickCanadaIvan Magalhaes QUALIFIED
Munro R DilliardSpainOnyama Limba NEGOTIATION
Ashley H PerinAustraliaAmy Elsner NEW
Greenwood B BowleyFranceAnna Fali QUALIFIED
Claire K DilliardRussiaIvan Magalhaes UNQUALIFIED
Silvio Z NickaArgentinaOnyama Limba RENEWAL
Mujtaba S OstroskySpainAsiya Javayant PROPOSAL
Clifford A MorascaArgentinaIvan Magalhaes UNQUALIFIED
Morrow P TollnerRussiaStephen Shaw PROPOSAL
Kaitlin K SaylorsRussiaBernardo Dominic NEGOTIATION
Munro Z ButtCanadaOnyama Limba PROPOSAL
Stacey M BologniaAustraliaAnna Fali UNQUALIFIED
Claire Z WhobreyFranceStephen Shaw NEGOTIATION
Ashley X MaletItalyStephen Shaw QUALIFIED
Silvio A TollnerUnited KingdomIoni Bowcher RENEWAL
Alejandro E StockhamGermanyStephen Shaw UNQUALIFIED
Clifford W MaletAustraliaXuxue Feng QUALIFIED
Johnson B RimArgentinaXuxue Feng QUALIFIED
Misaki F KuskoUnited KingdomAnna Fali NEW
Wickens I ButtIndiaIvan Magalhaes RENEWAL
Misaki O AlbaresItalyAsiya Javayant RENEWAL
Wickens U DoeArgentinaStephen Shaw PROPOSAL
Salvatore N CaldareraBrazilAsiya Javayant QUALIFIED
Silvio E BologniaFranceOnyama Limba NEGOTIATION
Adams Y GillianSpainAsiya Javayant NEGOTIATION
Nicolas R GarufiArgentinaStephen Shaw PROPOSAL
Alejandro F IturbideCanadaXuxue Feng UNQUALIFIED
Murillo H VenereSpainOnyama Limba UNQUALIFIED
Antonio N MaletGermanyIoni Bowcher PROPOSAL
Jennifer C StockhamFranceElwin Sharvill PROPOSAL
Deepesh O PoquetteIndiaAnna Fali QUALIFIED
Jefferson I WaycottBrazilXuxue Feng PROPOSAL
Aruna H MacleadGermanyAnna Fali RENEWAL
Isabel O SergiSpainOnyama Limba UNQUALIFIED
Johnson E SaylorsBrazilStephen Shaw NEW
Ivar Q WhobreyFranceAnna Fali UNQUALIFIED
Julie W BriddickRussiaStephen Shaw QUALIFIED
Costa H PoquetteArgentinaOnyama Limba QUALIFIED
Ivar U RutaArgentinaOnyama Limba NEW
Rodrigues N NickaSpainIoni Bowcher NEW
Aruna D NickaGermanyElwin Sharvill PROPOSAL
Jennifer G MaletUnited KingdomAnna Fali NEGOTIATION
Juan Q MorascaRussiaElwin Sharvill NEGOTIATION
Emily P BowleyCanadaStephen Shaw NEGOTIATION
Ricardo X MarrierCanadaIoni Bowcher PROPOSAL
Jeanfrancois A OstroskyIndiaAsiya Javayant NEGOTIATION
Morrow E RulapaughUnited KingdomIoni Bowcher PROPOSAL
Rodrigues X AmigonCanadaAmy Elsner UNQUALIFIED
Mayumi D MacleadUnited KingdomAmy Elsner PROPOSAL
Frozen Columns
Name
Aika C Nicka
Jennifer D Ferencz
Francesco N Briddick
Rodrigues P Foller
Leon L Vocelka
Francesco G Figeroa
Rodrigues V Glick
Kaitlin B Chui
Mujtaba L Malet
Aika X Dilliard
Clifford H Butt
Tony F Rim
Kadeem F Garufi
Munro I Iturbide
Darci Z Malet
James H Waycott
Aruna L Venere
Stacey T Ferencz
Deepesh P Bowley
Cody X Darakjy
Julie B Gaucho
Darci L Nestle
Salvatore A Slusarski
Emily E Nestle
Rodrigues T Flosi
Maria T Dilliard
David K Iturbide
Ashley P Wieser
Arvin A Bolognia
Aruna F Ruta
Darci X Poquette
Ivar W Marrier
Kaitlin B Bolognia
Smith H Iturbide
Smith E Slusarski
David X Oldroyd
Nicolas H Chui
Jones B Stenseth
Faith W Ruta
Ashley V Rim
Adams U Nestle
Morrow A Foller
Kadeem C Amigon
Smith M Caldarera
Murillo P Inouye
Adams T Malet
Nicolas V Darakjy
Tony J Sergi
Salvatore J Dilliard
Murillo P Chui
IdCountryDate
1000Argentina2024-05-19
1001Spain2024-06-14
1002India2024-05-27
1003Australia2024-06-02
1004India2024-05-23
1005Germany2024-06-12
1006Canada2024-05-17
1007France2024-05-29
1008Brazil2024-05-18
1009Germany2024-06-02
1010Canada2024-05-31
1011Italy2024-05-28
1012Russia2024-05-17
1013Italy2024-05-23
1014Japan2024-05-19
1015India2024-06-04
1016Italy2024-05-20
1017United Kingdom2024-06-05
1018France2024-06-08
1019France2024-05-29
1020Brazil2024-06-12
1021Canada2024-05-25
1022Brazil2024-06-08
1023France2024-06-08
1024United Kingdom2024-06-04
1025Brazil2024-06-14
1026Canada2024-05-26
1027Argentina2024-06-04
1028United Kingdom2024-05-20
1029Spain2024-06-07
1030Russia2024-06-05
1031Russia2024-06-08
1032Spain2024-05-20
1033France2024-05-19
1034Canada2024-05-18
1035India2024-06-04
1036India2024-06-02
1037Japan2024-05-27
1038Italy2024-05-30
1039United Kingdom2024-06-08
1040Russia2024-05-31
1041France2024-05-18
1042United Kingdom2024-05-28
1043Germany2024-06-04
1044India2024-05-26
1045India2024-05-20
1046Germany2024-06-09
1047Japan2024-05-16
1048India2024-05-29
1049Australia2024-06-11

On-Demand Data

NameIdCountryDate
Clifford E Tollner1000India2024-06-10
Antonio H Rim1001United Kingdom2024-06-02
Emily J Malet1002Japan2024-06-09
Misaki K Kusko1003Germany2024-06-14
Mayumi P Gaucho1004Japan2024-05-23
Clifford C Whobrey1005Italy2024-06-02
Costa C Marrier1006Australia2024-05-20
Ashley Q Bolognia1007Italy2024-06-02
Greenwood A Amigon1008Argentina2024-06-12
Maisha J Campain1009Japan2024-05-26
Morrow S Slusarski1010Germany2024-06-06
Nicolas J Ostrosky1011United Kingdom2024-05-22
Jefferson C Gaucho1012Argentina2024-06-13
Isabel E Royster1013France2024-05-23
Salvatore I Rim1014Spain2024-05-30
Deepesh W Oldroyd1015France2024-05-23
Deepesh F Iturbide1016Argentina2024-05-30
Leja L Malet1017Japan2024-06-13
Aika E Nicka1018Australia2024-06-08
Ricardo Y Caudy1019Italy2024-05-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco U TollnerBrazilOnyama Limba PROPOSAL
Cody J InouyeArgentinaElwin Sharvill PROPOSAL
Wickens A ButtRussiaXuxue Feng NEGOTIATION
Antonio P OldroydArgentinaElwin Sharvill QUALIFIED
Adams O KolmetzItalyXuxue Feng UNQUALIFIED
Leon B FerenczIndiaAnna Fali PROPOSAL
Tony T RulapaughBrazilIvan Magalhaes PROPOSAL
Chavez H IturbideFranceOnyama Limba UNQUALIFIED
Claire W RimFranceAnna Fali RENEWAL
Nicolas R PaprockiIndiaAmy Elsner RENEWAL
Silvio A MaletRussiaAnna Fali RENEWAL
Mayumi E BologniaJapanIoni Bowcher UNQUALIFIED
Greenwood O OldroydAustraliaIoni Bowcher QUALIFIED
Arvin K ChuiFranceIoni Bowcher UNQUALIFIED
Munro P CaudySpainIvan Magalhaes PROPOSAL
Rodrigues K TollnerSpainAmy Elsner RENEWAL
Smith W FollerSpainAmy Elsner NEGOTIATION
Darci W StockhamGermanyElwin Sharvill PROPOSAL
Emily B SergiFranceAnna Fali UNQUALIFIED
Ricardo S MarrierSpainElwin Sharvill NEW
Adams W RutaUnited KingdomBernardo Dominic NEW
Rodrigues A SlusarskiGermanyAsiya Javayant NEGOTIATION
Salvatore T GillianUnited KingdomAmy Elsner UNQUALIFIED
Jones B AmigonUnited KingdomAsiya Javayant PROPOSAL
Mayumi A MarrierSpainOnyama Limba NEW
Juan W FigeroaFranceAsiya Javayant NEGOTIATION
Tony Z KuskoCanadaBernardo Dominic NEGOTIATION
Claire C NestleBrazilIvan Magalhaes PROPOSAL
Maisha C BriddickCanadaElwin Sharvill PROPOSAL
Aditya G WaycottFranceAsiya Javayant PROPOSAL
Stacey B PaprockiGermanyXuxue Feng NEGOTIATION
Cody I FollerSpainBernardo Dominic QUALIFIED
Maisha S ChuiArgentinaAnna Fali QUALIFIED
Maisha G RulapaughItalyAsiya Javayant UNQUALIFIED
James J FigeroaCanadaAsiya Javayant UNQUALIFIED
Francesco T SchemmerCanadaOnyama Limba PROPOSAL
Mayumi M CaldareraArgentinaStephen Shaw QUALIFIED
Morrow C FerenczUnited KingdomBernardo Dominic NEGOTIATION
Ricardo S GlickFranceBernardo Dominic NEW
Murillo P FigeroaRussiaXuxue Feng 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>