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
Kaitlin F RimArgentinaIvan Magalhaes UNQUALIFIED
Misaki R KuskoRussiaIvan Magalhaes NEW
Costa O AlbaresUnited KingdomBernardo Dominic PROPOSAL
Jefferson Y VenereSpainAsiya Javayant UNQUALIFIED
Sinclair M StensethAustraliaAsiya Javayant NEW
Aruna U AmigonRussiaElwin Sharvill PROPOSAL
Morrow F PoquetteSpainXuxue Feng QUALIFIED
Emily N MarrierSpainAnna Fali QUALIFIED
Julie J AlbaresIndiaOnyama Limba NEW
Mayumi A FigeroaBrazilAmy Elsner NEW
Stacey A OldroydGermanyBernardo Dominic NEGOTIATION
Rodrigues F FlosiArgentinaStephen Shaw NEW
Rodrigues I MacleadBrazilElwin Sharvill NEGOTIATION
Julie R StensethAustraliaOnyama Limba NEW
Francesco J CaldareraIndiaIoni Bowcher PROPOSAL
Juan T KuskoFranceAmy Elsner UNQUALIFIED
Julie I SlusarskiFranceBernardo Dominic PROPOSAL
Jones W MarrierArgentinaAmy Elsner NEGOTIATION
Isabel R GarufiBrazilIoni Bowcher RENEWAL
Francesco E DoeCanadaXuxue Feng QUALIFIED
Maria I RutaFranceAnna Fali UNQUALIFIED
Jefferson B BologniaUnited KingdomBernardo Dominic RENEWAL
Greenwood I NickaUnited KingdomXuxue Feng UNQUALIFIED
Izzy R NestleArgentinaIoni Bowcher NEGOTIATION
Mujtaba R OstroskyFranceStephen Shaw PROPOSAL
Tony M MorascaFranceAsiya Javayant UNQUALIFIED
Tony U RoysterIndiaAsiya Javayant RENEWAL
Salvatore D PoquetteArgentinaAnna Fali NEGOTIATION
Leon A FigeroaFranceElwin Sharvill PROPOSAL
Nicolas N FigeroaFranceIoni Bowcher QUALIFIED
Leja O KolmetzIndiaAmy Elsner PROPOSAL
Mujtaba B VocelkaRussiaStephen Shaw UNQUALIFIED
Kaitlin Q CaudyCanadaAsiya Javayant NEGOTIATION
Silvio V SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Darci V CaudyArgentinaStephen Shaw NEW
Izzy W RimGermanyIvan Magalhaes PROPOSAL
Stacey N WieserCanadaBernardo Dominic UNQUALIFIED
Smith N MacleadAustraliaAnna Fali QUALIFIED
Smith X FerenczCanadaAsiya Javayant QUALIFIED
Rodrigues U SlusarskiAustraliaIvan Magalhaes PROPOSAL
Johnson N SaylorsGermanyAnna Fali UNQUALIFIED
Maisha B StockhamArgentinaAsiya Javayant QUALIFIED
Jeanfrancois N CampainFranceIoni Bowcher RENEWAL
Rodrigues H GarufiRussiaAnna Fali UNQUALIFIED
Alejandro X DarakjyArgentinaIoni Bowcher QUALIFIED
Julie D ShinkoArgentinaIoni Bowcher UNQUALIFIED
Faith I VocelkaArgentinaAnna Fali QUALIFIED
Rodrigues H DilliardBrazilOnyama Limba NEGOTIATION
Clifford T WhobreyGermanyIoni Bowcher PROPOSAL
Octavia L AlbaresArgentinaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Ivar Y FerenczCanadaAnna Fali PROPOSAL
Faith C MaletSpainAmy Elsner QUALIFIED
Julie O NestleFranceXuxue Feng RENEWAL
Deepesh J InouyeArgentinaAsiya Javayant RENEWAL
Sinclair E NickaCanadaIvan Magalhaes UNQUALIFIED
Tony H MacleadAustraliaOnyama Limba NEW
Isabel J WieserAustraliaIvan Magalhaes NEW
Rodrigues H MacleadJapanOnyama Limba NEW
Morrow L AmigonCanadaElwin Sharvill NEW
Deepesh X InouyeItalyOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci Z MaletGermany2024-04-28Truhlar And Truhlar Attys QUALIFIED54Ioni Bowcher
1001Isabel G KuskoFrance2024-05-15Chapman, Ross E Esq PROPOSAL67Anna Fali
1002Jefferson P WaycottJapan2024-05-16Buckley Miller Wright NEW92Xuxue Feng
1003Murillo B NickaJapan2024-04-28Chapman, Ross E Esq QUALIFIED50Onyama Limba
1004Maisha X FollerGermany2024-05-10Rousseaux, Michael Esq NEGOTIATION43Xuxue Feng
1005Aika G ShinkoFrance2024-05-16Chanay, Jeffrey A Esq NEW39Asiya Javayant
1006Cody R MaletIndia2024-05-14Morlong Associates UNQUALIFIED16Ivan Magalhaes
1007Emily A RimUnited Kingdom2024-05-01Buckley Miller Wright NEGOTIATION5Onyama Limba
1008Maisha T SlusarskiSpain2024-05-20Feiner Bros UNQUALIFIED0Amy Elsner
1009Costa W AlbaresItaly2024-05-19Chemel, James L Cpa UNQUALIFIED66Xuxue Feng
1010Ivar C SlusarskiGermany2024-04-27Commercial Press NEW16Elwin Sharvill
1011Aditya B DarakjyArgentina2024-05-24Chemel, James L Cpa QUALIFIED22Ioni Bowcher
1012Kadeem Y FigeroaCanada2024-05-21Commercial Press QUALIFIED77Xuxue Feng
1013Wickens U GillianCanada2024-05-23Morlong Associates RENEWAL86Ioni Bowcher
1014Deepesh B DoeBrazil2024-05-24King, Christopher A Esq RENEWAL33Ivan Magalhaes
1015Juan P ShinkoAustralia2024-04-28Commercial Press PROPOSAL58Amy Elsner
1016Leon G InouyeItaly2024-05-22Chapman, Ross E Esq RENEWAL39Anna Fali
1017Antonio C VenereCanada2024-05-08Chapman, Ross E Esq RENEWAL79Stephen Shaw
1018Claire Y FlosiUnited Kingdom2024-05-13Chanay, Jeffrey A Esq RENEWAL35Bernardo Dominic
1019Rodrigues W SlusarskiArgentina2024-05-03Commercial Press QUALIFIED4Asiya Javayant
1020Julie I DarakjyGermany2024-05-19Feiner Bros NEGOTIATION64Stephen Shaw
1021Isabel S FigeroaSpain2024-05-16Buckley Miller Wright QUALIFIED1Anna Fali
1022Octavia D DarakjyGermany2024-05-11Truhlar And Truhlar Attys PROPOSAL71Ivan Magalhaes
1023Aika H ShinkoJapan2024-04-29Morlong Associates NEGOTIATION67Elwin Sharvill
1024Johnson D VenereItaly2024-05-26King, Christopher A Esq PROPOSAL9Amy Elsner
1025Murillo H MorascaAustralia2024-05-12Rousseaux, Michael Esq UNQUALIFIED14Ivan Magalhaes
1026Darci K FlosiUnited Kingdom2024-05-08Buckley Miller Wright UNQUALIFIED5Onyama Limba
1027Smith N CampainJapan2024-05-17Rangoni Of Florence PROPOSAL1Bernardo Dominic
1028Adams B GarufiItaly2024-05-09Chemel, James L Cpa NEW80Xuxue Feng
1029Aruna Q NickaIndia2024-05-16Dorl, James J Esq UNQUALIFIED14Anna Fali
1030Ricardo G PoquetteFrance2024-05-12Commercial Press QUALIFIED13Amy Elsner
1031Nicolas J KuskoUnited Kingdom2024-05-20Buckley Miller Wright QUALIFIED8Xuxue Feng
1032Maria M MaletAustralia2024-05-10Chemel, James L Cpa UNQUALIFIED2Asiya Javayant
1033Morrow L ButtRussia2024-05-10Feiner Bros UNQUALIFIED86Elwin Sharvill
1034Munro G RulapaughUnited Kingdom2024-04-30Feiner Bros QUALIFIED69Elwin Sharvill
1035Munro X RulapaughArgentina2024-05-03Morlong Associates UNQUALIFIED85Stephen Shaw
1036Kaitlin Z DarakjyBrazil2024-05-07Dorl, James J Esq NEW41Onyama Limba
1037Greenwood X AmigonGermany2024-05-03Feltz Printing Service QUALIFIED21Ioni Bowcher
1038Costa P IturbideAustralia2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED78Ioni Bowcher
1039Morrow N OldroydUnited Kingdom2024-04-29Commercial Press RENEWAL88Asiya Javayant
1040Kadeem K WaycottCanada2024-05-07Commercial Press NEW17Asiya Javayant
1041Aditya R ChuiFrance2024-04-27Chapman, Ross E Esq PROPOSAL69Xuxue Feng
1042Aditya O GarufiAustralia2024-05-04Dorl, James J Esq NEW80Anna Fali
1043Maria W DarakjyUnited Kingdom2024-05-16Feltz Printing Service NEW44Asiya Javayant
1044Maisha B TollnerIndia2024-04-27Feltz Printing Service QUALIFIED54Asiya Javayant
1045Mayumi V PerinBrazil2024-05-18Printing Dimensions RENEWAL15Anna Fali
1046Cody D RutaUnited Kingdom2024-05-17Commercial Press QUALIFIED91Anna Fali
1047Morrow T OstroskyUnited Kingdom2024-05-09Morlong Associates PROPOSAL20Amy Elsner
1048Misaki E GauchoUnited Kingdom2024-05-17Feiner Bros NEW66Ioni Bowcher
1049Ashley P MorascaIndia2024-05-07Printing Dimensions RENEWAL11Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Juan M AlbaresItalyIoni Bowcher UNQUALIFIED
Deepesh W PerinSpainIvan Magalhaes NEGOTIATION
Ricardo A GarufiItalyIoni Bowcher NEW
Maisha J KuskoRussiaElwin Sharvill RENEWAL
Mujtaba Q KolmetzJapanElwin Sharvill NEW
Izzy X MacleadItalyStephen Shaw PROPOSAL
Misaki Z SergiFranceIoni Bowcher NEW
Aditya V TollnerArgentinaXuxue Feng PROPOSAL
Leon F FlosiAustraliaStephen Shaw NEW
Clifford C CaldareraSpainAmy Elsner RENEWAL
Greenwood C SchemmerJapanAmy Elsner NEGOTIATION
Cody H FollerFranceIoni Bowcher NEW
Greenwood F BologniaBrazilOnyama Limba PROPOSAL
Alejandro G CaudyItalyAsiya Javayant RENEWAL
Misaki D BologniaGermanyIvan Magalhaes NEW
Jennifer R ShinkoRussiaStephen Shaw NEGOTIATION
Antonio E GauchoBrazilAnna Fali NEGOTIATION
Johnson B GillianCanadaAmy Elsner UNQUALIFIED
Ivar J RoysterCanadaBernardo Dominic NEW
Arvin P PaprockiUnited KingdomAnna Fali QUALIFIED
Tony K FollerJapanBernardo Dominic NEW
Rodrigues F PaprockiFranceStephen Shaw NEGOTIATION
Costa D PoquetteBrazilIoni Bowcher QUALIFIED
Emily M VenereItalyStephen Shaw NEGOTIATION
Rodrigues V RoysterAustraliaBernardo Dominic PROPOSAL
Jefferson Y BologniaArgentinaAsiya Javayant NEW
Mujtaba H StockhamFranceBernardo Dominic QUALIFIED
Chavez Z BowleyUnited KingdomBernardo Dominic UNQUALIFIED
Francesco W SlusarskiJapanXuxue Feng UNQUALIFIED
Costa H SchemmerSpainAmy Elsner RENEWAL
Claire H KolmetzItalyAsiya Javayant UNQUALIFIED
Smith A StensethItalyIvan Magalhaes NEW
Clifford E StensethIndiaAnna Fali UNQUALIFIED
Costa Q FlosiCanadaAnna Fali NEW
Stacey Y GarufiFranceOnyama Limba NEW
Smith F FigeroaFranceAnna Fali UNQUALIFIED
Antonio Q RulapaughGermanyIoni Bowcher RENEWAL
Julie A OldroydArgentinaAnna Fali NEW
Antonio Z WhobreyAustraliaOnyama Limba UNQUALIFIED
Chavez Q ChuiCanadaElwin Sharvill RENEWAL
Cody C NickaRussiaIoni Bowcher UNQUALIFIED
Ivar Z KolmetzBrazilBernardo Dominic NEW
Tony E GarufiCanadaAsiya Javayant UNQUALIFIED
Ashley L SergiIndiaXuxue Feng NEGOTIATION
Aruna E StensethJapanAsiya Javayant RENEWAL
Misaki F SaylorsCanadaIoni Bowcher RENEWAL
Jefferson U ShinkoItalyElwin Sharvill PROPOSAL
Mujtaba T CampainRussiaOnyama Limba RENEWAL
Silvio F RulapaughGermanyAsiya Javayant NEGOTIATION
Julie Z WieserIndiaXuxue Feng QUALIFIED
Frozen Columns
Name
Claire U Butt
Adams L Iturbide
Silvio N Amigon
Deepesh A Dilliard
Jones Y Morasca
Jones Q Schemmer
Darci G Flosi
Costa Y Vocelka
Wickens Q Kolmetz
Isabel P Rim
Ivar Y Saylors
Maisha Z Waycott
Claire W Vocelka
Jennifer R Nestle
Leja N Oldroyd
Munro M Poquette
Nicolas Q Caldarera
Arvin J Rulapaugh
Francesco N Nicka
Ashley B Waycott
Mujtaba T Figeroa
Aruna G Oldroyd
Tony L Perin
Maria F Slusarski
Murillo S Slusarski
Jennifer L Nicka
Julie N Perin
James T Maclead
Stacey C Briddick
Aruna T Campain
Maisha B Doe
Wickens M Caldarera
Ricardo N Foller
James O Tollner
Costa N Paprocki
Antonio H Amigon
Isabel M Royster
Nicolas V Saylors
Mayumi L Bolognia
Isabel I Oldroyd
Cody J Waycott
Rodrigues P Glick
Adams L Caudy
Munro Y Royster
Aika N Kusko
Ivar M Stockham
Antonio W Venere
Johnson B Gillian
Faith F Foller
Isabel P Glick
IdCountryDate
1000Germany2024-05-06
1001Canada2024-05-14
1002Germany2024-05-16
1003Australia2024-05-07
1004Russia2024-05-05
1005Germany2024-05-06
1006Canada2024-05-12
1007Australia2024-05-02
1008Italy2024-05-13
1009France2024-05-04
1010Canada2024-05-09
1011France2024-05-09
1012France2024-05-25
1013Argentina2024-04-30
1014Germany2024-05-19
1015France2024-04-30
1016Brazil2024-05-07
1017Japan2024-04-27
1018France2024-05-19
1019France2024-05-15
1020Japan2024-05-19
1021France2024-05-08
1022Australia2024-05-07
1023United Kingdom2024-05-13
1024Brazil2024-04-29
1025France2024-05-26
1026France2024-04-30
1027Italy2024-05-06
1028Italy2024-05-05
1029Argentina2024-05-22
1030Spain2024-05-22
1031France2024-05-09
1032Spain2024-05-13
1033Brazil2024-05-10
1034Russia2024-05-04
1035India2024-04-29
1036Spain2024-05-26
1037United Kingdom2024-05-04
1038United Kingdom2024-05-15
1039Australia2024-04-28
1040Germany2024-05-13
1041Japan2024-05-05
1042Japan2024-05-10
1043Brazil2024-05-04
1044Argentina2024-05-08
1045Australia2024-05-05
1046Brazil2024-05-13
1047Italy2024-05-14
1048India2024-04-30
1049Germany2024-05-13

On-Demand Data

NameIdCountryDate
Wickens W Foller1000Canada2024-05-11
Octavia D Glick1001Spain2024-05-06
Maisha L Tollner1002France2024-05-06
Octavia W Venere1003Canada2024-05-14
Costa B Nestle1004Russia2024-05-11
Aika E Bowley1005Japan2024-05-05
Jones Q Albares1006Spain2024-05-14
Alejandro H Rim1007Russia2024-05-08
Kaitlin V Caudy1008Japan2024-04-29
Jones P Schemmer1009Germany2024-04-29
James U Stockham1010Canada2024-05-15
Adams O Stockham1011Italy2024-05-25
Smith B Stockham1012Italy2024-05-07
Jennifer B Gillian1013India2024-05-18
Sinclair M Royster1014France2024-05-22
Aruna S Malet1015Japan2024-05-09
Cody U Schemmer1016India2024-05-09
Deepesh X Ostrosky1017India2024-05-11
Arvin E Rim1018Russia2024-05-19
Costa M Dilliard1019Argentina2024-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba P FerenczBrazilIoni Bowcher QUALIFIED
Leon R PoquetteItalyAsiya Javayant RENEWAL
Ashley K VenereArgentinaElwin Sharvill UNQUALIFIED
Jennifer A DilliardSpainOnyama Limba PROPOSAL
Salvatore P SergiRussiaStephen Shaw NEGOTIATION
Isabel T ShinkoIndiaIvan Magalhaes PROPOSAL
Leon B SaylorsAustraliaXuxue Feng NEW
Leja W IturbideFranceElwin Sharvill PROPOSAL
Silvio U GlickSpainIvan Magalhaes NEW
Juan Q MarrierFranceOnyama Limba UNQUALIFIED
Alejandro W ShinkoGermanyBernardo Dominic RENEWAL
Costa E MaletSpainAsiya Javayant RENEWAL
Faith T BologniaAustraliaAsiya Javayant RENEWAL
Cody Y AlbaresIndiaElwin Sharvill PROPOSAL
Darci H RulapaughIndiaIoni Bowcher QUALIFIED
Tony Q StockhamIndiaElwin Sharvill UNQUALIFIED
Jones B BologniaRussiaXuxue Feng PROPOSAL
Julie I RutaItalyIvan Magalhaes NEW
Mayumi U CaudyCanadaAsiya Javayant RENEWAL
David B MaletJapanStephen Shaw PROPOSAL
Maisha F NickaUnited KingdomAnna Fali NEW
Faith C AmigonAustraliaIvan Magalhaes RENEWAL
Claire P AmigonAustraliaStephen Shaw PROPOSAL
Leja M NestleItalyXuxue Feng UNQUALIFIED
Aruna I DarakjyFranceOnyama Limba UNQUALIFIED
Salvatore B TollnerUnited KingdomIvan Magalhaes RENEWAL
Octavia Y PerinIndiaXuxue Feng NEW
Claire F WhobreyRussiaAnna Fali NEW
Alejandro G RutaJapanAnna Fali NEGOTIATION
Kaitlin Y RoysterJapanAnna Fali UNQUALIFIED
Johnson U SchemmerSpainOnyama Limba PROPOSAL
Julie W IturbideIndiaXuxue Feng NEGOTIATION
Tony A DilliardGermanyAsiya Javayant NEGOTIATION
Isabel I CaudyBrazilBernardo Dominic RENEWAL
Jennifer P GlickIndiaAnna Fali UNQUALIFIED
Jennifer A RutaAustraliaXuxue Feng PROPOSAL
Ashley L InouyeArgentinaIvan Magalhaes RENEWAL
Claire W SchemmerItalyElwin Sharvill QUALIFIED
Arvin K WieserAustraliaAsiya Javayant QUALIFIED
Greenwood S VocelkaAustraliaOnyama Limba 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>