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
Julie W GlickCanadaIvan Magalhaes QUALIFIED
Jones T BowleyIndiaIvan Magalhaes RENEWAL
Salvatore K CampainBrazilOnyama Limba NEGOTIATION
Salvatore Q FigeroaFranceOnyama Limba NEGOTIATION
Octavia T VenereFranceAnna Fali NEGOTIATION
Clifford Z CaldareraJapanBernardo Dominic UNQUALIFIED
Munro P RimArgentinaAmy Elsner NEW
Francesco F GauchoItalyIoni Bowcher QUALIFIED
Deepesh N FigeroaGermanyAsiya Javayant QUALIFIED
Aditya D FigeroaArgentinaOnyama Limba NEGOTIATION
Sinclair J VenereAustraliaAsiya Javayant NEGOTIATION
Aruna J InouyeRussiaElwin Sharvill PROPOSAL
Juan R PerinCanadaXuxue Feng NEW
Octavia G BowleyRussiaStephen Shaw NEGOTIATION
Kaitlin V InouyeJapanStephen Shaw UNQUALIFIED
Jeanfrancois Z RimItalyAmy Elsner UNQUALIFIED
Jennifer E SchemmerAustraliaStephen Shaw QUALIFIED
Maisha M PoquetteUnited KingdomOnyama Limba NEW
Maisha T MaletItalyOnyama Limba PROPOSAL
Julie K InouyeSpainAmy Elsner UNQUALIFIED
Francesco S PerinItalyIoni Bowcher UNQUALIFIED
Darci Z RulapaughAustraliaBernardo Dominic PROPOSAL
Darci Q DilliardRussiaXuxue Feng NEGOTIATION
Kadeem N ButtGermanyElwin Sharvill PROPOSAL
Johnson B FigeroaIndiaIvan Magalhaes PROPOSAL
Claire S SaylorsItalyOnyama Limba UNQUALIFIED
Mayumi D NestleIndiaBernardo Dominic PROPOSAL
Sinclair T GauchoUnited KingdomAsiya Javayant NEW
David S OstroskyUnited KingdomElwin Sharvill QUALIFIED
Jeanfrancois Y SlusarskiItalyAmy Elsner RENEWAL
Costa J MarrierItalyAnna Fali UNQUALIFIED
Mayumi Z KolmetzBrazilStephen Shaw NEW
Isabel W PoquetteCanadaStephen Shaw UNQUALIFIED
Misaki J MaletAustraliaElwin Sharvill RENEWAL
Leon Z RimBrazilXuxue Feng PROPOSAL
Maria J DarakjyUnited KingdomStephen Shaw QUALIFIED
Aruna X DarakjyArgentinaBernardo Dominic NEW
Leon R AmigonItalyIoni Bowcher PROPOSAL
Ricardo Y RutaSpainXuxue Feng QUALIFIED
Rodrigues D PaprockiArgentinaAnna Fali NEGOTIATION
Nicolas D WaycottAustraliaAsiya Javayant NEW
Jefferson S RulapaughIndiaAmy Elsner UNQUALIFIED
Octavia U SlusarskiIndiaBernardo Dominic NEGOTIATION
Deepesh L WieserFranceXuxue Feng NEW
Salvatore I MaletUnited KingdomOnyama Limba NEW
Ricardo K BriddickCanadaStephen Shaw NEW
Arvin O RutaFranceIoni Bowcher NEW
Munro Z RulapaughFranceIvan Magalhaes PROPOSAL
Nicolas C DarakjyIndiaStephen Shaw NEGOTIATION
Leja U SchemmerRussiaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Greenwood C OldroydGermanyBernardo Dominic PROPOSAL
Mujtaba W SergiJapanXuxue Feng PROPOSAL
Ricardo Q GauchoBrazilElwin Sharvill PROPOSAL
Jones W WieserSpainIoni Bowcher NEW
Maisha T SlusarskiCanadaOnyama Limba UNQUALIFIED
Leja O WaycottArgentinaAsiya Javayant NEGOTIATION
Smith G NestleIndiaBernardo Dominic NEGOTIATION
Isabel M MaletIndiaAnna Fali QUALIFIED
Alejandro E PaprockiBrazilAnna Fali NEGOTIATION
Kadeem H GauchoBrazilXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony D SlusarskiSpain2024-05-01Commercial Press PROPOSAL62Anna Fali
1001Morrow V GauchoAustralia2024-05-07King, Christopher A Esq QUALIFIED9Stephen Shaw
1002Jeanfrancois B SergiFrance2024-05-03Rangoni Of Florence NEGOTIATION25Elwin Sharvill
1003Antonio P SergiCanada2024-05-17Truhlar And Truhlar Attys UNQUALIFIED62Anna Fali
1004James Y NickaAustralia2024-05-07Chemel, James L Cpa QUALIFIED74Elwin Sharvill
1005Ivar L GillianItaly2024-05-15Feltz Printing Service QUALIFIED24Stephen Shaw
1006Jefferson M GlickAustralia2024-05-22Rangoni Of Florence PROPOSAL55Amy Elsner
1007Misaki T WieserUnited Kingdom2024-05-02Rangoni Of Florence NEW60Stephen Shaw
1008Juan X FlosiCanada2024-05-06Chemel, James L Cpa PROPOSAL33Amy Elsner
1009Aditya A OldroydFrance2024-05-10Morlong Associates NEW26Asiya Javayant
1010Julie Q ButtIndia2024-04-28Buckley Miller Wright NEW6Elwin Sharvill
1011Greenwood I MorascaArgentina2024-05-24Chanay, Jeffrey A Esq NEW61Onyama Limba
1012Jones R ButtItaly2024-05-20Chemel, James L Cpa NEW54Amy Elsner
1013Silvio P ChuiBrazil2024-05-15Benton, John B Jr NEW75Amy Elsner
1014Isabel D SergiBrazil2024-05-25Morlong Associates PROPOSAL92Bernardo Dominic
1015Jeanfrancois O NickaIndia2024-05-20Benton, John B Jr UNQUALIFIED2Elwin Sharvill
1016Aika L PaprockiSpain2024-04-28King, Christopher A Esq PROPOSAL29Amy Elsner
1017Costa T BriddickRussia2024-05-27Feltz Printing Service PROPOSAL90Xuxue Feng
1018Arvin P ChuiCanada2024-05-12Buckley Miller Wright QUALIFIED29Ivan Magalhaes
1019Nicolas F GarufiRussia2024-05-02Truhlar And Truhlar Attys UNQUALIFIED20Amy Elsner
1020Jones A AmigonAustralia2024-05-19Chemel, James L Cpa PROPOSAL30Ivan Magalhaes
1021Nicolas H InouyeIndia2024-05-24Truhlar And Truhlar Attys NEGOTIATION69Stephen Shaw
1022Arvin P PerinRussia2024-05-13Rangoni Of Florence NEW68Xuxue Feng
1023Kaitlin S SchemmerRussia2024-05-15Chemel, James L Cpa PROPOSAL24Bernardo Dominic
1024Salvatore Q DarakjyArgentina2024-05-15Truhlar And Truhlar Attys PROPOSAL54Asiya Javayant
1025Greenwood I BologniaUnited Kingdom2024-05-10Printing Dimensions RENEWAL46Elwin Sharvill
1026Costa F VenereItaly2024-05-27Chapman, Ross E Esq NEW69Xuxue Feng
1027Kadeem K KolmetzSpain2024-05-08Benton, John B Jr NEGOTIATION81Ioni Bowcher
1028Rodrigues B MacleadFrance2024-05-22Dorl, James J Esq UNQUALIFIED29Stephen Shaw
1029Octavia L GillianItaly2024-05-08Rangoni Of Florence QUALIFIED72Bernardo Dominic
1030Munro C FollerFrance2024-05-16Chapman, Ross E Esq PROPOSAL66Asiya Javayant
1031Leja J StockhamIndia2024-05-01Rangoni Of Florence NEGOTIATION21Elwin Sharvill
1032Juan E DarakjyArgentina2024-05-13Rousseaux, Michael Esq PROPOSAL67Xuxue Feng
1033Ashley H StensethUnited Kingdom2024-04-30Truhlar And Truhlar Attys NEW17Ivan Magalhaes
1034Johnson P ShinkoItaly2024-05-26Printing Dimensions NEW88Amy Elsner
1035Silvio C BowleyUnited Kingdom2024-05-09Chemel, James L Cpa NEGOTIATION25Ioni Bowcher
1036Mujtaba T AlbaresRussia2024-05-19Rousseaux, Michael Esq RENEWAL91Ivan Magalhaes
1037Misaki W PaprockiUnited Kingdom2024-04-28Chemel, James L Cpa PROPOSAL89Bernardo Dominic
1038Clifford C SaylorsIndia2024-05-13Feiner Bros NEGOTIATION29Ioni Bowcher
1039Alejandro E StensethItaly2024-04-28Chemel, James L Cpa PROPOSAL33Bernardo Dominic
1040Adams N MacleadArgentina2024-05-04Rangoni Of Florence NEGOTIATION22Xuxue Feng
1041Chavez F DoeIndia2024-05-15Dorl, James J Esq UNQUALIFIED16Asiya Javayant
1042James N IturbideGermany2024-04-29Commercial Press UNQUALIFIED24Stephen Shaw
1043David O WaycottArgentina2024-05-14Printing Dimensions NEGOTIATION88Amy Elsner
1044Silvio H SergiArgentina2024-04-30Chapman, Ross E Esq NEW94Amy Elsner
1045Aditya H RimArgentina2024-04-30Printing Dimensions PROPOSAL90Stephen Shaw
1046Misaki R BologniaFrance2024-05-08Rangoni Of Florence PROPOSAL48Onyama Limba
1047Rodrigues J DilliardFrance2024-05-26Rousseaux, Michael Esq PROPOSAL66Anna Fali
1048Alejandro K WaycottItaly2024-04-28Chemel, James L Cpa NEGOTIATION86Amy Elsner
1049Juan W GlickUnited Kingdom2024-05-04Printing Dimensions QUALIFIED29Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Emily N WaycottAustraliaElwin Sharvill QUALIFIED
James Q WhobreyAustraliaXuxue Feng NEGOTIATION
Sinclair F BowleyRussiaBernardo Dominic RENEWAL
Aditya Y StensethSpainIvan Magalhaes QUALIFIED
Emily R CampainFranceStephen Shaw RENEWAL
Wickens I OstroskyIndiaElwin Sharvill PROPOSAL
Costa Y RulapaughFranceOnyama Limba UNQUALIFIED
Sinclair M WieserCanadaIoni Bowcher NEW
Mujtaba S InouyeSpainAmy Elsner UNQUALIFIED
Salvatore Z GarufiJapanIvan Magalhaes PROPOSAL
Kaitlin F RoysterGermanyStephen Shaw NEW
Misaki F DilliardFranceElwin Sharvill UNQUALIFIED
Leja K InouyeItalyAnna Fali RENEWAL
Costa I CampainJapanXuxue Feng NEGOTIATION
Isabel O RutaCanadaAnna Fali UNQUALIFIED
Ashley T BologniaItalyOnyama Limba NEGOTIATION
Murillo E WieserRussiaIoni Bowcher QUALIFIED
Arvin X PaprockiFranceAsiya Javayant PROPOSAL
Leon K WhobreySpainOnyama Limba NEW
Stacey T CaldareraCanadaAsiya Javayant NEW
Kadeem A CaudyUnited KingdomOnyama Limba QUALIFIED
Jefferson B BowleyGermanyIvan Magalhaes QUALIFIED
Wickens E MorascaIndiaBernardo Dominic UNQUALIFIED
Mujtaba P WaycottIndiaIvan Magalhaes RENEWAL
Johnson K GillianSpainOnyama Limba NEGOTIATION
Juan N RimRussiaXuxue Feng RENEWAL
Izzy I DarakjyUnited KingdomOnyama Limba NEGOTIATION
Tony F SlusarskiAustraliaAnna Fali PROPOSAL
Darci L CaudyItalyBernardo Dominic NEGOTIATION
Cody I MaletUnited KingdomXuxue Feng RENEWAL
Kaitlin A ButtIndiaAmy Elsner NEGOTIATION
Murillo B OldroydUnited KingdomStephen Shaw PROPOSAL
Rodrigues B OstroskyIndiaXuxue Feng QUALIFIED
Nicolas N NestleBrazilAnna Fali PROPOSAL
Isabel X IturbideItalyAsiya Javayant RENEWAL
Stacey C RulapaughRussiaOnyama Limba NEGOTIATION
James S OstroskyUnited KingdomAnna Fali NEW
Munro V RutaUnited KingdomStephen Shaw UNQUALIFIED
Wickens V BriddickSpainXuxue Feng QUALIFIED
Claire I BologniaGermanyStephen Shaw RENEWAL
Octavia K StockhamJapanAnna Fali PROPOSAL
Johnson W GauchoItalyIoni Bowcher NEW
Smith E MaletBrazilXuxue Feng UNQUALIFIED
Claire T GauchoAustraliaElwin Sharvill PROPOSAL
Munro V SaylorsBrazilOnyama Limba NEGOTIATION
Nicolas Y ChuiIndiaElwin Sharvill UNQUALIFIED
Kaitlin Q PerinRussiaXuxue Feng NEW
Cody T NestleIndiaIoni Bowcher NEGOTIATION
Jones F ChuiGermanyAnna Fali PROPOSAL
Sinclair I KolmetzUnited KingdomBernardo Dominic PROPOSAL
Frozen Columns
Name
Aruna W Caudy
Tony Q Amigon
Jennifer P Malet
Johnson B Poquette
Aruna B Malet
Munro B Darakjy
Nicolas J Bolognia
Clifford U Morasca
Salvatore C Amigon
Isabel W Vocelka
Maisha Y Rim
Cody Y Saylors
David S Foller
Emily V Sergi
Alejandro C Poquette
Julie N Bowley
Kaitlin A Slusarski
Costa T Morasca
Munro D Nestle
Misaki X Wieser
Aika D Royster
Wickens L Garufi
Izzy L Bolognia
Isabel R Schemmer
Octavia J Ruta
Aruna U Vocelka
Leon S Bowley
Antonio R Rulapaugh
Clifford G Stockham
Arvin V Garufi
Isabel H Chui
Clifford K Marrier
Leja O Malet
Ashley G Garufi
Salvatore V Garufi
Aditya J Oldroyd
Claire F Dilliard
Ashley S Glick
Murillo T Paprocki
Rodrigues M Amigon
Jeanfrancois T Stenseth
Wickens X Figeroa
Costa P Ostrosky
Aika G Foller
Leon Y Rulapaugh
Mujtaba D Stockham
Isabel U Rim
Jennifer T Malet
Octavia H Tollner
Aruna A Tollner
IdCountryDate
1000Canada2024-05-21
1001Spain2024-05-20
1002France2024-05-05
1003Australia2024-05-17
1004Italy2024-05-02
1005United Kingdom2024-05-12
1006Italy2024-05-26
1007Germany2024-05-03
1008Argentina2024-05-22
1009Argentina2024-05-13
1010Spain2024-04-29
1011Japan2024-05-03
1012Germany2024-05-21
1013Germany2024-05-17
1014Argentina2024-05-19
1015Brazil2024-05-13
1016Russia2024-05-21
1017Canada2024-05-25
1018Canada2024-05-10
1019India2024-05-25
1020United Kingdom2024-05-12
1021Canada2024-04-29
1022United Kingdom2024-05-08
1023India2024-05-22
1024Germany2024-05-14
1025United Kingdom2024-05-06
1026Brazil2024-04-30
1027France2024-05-02
1028United Kingdom2024-05-16
1029Australia2024-05-16
1030India2024-05-15
1031Australia2024-05-08
1032Brazil2024-05-03
1033Spain2024-05-26
1034Spain2024-05-17
1035Brazil2024-05-04
1036Germany2024-05-13
1037France2024-05-14
1038Brazil2024-05-09
1039Russia2024-05-07
1040Canada2024-05-19
1041Argentina2024-05-14
1042United Kingdom2024-05-12
1043Russia2024-05-09
1044Italy2024-05-14
1045Italy2024-05-22
1046Spain2024-05-24
1047Germany2024-05-21
1048Canada2024-04-28
1049Spain2024-05-20

On-Demand Data

NameIdCountryDate
Antonio X Marrier1000Germany2024-05-25
Antonio U Perin1001United Kingdom2024-04-29
Maria D Stockham1002Argentina2024-05-25
Smith H Caldarera1003Brazil2024-05-24
Leon I Flosi1004Argentina2024-05-08
Octavia W Glick1005Germany2024-05-16
Darci X Campain1006France2024-05-14
Smith K Vocelka1007France2024-05-16
Isabel G Albares1008Australia2024-04-29
Juan X Butt1009India2024-05-07
Claire F Rim1010Russia2024-05-01
Rodrigues L Gaucho1011Canada2024-05-02
Misaki H Albares1012Japan2024-05-02
Darci Q Campain1013Brazil2024-05-09
Silvio J Iturbide1014Brazil2024-05-09
Costa K Bolognia1015Russia2024-05-15
Wickens K Nicka1016Spain2024-05-02
Clifford O Figeroa1017Australia2024-05-10
Ashley E Briddick1018Argentina2024-05-24
Alejandro C Malet1019Russia2024-05-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens O WhobreyUnited KingdomElwin Sharvill PROPOSAL
Octavia H AlbaresUnited KingdomElwin Sharvill NEW
Alejandro I NickaBrazilXuxue Feng QUALIFIED
Chavez R GauchoIndiaOnyama Limba PROPOSAL
Chavez Y SaylorsFranceOnyama Limba QUALIFIED
Smith H VenereFranceIoni Bowcher PROPOSAL
Ashley I BowleyAustraliaIvan Magalhaes NEGOTIATION
Emily D GlickArgentinaAnna Fali QUALIFIED
Ashley J MaletRussiaOnyama Limba NEGOTIATION
Tony Y PerinBrazilIvan Magalhaes QUALIFIED
Alejandro B MorascaSpainOnyama Limba NEGOTIATION
Jefferson D MacleadRussiaBernardo Dominic RENEWAL
Leja Z RulapaughJapanIvan Magalhaes PROPOSAL
Ivar I SlusarskiArgentinaAmy Elsner NEW
Rodrigues O AmigonAustraliaIoni Bowcher RENEWAL
Aika I FollerCanadaIvan Magalhaes QUALIFIED
Maria C NickaJapanAsiya Javayant UNQUALIFIED
Jeanfrancois F InouyeAustraliaOnyama Limba QUALIFIED
Octavia Q AlbaresIndiaBernardo Dominic NEGOTIATION
Leja M WieserAustraliaAmy Elsner NEW
Silvio H ShinkoSpainElwin Sharvill UNQUALIFIED
Kadeem M StensethUnited KingdomBernardo Dominic RENEWAL
Costa C MaletSpainAmy Elsner QUALIFIED
Octavia F OstroskyCanadaAmy Elsner NEW
Greenwood C OstroskyCanadaAsiya Javayant QUALIFIED
Mujtaba D OstroskyRussiaBernardo Dominic NEGOTIATION
Izzy L AlbaresRussiaAnna Fali RENEWAL
Ricardo Y KolmetzAustraliaAsiya Javayant NEGOTIATION
Cody R KuskoAustraliaAmy Elsner NEGOTIATION
Costa T MaletCanadaIoni Bowcher PROPOSAL
David G NickaIndiaOnyama Limba QUALIFIED
Aika L CaldareraIndiaOnyama Limba NEGOTIATION
Jennifer R OstroskyBrazilAnna Fali QUALIFIED
Munro N StensethBrazilIoni Bowcher RENEWAL
Maria E SergiRussiaIvan Magalhaes PROPOSAL
Jefferson I GauchoRussiaBernardo Dominic NEW
Leon H GarufiFranceAnna Fali NEW
Aika Z AlbaresAustraliaStephen Shaw NEGOTIATION
Nicolas M KuskoBrazilAsiya Javayant NEW
Ashley Z KolmetzIndiaStephen Shaw 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>