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
Tony G GillianArgentinaStephen Shaw RENEWAL
Smith G NestleJapanStephen Shaw UNQUALIFIED
Leon U CaudySpainXuxue Feng RENEWAL
Sinclair W FlosiBrazilAsiya Javayant PROPOSAL
Aruna B SlusarskiArgentinaAmy Elsner NEGOTIATION
Clifford K GlickFranceStephen Shaw NEGOTIATION
Emily Z MorascaAustraliaXuxue Feng UNQUALIFIED
Jennifer G PerinJapanBernardo Dominic QUALIFIED
Salvatore F MaletFranceStephen Shaw QUALIFIED
Aditya O IturbideJapanAnna Fali UNQUALIFIED
Morrow T FollerAustraliaAsiya Javayant UNQUALIFIED
Clifford Y VocelkaFranceXuxue Feng NEGOTIATION
Kadeem G StockhamJapanAnna Fali UNQUALIFIED
Deepesh Q GarufiArgentinaAmy Elsner PROPOSAL
Maisha W FollerArgentinaElwin Sharvill NEW
James X PaprockiSpainOnyama Limba RENEWAL
Munro B KolmetzAustraliaStephen Shaw UNQUALIFIED
Octavia Q MaletArgentinaOnyama Limba UNQUALIFIED
Darci N TollnerItalyOnyama Limba PROPOSAL
Jefferson R SchemmerJapanAsiya Javayant UNQUALIFIED
Jones X RoysterSpainIoni Bowcher NEW
Ivar Y PoquetteRussiaStephen Shaw NEW
Murillo Q RulapaughGermanyAsiya Javayant NEW
Julie M GauchoSpainAsiya Javayant NEGOTIATION
Tony G FigeroaJapanXuxue Feng RENEWAL
Leja X WieserCanadaAmy Elsner QUALIFIED
Morrow H RoysterJapanElwin Sharvill UNQUALIFIED
Jeanfrancois U AlbaresIndiaIoni Bowcher UNQUALIFIED
Jones L ButtCanadaIoni Bowcher PROPOSAL
Clifford D OstroskyCanadaIoni Bowcher QUALIFIED
Jefferson X KuskoIndiaXuxue Feng QUALIFIED
Salvatore L StockhamIndiaXuxue Feng NEW
Salvatore Z NestleIndiaElwin Sharvill QUALIFIED
Francesco U OstroskyItalyAmy Elsner UNQUALIFIED
Morrow R BowleySpainXuxue Feng NEGOTIATION
Wickens V RimArgentinaStephen Shaw NEGOTIATION
Mayumi B CaudyIndiaAsiya Javayant UNQUALIFIED
Kadeem Z FollerCanadaBernardo Dominic QUALIFIED
Leon Q GarufiArgentinaElwin Sharvill QUALIFIED
Cody D InouyeRussiaIvan Magalhaes QUALIFIED
Francesco Q RoysterCanadaBernardo Dominic NEGOTIATION
Deepesh R ShinkoUnited KingdomBernardo Dominic RENEWAL
Stacey Z InouyeJapanIvan Magalhaes PROPOSAL
Stacey N CaudyJapanStephen Shaw RENEWAL
Sinclair N RimSpainIvan Magalhaes UNQUALIFIED
Faith Y WaycottUnited KingdomBernardo Dominic PROPOSAL
Emily U CaldareraGermanyIvan Magalhaes UNQUALIFIED
Jennifer T KolmetzCanadaBernardo Dominic UNQUALIFIED
James W BriddickIndiaAmy Elsner RENEWAL
Leon B VenereSpainAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ashley B PerinAustraliaIvan Magalhaes NEGOTIATION
Tony Q StockhamUnited KingdomXuxue Feng NEW
Smith E IturbideJapanElwin Sharvill QUALIFIED
Adams H NickaFranceAmy Elsner NEW
Jeanfrancois Q SchemmerArgentinaAsiya Javayant NEW
Salvatore N SergiGermanyStephen Shaw UNQUALIFIED
Misaki U MarrierUnited KingdomAsiya Javayant RENEWAL
Leon K KolmetzUnited KingdomAnna Fali RENEWAL
Emily T OldroydAustraliaAmy Elsner RENEWAL
Isabel Y FerenczFranceBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel I GauchoGermany2024-05-21Commercial Press PROPOSAL37Bernardo Dominic
1001Ricardo B StockhamSpain2024-06-06Chanay, Jeffrey A Esq NEW2Amy Elsner
1002Aruna R GlickArgentina2024-05-29Chemel, James L Cpa QUALIFIED29Ioni Bowcher
1003Jennifer C GillianAustralia2024-06-13Chemel, James L Cpa NEW99Bernardo Dominic
1004Arvin X DoeArgentina2024-05-25Commercial Press UNQUALIFIED27Ivan Magalhaes
1005Johnson B MorascaItaly2024-05-23Printing Dimensions PROPOSAL40Asiya Javayant
1006Munro B TollnerUnited Kingdom2024-06-08Feiner Bros NEW6Bernardo Dominic
1007Ashley N OldroydSpain2024-06-09Chemel, James L Cpa UNQUALIFIED17Stephen Shaw
1008Aruna I SlusarskiItaly2024-05-25Dorl, James J Esq QUALIFIED66Bernardo Dominic
1009Maisha A PerinItaly2024-05-27Chemel, James L Cpa QUALIFIED34Xuxue Feng
1010Kaitlin Y GlickJapan2024-05-23Benton, John B Jr RENEWAL93Xuxue Feng
1011Ricardo Y MarrierArgentina2024-06-03Rousseaux, Michael Esq PROPOSAL13Ioni Bowcher
1012Emily W VenereUnited Kingdom2024-06-07Rangoni Of Florence RENEWAL93Elwin Sharvill
1013Nicolas R StensethAustralia2024-06-06Dorl, James J Esq NEGOTIATION20Xuxue Feng
1014Sinclair V ButtGermany2024-06-08King, Christopher A Esq PROPOSAL51Asiya Javayant
1015Arvin E KolmetzIndia2024-06-08Rousseaux, Michael Esq PROPOSAL54Ivan Magalhaes
1016Francesco G IturbideAustralia2024-05-21Feiner Bros QUALIFIED12Stephen Shaw
1017Ricardo A BowleyBrazil2024-05-31Commercial Press PROPOSAL22Xuxue Feng
1018Mayumi P CaudyRussia2024-05-29Benton, John B Jr UNQUALIFIED26Xuxue Feng
1019Kadeem B OstroskyFrance2024-06-13Benton, John B Jr NEW13Ivan Magalhaes
1020Francesco E CaldareraBrazil2024-05-30Printing Dimensions QUALIFIED0Onyama Limba
1021Alejandro E MacleadFrance2024-06-14Buckley Miller Wright PROPOSAL93Anna Fali
1022Ivar Z BologniaAustralia2024-05-23Morlong Associates QUALIFIED32Anna Fali
1023Aruna A DoeGermany2024-06-03Morlong Associates NEW27Bernardo Dominic
1024Darci N StensethSpain2024-05-28Truhlar And Truhlar Attys UNQUALIFIED76Xuxue Feng
1025Kaitlin N WieserAustralia2024-06-15Feiner Bros PROPOSAL56Stephen Shaw
1026Jeanfrancois F InouyeItaly2024-05-29Chapman, Ross E Esq NEW32Onyama Limba
1027Adams J GauchoUnited Kingdom2024-05-22Chapman, Ross E Esq PROPOSAL85Stephen Shaw
1028Isabel R OstroskyArgentina2024-05-31Morlong Associates QUALIFIED34Elwin Sharvill
1029Tony O BowleyBrazil2024-05-28Chemel, James L Cpa UNQUALIFIED6Bernardo Dominic
1030Johnson G MacleadRussia2024-05-24Chapman, Ross E Esq NEW42Onyama Limba
1031Smith Z KuskoArgentina2024-05-25Buckley Miller Wright NEGOTIATION90Bernardo Dominic
1032Johnson N VenereBrazil2024-06-10King, Christopher A Esq RENEWAL25Ioni Bowcher
1033Mujtaba D NestleUnited Kingdom2024-05-20Dorl, James J Esq NEGOTIATION97Bernardo Dominic
1034Tony I MaletCanada2024-05-31Feiner Bros PROPOSAL75Xuxue Feng
1035Isabel W MarrierSpain2024-05-31Feltz Printing Service RENEWAL47Elwin Sharvill
1036Antonio K RimItaly2024-05-31Morlong Associates RENEWAL92Onyama Limba
1037David V ShinkoArgentina2024-05-28Chemel, James L Cpa NEGOTIATION87Elwin Sharvill
1038Ivar T GauchoFrance2024-05-30Feltz Printing Service QUALIFIED63Xuxue Feng
1039Munro M PerinRussia2024-06-09Benton, John B Jr PROPOSAL4Onyama Limba
1040Aika P FlosiIndia2024-06-03Dorl, James J Esq UNQUALIFIED77Xuxue Feng
1041Leon D PaprockiFrance2024-06-12Truhlar And Truhlar Attys NEW31Asiya Javayant
1042Silvio S FerenczJapan2024-06-17Dorl, James J Esq UNQUALIFIED71Onyama Limba
1043Adams T RulapaughCanada2024-05-24Buckley Miller Wright UNQUALIFIED95Ioni Bowcher
1044Cody S MaletAustralia2024-05-21Printing Dimensions NEGOTIATION13Ioni Bowcher
1045Faith Z TollnerIndia2024-05-25Dorl, James J Esq UNQUALIFIED20Amy Elsner
1046Aruna E KuskoCanada2024-05-31Morlong Associates NEW35Amy Elsner
1047Ivar P SchemmerFrance2024-06-08Dorl, James J Esq UNQUALIFIED1Ivan Magalhaes
1048Tony F SergiIndia2024-06-05Dorl, James J Esq PROPOSAL59Amy Elsner
1049Kadeem F OstroskySpain2024-06-10Feltz Printing Service NEW48Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Octavia Z RutaIndiaAsiya Javayant NEGOTIATION
Maria H FlosiBrazilIoni Bowcher NEW
Murillo R RimAustraliaAsiya Javayant RENEWAL
Stacey M MarrierSpainIvan Magalhaes NEGOTIATION
Nicolas H DarakjyAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois P NickaSpainIvan Magalhaes NEGOTIATION
Arvin Y FerenczUnited KingdomIvan Magalhaes NEGOTIATION
Greenwood N PerinJapanAnna Fali NEW
Julie R MaletCanadaAmy Elsner NEGOTIATION
Wickens P TollnerIndiaAnna Fali PROPOSAL
Kadeem X ChuiBrazilElwin Sharvill RENEWAL
Aruna M AmigonIndiaIvan Magalhaes QUALIFIED
Kaitlin R WhobreyCanadaAmy Elsner RENEWAL
Clifford G SlusarskiRussiaOnyama Limba NEGOTIATION
Murillo D OldroydIndiaAsiya Javayant QUALIFIED
Jennifer K DilliardAustraliaOnyama Limba QUALIFIED
Ashley P InouyeArgentinaAmy Elsner PROPOSAL
Darci W CaudyIndiaXuxue Feng QUALIFIED
Mujtaba V SlusarskiIndiaOnyama Limba RENEWAL
Nicolas S GlickGermanyAsiya Javayant NEGOTIATION
Maisha E MaletArgentinaBernardo Dominic QUALIFIED
Rodrigues D FollerCanadaXuxue Feng NEGOTIATION
Stacey Q SlusarskiFranceStephen Shaw NEW
Francesco N DarakjyGermanyAnna Fali NEW
Kaitlin P InouyeItalyIoni Bowcher PROPOSAL
Deepesh K FollerAustraliaXuxue Feng NEW
Leja V ShinkoGermanyIvan Magalhaes RENEWAL
David Q MarrierAustraliaOnyama Limba NEW
David B DarakjySpainOnyama Limba PROPOSAL
Maisha Q DoeIndiaOnyama Limba PROPOSAL
Adams U VenereCanadaAsiya Javayant RENEWAL
Maria R NickaUnited KingdomIoni Bowcher RENEWAL
Nicolas M GarufiJapanIoni Bowcher UNQUALIFIED
Leon W MorascaItalyAsiya Javayant UNQUALIFIED
Clifford L CaldareraItalyStephen Shaw NEGOTIATION
Alejandro I FlosiSpainAnna Fali RENEWAL
Claire E CaldareraAustraliaAmy Elsner UNQUALIFIED
Aika G SchemmerBrazilXuxue Feng PROPOSAL
Tony W AmigonCanadaIoni Bowcher QUALIFIED
Ricardo Q PoquetteUnited KingdomAnna Fali PROPOSAL
Antonio L CaudyAustraliaElwin Sharvill PROPOSAL
Misaki F DoeBrazilIoni Bowcher PROPOSAL
Maria S CampainSpainAmy Elsner PROPOSAL
Julie E FlosiSpainIvan Magalhaes RENEWAL
Salvatore H IturbideFranceAnna Fali QUALIFIED
Cody G CaldareraItalyXuxue Feng QUALIFIED
Leja S SergiAustraliaStephen Shaw PROPOSAL
Jones T RoysterGermanyAnna Fali NEW
Maria U AmigonFranceIoni Bowcher NEW
Munro X TollnerGermanyIoni Bowcher QUALIFIED
Frozen Columns
Name
Mujtaba K Royster
Nicolas N Venere
Francesco W Vocelka
Claire V Gaucho
Ivar N Tollner
Wickens G Darakjy
Jeanfrancois A Amigon
Morrow M Inouye
Smith R Garufi
Antonio A Iturbide
Rodrigues G Venere
Alejandro D Malet
Cody M Caudy
Arvin K Vocelka
Aika K Stockham
Aika M Caldarera
Kaitlin G Malet
Costa K Nestle
Rodrigues N Foller
Murillo J Saylors
Emily D Garufi
Emily C Ferencz
Jefferson P Kusko
Costa B Gillian
Alejandro F Inouye
Octavia Y Venere
Jones Q Ferencz
Deepesh O Figeroa
Leon K Amigon
Maria X Bowley
Claire W Venere
Murillo T Figeroa
Sinclair I Butt
Maisha Y Tollner
Costa L Ostrosky
Misaki N Maclead
Adams O Ferencz
David M Doe
Claire X Tollner
Kaitlin N Dilliard
Ashley Z Kusko
Kaitlin J Oldroyd
Ashley C Gillian
Nicolas O Dilliard
Antonio Y Marrier
Octavia K Poquette
Jeanfrancois V Paprocki
Misaki C Flosi
Leja W Stenseth
Stacey C Nestle
IdCountryDate
1000Canada2024-06-10
1001Germany2024-06-13
1002Russia2024-05-29
1003Brazil2024-06-06
1004Japan2024-05-21
1005Russia2024-06-10
1006Canada2024-06-14
1007Canada2024-06-06
1008Australia2024-05-23
1009United Kingdom2024-06-08
1010Spain2024-05-20
1011France2024-05-28
1012Canada2024-05-22
1013Argentina2024-06-01
1014Brazil2024-06-11
1015Japan2024-05-20
1016Argentina2024-06-10
1017France2024-05-27
1018Japan2024-06-06
1019Australia2024-06-14
1020Canada2024-05-22
1021Argentina2024-05-31
1022United Kingdom2024-06-06
1023Japan2024-06-11
1024Australia2024-06-03
1025Spain2024-05-20
1026Argentina2024-05-19
1027Germany2024-05-30
1028Australia2024-06-15
1029Canada2024-06-11
1030Japan2024-06-05
1031Russia2024-06-16
1032Argentina2024-05-29
1033Russia2024-05-29
1034Italy2024-06-12
1035United Kingdom2024-05-26
1036Australia2024-06-01
1037Germany2024-05-21
1038India2024-05-19
1039Japan2024-06-17
1040Spain2024-05-19
1041Spain2024-06-12
1042Brazil2024-06-13
1043Argentina2024-05-25
1044Germany2024-06-08
1045Australia2024-05-22
1046Russia2024-05-21
1047Italy2024-05-19
1048Japan2024-06-11
1049India2024-06-08

On-Demand Data

NameIdCountryDate
Silvio S Morasca1000France2024-06-14
Wickens E Malet1001Argentina2024-06-15
Arvin W Ostrosky1002Italy2024-05-21
Mujtaba F Bowley1003Brazil2024-06-01
Darci L Ostrosky1004Russia2024-05-23
Deepesh N Sergi1005India2024-05-23
Maisha M Garufi1006France2024-06-09
Clifford S Ostrosky1007France2024-06-13
Arvin H Stenseth1008Japan2024-05-27
Greenwood V Gaucho1009Japan2024-05-20
Alejandro D Bowley1010India2024-06-03
Alejandro P Malet1011Spain2024-05-22
Aika Q Tollner1012United Kingdom2024-05-22
Leon B Briddick1013Canada2024-06-07
Arvin T Kusko1014Canada2024-06-13
James J Paprocki1015Japan2024-06-07
Ricardo I Morasca1016Japan2024-06-12
Smith E Vocelka1017India2024-06-10
Chavez K Schemmer1018Spain2024-05-29
Jefferson L Nicka1019Japan2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba G GillianIndiaAnna Fali RENEWAL
Kaitlin O ButtGermanyBernardo Dominic QUALIFIED
Jennifer G MorascaUnited KingdomAsiya Javayant NEW
Rodrigues O WieserSpainElwin Sharvill NEGOTIATION
Clifford H FollerBrazilBernardo Dominic UNQUALIFIED
Murillo W CaldareraUnited KingdomElwin Sharvill NEGOTIATION
Cody X WieserUnited KingdomXuxue Feng UNQUALIFIED
Jones R IturbideJapanElwin Sharvill QUALIFIED
Adams J RulapaughRussiaAmy Elsner RENEWAL
Costa S OstroskyFranceStephen Shaw PROPOSAL
Ivar Z PoquetteItalyElwin Sharvill NEW
Johnson S CaudyFranceStephen Shaw PROPOSAL
Alejandro B GillianFranceStephen Shaw RENEWAL
Tony F StensethItalyAmy Elsner QUALIFIED
Munro C PoquetteSpainXuxue Feng UNQUALIFIED
Aika K SaylorsUnited KingdomBernardo Dominic NEGOTIATION
Izzy E RimUnited KingdomIoni Bowcher UNQUALIFIED
Murillo W RimArgentinaStephen Shaw NEGOTIATION
Munro V KolmetzJapanIvan Magalhaes PROPOSAL
Ricardo G StensethFranceOnyama Limba QUALIFIED
Jennifer C BriddickIndiaOnyama Limba PROPOSAL
Johnson Y OldroydCanadaElwin Sharvill NEW
Leon R SergiSpainIvan Magalhaes RENEWAL
Johnson H ChuiIndiaAnna Fali UNQUALIFIED
David T NickaFranceAmy Elsner NEW
Jeanfrancois U DarakjyArgentinaOnyama Limba RENEWAL
Ashley B RimIndiaAnna Fali RENEWAL
Deepesh Z VenereArgentinaIoni Bowcher RENEWAL
Adams B OldroydIndiaAnna Fali NEGOTIATION
Emily W MorascaSpainAnna Fali RENEWAL
Chavez L MorascaUnited KingdomOnyama Limba QUALIFIED
Murillo K RutaArgentinaIvan Magalhaes NEGOTIATION
Munro Y TollnerGermanyIoni Bowcher NEW
Jones P VocelkaFranceElwin Sharvill RENEWAL
Arvin S CaudyIndiaIvan Magalhaes NEW
Misaki R IturbideCanadaXuxue Feng NEW
Jefferson T GauchoItalyXuxue Feng NEGOTIATION
Jeanfrancois D OstroskyAustraliaIvan Magalhaes RENEWAL
Misaki M FigeroaBrazilIvan Magalhaes PROPOSAL
Deepesh H MorascaSpainIoni Bowcher 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>