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
Deepesh L BologniaUnited KingdomAsiya Javayant NEGOTIATION
Mayumi I AmigonFranceBernardo Dominic RENEWAL
Antonio U AmigonBrazilAnna Fali NEW
James N DilliardBrazilXuxue Feng UNQUALIFIED
Darci U RulapaughIndiaAnna Fali UNQUALIFIED
Faith W BologniaJapanXuxue Feng PROPOSAL
Stacey U InouyeJapanAmy Elsner NEW
Darci C ShinkoGermanyElwin Sharvill UNQUALIFIED
Tony M GarufiItalyAsiya Javayant NEW
Deepesh C FigeroaFranceIoni Bowcher NEW
Kaitlin M PoquetteItalyStephen Shaw PROPOSAL
Silvio H PerinIndiaAnna Fali QUALIFIED
Clifford Y NestleCanadaAmy Elsner QUALIFIED
Silvio U VenereFranceIvan Magalhaes RENEWAL
Smith B SaylorsGermanyBernardo Dominic NEW
Salvatore P PoquetteSpainAnna Fali UNQUALIFIED
Clifford P GauchoRussiaOnyama Limba UNQUALIFIED
Ivar B SaylorsRussiaAmy Elsner NEGOTIATION
Salvatore J BologniaIndiaXuxue Feng RENEWAL
Greenwood T AlbaresItalyOnyama Limba NEGOTIATION
Stacey B BowleyArgentinaIvan Magalhaes UNQUALIFIED
Ricardo E GlickIndiaIvan Magalhaes NEGOTIATION
Salvatore C PaprockiGermanyIvan Magalhaes UNQUALIFIED
Wickens Q KolmetzJapanAmy Elsner NEW
David F StockhamItalyIvan Magalhaes UNQUALIFIED
Mayumi C BologniaRussiaBernardo Dominic NEGOTIATION
Jeanfrancois D DilliardBrazilStephen Shaw UNQUALIFIED
Julie K FigeroaArgentinaXuxue Feng NEGOTIATION
Mujtaba D KolmetzGermanyBernardo Dominic UNQUALIFIED
Juan D FollerSpainAmy Elsner QUALIFIED
Clifford U IturbideItalyBernardo Dominic NEW
Costa R ButtSpainBernardo Dominic NEGOTIATION
Stacey C AmigonFranceElwin Sharvill NEGOTIATION
Mujtaba Q CaudySpainBernardo Dominic NEW
Jennifer G CampainJapanIvan Magalhaes PROPOSAL
Aditya V IturbideIndiaAnna Fali QUALIFIED
Emily I SchemmerFranceIvan Magalhaes PROPOSAL
Jefferson O KuskoArgentinaAnna Fali UNQUALIFIED
Sinclair N InouyeRussiaElwin Sharvill NEW
Costa I SlusarskiArgentinaXuxue Feng UNQUALIFIED
Nicolas O MaletSpainElwin Sharvill UNQUALIFIED
Mujtaba V FlosiArgentinaElwin Sharvill RENEWAL
Jeanfrancois K IturbideUnited KingdomBernardo Dominic NEW
Darci N RutaAustraliaAsiya Javayant QUALIFIED
Ivar P MaletRussiaIoni Bowcher UNQUALIFIED
Jones H FlosiFranceBernardo Dominic UNQUALIFIED
Kadeem G MacleadIndiaIvan Magalhaes QUALIFIED
David R DoeCanadaAmy Elsner PROPOSAL
Cody C PaprockiCanadaAsiya Javayant RENEWAL
Adams R CaldareraIndiaAsiya Javayant RENEWAL
Horizontal
NameCountryRepresentativeStatus
Tony E WieserSpainElwin Sharvill RENEWAL
Chavez X StockhamAustraliaAsiya Javayant UNQUALIFIED
Izzy K GlickAustraliaAnna Fali UNQUALIFIED
Octavia E RutaCanadaAmy Elsner PROPOSAL
Leja T RimGermanyAmy Elsner UNQUALIFIED
Smith W InouyeFranceElwin Sharvill RENEWAL
Mayumi R VocelkaCanadaXuxue Feng NEW
Silvio J BriddickCanadaOnyama Limba NEW
Wickens X GillianItalyXuxue Feng NEW
Ricardo R DoeCanadaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson L ShinkoUnited Kingdom2024-05-01Commercial Press NEW57Onyama Limba
1001Arvin F RimJapan2024-05-07Rangoni Of Florence PROPOSAL15Xuxue Feng
1002Antonio P MorascaCanada2024-04-30Chemel, James L Cpa RENEWAL53Ioni Bowcher
1003Wickens S GauchoFrance2024-05-16Truhlar And Truhlar Attys PROPOSAL65Stephen Shaw
1004Faith I MacleadAustralia2024-05-07Feiner Bros UNQUALIFIED13Asiya Javayant
1005Murillo U BriddickItaly2024-05-10Buckley Miller Wright NEW32Bernardo Dominic
1006Morrow D OldroydIndia2024-04-25King, Christopher A Esq RENEWAL68Xuxue Feng
1007Leon Q MarrierCanada2024-05-21Feiner Bros QUALIFIED29Ioni Bowcher
1008Emily R ChuiAustralia2024-04-26Benton, John B Jr QUALIFIED82Onyama Limba
1009Misaki I SergiIndia2024-05-21Chapman, Ross E Esq UNQUALIFIED7Amy Elsner
1010Leon K BologniaSpain2024-05-03Chemel, James L Cpa NEW53Asiya Javayant
1011Chavez V BowleySpain2024-05-05Rousseaux, Michael Esq UNQUALIFIED27Onyama Limba
1012Silvio H BriddickCanada2024-05-19Benton, John B Jr QUALIFIED32Ioni Bowcher
1013Jennifer O WhobreyUnited Kingdom2024-05-22Dorl, James J Esq UNQUALIFIED79Ivan Magalhaes
1014Francesco W DarakjyRussia2024-05-16Rangoni Of Florence NEW5Elwin Sharvill
1015Juan M BriddickAustralia2024-05-05Chanay, Jeffrey A Esq UNQUALIFIED32Stephen Shaw
1016Ivar B RoysterArgentina2024-05-17Buckley Miller Wright NEGOTIATION93Stephen Shaw
1017Julie H ButtIndia2024-05-15Morlong Associates RENEWAL48Stephen Shaw
1018Emily W MacleadFrance2024-04-27Printing Dimensions NEW53Anna Fali
1019Jeanfrancois N ShinkoIndia2024-05-11Chemel, James L Cpa QUALIFIED43Anna Fali
1020Leja C BologniaBrazil2024-05-15Truhlar And Truhlar Attys PROPOSAL67Asiya Javayant
1021Aika G CaldareraJapan2024-05-17Chapman, Ross E Esq PROPOSAL26Elwin Sharvill
1022Mayumi Z StockhamFrance2024-05-20King, Christopher A Esq NEGOTIATION3Amy Elsner
1023Aruna B GarufiIndia2024-05-21Chemel, James L Cpa QUALIFIED42Stephen Shaw
1024Morrow R FlosiIndia2024-05-05Feltz Printing Service NEGOTIATION64Xuxue Feng
1025Izzy G GarufiIndia2024-05-22Commercial Press PROPOSAL93Anna Fali
1026Morrow S StockhamRussia2024-04-27Truhlar And Truhlar Attys UNQUALIFIED28Ioni Bowcher
1027Faith Y BriddickFrance2024-05-23Commercial Press UNQUALIFIED94Stephen Shaw
1028Antonio F PaprockiJapan2024-05-03Morlong Associates QUALIFIED76Onyama Limba
1029Aditya F MacleadItaly2024-04-29Printing Dimensions NEGOTIATION5Amy Elsner
1030Costa M FollerUnited Kingdom2024-05-21Chapman, Ross E Esq NEW82Ivan Magalhaes
1031Aika C FerenczJapan2024-05-17Chapman, Ross E Esq NEW62Xuxue Feng
1032Emily F CaudyAustralia2024-04-25King, Christopher A Esq NEGOTIATION51Ivan Magalhaes
1033Adams R DarakjyAustralia2024-05-05Feiner Bros NEGOTIATION37Xuxue Feng
1034James R GauchoIndia2024-05-08Feltz Printing Service NEGOTIATION22Bernardo Dominic
1035Arvin Q AmigonRussia2024-04-25Chanay, Jeffrey A Esq NEGOTIATION19Bernardo Dominic
1036Costa S WaycottBrazil2024-05-20Feiner Bros NEW37Elwin Sharvill
1037Salvatore U WaycottBrazil2024-05-11Chanay, Jeffrey A Esq UNQUALIFIED96Bernardo Dominic
1038Isabel D CaldareraUnited Kingdom2024-05-19Chemel, James L Cpa PROPOSAL71Anna Fali
1039Nicolas M AmigonFrance2024-04-29Chapman, Ross E Esq UNQUALIFIED39Asiya Javayant
1040Cody Y BologniaBrazil2024-05-07Chanay, Jeffrey A Esq QUALIFIED96Xuxue Feng
1041Emily U RulapaughJapan2024-05-06Chapman, Ross E Esq PROPOSAL59Bernardo Dominic
1042Maria H FigeroaFrance2024-05-05Chanay, Jeffrey A Esq UNQUALIFIED1Stephen Shaw
1043Wickens G ButtJapan2024-05-16Feltz Printing Service NEW35Anna Fali
1044Francesco G BologniaItaly2024-04-27Buckley Miller Wright NEW54Stephen Shaw
1045Tony C WieserAustralia2024-04-29Buckley Miller Wright QUALIFIED51Stephen Shaw
1046Julie C PoquetteAustralia2024-05-23Feiner Bros QUALIFIED66Anna Fali
1047Aruna O RulapaughSpain2024-05-19King, Christopher A Esq UNQUALIFIED4Ioni Bowcher
1048Ricardo C CaldareraSpain2024-05-03Truhlar And Truhlar Attys PROPOSAL43Bernardo Dominic
1049Misaki V OstroskyCanada2024-04-27Dorl, James J Esq UNQUALIFIED41Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Misaki P WhobreyGermanyAmy Elsner UNQUALIFIED
Aika J NickaItalyXuxue Feng RENEWAL
Ricardo H RimIndiaBernardo Dominic QUALIFIED
Antonio B OldroydFranceAnna Fali UNQUALIFIED
Emily A CaldareraRussiaIvan Magalhaes NEW
Rodrigues I DoeAustraliaAmy Elsner PROPOSAL
Leja S KuskoBrazilAmy Elsner PROPOSAL
Sinclair W GarufiBrazilAsiya Javayant RENEWAL
Jennifer I MaletRussiaAsiya Javayant UNQUALIFIED
Tony R OldroydGermanyIvan Magalhaes UNQUALIFIED
Leja Y TollnerBrazilOnyama Limba NEW
Octavia X DilliardSpainAsiya Javayant RENEWAL
Mujtaba N BriddickSpainXuxue Feng UNQUALIFIED
Octavia L MaletCanadaOnyama Limba RENEWAL
Jennifer A StensethFranceXuxue Feng NEW
Nicolas Z FigeroaJapanBernardo Dominic RENEWAL
Rodrigues L AlbaresBrazilElwin Sharvill NEW
Francesco X StensethFranceStephen Shaw UNQUALIFIED
Stacey S StensethBrazilElwin Sharvill NEW
Maria O NestleItalyStephen Shaw PROPOSAL
Juan S DarakjyJapanBernardo Dominic NEGOTIATION
Clifford J RutaSpainAmy Elsner NEGOTIATION
Aditya O KolmetzAustraliaAmy Elsner QUALIFIED
Maria U TollnerUnited KingdomXuxue Feng UNQUALIFIED
Chavez G RutaJapanAmy Elsner UNQUALIFIED
Silvio Y VenereRussiaIoni Bowcher UNQUALIFIED
Antonio C PerinArgentinaXuxue Feng NEGOTIATION
Misaki A SaylorsGermanyIoni Bowcher UNQUALIFIED
Deepesh S RutaSpainOnyama Limba PROPOSAL
Leja M GauchoRussiaIoni Bowcher NEW
Octavia K WaycottAustraliaAnna Fali NEW
Murillo Z NestleRussiaOnyama Limba NEW
Misaki L DoeIndiaOnyama Limba PROPOSAL
Chavez G AmigonRussiaIoni Bowcher PROPOSAL
Francesco H MaletUnited KingdomIvan Magalhaes QUALIFIED
Aika I StensethFranceIoni Bowcher PROPOSAL
Jefferson M DarakjyCanadaOnyama Limba RENEWAL
Octavia U ButtCanadaOnyama Limba UNQUALIFIED
Leja M MaletSpainOnyama Limba NEW
Jones Y MaletAustraliaOnyama Limba PROPOSAL
Murillo V CaldareraGermanyOnyama Limba NEW
Alejandro L ShinkoAustraliaIvan Magalhaes PROPOSAL
Mayumi J WieserFranceAmy Elsner NEW
Aditya P DarakjyAustraliaXuxue Feng NEGOTIATION
Julie A BowleyJapanAmy Elsner RENEWAL
Arvin R DarakjyRussiaXuxue Feng RENEWAL
Jennifer W PaprockiFranceElwin Sharvill UNQUALIFIED
Chavez Q WaycottGermanyIoni Bowcher UNQUALIFIED
Jefferson S StensethBrazilIvan Magalhaes NEGOTIATION
Juan R AlbaresAustraliaAnna Fali QUALIFIED
Frozen Columns
Name
Emily Y Malet
Cody T Ruta
Darci E Ferencz
Greenwood K Rim
Clifford Y Ferencz
Kadeem B Royster
David U Stenseth
Murillo N Poquette
Nicolas S Slusarski
Rodrigues C Iturbide
Mujtaba A Vocelka
Aika E Morasca
Aika X Malet
Nicolas F Glick
Mayumi N Iturbide
Adams U Morasca
James O Rulapaugh
Francesco R Butt
Tony J Schemmer
Leja B Schemmer
Aruna I Marrier
Kadeem L Doe
Leon C Briddick
Morrow R Marrier
Octavia Y Waycott
Arvin I Ruta
Adams R Garufi
Aruna M Doe
Wickens A Figeroa
Izzy S Ferencz
Rodrigues W Saylors
Munro I Flosi
Deepesh X Dilliard
Mayumi O Slusarski
Sinclair C Doe
Ricardo L Ruta
Clifford I Nestle
Isabel R Poquette
Deepesh T Nestle
Ricardo D Foller
Johnson Z Vocelka
Cody T Glick
Aruna J Butt
Nicolas O Dilliard
Greenwood K Figeroa
Jeanfrancois L Doe
Claire J Caudy
Chavez A Sergi
Nicolas P Briddick
Johnson P Tollner
IdCountryDate
1000Brazil2024-05-01
1001Italy2024-04-29
1002Germany2024-05-20
1003Australia2024-04-27
1004Japan2024-05-22
1005United Kingdom2024-05-19
1006United Kingdom2024-05-24
1007United Kingdom2024-05-23
1008Spain2024-05-13
1009Australia2024-05-22
1010Australia2024-05-10
1011Japan2024-05-10
1012Canada2024-05-21
1013Russia2024-04-29
1014Spain2024-05-23
1015Russia2024-05-11
1016Canada2024-05-19
1017Brazil2024-05-22
1018Brazil2024-04-25
1019Canada2024-04-28
1020Russia2024-05-24
1021Argentina2024-04-29
1022Japan2024-05-03
1023Germany2024-05-11
1024Russia2024-05-15
1025Canada2024-05-23
1026Russia2024-04-25
1027United Kingdom2024-05-16
1028Argentina2024-05-01
1029Germany2024-05-24
1030Germany2024-05-16
1031Italy2024-05-19
1032Argentina2024-05-15
1033India2024-05-12
1034Italy2024-05-24
1035Japan2024-05-10
1036Brazil2024-05-01
1037India2024-05-08
1038Germany2024-05-20
1039Russia2024-05-22
1040Argentina2024-05-20
1041Japan2024-05-16
1042Germany2024-05-16
1043Italy2024-05-01
1044Germany2024-04-28
1045Italy2024-05-11
1046Japan2024-05-15
1047Spain2024-05-11
1048Japan2024-05-22
1049Australia2024-05-10

On-Demand Data

NameIdCountryDate
Nicolas E Flosi1000Spain2024-05-15
Aika Y Ostrosky1001Canada2024-05-05
Maria D Caudy1002Japan2024-05-11
Morrow V Bowley1003Argentina2024-05-11
Antonio K Venere1004Argentina2024-05-24
Rodrigues N Tollner1005India2024-05-19
Claire F Paprocki1006India2024-05-15
Leon E Nicka1007Russia2024-05-23
Murillo X Shinko1008Japan2024-04-30
Munro L Ruta1009Japan2024-05-13
Jefferson I Iturbide1010Canada2024-05-13
Kaitlin G Malet1011France2024-05-23
Jeanfrancois A Darakjy1012Germany2024-05-05
Jefferson L Briddick1013Canada2024-05-10
Darci U Royster1014India2024-05-22
Tony J Foller1015Brazil2024-05-12
Salvatore R Amigon1016Russia2024-05-19
Sinclair N Poquette1017France2024-05-16
Jefferson M Rim1018Brazil2024-05-18
Rodrigues C Morasca1019Spain2024-05-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa S CampainUnited KingdomXuxue Feng PROPOSAL
Adams H CampainGermanyAmy Elsner NEGOTIATION
Julie F PaprockiGermanyXuxue Feng RENEWAL
James E OldroydFranceAsiya Javayant RENEWAL
Johnson J WaycottArgentinaIoni Bowcher NEW
Kaitlin H NickaBrazilStephen Shaw QUALIFIED
Silvio T FigeroaGermanyBernardo Dominic QUALIFIED
Deepesh I RimUnited KingdomOnyama Limba UNQUALIFIED
Jennifer U IturbideCanadaBernardo Dominic UNQUALIFIED
Aika E CampainArgentinaIoni Bowcher QUALIFIED
Julie O OstroskyFranceIoni Bowcher PROPOSAL
Jennifer Y NestleFranceBernardo Dominic NEW
Kaitlin C MaletRussiaBernardo Dominic NEGOTIATION
Clifford U KolmetzArgentinaAsiya Javayant UNQUALIFIED
Morrow O DarakjyAustraliaOnyama Limba RENEWAL
Clifford P NestleJapanIvan Magalhaes UNQUALIFIED
Johnson O KuskoItalyStephen Shaw PROPOSAL
Smith P NickaRussiaOnyama Limba QUALIFIED
Cody W StockhamIndiaIvan Magalhaes NEGOTIATION
James Q GarufiUnited KingdomAmy Elsner RENEWAL
Cody J FerenczGermanyAnna Fali RENEWAL
Silvio Y SergiUnited KingdomIoni Bowcher QUALIFIED
Cody S FlosiRussiaBernardo Dominic PROPOSAL
Ivar I KolmetzArgentinaBernardo Dominic NEGOTIATION
Deepesh M OldroydCanadaStephen Shaw NEW
Silvio A DilliardFranceOnyama Limba NEGOTIATION
Mujtaba Z RimCanadaIoni Bowcher PROPOSAL
Morrow N RimJapanStephen Shaw QUALIFIED
Aditya W SlusarskiUnited KingdomBernardo Dominic PROPOSAL
Jones L VocelkaRussiaOnyama Limba RENEWAL
Adams J MarrierSpainAsiya Javayant RENEWAL
David V CaldareraRussiaOnyama Limba UNQUALIFIED
David H SlusarskiIndiaAmy Elsner UNQUALIFIED
Jefferson U StockhamArgentinaIoni Bowcher UNQUALIFIED
Ivar Q VenereArgentinaOnyama Limba RENEWAL
Kaitlin S CampainFranceAnna Fali QUALIFIED
Costa Y NickaSpainAsiya Javayant NEW
Mujtaba I FollerIndiaIoni Bowcher UNQUALIFIED
Aditya Y WaycottGermanyXuxue Feng UNQUALIFIED
Murillo A FigeroaGermanyBernardo Dominic 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>