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
Ashley K VenereFranceStephen Shaw UNQUALIFIED
Jefferson F FigeroaArgentinaElwin Sharvill QUALIFIED
Jefferson N DilliardIndiaAmy Elsner PROPOSAL
Ricardo Y VocelkaIndiaAsiya Javayant RENEWAL
Stacey X TollnerAustraliaIoni Bowcher UNQUALIFIED
Rodrigues I RoysterItalyBernardo Dominic NEGOTIATION
Darci X GlickItalyOnyama Limba PROPOSAL
Sinclair W GarufiRussiaElwin Sharvill RENEWAL
Cody Q GarufiJapanBernardo Dominic PROPOSAL
David F PoquetteCanadaIvan Magalhaes PROPOSAL
Leon L VenereUnited KingdomStephen Shaw QUALIFIED
Emily X TollnerJapanIvan Magalhaes PROPOSAL
Johnson U FlosiAustraliaAnna Fali NEW
Faith Z WaycottFranceAmy Elsner NEW
Maisha J OldroydSpainStephen Shaw NEGOTIATION
Mayumi O PaprockiAustraliaXuxue Feng UNQUALIFIED
Jefferson G WaycottAustraliaAmy Elsner UNQUALIFIED
Maria V CaudyGermanyAnna Fali QUALIFIED
Murillo Y MaletIndiaStephen Shaw QUALIFIED
Cody J NickaGermanyElwin Sharvill NEGOTIATION
Claire Y RulapaughIndiaIoni Bowcher RENEWAL
Stacey N CaudyJapanAsiya Javayant NEGOTIATION
Jennifer L RutaCanadaAnna Fali QUALIFIED
Francesco B PaprockiAustraliaOnyama Limba QUALIFIED
Julie I MaletAustraliaAsiya Javayant NEGOTIATION
Munro M MaletSpainAsiya Javayant UNQUALIFIED
Leja K FerenczUnited KingdomElwin Sharvill PROPOSAL
Chavez V ShinkoJapanAnna Fali NEGOTIATION
Clifford M CaudyAustraliaIoni Bowcher NEGOTIATION
Arvin O VenereBrazilAnna Fali UNQUALIFIED
Maisha A VocelkaIndiaElwin Sharvill NEGOTIATION
Clifford T MaletGermanyBernardo Dominic PROPOSAL
Arvin R FerenczIndiaIvan Magalhaes NEGOTIATION
Ivar H ChuiAustraliaBernardo Dominic RENEWAL
Aditya I GarufiSpainAsiya Javayant UNQUALIFIED
Antonio S SaylorsArgentinaStephen Shaw RENEWAL
Jeanfrancois X StensethIndiaAsiya Javayant PROPOSAL
Jennifer N RulapaughJapanElwin Sharvill QUALIFIED
Costa Z FlosiFranceAsiya Javayant QUALIFIED
Aditya L AmigonGermanyAmy Elsner NEW
Tony B IturbideSpainAsiya Javayant QUALIFIED
Sinclair S CaldareraCanadaStephen Shaw UNQUALIFIED
James W OstroskyItalyAsiya Javayant RENEWAL
Cody O GlickFranceElwin Sharvill UNQUALIFIED
Maisha C GauchoArgentinaIvan Magalhaes RENEWAL
Isabel N MacleadGermanyIvan Magalhaes PROPOSAL
Juan M PerinJapanAnna Fali QUALIFIED
Arvin O DilliardAustraliaAmy Elsner QUALIFIED
Leon K MaletBrazilStephen Shaw QUALIFIED
Johnson V StockhamGermanyBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro U GillianSpainStephen Shaw NEGOTIATION
Tony M PerinItalyAmy Elsner NEW
Claire U CaudyArgentinaBernardo Dominic PROPOSAL
Misaki B CaldareraSpainXuxue Feng PROPOSAL
Claire L RoysterBrazilAmy Elsner RENEWAL
James P CaldareraArgentinaStephen Shaw RENEWAL
James P MorascaUnited KingdomStephen Shaw RENEWAL
Aika T StockhamSpainOnyama Limba QUALIFIED
Mayumi F FigeroaBrazilIoni Bowcher NEGOTIATION
Adams Z CampainCanadaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford K MacleadGermany2024-05-26Benton, John B Jr QUALIFIED60Stephen Shaw
1001Aditya B NickaItaly2024-06-23Chanay, Jeffrey A Esq RENEWAL68Amy Elsner
1002David C VocelkaCanada2024-05-26Dorl, James J Esq NEW26Anna Fali
1003Mujtaba I GlickItaly2024-06-04Buckley Miller Wright QUALIFIED0Asiya Javayant
1004Kadeem Q MaletIndia2024-06-10Morlong Associates NEW76Asiya Javayant
1005Mujtaba V PerinSpain2024-06-14Truhlar And Truhlar Attys PROPOSAL5Ivan Magalhaes
1006Jennifer D DoeFrance2024-06-24Chanay, Jeffrey A Esq UNQUALIFIED0Ioni Bowcher
1007Stacey K FerenczUnited Kingdom2024-06-08Buckley Miller Wright PROPOSAL92Xuxue Feng
1008Aika L InouyeArgentina2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED1Stephen Shaw
1009Munro O MorascaArgentina2024-05-26Chemel, James L Cpa QUALIFIED97Amy Elsner
1010Claire Y WieserSpain2024-06-24Dorl, James J Esq NEGOTIATION13Elwin Sharvill
1011Leon T WaycottArgentina2024-05-26Rousseaux, Michael Esq NEGOTIATION40Anna Fali
1012Morrow J ButtUnited Kingdom2024-06-01Buckley Miller Wright NEGOTIATION12Ivan Magalhaes
1013Aika M RutaBrazil2024-06-09Buckley Miller Wright NEGOTIATION21Anna Fali
1014Izzy S StockhamCanada2024-06-24Buckley Miller Wright RENEWAL21Onyama Limba
1015Tony R PaprockiBrazil2024-06-15Benton, John B Jr QUALIFIED84Bernardo Dominic
1016Stacey S SergiIndia2024-06-11Feiner Bros RENEWAL39Onyama Limba
1017Jefferson A OldroydBrazil2024-05-28Printing Dimensions NEGOTIATION50Asiya Javayant
1018Izzy B OldroydCanada2024-06-01Dorl, James J Esq UNQUALIFIED77Onyama Limba
1019Isabel N AmigonItaly2024-06-05Truhlar And Truhlar Attys UNQUALIFIED96Amy Elsner
1020Stacey N VocelkaItaly2024-06-01Feiner Bros NEGOTIATION2Stephen Shaw
1021Chavez K SchemmerRussia2024-06-24Rousseaux, Michael Esq UNQUALIFIED27Xuxue Feng
1022Nicolas F WieserUnited Kingdom2024-06-07Morlong Associates RENEWAL34Onyama Limba
1023Munro E RutaAustralia2024-06-15Chapman, Ross E Esq UNQUALIFIED44Onyama Limba
1024Rodrigues N RulapaughCanada2024-06-05Chemel, James L Cpa RENEWAL54Onyama Limba
1025Smith S ShinkoGermany2024-06-20Rangoni Of Florence NEW35Stephen Shaw
1026Claire V TollnerItaly2024-06-10Morlong Associates UNQUALIFIED35Anna Fali
1027Aika N ChuiFrance2024-05-26Morlong Associates UNQUALIFIED96Elwin Sharvill
1028Ashley O MaletRussia2024-06-22Rangoni Of Florence QUALIFIED80Amy Elsner
1029James A MaletBrazil2024-06-14Feiner Bros RENEWAL82Asiya Javayant
1030Stacey F DilliardGermany2024-06-14Rangoni Of Florence NEGOTIATION8Asiya Javayant
1031Jennifer C RoysterGermany2024-06-02King, Christopher A Esq NEW14Bernardo Dominic
1032Izzy O FlosiGermany2024-06-08Printing Dimensions PROPOSAL35Elwin Sharvill
1033Darci O PerinFrance2024-05-31King, Christopher A Esq NEGOTIATION95Amy Elsner
1034Juan L ShinkoUnited Kingdom2024-06-02Morlong Associates RENEWAL88Elwin Sharvill
1035Kaitlin Y MarrierRussia2024-05-28Dorl, James J Esq UNQUALIFIED13Asiya Javayant
1036Jeanfrancois I RutaGermany2024-06-06Truhlar And Truhlar Attys PROPOSAL36Ivan Magalhaes
1037Murillo W GillianArgentina2024-06-14Truhlar And Truhlar Attys NEGOTIATION92Ivan Magalhaes
1038Jeanfrancois D DoeAustralia2024-06-02Chemel, James L Cpa QUALIFIED50Stephen Shaw
1039Munro N CaldareraGermany2024-06-06Feiner Bros RENEWAL81Onyama Limba
1040Leja E GarufiJapan2024-06-16Dorl, James J Esq UNQUALIFIED97Elwin Sharvill
1041Wickens A DoeCanada2024-05-29Commercial Press UNQUALIFIED24Stephen Shaw
1042Wickens J AlbaresSpain2024-06-17Truhlar And Truhlar Attys NEGOTIATION62Elwin Sharvill
1043Ivar G FigeroaSpain2024-06-19Buckley Miller Wright PROPOSAL96Onyama Limba
1044David H RutaIndia2024-06-23Chapman, Ross E Esq UNQUALIFIED53Bernardo Dominic
1045Tony Z FlosiIndia2024-05-29Feltz Printing Service PROPOSAL73Stephen Shaw
1046Faith W ButtRussia2024-06-21Benton, John B Jr NEGOTIATION97Asiya Javayant
1047Mujtaba S KolmetzBrazil2024-05-29Buckley Miller Wright UNQUALIFIED76Xuxue Feng
1048Claire V MorascaCanada2024-06-20Rangoni Of Florence PROPOSAL18Onyama Limba
1049Johnson H StockhamAustralia2024-06-17Rangoni Of Florence NEW9Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Stacey F WhobreyRussiaIvan Magalhaes QUALIFIED
Tony I TollnerJapanBernardo Dominic UNQUALIFIED
Julie B SergiArgentinaXuxue Feng RENEWAL
Antonio R MaletAustraliaAsiya Javayant NEW
Jones K CaudyJapanStephen Shaw QUALIFIED
Adams O WieserIndiaIoni Bowcher NEGOTIATION
Kaitlin J SchemmerJapanIoni Bowcher UNQUALIFIED
Kadeem G FlosiSpainOnyama Limba NEGOTIATION
Ivar M FigeroaItalyAmy Elsner RENEWAL
Adams M RutaAustraliaAsiya Javayant NEGOTIATION
Emily W MaletGermanyIvan Magalhaes PROPOSAL
Francesco C VocelkaFranceAnna Fali PROPOSAL
Jeanfrancois U NickaUnited KingdomIoni Bowcher NEGOTIATION
Aruna Y DilliardRussiaXuxue Feng NEW
Isabel L WhobreyBrazilElwin Sharvill QUALIFIED
Costa Q CampainFranceIvan Magalhaes QUALIFIED
Claire V StensethSpainXuxue Feng PROPOSAL
Maisha E AmigonSpainXuxue Feng NEGOTIATION
Leon I FigeroaIndiaXuxue Feng NEGOTIATION
Aditya O NestleRussiaAnna Fali RENEWAL
Morrow P KolmetzSpainAmy Elsner NEW
Leja H GauchoItalyOnyama Limba QUALIFIED
Clifford G SergiFranceAmy Elsner RENEWAL
Ashley Q CampainRussiaStephen Shaw RENEWAL
Maria J FlosiIndiaIoni Bowcher RENEWAL
Misaki M AmigonCanadaOnyama Limba QUALIFIED
Morrow Q GlickItalyOnyama Limba NEGOTIATION
Chavez C VenereItalyXuxue Feng QUALIFIED
Maisha H GauchoBrazilBernardo Dominic RENEWAL
Faith O NickaIndiaOnyama Limba RENEWAL
Leja Z GlickFranceElwin Sharvill QUALIFIED
Arvin J ShinkoCanadaIoni Bowcher NEW
Jones W BowleyRussiaIoni Bowcher NEW
Wickens V OldroydArgentinaXuxue Feng RENEWAL
Arvin L VenereAustraliaXuxue Feng QUALIFIED
Tony U GauchoBrazilXuxue Feng NEW
Mujtaba H AmigonGermanyIoni Bowcher NEW
Izzy E DoeItalyAnna Fali NEW
Aruna B PaprockiGermanyElwin Sharvill PROPOSAL
Izzy C ButtFranceElwin Sharvill UNQUALIFIED
Clifford D WaycottBrazilStephen Shaw NEGOTIATION
Cody H CaldareraJapanIoni Bowcher RENEWAL
Faith R AlbaresJapanIvan Magalhaes QUALIFIED
Nicolas H SaylorsSpainIvan Magalhaes UNQUALIFIED
Cody I SchemmerFranceBernardo Dominic PROPOSAL
Kaitlin H RutaJapanOnyama Limba NEW
Stacey T SaylorsIndiaAnna Fali PROPOSAL
Johnson J OldroydGermanyXuxue Feng PROPOSAL
Isabel Y BowleyAustraliaIvan Magalhaes PROPOSAL
Chavez V OldroydAustraliaStephen Shaw QUALIFIED
Frozen Columns
Name
Munro L Gaucho
Sinclair F Butt
Mayumi J Vocelka
Munro Y Malet
Tony D Ruta
Alejandro C Ostrosky
Alejandro S Gillian
Chavez F Maclead
Leon X Ruta
Salvatore S Paprocki
Mayumi G Wieser
Sinclair S Maclead
Maria L Schemmer
Leon Q Venere
Aditya Y Royster
Leja E Vocelka
Julie Y Oldroyd
Izzy R Paprocki
Kaitlin Y Tollner
Misaki L Gaucho
Maisha B Morasca
Johnson Z Butt
Claire L Rim
Cody G Royster
Jeanfrancois J Sergi
Jefferson A Poquette
James T Dilliard
Jefferson U Kusko
Smith C Poquette
Leja N Stenseth
Cody O Kolmetz
Darci D Amigon
Wickens A Glick
Cody F Rim
Leja C Flosi
Morrow O Shinko
Emily K Maclead
Clifford X Caudy
Aruna P Whobrey
Chavez O Ferencz
Antonio A Foller
Leja I Kolmetz
Julie D Bowley
Cody F Albares
Cody O Briddick
Izzy L Inouye
Jones U Flosi
Maria M Paprocki
Leon T Tollner
Jennifer G Paprocki
IdCountryDate
1000Russia2024-06-24
1001Russia2024-06-15
1002Japan2024-06-16
1003Germany2024-06-21
1004India2024-06-02
1005Australia2024-06-11
1006France2024-06-19
1007United Kingdom2024-06-03
1008Canada2024-06-01
1009Spain2024-06-16
1010Argentina2024-06-24
1011Italy2024-05-27
1012Spain2024-06-16
1013Australia2024-06-03
1014Japan2024-05-30
1015India2024-06-22
1016Australia2024-06-22
1017Italy2024-05-28
1018Germany2024-06-19
1019Russia2024-06-01
1020Brazil2024-05-27
1021France2024-05-31
1022Argentina2024-05-30
1023Argentina2024-06-20
1024India2024-05-26
1025Australia2024-06-07
1026Spain2024-06-01
1027India2024-06-11
1028United Kingdom2024-06-08
1029Italy2024-06-17
1030Japan2024-06-22
1031Italy2024-06-18
1032Australia2024-06-04
1033Australia2024-06-11
1034Germany2024-06-01
1035Argentina2024-05-26
1036Germany2024-06-06
1037Russia2024-06-11
1038France2024-06-21
1039United Kingdom2024-06-15
1040Australia2024-06-22
1041Italy2024-06-22
1042Italy2024-06-12
1043Russia2024-06-07
1044Spain2024-06-14
1045France2024-05-31
1046France2024-06-18
1047Italy2024-06-21
1048Spain2024-06-22
1049Russia2024-05-26

On-Demand Data

NameIdCountryDate
Claire B Ostrosky1000Italy2024-06-04
Kaitlin R Schemmer1001Italy2024-05-29
Deepesh R Ostrosky1002Italy2024-06-03
Clifford F Oldroyd1003United Kingdom2024-06-22
Morrow H Doe1004Spain2024-06-05
Nicolas L Royster1005United Kingdom2024-05-28
Aruna Q Kolmetz1006India2024-05-30
Julie R Maclead1007Spain2024-06-08
Smith L Nestle1008France2024-06-03
Maria F Ferencz1009France2024-06-05
Misaki R Caudy1010Russia2024-06-17
Stacey W Dilliard1011France2024-06-09
Cody W Perin1012Japan2024-06-11
Jeanfrancois V Venere1013Russia2024-06-04
Antonio I Whobrey1014Italy2024-06-17
Cody Z Iturbide1015Canada2024-06-05
James B Garufi1016Germany2024-06-21
Rodrigues R Sergi1017Brazil2024-06-10
Maisha W Iturbide1018France2024-06-21
Johnson T Oldroyd1019Spain2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore K GarufiAustraliaXuxue Feng QUALIFIED
Darci Z FigeroaFranceAsiya Javayant NEW
Kadeem A NestleRussiaBernardo Dominic NEW
Kaitlin J PoquetteIndiaIvan Magalhaes QUALIFIED
Arvin X MorascaArgentinaIvan Magalhaes RENEWAL
James I NestleUnited KingdomStephen Shaw UNQUALIFIED
Deepesh Z SlusarskiArgentinaStephen Shaw UNQUALIFIED
Wickens G WieserUnited KingdomBernardo Dominic UNQUALIFIED
Mayumi L WieserFranceStephen Shaw PROPOSAL
Rodrigues C SchemmerJapanXuxue Feng NEW
Smith V OstroskyGermanyAsiya Javayant QUALIFIED
Mayumi A OldroydFranceIoni Bowcher QUALIFIED
Izzy X NickaUnited KingdomAmy Elsner RENEWAL
Nicolas U SergiIndiaXuxue Feng QUALIFIED
Mujtaba I BowleyArgentinaXuxue Feng PROPOSAL
Deepesh C MacleadUnited KingdomStephen Shaw NEGOTIATION
Leja Y InouyeFranceXuxue Feng QUALIFIED
Deepesh I VocelkaRussiaStephen Shaw UNQUALIFIED
Julie H DoeSpainAnna Fali PROPOSAL
Emily Y BowleyIndiaIoni Bowcher PROPOSAL
Aika N FollerSpainStephen Shaw RENEWAL
Juan W WaycottAustraliaXuxue Feng NEGOTIATION
Juan I GlickUnited KingdomAnna Fali PROPOSAL
Faith L WhobreyItalyIvan Magalhaes RENEWAL
Aditya P PerinIndiaStephen Shaw RENEWAL
Mayumi K DilliardGermanyIvan Magalhaes QUALIFIED
James F GlickCanadaOnyama Limba QUALIFIED
Juan D SaylorsFranceIoni Bowcher PROPOSAL
Jefferson R SlusarskiBrazilIvan Magalhaes NEW
Costa Y RulapaughItalyOnyama Limba NEGOTIATION
Leja C ChuiIndiaXuxue Feng PROPOSAL
James Z FigeroaGermanyAmy Elsner PROPOSAL
Juan M RulapaughFranceAmy Elsner RENEWAL
Cody R FollerArgentinaAnna Fali NEGOTIATION
Morrow L OldroydFranceIoni Bowcher UNQUALIFIED
Salvatore D ChuiRussiaIvan Magalhaes UNQUALIFIED
Kadeem A PaprockiGermanyAsiya Javayant NEGOTIATION
Rodrigues Y MaletFranceIoni Bowcher RENEWAL
Mujtaba N DilliardUnited KingdomStephen Shaw PROPOSAL
Silvio W TollnerUnited KingdomAnna Fali 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>