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
Munro S MacleadRussiaAmy Elsner PROPOSAL
Jeanfrancois G PaprockiJapanElwin Sharvill QUALIFIED
Silvio N DilliardGermanyIoni Bowcher NEGOTIATION
Darci N ButtAustraliaAsiya Javayant RENEWAL
Francesco C WieserSpainAmy Elsner RENEWAL
Stacey V IturbideRussiaAmy Elsner UNQUALIFIED
Isabel Y RimFranceIoni Bowcher UNQUALIFIED
Jefferson E VocelkaJapanAnna Fali UNQUALIFIED
Isabel S StensethJapanIvan Magalhaes QUALIFIED
Smith C KuskoBrazilAnna Fali RENEWAL
Maisha P WhobreyAustraliaAnna Fali NEW
Mujtaba M ShinkoAustraliaAnna Fali QUALIFIED
Isabel R OldroydUnited KingdomIvan Magalhaes NEW
Chavez K DoeCanadaStephen Shaw QUALIFIED
Juan P PaprockiIndiaAsiya Javayant QUALIFIED
Maisha E OstroskyCanadaBernardo Dominic RENEWAL
Sinclair B CaldareraArgentinaIoni Bowcher UNQUALIFIED
Arvin B OldroydRussiaIoni Bowcher NEW
Greenwood M InouyeAustraliaAnna Fali NEW
Jeanfrancois V ButtArgentinaOnyama Limba NEW
Sinclair T ChuiFranceIoni Bowcher RENEWAL
Murillo G SaylorsFranceOnyama Limba UNQUALIFIED
Juan O FerenczUnited KingdomXuxue Feng NEW
Emily M PoquetteUnited KingdomIoni Bowcher PROPOSAL
Tony R RulapaughItalyIoni Bowcher NEW
Misaki S BowleyGermanyOnyama Limba UNQUALIFIED
Wickens N RoysterGermanyAsiya Javayant QUALIFIED
Wickens U GarufiArgentinaOnyama Limba NEW
Aika Z GlickGermanyOnyama Limba NEW
Murillo E GarufiAustraliaAnna Fali UNQUALIFIED
Cody C WaycottBrazilIvan Magalhaes UNQUALIFIED
Julie G StockhamItalyAmy Elsner RENEWAL
Adams E MaletArgentinaXuxue Feng NEGOTIATION
Maria O IturbideFranceAmy Elsner NEW
Isabel F StensethIndiaXuxue Feng NEW
Aika G NickaAustraliaAmy Elsner RENEWAL
Alejandro N KuskoSpainStephen Shaw PROPOSAL
Leon X WieserRussiaOnyama Limba NEW
Antonio I NickaFranceAsiya Javayant PROPOSAL
Murillo A SlusarskiUnited KingdomXuxue Feng NEGOTIATION
Isabel B PaprockiJapanXuxue Feng NEGOTIATION
Adams D ShinkoFranceIvan Magalhaes QUALIFIED
Johnson L StockhamAustraliaOnyama Limba RENEWAL
Maisha F BowleyArgentinaAnna Fali QUALIFIED
Jefferson K GauchoAustraliaXuxue Feng NEW
Johnson G MacleadRussiaIoni Bowcher PROPOSAL
Octavia F WieserIndiaAmy Elsner NEW
Chavez W MorascaUnited KingdomElwin Sharvill PROPOSAL
Tony Q ShinkoCanadaIvan Magalhaes RENEWAL
David V DilliardJapanAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody E PerinJapanAnna Fali RENEWAL
Tony U KuskoArgentinaOnyama Limba NEW
Arvin W WhobreyJapanAmy Elsner PROPOSAL
Sinclair D VocelkaFranceOnyama Limba PROPOSAL
Isabel M ChuiCanadaAnna Fali NEW
Arvin T GlickUnited KingdomAsiya Javayant QUALIFIED
Aditya B CampainRussiaIoni Bowcher NEW
Jones E MacleadIndiaElwin Sharvill NEGOTIATION
Jennifer Q GauchoItalyAsiya Javayant QUALIFIED
Clifford F StockhamFranceBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily W GauchoAustralia2024-08-29Benton, John B Jr NEGOTIATION35Elwin Sharvill
1001Morrow H GlickRussia2024-09-08Chemel, James L Cpa UNQUALIFIED50Ioni Bowcher
1002Maisha T DilliardFrance2024-09-03Rousseaux, Michael Esq PROPOSAL97Elwin Sharvill
1003Cody F DarakjyGermany2024-09-17Commercial Press RENEWAL19Ioni Bowcher
1004Misaki U GillianGermany2024-09-09Truhlar And Truhlar Attys UNQUALIFIED3Stephen Shaw
1005Julie Y WieserItaly2024-08-26Chanay, Jeffrey A Esq UNQUALIFIED71Ivan Magalhaes
1006Johnson C MaletUnited Kingdom2024-09-15Benton, John B Jr PROPOSAL36Onyama Limba
1007Munro D BriddickAustralia2024-09-03King, Christopher A Esq RENEWAL35Stephen Shaw
1008Arvin S MaletAustralia2024-09-16King, Christopher A Esq QUALIFIED65Ioni Bowcher
1009Maria S RimFrance2024-09-08Feltz Printing Service PROPOSAL90Ivan Magalhaes
1010Arvin X StensethItaly2024-09-22Dorl, James J Esq NEGOTIATION32Elwin Sharvill
1011Maisha F DoeItaly2024-09-12Chemel, James L Cpa NEW19Onyama Limba
1012Greenwood U AmigonUnited Kingdom2024-09-12Commercial Press NEW94Xuxue Feng
1013Claire F KuskoAustralia2024-09-10Chanay, Jeffrey A Esq UNQUALIFIED42Xuxue Feng
1014Antonio H SaylorsSpain2024-08-27Morlong Associates QUALIFIED2Amy Elsner
1015Silvio T KuskoArgentina2024-08-25Feiner Bros NEW58Asiya Javayant
1016Greenwood D MacleadAustralia2024-08-31Dorl, James J Esq NEW90Onyama Limba
1017Jennifer X FerenczBrazil2024-08-27King, Christopher A Esq PROPOSAL35Anna Fali
1018Ricardo U DilliardFrance2024-08-26Rousseaux, Michael Esq PROPOSAL71Onyama Limba
1019Faith S MorascaAustralia2024-09-05Morlong Associates PROPOSAL4Xuxue Feng
1020Alejandro S MarrierCanada2024-09-09Chemel, James L Cpa PROPOSAL86Ioni Bowcher
1021Ashley L GlickBrazil2024-09-08Rousseaux, Michael Esq UNQUALIFIED39Xuxue Feng
1022Francesco I DoeCanada2024-09-11Morlong Associates NEGOTIATION50Anna Fali
1023Leja L PerinJapan2024-09-04Benton, John B Jr RENEWAL35Ivan Magalhaes
1024David D OstroskyGermany2024-08-28Benton, John B Jr QUALIFIED32Elwin Sharvill
1025Adams W GarufiSpain2024-09-02Commercial Press UNQUALIFIED57Stephen Shaw
1026Darci A DilliardFrance2024-09-07Chapman, Ross E Esq NEW46Amy Elsner
1027Jeanfrancois Y PerinCanada2024-09-02Chanay, Jeffrey A Esq PROPOSAL43Asiya Javayant
1028Cody S FlosiItaly2024-09-07Truhlar And Truhlar Attys RENEWAL59Xuxue Feng
1029Ashley B VenereRussia2024-09-19King, Christopher A Esq RENEWAL20Stephen Shaw
1030Faith O SchemmerItaly2024-09-06Feiner Bros NEW32Bernardo Dominic
1031Costa C GarufiRussia2024-09-16Chapman, Ross E Esq NEGOTIATION25Amy Elsner
1032Jones N PoquetteGermany2024-09-19Benton, John B Jr UNQUALIFIED54Ivan Magalhaes
1033James F PerinFrance2024-08-30Chapman, Ross E Esq NEGOTIATION10Ivan Magalhaes
1034Jeanfrancois I ButtUnited Kingdom2024-09-14Printing Dimensions RENEWAL94Asiya Javayant
1035Octavia P GlickAustralia2024-08-30Rangoni Of Florence PROPOSAL15Stephen Shaw
1036Cody M VenereSpain2024-08-30Feiner Bros UNQUALIFIED85Asiya Javayant
1037Francesco J KuskoBrazil2024-09-08Morlong Associates PROPOSAL78Xuxue Feng
1038Mujtaba A WieserItaly2024-09-09Feiner Bros UNQUALIFIED3Bernardo Dominic
1039Greenwood S PaprockiBrazil2024-09-09Chapman, Ross E Esq PROPOSAL64Ivan Magalhaes
1040Costa G BologniaCanada2024-09-05Buckley Miller Wright UNQUALIFIED20Onyama Limba
1041Mujtaba I StensethArgentina2024-08-31Chemel, James L Cpa PROPOSAL47Asiya Javayant
1042Morrow V IturbideIndia2024-09-20Morlong Associates PROPOSAL87Bernardo Dominic
1043Leja N OldroydRussia2024-09-06Dorl, James J Esq RENEWAL54Bernardo Dominic
1044Rodrigues U MaletJapan2024-09-02Feltz Printing Service NEW93Xuxue Feng
1045Aruna C OstroskyAustralia2024-09-09Feiner Bros UNQUALIFIED34Ioni Bowcher
1046James D OstroskyRussia2024-08-26Buckley Miller Wright NEW42Ivan Magalhaes
1047Darci Z MarrierArgentina2024-09-16Feiner Bros UNQUALIFIED12Amy Elsner
1048Salvatore P TollnerUnited Kingdom2024-09-23Chapman, Ross E Esq RENEWAL62Amy Elsner
1049Aditya X RulapaughGermany2024-08-25Benton, John B Jr PROPOSAL49Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aruna G AlbaresUnited KingdomAsiya Javayant RENEWAL
Aika K InouyeJapanXuxue Feng UNQUALIFIED
Leja F WieserAustraliaAnna Fali PROPOSAL
Munro J BologniaCanadaOnyama Limba UNQUALIFIED
Emily D NickaFranceStephen Shaw NEGOTIATION
Johnson Z BologniaItalyIvan Magalhaes NEW
Ashley S MarrierFranceStephen Shaw QUALIFIED
Tony L VenereItalyAsiya Javayant NEGOTIATION
Aruna O WieserArgentinaXuxue Feng PROPOSAL
Antonio E CampainGermanyBernardo Dominic NEGOTIATION
Aruna A BowleyItalyBernardo Dominic NEGOTIATION
Salvatore J GarufiUnited KingdomOnyama Limba NEW
Aruna J SlusarskiRussiaXuxue Feng NEW
Kadeem K FerenczUnited KingdomXuxue Feng UNQUALIFIED
Ivar R DoeUnited KingdomIvan Magalhaes RENEWAL
Rodrigues W SlusarskiGermanyAsiya Javayant UNQUALIFIED
Isabel L GauchoAustraliaAsiya Javayant QUALIFIED
Emily Z MacleadSpainOnyama Limba PROPOSAL
Aruna E BologniaSpainElwin Sharvill UNQUALIFIED
Morrow K BowleyUnited KingdomOnyama Limba RENEWAL
Misaki X PaprockiArgentinaIvan Magalhaes QUALIFIED
Stacey F VenereSpainIvan Magalhaes NEGOTIATION
Kadeem H GillianGermanyOnyama Limba PROPOSAL
Alejandro H KuskoGermanyAnna Fali QUALIFIED
Mayumi C RutaFranceBernardo Dominic UNQUALIFIED
Sinclair B KolmetzRussiaIoni Bowcher PROPOSAL
Maria D FollerAustraliaAmy Elsner NEW
Silvio Z RoysterGermanyAsiya Javayant QUALIFIED
Salvatore S OldroydArgentinaElwin Sharvill QUALIFIED
Cody Z GarufiSpainAsiya Javayant PROPOSAL
Mayumi J CampainCanadaIoni Bowcher UNQUALIFIED
Antonio C KolmetzItalyAmy Elsner NEW
Adams Q RutaBrazilStephen Shaw QUALIFIED
Leja I PoquetteArgentinaElwin Sharvill UNQUALIFIED
Alejandro P BologniaIndiaBernardo Dominic PROPOSAL
Juan R ButtSpainAnna Fali UNQUALIFIED
Claire V WieserGermanyAsiya Javayant RENEWAL
Sinclair D TollnerSpainXuxue Feng PROPOSAL
Chavez P ChuiJapanAmy Elsner NEW
Maisha L CaldareraBrazilIvan Magalhaes NEW
Aika A SchemmerSpainXuxue Feng UNQUALIFIED
Clifford V GarufiIndiaAnna Fali PROPOSAL
Claire W OldroydJapanOnyama Limba PROPOSAL
Cody E GlickRussiaStephen Shaw NEGOTIATION
Salvatore A WieserBrazilElwin Sharvill PROPOSAL
Aika D SlusarskiJapanAnna Fali NEW
Aika D SaylorsUnited KingdomOnyama Limba NEGOTIATION
Costa M GarufiArgentinaElwin Sharvill QUALIFIED
Tony U DilliardGermanyAsiya Javayant UNQUALIFIED
Maria Q SergiCanadaXuxue Feng QUALIFIED
Frozen Columns
Name
Aruna B Slusarski
Clifford X Poquette
Aditya P Paprocki
Aruna N Wieser
Deepesh Z Amigon
Misaki K Glick
Johnson X Slusarski
Jones I Ruta
Murillo F Ferencz
Wickens X Whobrey
Izzy S Vocelka
Stacey O Malet
Munro C Stockham
Faith E Slusarski
Nicolas G Slusarski
Aruna A Gillian
Tony V Butt
Johnson I Flosi
Alejandro Q Kusko
Adams C Campain
Smith D Morasca
Misaki Y Kusko
Julie D Nestle
Julie M Ferencz
Misaki M Perin
Greenwood A Foller
Mujtaba Z Garufi
Darci C Albares
Julie Y Rulapaugh
Kadeem F Caldarera
Deepesh O Iturbide
Chavez R Kolmetz
David M Iturbide
Cody H Perin
Murillo C Ostrosky
Greenwood P Poquette
Maisha D Flosi
Silvio Y Schemmer
Kadeem S Nicka
Izzy Z Garufi
Antonio C Maclead
Mujtaba F Stenseth
Juan F Garufi
Darci E Gaucho
David S Ruta
Chavez V Sergi
Mayumi R Shinko
Arvin W Marrier
Smith V Saylors
Arvin Q Doe
IdCountryDate
1000Russia2024-09-05
1001Germany2024-09-17
1002France2024-09-12
1003Australia2024-09-03
1004Australia2024-08-29
1005United Kingdom2024-08-26
1006France2024-09-09
1007Italy2024-09-03
1008Brazil2024-09-15
1009Canada2024-09-11
1010Germany2024-09-18
1011United Kingdom2024-09-14
1012Australia2024-09-14
1013Italy2024-08-28
1014Brazil2024-08-30
1015France2024-09-18
1016Spain2024-09-14
1017India2024-09-23
1018Spain2024-09-13
1019United Kingdom2024-08-29
1020Germany2024-09-16
1021France2024-09-22
1022Australia2024-09-16
1023India2024-09-17
1024France2024-09-05
1025India2024-08-27
1026France2024-09-11
1027Brazil2024-08-28
1028Brazil2024-09-16
1029United Kingdom2024-08-27
1030Italy2024-09-14
1031Germany2024-09-17
1032Spain2024-09-12
1033Spain2024-09-17
1034France2024-09-09
1035Argentina2024-09-08
1036Italy2024-08-30
1037France2024-09-16
1038Argentina2024-08-31
1039Brazil2024-09-17
1040India2024-09-14
1041India2024-09-01
1042United Kingdom2024-09-10
1043Russia2024-09-17
1044Canada2024-08-25
1045France2024-09-20
1046Argentina2024-09-07
1047India2024-08-30
1048France2024-08-26
1049Spain2024-08-27

On-Demand Data

NameIdCountryDate
Morrow D Saylors1000India2024-09-19
Julie P Caudy1001Russia2024-09-02
Kadeem I Vocelka1002United Kingdom2024-08-28
Jefferson W Garufi1003Canada2024-09-17
Wickens Z Wieser1004United Kingdom2024-09-15
Leja C Oldroyd1005India2024-09-13
Aditya X Flosi1006Spain2024-09-14
Maisha S Royster1007Japan2024-09-08
Costa U Royster1008India2024-08-28
Izzy I Caldarera1009France2024-09-15
Misaki T Caudy1010Russia2024-09-16
Emily W Royster1011Italy2024-09-14
Jeanfrancois J Foller1012Argentina2024-08-27
Ashley E Malet1013Russia2024-08-25
Aditya I Ostrosky1014Argentina2024-08-28
Mujtaba Z Caldarera1015Brazil2024-09-17
Octavia D Slusarski1016Argentina2024-09-04
Murillo V Stenseth1017Canada2024-09-08
Arvin M Inouye1018United Kingdom2024-09-15
Stacey V Tollner1019Russia2024-08-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia I TollnerUnited KingdomStephen Shaw PROPOSAL
Juan Y PerinAustraliaBernardo Dominic RENEWAL
Mayumi P WhobreyUnited KingdomAnna Fali UNQUALIFIED
Aruna B TollnerItalyStephen Shaw PROPOSAL
Leja O NestleBrazilIoni Bowcher UNQUALIFIED
Rodrigues E SaylorsUnited KingdomElwin Sharvill RENEWAL
Faith C SchemmerGermanyAsiya Javayant NEW
Jones J VenereFranceBernardo Dominic NEGOTIATION
Emily O InouyeArgentinaBernardo Dominic NEW
Ricardo A BowleyFranceAmy Elsner QUALIFIED
Munro B SaylorsUnited KingdomBernardo Dominic RENEWAL
Aditya R SchemmerUnited KingdomElwin Sharvill NEW
Julie Y RulapaughBrazilStephen Shaw NEW
Isabel Y DoeIndiaBernardo Dominic QUALIFIED
Juan W CampainBrazilXuxue Feng NEGOTIATION
Ashley D InouyeSpainElwin Sharvill QUALIFIED
Aruna D StensethGermanyAmy Elsner QUALIFIED
Darci A FollerFranceAsiya Javayant PROPOSAL
Tony F MacleadIndiaBernardo Dominic NEGOTIATION
Deepesh I StockhamJapanAsiya Javayant NEGOTIATION
Cody E MarrierIndiaElwin Sharvill QUALIFIED
Rodrigues A WhobreyCanadaXuxue Feng QUALIFIED
Ivar P PerinRussiaStephen Shaw NEW
Murillo I WhobreyAustraliaXuxue Feng NEGOTIATION
Jefferson V KuskoCanadaStephen Shaw PROPOSAL
Wickens V PoquetteAustraliaBernardo Dominic PROPOSAL
Salvatore M CaudyUnited KingdomAsiya Javayant PROPOSAL
Isabel Z SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Wickens C StensethUnited KingdomIoni Bowcher PROPOSAL
Clifford K PoquetteJapanAmy Elsner UNQUALIFIED
Jeanfrancois Z NestleSpainStephen Shaw UNQUALIFIED
Aika J CampainCanadaAsiya Javayant RENEWAL
Jeanfrancois N MorascaBrazilXuxue Feng NEW
Murillo L AmigonUnited KingdomIvan Magalhaes PROPOSAL
Morrow H BologniaRussiaAsiya Javayant NEW
Adams F VenereJapanElwin Sharvill QUALIFIED
Jones F FerenczFranceAsiya Javayant PROPOSAL
Aditya D FerenczSpainAnna Fali RENEWAL
Julie I OstroskyCanadaAnna Fali PROPOSAL
Jeanfrancois F DarakjyAustraliaOnyama Limba PROPOSAL

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