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
Maria O RulapaughCanadaAmy Elsner PROPOSAL
Francesco E VocelkaSpainIvan Magalhaes RENEWAL
Kadeem G MarrierIndiaIoni Bowcher NEGOTIATION
Maria N RoysterArgentinaStephen Shaw NEGOTIATION
Wickens F VenereItalyAnna Fali UNQUALIFIED
Adams P ButtFranceAnna Fali UNQUALIFIED
Deepesh F BowleyGermanyIvan Magalhaes RENEWAL
Isabel L SaylorsBrazilAmy Elsner UNQUALIFIED
Emily H PoquetteSpainAmy Elsner QUALIFIED
Kadeem M NestleItalyStephen Shaw NEW
Jennifer I ChuiCanadaAsiya Javayant NEW
Maisha V MorascaIndiaAnna Fali UNQUALIFIED
Wickens S RutaArgentinaElwin Sharvill UNQUALIFIED
Antonio P DoeArgentinaBernardo Dominic QUALIFIED
Octavia O MaletSpainIoni Bowcher NEGOTIATION
Deepesh Q WieserJapanAnna Fali QUALIFIED
Munro N GarufiGermanyAmy Elsner NEW
Kaitlin Z GauchoItalyAnna Fali NEW
Alejandro B WaycottCanadaElwin Sharvill NEW
Kadeem N GarufiCanadaAmy Elsner RENEWAL
Rodrigues A BologniaBrazilXuxue Feng NEW
Tony X MorascaUnited KingdomXuxue Feng PROPOSAL
Deepesh L WieserFranceOnyama Limba RENEWAL
Johnson K DoeSpainStephen Shaw PROPOSAL
Arvin W BriddickJapanStephen Shaw PROPOSAL
Smith V RulapaughArgentinaStephen Shaw PROPOSAL
Tony E BowleyItalyXuxue Feng RENEWAL
Aditya V RutaSpainAnna Fali NEGOTIATION
Tony R MarrierGermanyIoni Bowcher NEW
Adams D SergiSpainAsiya Javayant QUALIFIED
Aditya D PerinUnited KingdomOnyama Limba UNQUALIFIED
Antonio G DoeCanadaStephen Shaw PROPOSAL
Greenwood J StensethCanadaAmy Elsner QUALIFIED
Mayumi T GlickRussiaStephen Shaw UNQUALIFIED
Maria C OldroydSpainIoni Bowcher PROPOSAL
Clifford V FerenczUnited KingdomBernardo Dominic RENEWAL
Jennifer Q TollnerBrazilIoni Bowcher PROPOSAL
Darci U CaudyFranceAsiya Javayant NEGOTIATION
Stacey V FerenczItalyAnna Fali NEW
Kadeem U GauchoArgentinaAnna Fali UNQUALIFIED
Isabel H StockhamGermanyOnyama Limba NEW
Misaki N MarrierCanadaIoni Bowcher PROPOSAL
Aruna Z BriddickItalyStephen Shaw UNQUALIFIED
Francesco J PerinSpainXuxue Feng NEW
Adams J BologniaAustraliaBernardo Dominic NEGOTIATION
Kaitlin B GlickBrazilElwin Sharvill NEW
Morrow A FerenczItalyElwin Sharvill RENEWAL
Munro I VocelkaFranceAsiya Javayant PROPOSAL
Isabel K ChuiRussiaAmy Elsner RENEWAL
Munro T WhobreyUnited KingdomElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Francesco L NestleFranceIvan Magalhaes NEGOTIATION
Munro S NickaGermanyBernardo Dominic NEGOTIATION
Aruna U CaudyArgentinaBernardo Dominic UNQUALIFIED
Smith W WhobreyItalyOnyama Limba PROPOSAL
Greenwood B DarakjyRussiaElwin Sharvill UNQUALIFIED
Jefferson C VocelkaRussiaXuxue Feng QUALIFIED
Isabel Y GarufiBrazilElwin Sharvill PROPOSAL
Kadeem Z SlusarskiGermanyAmy Elsner UNQUALIFIED
Francesco P OstroskyUnited KingdomIoni Bowcher UNQUALIFIED
Stacey D ChuiFranceBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio V CaldareraAustralia2024-06-03Truhlar And Truhlar Attys UNQUALIFIED99Ivan Magalhaes
1001Morrow K SchemmerItaly2024-06-19Dorl, James J Esq NEW82Asiya Javayant
1002Sinclair Y SergiArgentina2024-06-13Morlong Associates NEGOTIATION92Ivan Magalhaes
1003Silvio F RutaGermany2024-06-06Rousseaux, Michael Esq RENEWAL36Ivan Magalhaes
1004Octavia E KuskoAustralia2024-06-05Truhlar And Truhlar Attys RENEWAL8Ivan Magalhaes
1005Jennifer P FollerItaly2024-06-06Rousseaux, Michael Esq PROPOSAL82Xuxue Feng
1006Izzy D VenereIndia2024-06-11Chanay, Jeffrey A Esq QUALIFIED74Onyama Limba
1007Aditya T BologniaJapan2024-05-24Printing Dimensions PROPOSAL92Elwin Sharvill
1008Cody S RoysterIndia2024-06-16Rousseaux, Michael Esq NEGOTIATION46Onyama Limba
1009Maria U FerenczItaly2024-06-17Feiner Bros NEW33Xuxue Feng
1010Murillo T IturbideArgentina2024-06-21Truhlar And Truhlar Attys PROPOSAL21Stephen Shaw
1011Ashley H WaycottFrance2024-06-13Feiner Bros UNQUALIFIED68Anna Fali
1012Octavia K KuskoJapan2024-05-26Commercial Press RENEWAL38Onyama Limba
1013Morrow W OldroydBrazil2024-05-27Chemel, James L Cpa PROPOSAL7Xuxue Feng
1014Clifford F StockhamBrazil2024-05-27Truhlar And Truhlar Attys RENEWAL45Asiya Javayant
1015Johnson B DarakjySpain2024-06-12Feltz Printing Service QUALIFIED0Anna Fali
1016Jones L FollerItaly2024-06-19Feltz Printing Service RENEWAL13Asiya Javayant
1017Mujtaba W PoquetteGermany2024-06-01Truhlar And Truhlar Attys NEW77Asiya Javayant
1018Antonio N IturbideJapan2024-05-30Printing Dimensions QUALIFIED42Asiya Javayant
1019James E SchemmerItaly2024-06-03Feltz Printing Service RENEWAL16Elwin Sharvill
1020Chavez G InouyeItaly2024-05-27Dorl, James J Esq QUALIFIED91Ivan Magalhaes
1021Nicolas I FollerAustralia2024-06-19Commercial Press RENEWAL81Anna Fali
1022Arvin P FigeroaAustralia2024-06-06Buckley Miller Wright NEW81Ivan Magalhaes
1023Munro X OldroydSpain2024-06-10Buckley Miller Wright NEW2Stephen Shaw
1024Murillo Y AmigonRussia2024-06-07Rousseaux, Michael Esq PROPOSAL85Ioni Bowcher
1025Sinclair W PaprockiAustralia2024-05-31Benton, John B Jr UNQUALIFIED11Onyama Limba
1026Kaitlin O SchemmerArgentina2024-06-07Rangoni Of Florence UNQUALIFIED16Bernardo Dominic
1027Ashley D BologniaArgentina2024-06-19Feiner Bros PROPOSAL73Bernardo Dominic
1028Murillo M GillianAustralia2024-06-14Chapman, Ross E Esq QUALIFIED18Anna Fali
1029Faith E MorascaRussia2024-06-20Chanay, Jeffrey A Esq PROPOSAL13Xuxue Feng
1030Faith A KuskoUnited Kingdom2024-05-25Feiner Bros NEW37Ioni Bowcher
1031Cody D MaletBrazil2024-06-02Dorl, James J Esq UNQUALIFIED70Stephen Shaw
1032Leon G CaldareraItaly2024-05-26Chapman, Ross E Esq PROPOSAL36Onyama Limba
1033Maisha M FlosiUnited Kingdom2024-06-02Benton, John B Jr PROPOSAL84Ioni Bowcher
1034Wickens V RulapaughCanada2024-06-14Printing Dimensions NEW40Anna Fali
1035James F TollnerItaly2024-05-24Feiner Bros PROPOSAL15Elwin Sharvill
1036Octavia N SaylorsCanada2024-06-15Chanay, Jeffrey A Esq UNQUALIFIED54Elwin Sharvill
1037Aika J SlusarskiJapan2024-06-19Truhlar And Truhlar Attys NEW48Onyama Limba
1038Ivar N FigeroaCanada2024-06-01Printing Dimensions RENEWAL30Onyama Limba
1039Nicolas O DilliardBrazil2024-06-21Rangoni Of Florence PROPOSAL67Anna Fali
1040Antonio N MacleadItaly2024-06-07Morlong Associates QUALIFIED5Asiya Javayant
1041Stacey S ButtBrazil2024-06-09Chemel, James L Cpa QUALIFIED84Asiya Javayant
1042Arvin J DarakjyGermany2024-06-17Chemel, James L Cpa RENEWAL3Stephen Shaw
1043Cody R GarufiFrance2024-05-30Feltz Printing Service PROPOSAL56Asiya Javayant
1044Faith Y AlbaresFrance2024-06-06Printing Dimensions UNQUALIFIED69Elwin Sharvill
1045Tony I RoysterArgentina2024-06-22Feltz Printing Service NEGOTIATION88Bernardo Dominic
1046Arvin H WhobreyUnited Kingdom2024-06-02Commercial Press QUALIFIED75Xuxue Feng
1047Jones L GillianBrazil2024-06-07Commercial Press NEW88Xuxue Feng
1048Jennifer K SergiBrazil2024-06-18Morlong Associates UNQUALIFIED15Xuxue Feng
1049Chavez B MarrierArgentina2024-06-02Chemel, James L Cpa PROPOSAL17Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Izzy X KolmetzBrazilAsiya Javayant RENEWAL
Clifford Y OstroskyIndiaAmy Elsner PROPOSAL
Izzy U FerenczItalyIvan Magalhaes UNQUALIFIED
Jones U RimBrazilAsiya Javayant RENEWAL
Faith L NickaGermanyStephen Shaw NEGOTIATION
Ashley E GauchoGermanyIvan Magalhaes NEW
Maria J FollerIndiaAnna Fali UNQUALIFIED
Munro E PaprockiUnited KingdomIoni Bowcher NEGOTIATION
Octavia C CaldareraArgentinaElwin Sharvill NEW
Nicolas X MarrierSpainAsiya Javayant NEW
David E MacleadSpainIvan Magalhaes UNQUALIFIED
Octavia Q VenereItalyOnyama Limba RENEWAL
Sinclair C MarrierSpainBernardo Dominic RENEWAL
Tony G VenereItalyBernardo Dominic NEGOTIATION
Francesco L StockhamUnited KingdomBernardo Dominic NEW
Cody V BowleyJapanAnna Fali UNQUALIFIED
Nicolas X VocelkaRussiaAnna Fali RENEWAL
Aika K ShinkoJapanBernardo Dominic NEW
Sinclair W GauchoItalyElwin Sharvill PROPOSAL
Leon O MacleadArgentinaBernardo Dominic NEGOTIATION
Julie K RimIndiaElwin Sharvill UNQUALIFIED
Aika G SchemmerRussiaElwin Sharvill NEW
Clifford U FollerFranceIvan Magalhaes NEW
Munro P KolmetzUnited KingdomStephen Shaw NEW
Silvio G NickaItalyXuxue Feng NEGOTIATION
Arvin M BologniaArgentinaAmy Elsner UNQUALIFIED
Ivar F GillianGermanyOnyama Limba RENEWAL
Aika V FerenczCanadaOnyama Limba PROPOSAL
Greenwood J PerinBrazilElwin Sharvill RENEWAL
Octavia N FollerJapanAnna Fali NEGOTIATION
Smith U OldroydItalyStephen Shaw UNQUALIFIED
Jennifer T VenereBrazilAnna Fali RENEWAL
Emily G CampainUnited KingdomAmy Elsner QUALIFIED
David B SaylorsBrazilAnna Fali RENEWAL
Stacey Q WieserIndiaElwin Sharvill RENEWAL
Isabel K MarrierJapanStephen Shaw QUALIFIED
Darci K ChuiBrazilOnyama Limba PROPOSAL
Octavia S WhobreyAustraliaAnna Fali RENEWAL
Leja M SergiUnited KingdomBernardo Dominic NEGOTIATION
Maria J SchemmerArgentinaStephen Shaw PROPOSAL
Chavez D FigeroaArgentinaElwin Sharvill UNQUALIFIED
Leja Q RutaRussiaBernardo Dominic QUALIFIED
Juan U WaycottIndiaIoni Bowcher NEGOTIATION
Nicolas B RimIndiaAnna Fali NEGOTIATION
Tony Y RoysterGermanyElwin Sharvill NEW
Julie E PaprockiSpainOnyama Limba PROPOSAL
Johnson K GauchoBrazilAmy Elsner UNQUALIFIED
Faith J BologniaRussiaElwin Sharvill NEGOTIATION
Tony A MorascaJapanOnyama Limba RENEWAL
Cody N CaudyItalyIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Emily L Malet
Nicolas W Royster
Jennifer Y Ostrosky
Munro I Saylors
Maria V Campain
Francesco B Stockham
Faith I Rulapaugh
Johnson F Saylors
Deepesh K Tollner
Misaki E Amigon
Adams X Inouye
Silvio Z Caudy
Jeanfrancois D Rim
Maisha Y Ferencz
Cody L Inouye
Chavez G Shinko
Nicolas F Perin
Sinclair X Oldroyd
Darci Y Briddick
Francesco F Caudy
Cody Y Kolmetz
Jefferson X Tollner
Morrow A Inouye
Jennifer G Glick
Alejandro B Glick
Tony N Slusarski
Emily P Dilliard
Johnson F Slusarski
Jeanfrancois F Kusko
Munro Q Briddick
Jefferson M Caldarera
Leon R Foller
Jennifer B Dilliard
Faith W Poquette
Stacey I Perin
Kaitlin X Perin
Clifford B Stenseth
Ashley O Morasca
Nicolas J Poquette
Faith Q Flosi
Antonio N Marrier
Jones I Maclead
Francesco R Tollner
Izzy F Tollner
Francesco J Foller
James A Nestle
Wickens T Marrier
Emily V Whobrey
Rodrigues P Ferencz
Jeanfrancois U Bowley
IdCountryDate
1000Spain2024-06-21
1001Russia2024-06-16
1002Italy2024-06-17
1003France2024-06-07
1004Germany2024-06-12
1005Australia2024-06-14
1006Canada2024-05-30
1007India2024-05-30
1008United Kingdom2024-06-20
1009Argentina2024-05-29
1010Argentina2024-05-27
1011Germany2024-05-31
1012France2024-06-16
1013Argentina2024-06-02
1014Italy2024-06-14
1015Spain2024-06-01
1016United Kingdom2024-05-25
1017Japan2024-06-22
1018Argentina2024-06-14
1019France2024-06-06
1020Brazil2024-05-30
1021Spain2024-06-20
1022Spain2024-06-17
1023Australia2024-06-08
1024India2024-06-13
1025Italy2024-06-15
1026Germany2024-05-27
1027United Kingdom2024-05-27
1028Brazil2024-06-10
1029Germany2024-06-18
1030United Kingdom2024-05-31
1031Germany2024-06-14
1032India2024-06-22
1033Spain2024-06-09
1034Russia2024-06-11
1035Russia2024-05-25
1036Russia2024-06-16
1037Japan2024-06-05
1038Japan2024-06-09
1039Italy2024-06-22
1040Argentina2024-06-04
1041France2024-06-20
1042Spain2024-05-25
1043France2024-06-02
1044India2024-06-10
1045Australia2024-05-28
1046United Kingdom2024-06-07
1047United Kingdom2024-06-07
1048Spain2024-06-15
1049Japan2024-06-13

On-Demand Data

NameIdCountryDate
Faith V Vocelka1000Germany2024-06-05
Jennifer U Rulapaugh1001France2024-06-17
Ashley B Poquette1002Germany2024-05-25
Kadeem X Perin1003Germany2024-06-09
Cody Q Venere1004Germany2024-05-27
Maisha V Foller1005India2024-06-21
Nicolas Z Garufi1006Argentina2024-06-08
Alejandro D Saylors1007Russia2024-06-13
Silvio A Paprocki1008United Kingdom2024-05-31
Clifford J Chui1009Argentina2024-06-10
Ivar J Marrier1010Argentina2024-06-05
Wickens G Caudy1011United Kingdom2024-05-31
Maisha I Whobrey1012Argentina2024-06-19
Rodrigues I Gillian1013Canada2024-05-24
Stacey V Rim1014United Kingdom2024-05-30
Leja G Dilliard1015Brazil2024-06-10
Kaitlin R Rulapaugh1016Spain2024-06-13
Misaki G Slusarski1017Brazil2024-06-19
Maria K Oldroyd1018Australia2024-06-03
Jefferson K Ferencz1019Brazil2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas T BriddickArgentinaAmy Elsner NEGOTIATION
Maria Y ShinkoCanadaIoni Bowcher RENEWAL
Jennifer J CaldareraGermanyBernardo Dominic PROPOSAL
Kadeem T PoquetteRussiaIvan Magalhaes NEGOTIATION
Kadeem Z GillianJapanIvan Magalhaes PROPOSAL
Darci K GarufiUnited KingdomBernardo Dominic UNQUALIFIED
Adams F RoysterCanadaAmy Elsner UNQUALIFIED
Kadeem Z InouyeJapanXuxue Feng NEGOTIATION
Kaitlin A BologniaJapanElwin Sharvill UNQUALIFIED
Wickens M RutaGermanyAsiya Javayant NEGOTIATION
Stacey F SergiJapanXuxue Feng PROPOSAL
Murillo E RimRussiaIvan Magalhaes PROPOSAL
Munro L TollnerJapanBernardo Dominic NEGOTIATION
Cody Z KuskoIndiaIoni Bowcher QUALIFIED
Aika L GlickArgentinaBernardo Dominic QUALIFIED
Silvio M DoeItalyAsiya Javayant UNQUALIFIED
Murillo Q WhobreyGermanyOnyama Limba RENEWAL
Ricardo I CaldareraGermanyAsiya Javayant RENEWAL
Francesco F StensethGermanyAnna Fali UNQUALIFIED
Francesco C CampainSpainAmy Elsner RENEWAL
Jefferson D OldroydUnited KingdomAnna Fali UNQUALIFIED
Arvin X KolmetzAustraliaElwin Sharvill QUALIFIED
Rodrigues V PoquetteGermanyStephen Shaw RENEWAL
Antonio F VocelkaRussiaAsiya Javayant NEW
Silvio I MorascaAustraliaOnyama Limba NEW
David H CaldareraItalyAnna Fali PROPOSAL
Francesco C DilliardArgentinaElwin Sharvill QUALIFIED
Greenwood C CampainIndiaOnyama Limba RENEWAL
Isabel T PaprockiJapanXuxue Feng QUALIFIED
Jefferson N VocelkaJapanAnna Fali QUALIFIED
Murillo G MacleadItalyElwin Sharvill NEGOTIATION
Murillo B RulapaughSpainAmy Elsner NEGOTIATION
Ricardo R VocelkaJapanAnna Fali PROPOSAL
Mujtaba Q RoysterCanadaElwin Sharvill NEGOTIATION
Aditya R GillianAustraliaXuxue Feng UNQUALIFIED
Jefferson L InouyeAustraliaOnyama Limba PROPOSAL
Leon Q DoeIndiaAmy Elsner QUALIFIED
David Z ShinkoSpainAmy Elsner NEGOTIATION
Darci R TollnerFranceStephen Shaw NEW
Isabel Z FigeroaFranceOnyama Limba NEGOTIATION

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