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
Maisha Q FigeroaItalyIoni Bowcher PROPOSAL
Deepesh O OldroydBrazilXuxue Feng PROPOSAL
Leon K NickaGermanyIvan Magalhaes RENEWAL
Francesco N SlusarskiGermanyOnyama Limba NEGOTIATION
Aruna W IturbideCanadaElwin Sharvill NEGOTIATION
Misaki O PerinArgentinaBernardo Dominic NEGOTIATION
Octavia F VocelkaArgentinaIvan Magalhaes NEW
Ivar Y TollnerIndiaElwin Sharvill PROPOSAL
Jeanfrancois E FlosiCanadaOnyama Limba UNQUALIFIED
Aditya O WhobreyUnited KingdomAnna Fali PROPOSAL
Aditya W VocelkaBrazilIoni Bowcher NEGOTIATION
Chavez N PaprockiUnited KingdomAsiya Javayant QUALIFIED
Tony Q ChuiGermanyAmy Elsner PROPOSAL
Wickens F BologniaAustraliaElwin Sharvill RENEWAL
Nicolas F GarufiJapanAnna Fali RENEWAL
Murillo D AlbaresCanadaAmy Elsner RENEWAL
Aruna O StensethUnited KingdomBernardo Dominic UNQUALIFIED
Julie X InouyeGermanyStephen Shaw NEGOTIATION
Sinclair D DilliardItalyStephen Shaw PROPOSAL
Morrow R StensethBrazilStephen Shaw PROPOSAL
Sinclair S KolmetzUnited KingdomOnyama Limba UNQUALIFIED
Rodrigues S BowleyItalyAsiya Javayant NEW
Arvin M IturbideArgentinaAsiya Javayant QUALIFIED
Aika C PoquetteItalyBernardo Dominic NEW
Leja F ShinkoIndiaStephen Shaw PROPOSAL
Jones C ChuiAustraliaAsiya Javayant QUALIFIED
Izzy A MarrierFranceIvan Magalhaes UNQUALIFIED
Salvatore X KolmetzGermanyAmy Elsner PROPOSAL
Morrow W RutaAustraliaIvan Magalhaes PROPOSAL
Jones P PoquetteRussiaBernardo Dominic NEGOTIATION
Jones Q VenereGermanyOnyama Limba UNQUALIFIED
Silvio C DilliardRussiaAsiya Javayant UNQUALIFIED
Aditya F AlbaresArgentinaIvan Magalhaes PROPOSAL
Munro X BologniaBrazilBernardo Dominic QUALIFIED
Emily Y StensethCanadaIoni Bowcher NEGOTIATION
Munro A NickaItalyIvan Magalhaes QUALIFIED
Adams S AmigonUnited KingdomElwin Sharvill NEW
Aruna O SergiRussiaAsiya Javayant QUALIFIED
Kaitlin C IturbideSpainElwin Sharvill PROPOSAL
Aruna M ButtSpainBernardo Dominic NEGOTIATION
Jefferson H StockhamCanadaAsiya Javayant NEW
Alejandro B IturbideJapanIvan Magalhaes QUALIFIED
Tony J GarufiAustraliaBernardo Dominic RENEWAL
Kadeem F ShinkoArgentinaIvan Magalhaes NEGOTIATION
Stacey L MaletArgentinaXuxue Feng QUALIFIED
Rodrigues C FigeroaJapanStephen Shaw NEGOTIATION
Stacey Y RimJapanElwin Sharvill RENEWAL
Sinclair H OstroskyRussiaIvan Magalhaes PROPOSAL
Munro W PoquetteItalyBernardo Dominic NEW
Murillo L CaldareraArgentinaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jefferson N DoeCanadaAmy Elsner NEW
Clifford W OstroskyUnited KingdomXuxue Feng RENEWAL
Costa H AlbaresIndiaXuxue Feng PROPOSAL
Sinclair T FigeroaCanadaAsiya Javayant NEGOTIATION
Smith K KolmetzJapanIvan Magalhaes PROPOSAL
Greenwood U TollnerFranceBernardo Dominic PROPOSAL
Jeanfrancois O GauchoArgentinaAmy Elsner RENEWAL
Leja Z MarrierCanadaAmy Elsner RENEWAL
Jones O KuskoRussiaAsiya Javayant NEW
Smith A GillianRussiaBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey C CaudySpain2024-05-15Dorl, James J Esq QUALIFIED73Ivan Magalhaes
1001Darci S MaletSpain2024-05-15King, Christopher A Esq NEW24Elwin Sharvill
1002Ashley O VenereBrazil2024-05-30Chanay, Jeffrey A Esq NEW66Anna Fali
1003Francesco A RutaItaly2024-05-14Chapman, Ross E Esq NEGOTIATION12Anna Fali
1004Juan Q GlickBrazil2024-05-18Truhlar And Truhlar Attys NEW8Bernardo Dominic
1005Arvin B SaylorsRussia2024-05-24Dorl, James J Esq QUALIFIED88Xuxue Feng
1006Emily L SergiUnited Kingdom2024-05-25Feltz Printing Service PROPOSAL13Xuxue Feng
1007Emily C CaudyIndia2024-05-22King, Christopher A Esq NEW60Ioni Bowcher
1008Costa X SchemmerArgentina2024-05-31Buckley Miller Wright QUALIFIED0Amy Elsner
1009Maisha O DilliardJapan2024-06-01Rangoni Of Florence NEGOTIATION63Bernardo Dominic
1010David A GillianAustralia2024-05-19Chapman, Ross E Esq QUALIFIED45Ivan Magalhaes
1011Salvatore C InouyeRussia2024-05-31Buckley Miller Wright QUALIFIED81Amy Elsner
1012Aika G InouyeRussia2024-05-21Feltz Printing Service UNQUALIFIED24Asiya Javayant
1013Jefferson F MorascaJapan2024-05-30King, Christopher A Esq RENEWAL67Stephen Shaw
1014Leon T RulapaughBrazil2024-05-12Morlong Associates NEGOTIATION60Ivan Magalhaes
1015Leon K StensethFrance2024-05-29Commercial Press QUALIFIED41Asiya Javayant
1016Morrow K SlusarskiFrance2024-05-20Feltz Printing Service PROPOSAL78Onyama Limba
1017Cody K MacleadBrazil2024-05-18Truhlar And Truhlar Attys NEGOTIATION17Amy Elsner
1018Greenwood G MarrierRussia2024-05-28Buckley Miller Wright PROPOSAL74Asiya Javayant
1019Kadeem G WieserAustralia2024-05-18Benton, John B Jr QUALIFIED18Ivan Magalhaes
1020Ivar L GauchoRussia2024-05-18King, Christopher A Esq PROPOSAL78Anna Fali
1021Jones G TollnerGermany2024-05-26Dorl, James J Esq NEW96Onyama Limba
1022Kadeem B CaldareraFrance2024-05-11Rangoni Of Florence PROPOSAL72Elwin Sharvill
1023Julie I MarrierFrance2024-05-19Printing Dimensions NEW65Ivan Magalhaes
1024Ashley V KolmetzRussia2024-06-01King, Christopher A Esq NEGOTIATION12Ivan Magalhaes
1025Ivar A GauchoFrance2024-05-23Feltz Printing Service RENEWAL25Amy Elsner
1026Aika Y ButtIndia2024-05-25Benton, John B Jr NEGOTIATION31Ioni Bowcher
1027Stacey C MaletIndia2024-05-19Dorl, James J Esq NEGOTIATION81Amy Elsner
1028Leon S CaudyItaly2024-06-03Chemel, James L Cpa RENEWAL33Xuxue Feng
1029Misaki E RoysterAustralia2024-05-13Feiner Bros NEW60Ioni Bowcher
1030Darci I PerinUnited Kingdom2024-06-03Chemel, James L Cpa NEW82Asiya Javayant
1031Murillo C FlosiGermany2024-05-13Rangoni Of Florence RENEWAL15Ivan Magalhaes
1032Arvin A DilliardJapan2024-05-16Printing Dimensions UNQUALIFIED64Onyama Limba
1033Aditya H NestleCanada2024-05-24Benton, John B Jr QUALIFIED15Xuxue Feng
1034Isabel R GarufiRussia2024-05-19Chapman, Ross E Esq RENEWAL74Asiya Javayant
1035Misaki B SergiFrance2024-05-26Chapman, Ross E Esq PROPOSAL50Ioni Bowcher
1036Murillo C ShinkoRussia2024-05-18Commercial Press NEW62Xuxue Feng
1037Ivar Z PaprockiIndia2024-05-11Buckley Miller Wright UNQUALIFIED75Elwin Sharvill
1038Julie I WieserGermany2024-05-12Commercial Press NEGOTIATION21Anna Fali
1039Kadeem T AlbaresUnited Kingdom2024-05-14Feltz Printing Service RENEWAL93Asiya Javayant
1040Greenwood B WieserSpain2024-05-05Truhlar And Truhlar Attys RENEWAL3Anna Fali
1041Kaitlin Z StockhamGermany2024-06-03Rousseaux, Michael Esq RENEWAL35Xuxue Feng
1042James P CaldareraCanada2024-06-03Feiner Bros NEW86Stephen Shaw
1043Julie L WieserIndia2024-05-21Morlong Associates RENEWAL16Asiya Javayant
1044Sinclair V NickaArgentina2024-05-16Commercial Press QUALIFIED40Onyama Limba
1045Jefferson F OstroskyGermany2024-05-06Chapman, Ross E Esq QUALIFIED67Anna Fali
1046Clifford C ChuiCanada2024-05-20Benton, John B Jr NEGOTIATION86Ioni Bowcher
1047Mujtaba R GauchoFrance2024-05-15Rousseaux, Michael Esq QUALIFIED85Elwin Sharvill
1048Wickens F RulapaughBrazil2024-05-13Commercial Press QUALIFIED4Ivan Magalhaes
1049James X RulapaughIndia2024-05-19Printing Dimensions QUALIFIED80Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
David T StockhamGermanyAnna Fali NEW
Jennifer O InouyeBrazilBernardo Dominic NEW
Izzy S WaycottItalyIvan Magalhaes PROPOSAL
Arvin H BologniaFranceBernardo Dominic PROPOSAL
Johnson W FerenczBrazilStephen Shaw PROPOSAL
Aika P RimFranceAsiya Javayant QUALIFIED
Isabel T ChuiFranceAmy Elsner NEGOTIATION
Wickens R RimJapanBernardo Dominic UNQUALIFIED
Emily C BriddickJapanElwin Sharvill PROPOSAL
Aditya J SchemmerIndiaBernardo Dominic PROPOSAL
Wickens L SchemmerArgentinaAsiya Javayant NEW
Nicolas Y GarufiJapanIvan Magalhaes RENEWAL
Mayumi D KolmetzItalyOnyama Limba PROPOSAL
Silvio S RoysterItalyAnna Fali NEGOTIATION
Morrow L OstroskyRussiaAsiya Javayant QUALIFIED
Ricardo K FlosiArgentinaAnna Fali NEW
Faith G BriddickCanadaAmy Elsner PROPOSAL
Nicolas K CaldareraUnited KingdomStephen Shaw PROPOSAL
Isabel D FlosiSpainIoni Bowcher PROPOSAL
Tony D SergiFranceIvan Magalhaes UNQUALIFIED
Claire H TollnerUnited KingdomBernardo Dominic RENEWAL
Murillo T OstroskyGermanyStephen Shaw RENEWAL
Izzy A CaudyAustraliaOnyama Limba PROPOSAL
Izzy J FigeroaFranceXuxue Feng PROPOSAL
Silvio E OstroskyAustraliaXuxue Feng UNQUALIFIED
Silvio U CaldareraSpainStephen Shaw RENEWAL
Adams B AmigonAustraliaStephen Shaw UNQUALIFIED
Misaki U BologniaGermanyAmy Elsner PROPOSAL
Isabel U InouyeRussiaStephen Shaw NEGOTIATION
Julie U GauchoRussiaAsiya Javayant QUALIFIED
Octavia Y FigeroaItalyAnna Fali NEW
Maisha A MaletArgentinaOnyama Limba PROPOSAL
Munro A VocelkaJapanElwin Sharvill UNQUALIFIED
Salvatore L SlusarskiFranceStephen Shaw PROPOSAL
Chavez D NestleArgentinaAmy Elsner RENEWAL
Adams S RulapaughSpainAnna Fali NEW
Emily F StockhamCanadaStephen Shaw PROPOSAL
Ivar Q FigeroaSpainElwin Sharvill PROPOSAL
Ashley I NickaRussiaBernardo Dominic QUALIFIED
Jeanfrancois L VenereRussiaStephen Shaw NEW
Octavia N MorascaIndiaAsiya Javayant PROPOSAL
Jennifer A TollnerItalyAsiya Javayant UNQUALIFIED
Izzy I MaletArgentinaBernardo Dominic NEW
James J ButtSpainAmy Elsner RENEWAL
Leja T AlbaresArgentinaElwin Sharvill NEGOTIATION
Octavia A BriddickFranceAmy Elsner NEW
Ashley B MorascaRussiaIoni Bowcher NEGOTIATION
Wickens E VocelkaArgentinaIvan Magalhaes PROPOSAL
Ricardo G SlusarskiUnited KingdomBernardo Dominic PROPOSAL
Jennifer R KuskoJapanBernardo Dominic NEGOTIATION
Frozen Columns
Name
Smith K Briddick
Johnson U Oldroyd
Tony B Ruta
Clifford W Malet
Johnson D Waycott
Julie E Poquette
Adams G Kusko
Aruna Q Wieser
Antonio C Bowley
Johnson N Venere
Maisha D Gaucho
Arvin T Doe
Wickens K Tollner
Octavia P Schemmer
Emily J Albares
Murillo C Royster
Cody B Caldarera
Maisha M Caudy
Aika P Rulapaugh
Nicolas Q Stockham
Francesco A Venere
David F Caudy
Octavia P Gaucho
Costa Z Royster
Maisha D Kolmetz
Kaitlin R Ferencz
Emily G Campain
Izzy R Rim
Mayumi C Caudy
Alejandro O Maclead
Misaki X Malet
Smith J Dilliard
Maria U Sergi
Johnson Z Foller
Ashley R Foller
Leon D Vocelka
Adams O Garufi
Juan F Ruta
Darci B Butt
Darci C Caldarera
Aditya F Rim
Maria F Albares
Silvio S Nicka
Jones O Saylors
Kaitlin Z Chui
Rodrigues X Stockham
Stacey S Rulapaugh
Maria N Sergi
Aditya I Oldroyd
Salvatore T Caldarera
IdCountryDate
1000Italy2024-05-23
1001Spain2024-05-31
1002Spain2024-05-16
1003Germany2024-05-21
1004United Kingdom2024-06-02
1005Spain2024-05-21
1006Japan2024-05-29
1007Germany2024-05-10
1008India2024-06-01
1009Italy2024-05-18
1010Russia2024-05-16
1011United Kingdom2024-05-30
1012Japan2024-05-13
1013Australia2024-05-13
1014United Kingdom2024-05-21
1015Brazil2024-05-11
1016India2024-05-27
1017Brazil2024-05-31
1018Brazil2024-05-08
1019Canada2024-05-05
1020Australia2024-05-28
1021Spain2024-05-20
1022Spain2024-05-21
1023France2024-05-28
1024Canada2024-05-13
1025India2024-05-28
1026France2024-05-08
1027Russia2024-05-15
1028Brazil2024-05-07
1029Spain2024-05-08
1030Brazil2024-06-03
1031Australia2024-05-22
1032Brazil2024-05-17
1033United Kingdom2024-05-13
1034Russia2024-05-16
1035India2024-05-18
1036Japan2024-05-29
1037Italy2024-05-30
1038India2024-05-13
1039United Kingdom2024-05-07
1040Brazil2024-05-11
1041Australia2024-05-29
1042United Kingdom2024-06-03
1043Argentina2024-05-17
1044France2024-05-29
1045Germany2024-06-01
1046Spain2024-05-30
1047Australia2024-05-10
1048United Kingdom2024-05-31
1049Russia2024-05-09

On-Demand Data

NameIdCountryDate
Cody L Kolmetz1000United Kingdom2024-06-02
Morrow M Shinko1001Russia2024-06-01
Cody O Flosi1002Spain2024-05-20
Tony R Butt1003Germany2024-05-11
Nicolas W Ostrosky1004Spain2024-05-27
Izzy V Oldroyd1005India2024-05-18
Mayumi U Iturbide1006Italy2024-05-16
Juan D Doe1007Canada2024-05-16
Jefferson R Dilliard1008Canada2024-05-26
Kadeem P Foller1009United Kingdom2024-05-05
Alejandro V Rim1010France2024-05-27
Arvin Z Albares1011Italy2024-05-19
Ashley P Maclead1012France2024-05-10
Octavia X Campain1013Australia2024-05-23
Francesco G Doe1014Russia2024-05-10
Jones C Morasca1015Russia2024-05-13
Clifford N Caldarera1016Australia2024-05-24
Kaitlin G Foller1017Argentina2024-05-16
Munro C Shinko1018Australia2024-05-16
Chavez J Caldarera1019Spain2024-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa N BriddickFranceBernardo Dominic RENEWAL
Arvin T BologniaAustraliaXuxue Feng QUALIFIED
Greenwood V CaldareraAustraliaElwin Sharvill RENEWAL
Nicolas Q WieserGermanyBernardo Dominic RENEWAL
Deepesh J StensethUnited KingdomBernardo Dominic RENEWAL
Ashley W TollnerJapanElwin Sharvill NEGOTIATION
Darci L MacleadArgentinaBernardo Dominic RENEWAL
Maria S WhobreyArgentinaIvan Magalhaes QUALIFIED
Chavez N StensethUnited KingdomOnyama Limba UNQUALIFIED
Octavia G IturbideAustraliaIoni Bowcher NEW
Adams H MarrierSpainBernardo Dominic RENEWAL
Isabel X SlusarskiGermanyElwin Sharvill PROPOSAL
Munro L WieserIndiaIoni Bowcher NEGOTIATION
Silvio Z SergiAustraliaAsiya Javayant NEGOTIATION
Adams T WaycottSpainStephen Shaw UNQUALIFIED
Deepesh W MorascaArgentinaIoni Bowcher PROPOSAL
Chavez X KolmetzSpainAnna Fali QUALIFIED
Chavez V NickaCanadaStephen Shaw RENEWAL
Adams B RulapaughSpainBernardo Dominic NEGOTIATION
Murillo A ShinkoFranceIvan Magalhaes RENEWAL
Munro N RimCanadaOnyama Limba QUALIFIED
Deepesh T ChuiJapanIvan Magalhaes RENEWAL
Mayumi O IturbideItalyAsiya Javayant PROPOSAL
Antonio A CaldareraArgentinaXuxue Feng UNQUALIFIED
Wickens Z FigeroaFranceAsiya Javayant RENEWAL
Murillo Q AlbaresArgentinaElwin Sharvill NEW
Sinclair N ShinkoGermanyStephen Shaw UNQUALIFIED
Greenwood H MaletItalyStephen Shaw NEGOTIATION
Jeanfrancois T FigeroaUnited KingdomBernardo Dominic NEGOTIATION
Murillo Q KolmetzGermanyAsiya Javayant QUALIFIED
Adams Y SaylorsItalyXuxue Feng UNQUALIFIED
Salvatore M SergiCanadaOnyama Limba NEW
David Y TollnerUnited KingdomXuxue Feng RENEWAL
Tony Q StensethFranceXuxue Feng NEGOTIATION
Isabel S SaylorsIndiaIoni Bowcher PROPOSAL
Munro T KolmetzSpainIoni Bowcher QUALIFIED
Faith B DilliardCanadaIvan Magalhaes NEW
Stacey E StensethGermanyAmy Elsner PROPOSAL
Octavia B VenereBrazilElwin Sharvill QUALIFIED
Jefferson G RulapaughUnited KingdomBernardo Dominic QUALIFIED

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