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 F FollerGermanyStephen Shaw QUALIFIED
Aruna K GlickJapanBernardo Dominic QUALIFIED
Ashley O MorascaBrazilStephen Shaw RENEWAL
Johnson S OldroydGermanyOnyama Limba NEW
Octavia M FigeroaGermanyAsiya Javayant UNQUALIFIED
Tony J OstroskyFranceXuxue Feng NEW
Leon F DoeSpainAsiya Javayant QUALIFIED
Emily X SergiUnited KingdomBernardo Dominic NEGOTIATION
Ivar Z ShinkoCanadaBernardo Dominic NEGOTIATION
Clifford Q TollnerAustraliaElwin Sharvill RENEWAL
Clifford Q WaycottUnited KingdomElwin Sharvill NEGOTIATION
Isabel V FollerGermanyBernardo Dominic UNQUALIFIED
Greenwood U SergiSpainBernardo Dominic NEGOTIATION
Munro P DilliardGermanyIoni Bowcher PROPOSAL
Aika T InouyeUnited KingdomOnyama Limba NEW
Leon F StockhamFranceAnna Fali UNQUALIFIED
Chavez O TollnerRussiaXuxue Feng NEW
David D ShinkoBrazilAnna Fali QUALIFIED
Tony C MaletSpainStephen Shaw QUALIFIED
Faith J BowleyUnited KingdomAmy Elsner UNQUALIFIED
James S MorascaGermanyIvan Magalhaes QUALIFIED
Johnson Y RulapaughFranceElwin Sharvill UNQUALIFIED
Izzy M WaycottFranceOnyama Limba UNQUALIFIED
Clifford R MorascaGermanyAmy Elsner PROPOSAL
Ashley O MaletAustraliaIoni Bowcher NEW
Antonio A BologniaRussiaIoni Bowcher QUALIFIED
Aruna T MacleadArgentinaIoni Bowcher NEW
Deepesh R VenereItalyIoni Bowcher QUALIFIED
Jefferson H FollerGermanyOnyama Limba NEGOTIATION
Jeanfrancois M RulapaughGermanyXuxue Feng PROPOSAL
Aditya V StockhamItalyIvan Magalhaes PROPOSAL
Alejandro K MorascaIndiaOnyama Limba NEGOTIATION
Mayumi X PoquetteItalyAnna Fali PROPOSAL
Munro J BriddickFranceXuxue Feng PROPOSAL
Aditya B PaprockiArgentinaStephen Shaw NEW
Kadeem E IturbideUnited KingdomBernardo Dominic NEW
Emily N SlusarskiArgentinaIvan Magalhaes UNQUALIFIED
Misaki E FlosiItalyAnna Fali RENEWAL
Alejandro N DarakjyCanadaOnyama Limba NEW
Isabel V OldroydJapanBernardo Dominic RENEWAL
Rodrigues Y DilliardJapanStephen Shaw QUALIFIED
Jefferson Q StensethItalyIoni Bowcher QUALIFIED
Costa J VocelkaCanadaElwin Sharvill RENEWAL
Isabel B RoysterSpainAnna Fali PROPOSAL
Aditya F RoysterGermanyIoni Bowcher PROPOSAL
Aika G MacleadRussiaAnna Fali UNQUALIFIED
Ricardo P GarufiRussiaIoni Bowcher QUALIFIED
Ivar X KuskoJapanIvan Magalhaes UNQUALIFIED
Clifford W RimFranceAmy Elsner QUALIFIED
Claire M FerenczFranceXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Emily Q SaylorsAustraliaXuxue Feng NEGOTIATION
Costa W StensethRussiaOnyama Limba NEW
Smith V DarakjyGermanyIvan Magalhaes PROPOSAL
Ashley J BologniaGermanyElwin Sharvill NEW
Aditya K PaprockiItalyAnna Fali NEGOTIATION
Silvio V AmigonGermanyElwin Sharvill UNQUALIFIED
Deepesh W CampainUnited KingdomElwin Sharvill PROPOSAL
Francesco W CaudyFranceIvan Magalhaes PROPOSAL
Alejandro K AlbaresArgentinaAmy Elsner NEW
Salvatore O FollerGermanyXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer K RutaCanada2024-06-02Chapman, Ross E Esq QUALIFIED46Xuxue Feng
1001Leja K SergiIndia2024-06-03Buckley Miller Wright QUALIFIED12Asiya Javayant
1002Sinclair E MaletRussia2024-05-26Rousseaux, Michael Esq NEW13Xuxue Feng
1003Sinclair W DarakjyCanada2024-06-04Rousseaux, Michael Esq NEGOTIATION44Bernardo Dominic
1004Jeanfrancois Z CaldareraCanada2024-06-05Chapman, Ross E Esq PROPOSAL67Asiya Javayant
1005Aika M CaldareraCanada2024-06-12Rangoni Of Florence NEGOTIATION73Ivan Magalhaes
1006Maisha C MaletGermany2024-05-24King, Christopher A Esq NEW85Bernardo Dominic
1007Wickens W OldroydBrazil2024-06-11Commercial Press NEW11Onyama Limba
1008Munro Y StockhamIndia2024-05-25Morlong Associates RENEWAL22Bernardo Dominic
1009Sinclair S BologniaRussia2024-06-22Chemel, James L Cpa RENEWAL44Amy Elsner
1010Aika B GillianUnited Kingdom2024-06-01Benton, John B Jr QUALIFIED61Anna Fali
1011Sinclair U GlickSpain2024-06-01Feltz Printing Service NEGOTIATION2Ivan Magalhaes
1012Ivar Z PaprockiBrazil2024-06-18Printing Dimensions RENEWAL75Stephen Shaw
1013Jones W RutaSpain2024-06-12Commercial Press NEW32Amy Elsner
1014Ricardo H SlusarskiUnited Kingdom2024-06-18Chapman, Ross E Esq RENEWAL25Bernardo Dominic
1015Jennifer B CaldareraItaly2024-05-29Dorl, James J Esq QUALIFIED4Anna Fali
1016Juan M RoysterBrazil2024-06-10Benton, John B Jr PROPOSAL8Onyama Limba
1017Juan D DarakjyCanada2024-06-03Dorl, James J Esq RENEWAL48Elwin Sharvill
1018Emily F CaldareraFrance2024-05-27Morlong Associates QUALIFIED48Stephen Shaw
1019Clifford H SaylorsSpain2024-06-20Benton, John B Jr PROPOSAL15Amy Elsner
1020Aika I RimSpain2024-06-17Commercial Press NEGOTIATION78Onyama Limba
1021Isabel D BriddickItaly2024-06-22Chanay, Jeffrey A Esq RENEWAL37Anna Fali
1022Maria R MaletFrance2024-06-06Feiner Bros RENEWAL48Bernardo Dominic
1023Jeanfrancois P FerenczRussia2024-05-27Chapman, Ross E Esq QUALIFIED55Elwin Sharvill
1024Rodrigues Q AlbaresIndia2024-06-18Chapman, Ross E Esq NEW28Onyama Limba
1025Clifford L ButtArgentina2024-06-15Printing Dimensions UNQUALIFIED4Stephen Shaw
1026Munro V GarufiCanada2024-06-22Feltz Printing Service QUALIFIED26Bernardo Dominic
1027Murillo Q MaletAustralia2024-05-24Truhlar And Truhlar Attys NEW68Elwin Sharvill
1028Izzy I WieserBrazil2024-05-24Chapman, Ross E Esq NEGOTIATION33Ioni Bowcher
1029Ivar Q NickaIndia2024-06-08Buckley Miller Wright UNQUALIFIED16Bernardo Dominic
1030Salvatore I BowleyBrazil2024-05-25Chapman, Ross E Esq UNQUALIFIED31Xuxue Feng
1031Rodrigues I NestleArgentina2024-06-02Morlong Associates QUALIFIED83Ivan Magalhaes
1032Stacey L PoquetteArgentina2024-06-02Truhlar And Truhlar Attys PROPOSAL49Elwin Sharvill
1033Jeanfrancois F MaletCanada2024-06-08Morlong Associates QUALIFIED51Ioni Bowcher
1034Izzy W WhobreyFrance2024-06-16Chapman, Ross E Esq QUALIFIED26Ioni Bowcher
1035Jennifer H StensethJapan2024-05-31Rangoni Of Florence PROPOSAL96Anna Fali
1036Aruna L InouyeGermany2024-06-03Rangoni Of Florence RENEWAL14Elwin Sharvill
1037Arvin V AlbaresUnited Kingdom2024-06-14King, Christopher A Esq NEW4Bernardo Dominic
1038Ivar C KuskoArgentina2024-05-26Rousseaux, Michael Esq UNQUALIFIED89Ivan Magalhaes
1039Johnson F InouyeSpain2024-06-02Commercial Press PROPOSAL5Ivan Magalhaes
1040Ashley A ButtArgentina2024-06-14Chapman, Ross E Esq RENEWAL79Elwin Sharvill
1041Leon V ChuiFrance2024-06-14Feiner Bros PROPOSAL76Elwin Sharvill
1042Francesco L IturbideRussia2024-05-27Benton, John B Jr NEGOTIATION2Elwin Sharvill
1043Antonio B RutaBrazil2024-06-13Dorl, James J Esq PROPOSAL80Onyama Limba
1044Smith D ShinkoRussia2024-06-20Buckley Miller Wright PROPOSAL64Bernardo Dominic
1045Munro H NickaArgentina2024-05-29Chemel, James L Cpa NEW7Onyama Limba
1046Rodrigues A BriddickAustralia2024-06-18Buckley Miller Wright PROPOSAL33Elwin Sharvill
1047Francesco U ChuiSpain2024-06-13Feiner Bros UNQUALIFIED41Ivan Magalhaes
1048Nicolas U FollerCanada2024-05-31Chemel, James L Cpa QUALIFIED13Ioni Bowcher
1049Mayumi Z BologniaUnited Kingdom2024-06-19Rangoni Of Florence UNQUALIFIED57Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Aika C RoysterRussiaBernardo Dominic UNQUALIFIED
Leja B WaycottCanadaStephen Shaw NEGOTIATION
Julie J MacleadFranceIoni Bowcher RENEWAL
Deepesh K GarufiArgentinaElwin Sharvill QUALIFIED
Faith B OldroydIndiaIvan Magalhaes PROPOSAL
David A WieserBrazilOnyama Limba QUALIFIED
Maisha M AlbaresJapanOnyama Limba UNQUALIFIED
Costa C StensethIndiaAnna Fali RENEWAL
Rodrigues N GillianGermanyOnyama Limba NEGOTIATION
Jeanfrancois H DoeJapanIoni Bowcher NEGOTIATION
Kadeem P PerinArgentinaBernardo Dominic UNQUALIFIED
Murillo V VenereCanadaBernardo Dominic PROPOSAL
Kadeem D NestleUnited KingdomIvan Magalhaes NEW
Nicolas A AmigonArgentinaElwin Sharvill NEGOTIATION
Aditya O FigeroaJapanIoni Bowcher QUALIFIED
Alejandro D WaycottFranceAsiya Javayant QUALIFIED
Silvio W AmigonUnited KingdomAnna Fali UNQUALIFIED
Ashley O OstroskyRussiaBernardo Dominic NEW
Leon S SaylorsFranceXuxue Feng UNQUALIFIED
Wickens I MaletJapanIoni Bowcher QUALIFIED
Munro E MorascaRussiaIvan Magalhaes NEGOTIATION
Izzy X OstroskyBrazilAsiya Javayant PROPOSAL
Tony D KolmetzJapanOnyama Limba QUALIFIED
Sinclair A NestleJapanIoni Bowcher QUALIFIED
Juan B FigeroaCanadaIoni Bowcher PROPOSAL
Isabel W ShinkoFranceAsiya Javayant PROPOSAL
Ashley G GlickAustraliaAnna Fali NEW
Ivar P FollerRussiaBernardo Dominic UNQUALIFIED
Kadeem Q SchemmerCanadaAsiya Javayant NEW
Ashley B VenereIndiaIvan Magalhaes UNQUALIFIED
Munro N RimFranceAsiya Javayant QUALIFIED
David W FollerSpainIvan Magalhaes QUALIFIED
Aditya W SlusarskiArgentinaIoni Bowcher RENEWAL
Wickens Y GauchoItalyBernardo Dominic NEGOTIATION
Salvatore Z FigeroaGermanyBernardo Dominic PROPOSAL
Adams N OldroydJapanAmy Elsner QUALIFIED
Aruna U MaletIndiaAsiya Javayant NEW
Nicolas A GlickRussiaIvan Magalhaes UNQUALIFIED
Antonio Z GarufiItalyStephen Shaw PROPOSAL
Kadeem K BriddickCanadaStephen Shaw NEW
Maisha I TollnerCanadaAnna Fali NEGOTIATION
Jennifer F PerinRussiaIvan Magalhaes UNQUALIFIED
Ivar H OldroydJapanXuxue Feng UNQUALIFIED
James M ChuiJapanAsiya Javayant QUALIFIED
Munro N FerenczRussiaAnna Fali PROPOSAL
Emily I IturbideUnited KingdomAnna Fali PROPOSAL
Morrow X DilliardBrazilAnna Fali NEW
Arvin I MarrierUnited KingdomBernardo Dominic NEW
Aditya H CaldareraUnited KingdomAnna Fali NEW
Juan K StockhamCanadaStephen Shaw NEW
Frozen Columns
Name
Leon D Poquette
Clifford B Inouye
Jeanfrancois F Dilliard
Maisha C Nicka
Johnson M Marrier
Aika F Rulapaugh
Julie K Perin
Smith W Sergi
Mayumi T Vocelka
Octavia U Flosi
Smith W Oldroyd
Mujtaba G Bowley
Smith B Royster
Murillo V Iturbide
Mayumi A Amigon
Izzy M Morasca
Misaki T Foller
Ivar V Bolognia
Misaki P Gaucho
James C Schemmer
Stacey Q Malet
Clifford N Figeroa
Jones F Paprocki
Jones H Maclead
Maria N Ruta
Johnson H Waycott
Munro H Butt
Munro E Chui
Kaitlin G Foller
Jones L Ostrosky
Aika L Malet
Darci R Stenseth
David P Malet
Wickens W Perin
Tony B Stenseth
Clifford J Bowley
Ricardo Y Chui
Maisha T Stenseth
Kaitlin I Flosi
Maisha B Schemmer
Faith S Paprocki
Greenwood V Flosi
Wickens Y Stockham
Claire O Doe
Jefferson Q Glick
Mayumi L Tollner
Rodrigues D Chui
David X Chui
Jones P Butt
Aditya B Schemmer
IdCountryDate
1000Canada2024-06-03
1001France2024-06-06
1002Brazil2024-06-17
1003Australia2024-05-28
1004Italy2024-06-15
1005Canada2024-05-30
1006Italy2024-05-25
1007Russia2024-06-20
1008Germany2024-05-28
1009Russia2024-06-14
1010Argentina2024-06-16
1011Spain2024-06-20
1012Canada2024-06-18
1013Canada2024-06-02
1014Italy2024-06-20
1015Japan2024-06-16
1016Canada2024-06-13
1017Australia2024-06-21
1018Russia2024-05-29
1019Spain2024-06-13
1020Spain2024-06-07
1021Italy2024-06-22
1022Italy2024-06-11
1023India2024-06-15
1024India2024-05-30
1025Germany2024-06-10
1026Spain2024-06-04
1027Italy2024-06-18
1028Russia2024-05-24
1029Argentina2024-05-26
1030Argentina2024-06-12
1031Italy2024-06-15
1032Italy2024-06-17
1033Canada2024-06-08
1034Canada2024-06-05
1035United Kingdom2024-06-11
1036India2024-06-18
1037Argentina2024-06-06
1038Canada2024-05-26
1039United Kingdom2024-06-03
1040India2024-06-15
1041Australia2024-05-31
1042India2024-06-11
1043Germany2024-05-27
1044Spain2024-06-14
1045France2024-06-15
1046Australia2024-06-22
1047Italy2024-06-12
1048Australia2024-06-20
1049Argentina2024-06-11

On-Demand Data

NameIdCountryDate
Maria N Albares1000Brazil2024-06-21
Aika V Bolognia1001Italy2024-05-29
Mayumi R Rulapaugh1002Italy2024-06-22
Wickens H Figeroa1003India2024-06-02
Jennifer O Malet1004France2024-06-02
Aditya E Wieser1005India2024-05-31
Stacey X Chui1006Japan2024-06-11
Munro D Doe1007Brazil2024-05-30
Ivar S Whobrey1008Italy2024-06-19
Kaitlin L Kusko1009Italy2024-06-15
Aika I Bolognia1010India2024-06-05
Kaitlin Y Caudy1011Russia2024-05-24
David N Figeroa1012Brazil2024-05-24
Arvin R Maclead1013France2024-06-12
Aika Z Waycott1014Brazil2024-06-22
Emily X Ferencz1015Argentina2024-06-17
Maisha T Ferencz1016Brazil2024-05-29
Kadeem E Malet1017United Kingdom2024-06-09
Deepesh L Schemmer1018Brazil2024-06-16
Morrow F Royster1019Brazil2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez H WhobreyItalyAnna Fali NEW
Aika E FigeroaGermanyAnna Fali NEGOTIATION
Julie U DilliardSpainOnyama Limba QUALIFIED
Nicolas Y VenereArgentinaXuxue Feng PROPOSAL
Stacey A ButtAustraliaIvan Magalhaes UNQUALIFIED
Cody L MorascaIndiaBernardo Dominic RENEWAL
Greenwood X InouyeAustraliaAnna Fali QUALIFIED
Chavez M MaletItalyAsiya Javayant RENEWAL
Wickens U OstroskyFranceStephen Shaw UNQUALIFIED
Murillo J WhobreyAustraliaIvan Magalhaes PROPOSAL
Rodrigues Y GlickItalyAsiya Javayant PROPOSAL
Silvio N ShinkoAustraliaAsiya Javayant PROPOSAL
Maria M NestleItalyAmy Elsner PROPOSAL
Izzy E OstroskyArgentinaIvan Magalhaes PROPOSAL
Ivar N CaldareraAustraliaXuxue Feng QUALIFIED
Clifford Q FlosiArgentinaBernardo Dominic RENEWAL
Sinclair J WhobreyItalyStephen Shaw NEGOTIATION
Jennifer R VenereFranceAmy Elsner NEW
Mayumi Q DarakjyFranceXuxue Feng NEGOTIATION
Wickens B OstroskyFranceElwin Sharvill NEGOTIATION
Morrow Q KuskoFranceXuxue Feng UNQUALIFIED
Adams G OldroydGermanyBernardo Dominic NEW
Ivar W SlusarskiBrazilAsiya Javayant UNQUALIFIED
Izzy H SchemmerSpainStephen Shaw RENEWAL
Greenwood V FollerSpainIoni Bowcher UNQUALIFIED
Johnson E GillianCanadaIvan Magalhaes PROPOSAL
Maisha E CaldareraIndiaIvan Magalhaes NEW
Mujtaba V NestleBrazilAsiya Javayant UNQUALIFIED
Faith M WieserCanadaIvan Magalhaes RENEWAL
Mayumi R FlosiItalyElwin Sharvill UNQUALIFIED
Adams E PerinJapanIoni Bowcher NEW
Johnson U GauchoItalyElwin Sharvill PROPOSAL
Nicolas F KuskoArgentinaOnyama Limba QUALIFIED
Murillo C SergiUnited KingdomAmy Elsner QUALIFIED
Silvio O PerinRussiaAsiya Javayant RENEWAL
Leja F MorascaSpainAsiya Javayant UNQUALIFIED
Aika U VenereAustraliaAsiya Javayant PROPOSAL
Kaitlin G StensethUnited KingdomIvan Magalhaes NEGOTIATION
Johnson H MaletArgentinaBernardo Dominic PROPOSAL
Nicolas I DarakjyUnited KingdomAsiya Javayant UNQUALIFIED

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