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
Salvatore A FollerArgentinaIoni Bowcher NEW
Leja W WaycottUnited KingdomIoni Bowcher NEW
Aika W MaletIndiaAmy Elsner NEW
Kaitlin K AmigonRussiaOnyama Limba NEW
Sinclair L SaylorsFranceAsiya Javayant RENEWAL
Faith M VenereBrazilBernardo Dominic NEW
Johnson X AmigonRussiaAnna Fali NEW
Alejandro J SaylorsCanadaAsiya Javayant QUALIFIED
Darci T GillianRussiaAsiya Javayant UNQUALIFIED
David V SergiIndiaXuxue Feng PROPOSAL
Aditya Z RutaArgentinaAmy Elsner PROPOSAL
Murillo D GauchoArgentinaElwin Sharvill NEW
Munro T StockhamItalyIvan Magalhaes PROPOSAL
Jeanfrancois Q PerinJapanIoni Bowcher RENEWAL
Jennifer K MarrierUnited KingdomBernardo Dominic QUALIFIED
Isabel J FerenczAustraliaAnna Fali NEGOTIATION
Cody G FlosiIndiaAmy Elsner PROPOSAL
Sinclair Z KolmetzAustraliaAmy Elsner RENEWAL
Claire Y OstroskyArgentinaAmy Elsner NEGOTIATION
Kadeem C AlbaresJapanAnna Fali PROPOSAL
Murillo F NickaGermanyAsiya Javayant NEGOTIATION
Nicolas B SchemmerUnited KingdomBernardo Dominic NEW
Ivar I VenereArgentinaBernardo Dominic UNQUALIFIED
Ivar O WhobreyFranceBernardo Dominic RENEWAL
Emily O RutaJapanStephen Shaw QUALIFIED
Costa L RutaCanadaStephen Shaw NEGOTIATION
Chavez N FollerRussiaOnyama Limba NEGOTIATION
Emily W NickaBrazilElwin Sharvill UNQUALIFIED
Tony M MarrierBrazilOnyama Limba NEW
Mujtaba Z TollnerFranceStephen Shaw NEGOTIATION
Ashley F IturbideSpainXuxue Feng QUALIFIED
David V GarufiRussiaIoni Bowcher PROPOSAL
Costa N InouyeSpainElwin Sharvill NEGOTIATION
Aditya O DilliardIndiaStephen Shaw PROPOSAL
Arvin C ShinkoBrazilStephen Shaw PROPOSAL
Johnson F KolmetzIndiaElwin Sharvill RENEWAL
Jefferson Y NickaUnited KingdomStephen Shaw NEW
Alejandro E NestleAustraliaAsiya Javayant RENEWAL
Juan I BologniaBrazilBernardo Dominic QUALIFIED
Maria T CampainGermanyXuxue Feng QUALIFIED
Cody N SlusarskiFranceXuxue Feng NEGOTIATION
Chavez I MorascaArgentinaElwin Sharvill NEGOTIATION
Ricardo U BowleyAustraliaXuxue Feng NEW
Jennifer C MarrierUnited KingdomAnna Fali QUALIFIED
Claire B InouyeCanadaIoni Bowcher NEW
Silvio N ButtSpainIoni Bowcher QUALIFIED
Leja X ButtRussiaStephen Shaw PROPOSAL
Leja M PaprockiArgentinaAsiya Javayant QUALIFIED
Emily H KuskoUnited KingdomElwin Sharvill RENEWAL
Wickens L StockhamCanadaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Ricardo M BriddickRussiaXuxue Feng RENEWAL
Murillo Z SaylorsIndiaAmy Elsner QUALIFIED
Murillo W FerenczFranceAsiya Javayant RENEWAL
Isabel F DarakjyArgentinaOnyama Limba QUALIFIED
James X MaletFranceIoni Bowcher RENEWAL
Ivar C KolmetzUnited KingdomBernardo Dominic NEGOTIATION
Morrow A InouyeArgentinaStephen Shaw UNQUALIFIED
Julie Y PoquetteItalyStephen Shaw PROPOSAL
Costa P GauchoArgentinaElwin Sharvill NEGOTIATION
Ivar W FlosiGermanyElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues E KolmetzIndia2024-06-07Printing Dimensions PROPOSAL39Amy Elsner
1001Jefferson F InouyeSpain2024-06-10Feltz Printing Service NEGOTIATION7Onyama Limba
1002Adams T PoquetteFrance2024-06-22Rousseaux, Michael Esq NEGOTIATION15Ivan Magalhaes
1003James P AlbaresArgentina2024-06-09Feiner Bros NEW85Stephen Shaw
1004Juan A GauchoAustralia2024-05-29King, Christopher A Esq UNQUALIFIED85Ioni Bowcher
1005David N CaudyUnited Kingdom2024-05-27Chemel, James L Cpa QUALIFIED47Bernardo Dominic
1006Silvio J NickaJapan2024-05-31Rangoni Of Florence UNQUALIFIED60Xuxue Feng
1007Izzy P AmigonSpain2024-06-04Feltz Printing Service PROPOSAL8Amy Elsner
1008Faith K DilliardFrance2024-06-22Dorl, James J Esq NEW5Ivan Magalhaes
1009Julie V WhobreyRussia2024-05-27Dorl, James J Esq QUALIFIED73Ioni Bowcher
1010Wickens J PoquetteRussia2024-06-06Benton, John B Jr QUALIFIED57Anna Fali
1011Aika X WhobreyItaly2024-06-11Feiner Bros NEW90Amy Elsner
1012Jefferson X RimArgentina2024-06-15Buckley Miller Wright UNQUALIFIED77Asiya Javayant
1013Leon V StensethGermany2024-06-16Commercial Press RENEWAL22Onyama Limba
1014Deepesh N PoquetteSpain2024-06-06Rangoni Of Florence QUALIFIED0Ivan Magalhaes
1015Aditya N CampainCanada2024-06-23Commercial Press UNQUALIFIED13Bernardo Dominic
1016Johnson A StensethItaly2024-06-14Dorl, James J Esq NEGOTIATION70Ivan Magalhaes
1017Jefferson Q SaylorsBrazil2024-06-06Feltz Printing Service NEW48Asiya Javayant
1018Isabel G ButtFrance2024-06-05Chapman, Ross E Esq UNQUALIFIED29Xuxue Feng
1019Isabel I PerinBrazil2024-06-19Chanay, Jeffrey A Esq QUALIFIED30Amy Elsner
1020Clifford I BriddickGermany2024-06-12Buckley Miller Wright QUALIFIED18Xuxue Feng
1021Octavia D AlbaresJapan2024-05-29Feltz Printing Service RENEWAL5Ivan Magalhaes
1022Isabel F NickaGermany2024-06-11Truhlar And Truhlar Attys PROPOSAL79Onyama Limba
1023Ricardo V PaprockiGermany2024-06-17Truhlar And Truhlar Attys QUALIFIED42Stephen Shaw
1024Jennifer Q ChuiBrazil2024-06-13Benton, John B Jr PROPOSAL68Amy Elsner
1025Izzy Q DoeIndia2024-06-11Buckley Miller Wright NEW11Xuxue Feng
1026James A DilliardArgentina2024-06-04Chapman, Ross E Esq UNQUALIFIED29Onyama Limba
1027Jennifer R FollerIndia2024-06-24Chapman, Ross E Esq NEW1Stephen Shaw
1028Chavez U BowleyIndia2024-06-07Commercial Press QUALIFIED10Bernardo Dominic
1029Maria A VenereFrance2024-06-14King, Christopher A Esq RENEWAL87Ioni Bowcher
1030Wickens G ChuiArgentina2024-06-05Chemel, James L Cpa PROPOSAL75Onyama Limba
1031Leja W OstroskyAustralia2024-06-21Chemel, James L Cpa NEGOTIATION15Ioni Bowcher
1032Cody Q PaprockiUnited Kingdom2024-06-18Truhlar And Truhlar Attys NEGOTIATION22Ivan Magalhaes
1033Kadeem I PaprockiJapan2024-06-13Rangoni Of Florence PROPOSAL55Elwin Sharvill
1034Aika M PoquetteRussia2024-06-21Morlong Associates PROPOSAL24Ivan Magalhaes
1035Leja N VocelkaCanada2024-06-14Truhlar And Truhlar Attys UNQUALIFIED19Onyama Limba
1036Leja Q KuskoGermany2024-06-17Chapman, Ross E Esq UNQUALIFIED49Anna Fali
1037Nicolas K DoeJapan2024-05-31King, Christopher A Esq NEW22Amy Elsner
1038Johnson M DilliardGermany2024-06-24Feiner Bros NEGOTIATION44Ivan Magalhaes
1039Johnson X RulapaughItaly2024-06-07Printing Dimensions PROPOSAL44Xuxue Feng
1040Alejandro J ShinkoFrance2024-05-30Benton, John B Jr PROPOSAL80Ivan Magalhaes
1041Costa S BriddickCanada2024-06-07Truhlar And Truhlar Attys RENEWAL78Anna Fali
1042Deepesh U BriddickArgentina2024-06-17Chapman, Ross E Esq UNQUALIFIED54Onyama Limba
1043Jefferson D DilliardSpain2024-05-27Feiner Bros QUALIFIED3Xuxue Feng
1044Munro A GarufiGermany2024-05-30Chapman, Ross E Esq NEGOTIATION61Asiya Javayant
1045Murillo H DoeRussia2024-06-04Dorl, James J Esq QUALIFIED39Onyama Limba
1046Adams L FollerGermany2024-05-28Buckley Miller Wright PROPOSAL36Ivan Magalhaes
1047Faith P ButtAustralia2024-06-23Chanay, Jeffrey A Esq NEW97Onyama Limba
1048Antonio X DarakjyRussia2024-06-02Benton, John B Jr PROPOSAL92Stephen Shaw
1049Aika F VenereRussia2024-06-11King, Christopher A Esq UNQUALIFIED38Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Costa G GlickItalyStephen Shaw NEW
Aruna L VenereRussiaXuxue Feng UNQUALIFIED
Ricardo V DoeRussiaElwin Sharvill RENEWAL
Tony L IturbideGermanyXuxue Feng QUALIFIED
Emily S BologniaSpainXuxue Feng QUALIFIED
Alejandro H MarrierFranceXuxue Feng UNQUALIFIED
Maisha K InouyeArgentinaAmy Elsner NEGOTIATION
James I WaycottIndiaXuxue Feng UNQUALIFIED
Mujtaba C GlickRussiaBernardo Dominic NEGOTIATION
Nicolas J NestleUnited KingdomOnyama Limba UNQUALIFIED
Morrow I CampainJapanBernardo Dominic QUALIFIED
Kaitlin Z RutaItalyAsiya Javayant RENEWAL
Jeanfrancois E VocelkaGermanyOnyama Limba RENEWAL
Leja J FlosiUnited KingdomAmy Elsner QUALIFIED
Clifford S AmigonCanadaElwin Sharvill UNQUALIFIED
David W MarrierFranceBernardo Dominic UNQUALIFIED
Tony L WaycottRussiaAmy Elsner NEGOTIATION
Julie I DarakjySpainAnna Fali NEW
Claire T MacleadGermanyXuxue Feng PROPOSAL
Leon X KuskoUnited KingdomAmy Elsner QUALIFIED
Deepesh T DarakjyBrazilAmy Elsner NEGOTIATION
Salvatore P InouyeArgentinaAmy Elsner QUALIFIED
Clifford L KuskoCanadaIvan Magalhaes RENEWAL
Munro M GillianAustraliaAmy Elsner QUALIFIED
Faith V VenereGermanyOnyama Limba NEGOTIATION
James D OldroydItalyAmy Elsner NEW
Kadeem B MarrierUnited KingdomAmy Elsner NEGOTIATION
Darci E GarufiBrazilXuxue Feng UNQUALIFIED
Faith E InouyeUnited KingdomIoni Bowcher RENEWAL
Leja P WhobreyIndiaOnyama Limba NEGOTIATION
Smith H AlbaresItalyElwin Sharvill QUALIFIED
Antonio J InouyeSpainIvan Magalhaes NEW
Deepesh D MaletJapanIoni Bowcher QUALIFIED
Jeanfrancois E FerenczGermanyAnna Fali NEW
Octavia D GarufiUnited KingdomOnyama Limba RENEWAL
Faith Y InouyeSpainAnna Fali RENEWAL
Kaitlin L BowleyAustraliaBernardo Dominic NEGOTIATION
Mayumi R GarufiRussiaStephen Shaw RENEWAL
Silvio I KolmetzItalyIoni Bowcher RENEWAL
Murillo E VocelkaRussiaAmy Elsner UNQUALIFIED
Sinclair O VenereCanadaElwin Sharvill NEW
Izzy G StockhamSpainOnyama Limba NEW
Francesco I DilliardCanadaAmy Elsner UNQUALIFIED
Costa N PoquetteIndiaAmy Elsner PROPOSAL
Aruna L FollerBrazilIvan Magalhaes NEW
Emily B SaylorsCanadaStephen Shaw RENEWAL
Jeanfrancois M ChuiItalyIoni Bowcher QUALIFIED
Jennifer Q WaycottUnited KingdomOnyama Limba NEW
James P OstroskyRussiaStephen Shaw PROPOSAL
Adams M WaycottRussiaStephen Shaw RENEWAL
Frozen Columns
Name
Sinclair J Vocelka
Munro K Doe
Kadeem Z Rulapaugh
Aditya W Chui
Sinclair P Shinko
Morrow Z Chui
Octavia D Figeroa
Mayumi L Rim
Morrow V Rim
James J Royster
Misaki R Whobrey
Aruna N Doe
Tony P Maclead
Aditya Q Campain
Chavez A Whobrey
Alejandro Q Ostrosky
Octavia L Inouye
Nicolas Q Ruta
Silvio H Paprocki
Aruna Z Albares
Antonio Y Garufi
Jennifer O Wieser
Smith Y Waycott
Rodrigues N Chui
Aruna S Rulapaugh
Rodrigues V Bolognia
Kaitlin V Rim
Jones J Kusko
Faith Q Shinko
Antonio U Glick
Nicolas C Campain
Silvio E Rulapaugh
Claire V Caudy
Maria R Bolognia
Cody X Wieser
Isabel F Oldroyd
Darci F Poquette
Rodrigues M Dilliard
Morrow V Wieser
Smith Z Stockham
Aruna V Bolognia
Cody B Darakjy
Juan R Kolmetz
Kadeem Q Shinko
Aruna T Venere
Faith D Rulapaugh
Aika U Morasca
Cody I Dilliard
Morrow P Doe
Leja G Caldarera
IdCountryDate
1000Brazil2024-05-27
1001Japan2024-06-02
1002Italy2024-06-22
1003Argentina2024-06-08
1004Italy2024-05-28
1005Brazil2024-06-11
1006Australia2024-06-15
1007United Kingdom2024-06-11
1008Russia2024-06-05
1009Spain2024-05-26
1010Argentina2024-06-07
1011Spain2024-06-21
1012Australia2024-05-28
1013France2024-06-10
1014Germany2024-06-02
1015Germany2024-06-01
1016Argentina2024-06-15
1017Germany2024-05-28
1018Brazil2024-06-03
1019Canada2024-06-07
1020France2024-06-24
1021Brazil2024-05-31
1022United Kingdom2024-06-16
1023Japan2024-06-20
1024Russia2024-06-09
1025India2024-06-03
1026Canada2024-05-31
1027Germany2024-06-08
1028Germany2024-05-30
1029Australia2024-06-01
1030Australia2024-06-18
1031Japan2024-05-31
1032Canada2024-06-04
1033Australia2024-05-26
1034Germany2024-06-09
1035Canada2024-06-19
1036Canada2024-06-10
1037Canada2024-06-17
1038United Kingdom2024-06-07
1039Australia2024-06-14
1040United Kingdom2024-05-27
1041Spain2024-06-08
1042India2024-06-02
1043Germany2024-06-22
1044Russia2024-06-04
1045India2024-06-04
1046Spain2024-06-17
1047Australia2024-06-19
1048Italy2024-06-04
1049Argentina2024-06-04

On-Demand Data

NameIdCountryDate
Aditya D Bowley1000Argentina2024-06-10
Darci B Waycott1001Australia2024-06-01
Silvio W Wieser1002Japan2024-06-21
Sinclair Q Wieser1003France2024-06-21
Leja S Nicka1004France2024-06-04
Arvin R Inouye1005Spain2024-06-19
Francesco M Rulapaugh1006Italy2024-05-27
Leon I Royster1007India2024-05-29
Johnson R Iturbide1008Australia2024-05-28
Aruna M Dilliard1009India2024-05-26
Stacey Q Kusko1010Brazil2024-05-26
Alejandro J Vocelka1011Spain2024-06-03
Clifford E Oldroyd1012Australia2024-06-08
Juan X Nestle1013India2024-05-27
Aruna N Schemmer1014Spain2024-05-26
Jennifer B Sergi1015Italy2024-05-27
Stacey V Slusarski1016Japan2024-06-05
Johnson W Bolognia1017Germany2024-05-31
Silvio F Kusko1018Italy2024-06-09
Isabel T Dilliard1019Argentina2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan N WieserAustraliaXuxue Feng QUALIFIED
Jones X SergiAustraliaBernardo Dominic NEW
Adams G ChuiBrazilStephen Shaw UNQUALIFIED
Salvatore R RutaAustraliaAmy Elsner NEGOTIATION
Aditya W KuskoFranceAsiya Javayant UNQUALIFIED
Wickens Y SchemmerBrazilAsiya Javayant NEGOTIATION
Leon A PaprockiJapanAnna Fali UNQUALIFIED
Maisha B GlickItalyAsiya Javayant QUALIFIED
Mujtaba P AmigonArgentinaIvan Magalhaes QUALIFIED
Mayumi Z FlosiRussiaStephen Shaw UNQUALIFIED
Emily X SlusarskiJapanIvan Magalhaes RENEWAL
Smith R KuskoAustraliaAnna Fali NEW
Morrow T OstroskyArgentinaAnna Fali RENEWAL
Costa R PaprockiBrazilIvan Magalhaes NEGOTIATION
Deepesh T OldroydSpainElwin Sharvill UNQUALIFIED
Leja S ShinkoIndiaAmy Elsner QUALIFIED
Faith S RutaGermanyAsiya Javayant PROPOSAL
Isabel Q VenereRussiaIvan Magalhaes QUALIFIED
Cody H WieserItalyOnyama Limba NEW
Francesco X PoquetteItalyAmy Elsner UNQUALIFIED
Smith Q FigeroaItalyStephen Shaw NEGOTIATION
Tony H SaylorsUnited KingdomStephen Shaw RENEWAL
Mayumi L FigeroaUnited KingdomIoni Bowcher UNQUALIFIED
Francesco O CaudyAustraliaIoni Bowcher NEGOTIATION
Aika M InouyeAustraliaBernardo Dominic RENEWAL
Francesco K VenereFranceStephen Shaw UNQUALIFIED
Deepesh T GillianIndiaAmy Elsner PROPOSAL
Emily P ChuiIndiaElwin Sharvill NEW
Stacey X StockhamCanadaXuxue Feng QUALIFIED
Kadeem P PerinBrazilElwin Sharvill PROPOSAL
Leon O SaylorsRussiaAnna Fali RENEWAL
Izzy H BowleyJapanBernardo Dominic PROPOSAL
Leon P NestleJapanXuxue Feng UNQUALIFIED
Johnson A GillianSpainAnna Fali NEGOTIATION
Jeanfrancois X KuskoBrazilAmy Elsner UNQUALIFIED
Chavez V SergiSpainStephen Shaw NEW
Faith I MarrierFranceOnyama Limba QUALIFIED
Greenwood W WhobreyGermanyAmy Elsner RENEWAL
Silvio V AmigonAustraliaAsiya Javayant NEW
Cody P GlickUnited 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>