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
Murillo V AmigonAustraliaIoni Bowcher NEGOTIATION
Juan U WieserFranceIvan Magalhaes RENEWAL
Rodrigues N ButtRussiaStephen Shaw RENEWAL
Kaitlin Y MorascaCanadaAmy Elsner NEGOTIATION
Ricardo K FollerJapanAsiya Javayant RENEWAL
Chavez A SchemmerCanadaElwin Sharvill PROPOSAL
Ashley G OldroydItalyOnyama Limba NEW
Costa S GillianItalyElwin Sharvill UNQUALIFIED
Stacey R WaycottSpainOnyama Limba UNQUALIFIED
Emily T WhobreyRussiaBernardo Dominic UNQUALIFIED
Alejandro Z SaylorsGermanyStephen Shaw NEW
Aditya B KolmetzIndiaBernardo Dominic QUALIFIED
Tony C WieserUnited KingdomIoni Bowcher NEW
Ashley Z KuskoCanadaAmy Elsner QUALIFIED
Ricardo C CampainArgentinaStephen Shaw UNQUALIFIED
James Z MaletItalyXuxue Feng RENEWAL
Maria V OldroydAustraliaXuxue Feng NEW
Faith F FerenczUnited KingdomAsiya Javayant PROPOSAL
Nicolas P FlosiSpainAsiya Javayant NEGOTIATION
Ivar S CaudyUnited KingdomElwin Sharvill NEGOTIATION
Aditya V WhobreyItalyBernardo Dominic RENEWAL
Deepesh W MacleadArgentinaElwin Sharvill UNQUALIFIED
Ashley M WhobreySpainBernardo Dominic NEW
Alejandro Y NickaAustraliaAnna Fali PROPOSAL
Ashley V SlusarskiSpainIoni Bowcher NEW
Cody C DarakjyAustraliaAnna Fali UNQUALIFIED
Aditya L IturbideRussiaStephen Shaw PROPOSAL
Isabel L GauchoGermanyIvan Magalhaes RENEWAL
Costa K FerenczGermanyElwin Sharvill RENEWAL
Mujtaba W NestleBrazilIvan Magalhaes NEGOTIATION
Izzy N RimItalyAnna Fali PROPOSAL
Leja P BowleyBrazilIvan Magalhaes QUALIFIED
Francesco Y GlickFranceIvan Magalhaes QUALIFIED
Kaitlin Z VenereItalyStephen Shaw PROPOSAL
Octavia V DarakjyCanadaAnna Fali QUALIFIED
David Z OstroskyArgentinaElwin Sharvill UNQUALIFIED
Smith I FlosiJapanBernardo Dominic NEGOTIATION
Mujtaba V CaldareraAustraliaOnyama Limba QUALIFIED
Kaitlin L RulapaughAustraliaAnna Fali PROPOSAL
Julie P VenereCanadaOnyama Limba NEW
Deepesh T IturbideItalyAnna Fali PROPOSAL
Morrow Y AmigonArgentinaElwin Sharvill UNQUALIFIED
Octavia Z InouyeIndiaXuxue Feng NEGOTIATION
Aditya E TollnerItalyXuxue Feng UNQUALIFIED
Jeanfrancois C AmigonItalyOnyama Limba QUALIFIED
Chavez I SaylorsSpainIoni Bowcher RENEWAL
Leon G NickaFranceIvan Magalhaes RENEWAL
Jeanfrancois D RimArgentinaStephen Shaw NEW
Maisha C FlosiUnited KingdomIvan Magalhaes NEW
Tony P RulapaughArgentinaAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Chavez E IturbideCanadaAmy Elsner UNQUALIFIED
Salvatore J RoysterItalyIvan Magalhaes PROPOSAL
Alejandro I PerinFranceOnyama Limba NEW
Ivar A OldroydSpainIvan Magalhaes PROPOSAL
David U NestleRussiaOnyama Limba PROPOSAL
Adams N FollerRussiaAnna Fali UNQUALIFIED
Leja N AlbaresBrazilIoni Bowcher NEGOTIATION
Costa Q GarufiUnited KingdomIvan Magalhaes PROPOSAL
Claire R ShinkoUnited KingdomBernardo Dominic NEW
Julie E CampainArgentinaAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody Z MarrierBrazil2024-09-11Benton, John B Jr RENEWAL13Asiya Javayant
1001Maisha L VocelkaAustralia2024-08-25Feltz Printing Service PROPOSAL9Anna Fali
1002Morrow G MorascaAustralia2024-09-22Rangoni Of Florence NEW84Ioni Bowcher
1003Sinclair D ChuiUnited Kingdom2024-09-05Rousseaux, Michael Esq UNQUALIFIED24Amy Elsner
1004Izzy Q AlbaresJapan2024-08-25Feiner Bros NEW19Ivan Magalhaes
1005Clifford L DarakjyCanada2024-08-31Buckley Miller Wright NEW11Onyama Limba
1006Leja V BologniaSpain2024-09-15Feltz Printing Service QUALIFIED87Stephen Shaw
1007Ricardo Q ShinkoCanada2024-09-06Feltz Printing Service QUALIFIED23Stephen Shaw
1008Izzy R ChuiItaly2024-09-04Morlong Associates UNQUALIFIED55Bernardo Dominic
1009Kaitlin Z GarufiRussia2024-09-03Rangoni Of Florence PROPOSAL14Asiya Javayant
1010Juan Z FollerSpain2024-09-10Chapman, Ross E Esq NEW73Onyama Limba
1011Maria E PerinSpain2024-09-18Dorl, James J Esq PROPOSAL63Asiya Javayant
1012Arvin H PerinSpain2024-09-08Printing Dimensions PROPOSAL68Bernardo Dominic
1013Izzy L PaprockiFrance2024-09-02Benton, John B Jr RENEWAL49Ioni Bowcher
1014Rodrigues N CampainCanada2024-08-26Benton, John B Jr RENEWAL0Ioni Bowcher
1015Costa D PoquetteFrance2024-09-05Truhlar And Truhlar Attys NEW17Onyama Limba
1016Salvatore C KolmetzArgentina2024-09-02Rousseaux, Michael Esq PROPOSAL67Anna Fali
1017Maria B VenereItaly2024-09-17Chemel, James L Cpa NEW11Anna Fali
1018Leja S FerenczRussia2024-08-25King, Christopher A Esq RENEWAL30Asiya Javayant
1019Jennifer E GlickSpain2024-09-12Dorl, James J Esq RENEWAL63Onyama Limba
1020Deepesh Z FollerArgentina2024-09-22Morlong Associates NEW12Anna Fali
1021Morrow F MarrierSpain2024-09-11Benton, John B Jr NEGOTIATION93Stephen Shaw
1022Isabel E ShinkoUnited Kingdom2024-08-29Dorl, James J Esq RENEWAL88Anna Fali
1023Darci T TollnerFrance2024-09-10Commercial Press NEW83Stephen Shaw
1024Nicolas S BologniaRussia2024-08-29Chanay, Jeffrey A Esq NEW19Anna Fali
1025Juan Y VocelkaIndia2024-09-07Feiner Bros RENEWAL36Elwin Sharvill
1026Octavia K SchemmerIndia2024-08-26Chapman, Ross E Esq RENEWAL37Xuxue Feng
1027Faith A RutaRussia2024-09-08Buckley Miller Wright RENEWAL70Asiya Javayant
1028Jeanfrancois A ButtGermany2024-09-06Printing Dimensions RENEWAL94Bernardo Dominic
1029David V WieserSpain2024-09-19Feltz Printing Service RENEWAL86Ivan Magalhaes
1030Adams Z VenereAustralia2024-08-26Chanay, Jeffrey A Esq QUALIFIED30Asiya Javayant
1031Johnson E MorascaJapan2024-09-20Truhlar And Truhlar Attys QUALIFIED27Stephen Shaw
1032Deepesh K SaylorsCanada2024-08-31Rangoni Of Florence NEW48Xuxue Feng
1033Aruna M AmigonArgentina2024-09-20Truhlar And Truhlar Attys NEW53Stephen Shaw
1034Smith C AmigonCanada2024-09-18Benton, John B Jr NEGOTIATION15Stephen Shaw
1035Leja B ShinkoBrazil2024-09-12King, Christopher A Esq UNQUALIFIED13Amy Elsner
1036Francesco D GillianItaly2024-09-08Chemel, James L Cpa NEW11Amy Elsner
1037Alejandro W PerinJapan2024-09-06Feltz Printing Service NEGOTIATION86Asiya Javayant
1038Kadeem E DilliardSpain2024-09-19Chanay, Jeffrey A Esq NEW80Ivan Magalhaes
1039Nicolas H CaudyItaly2024-08-29Rousseaux, Michael Esq PROPOSAL45Anna Fali
1040James B GauchoBrazil2024-08-28Rangoni Of Florence RENEWAL2Onyama Limba
1041Wickens B GillianJapan2024-09-05Rangoni Of Florence QUALIFIED57Onyama Limba
1042Munro R SlusarskiIndia2024-09-03Rousseaux, Michael Esq PROPOSAL2Ivan Magalhaes
1043Murillo O GlickBrazil2024-09-21Morlong Associates NEGOTIATION88Xuxue Feng
1044Arvin M IturbideIndia2024-09-02Chemel, James L Cpa UNQUALIFIED30Anna Fali
1045Emily M SchemmerJapan2024-09-13Rousseaux, Michael Esq NEW11Anna Fali
1046Kaitlin S NestleItaly2024-09-17Chapman, Ross E Esq PROPOSAL96Ivan Magalhaes
1047Stacey V MorascaJapan2024-08-30Dorl, James J Esq UNQUALIFIED61Asiya Javayant
1048Leja Q AlbaresBrazil2024-09-01Benton, John B Jr QUALIFIED42Bernardo Dominic
1049Jeanfrancois T SaylorsAustralia2024-08-31Printing Dimensions NEGOTIATION59Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Aika K InouyeItalyBernardo Dominic QUALIFIED
Maria I CaudySpainBernardo Dominic PROPOSAL
Stacey H OldroydGermanyIvan Magalhaes PROPOSAL
Leja N BriddickBrazilXuxue Feng UNQUALIFIED
Misaki M WieserUnited KingdomXuxue Feng UNQUALIFIED
Johnson M TollnerBrazilAnna Fali UNQUALIFIED
Jones Z PerinBrazilBernardo Dominic NEW
Murillo Q RimFranceIoni Bowcher NEW
Maria R SchemmerFranceBernardo Dominic QUALIFIED
Deepesh O AmigonArgentinaIvan Magalhaes NEW
Clifford F ShinkoRussiaIoni Bowcher PROPOSAL
Silvio X OldroydGermanyOnyama Limba PROPOSAL
Murillo J StockhamCanadaIoni Bowcher UNQUALIFIED
Aika D PerinIndiaXuxue Feng UNQUALIFIED
Arvin Z KolmetzArgentinaBernardo Dominic PROPOSAL
Arvin O DoeCanadaAmy Elsner NEW
Ricardo N KuskoAustraliaAsiya Javayant PROPOSAL
James O FollerGermanyStephen Shaw NEW
Jennifer M MorascaItalyAmy Elsner UNQUALIFIED
Alejandro D OstroskyCanadaXuxue Feng PROPOSAL
Alejandro X MarrierAustraliaBernardo Dominic NEW
James G KolmetzFranceIvan Magalhaes QUALIFIED
Tony I ChuiBrazilIvan Magalhaes RENEWAL
Wickens P CampainGermanyOnyama Limba UNQUALIFIED
Aruna H PerinSpainElwin Sharvill UNQUALIFIED
Isabel V GarufiAustraliaIvan Magalhaes NEW
Maisha H FigeroaJapanBernardo Dominic UNQUALIFIED
Kadeem A VocelkaItalyIvan Magalhaes NEW
Adams B RimItalyAsiya Javayant RENEWAL
Chavez L MaletArgentinaIoni Bowcher UNQUALIFIED
Jefferson W NestleRussiaOnyama Limba NEGOTIATION
Rodrigues Y RoysterCanadaBernardo Dominic RENEWAL
Munro A BowleyAustraliaIvan Magalhaes UNQUALIFIED
Silvio Y CaudyUnited KingdomStephen Shaw RENEWAL
Izzy C DoeBrazilStephen Shaw NEW
Misaki G BriddickRussiaAmy Elsner QUALIFIED
Misaki Y BowleyBrazilElwin Sharvill NEGOTIATION
Nicolas Q DoeGermanyStephen Shaw QUALIFIED
Leon M MaletFranceXuxue Feng QUALIFIED
Wickens O RoysterGermanyOnyama Limba PROPOSAL
Rodrigues L RulapaughJapanXuxue Feng NEGOTIATION
Cody U PaprockiCanadaAmy Elsner RENEWAL
Kadeem D IturbideGermanyIvan Magalhaes NEGOTIATION
Smith A NestleCanadaXuxue Feng NEW
Jeanfrancois V CaudyAustraliaAnna Fali NEGOTIATION
Morrow I WaycottItalyElwin Sharvill UNQUALIFIED
Isabel R RutaItalyStephen Shaw UNQUALIFIED
Octavia P DilliardIndiaStephen Shaw NEW
Silvio Z NickaUnited KingdomAmy Elsner NEW
Mujtaba C WaycottJapanElwin Sharvill NEW
Frozen Columns
Name
Wickens C Butt
James K Marrier
Sinclair J Sergi
Misaki E Vocelka
Aika S Glick
Clifford B Bolognia
Isabel U Caldarera
Alejandro I Paprocki
Octavia N Briddick
Wickens T Perin
Silvio M Caudy
Greenwood D Darakjy
Mayumi W Nestle
Jefferson D Darakjy
Claire U Marrier
Antonio G Stockham
Munro Z Kolmetz
Maisha R Kusko
Cody C Kolmetz
Claire M Darakjy
Aruna G Wieser
Maisha X Gaucho
Deepesh U Malet
Nicolas S Slusarski
Aika C Kusko
Cody G Saylors
Greenwood L Waycott
Kaitlin C Royster
Costa T Malet
Juan Q Maclead
Juan O Vocelka
Ricardo V Vocelka
Ivar Q Stenseth
Arvin Q Albares
Juan K Ruta
Leja Q Dilliard
Ivar L Chui
Maisha O Wieser
Adams C Doe
Arvin E Paprocki
Silvio B Chui
Johnson I Morasca
Alejandro D Figeroa
Deepesh B Gaucho
Wickens N Rim
Murillo H Ruta
Aruna T Malet
Salvatore F Glick
Greenwood E Chui
Julie M Amigon
IdCountryDate
1000Germany2024-09-20
1001Canada2024-09-16
1002Brazil2024-09-15
1003Brazil2024-09-12
1004Australia2024-09-22
1005Brazil2024-09-16
1006Germany2024-09-16
1007Argentina2024-09-10
1008India2024-08-28
1009Canada2024-09-03
1010Australia2024-09-14
1011Germany2024-08-28
1012United Kingdom2024-08-27
1013India2024-09-16
1014Germany2024-08-28
1015Italy2024-09-05
1016Australia2024-08-28
1017India2024-09-10
1018Russia2024-09-06
1019Italy2024-09-15
1020Australia2024-09-18
1021Argentina2024-09-10
1022France2024-08-26
1023Brazil2024-09-13
1024Canada2024-09-16
1025France2024-08-28
1026Brazil2024-08-30
1027United Kingdom2024-08-27
1028Brazil2024-09-01
1029Japan2024-09-08
1030Canada2024-09-18
1031India2024-09-18
1032Russia2024-09-14
1033India2024-09-22
1034Argentina2024-08-30
1035Canada2024-08-26
1036Germany2024-08-26
1037Brazil2024-09-17
1038Australia2024-09-02
1039Australia2024-09-08
1040Germany2024-09-21
1041Japan2024-09-17
1042Spain2024-08-30
1043Canada2024-09-14
1044Canada2024-08-25
1045Australia2024-09-12
1046Argentina2024-08-30
1047Japan2024-09-14
1048Spain2024-09-14
1049United Kingdom2024-09-20

On-Demand Data

NameIdCountryDate
Costa I Inouye1000Argentina2024-09-19
Tony E Wieser1001Italy2024-08-30
Greenwood M Flosi1002Australia2024-09-08
David Q Marrier1003United Kingdom2024-08-29
Rodrigues Z Waycott1004Australia2024-09-01
Cody R Ferencz1005India2024-08-30
Jones X Briddick1006Australia2024-09-18
David P Tollner1007India2024-09-06
Darci E Wieser1008Argentina2024-09-16
Mujtaba P Ruta1009Japan2024-09-06
Nicolas F Caudy1010United Kingdom2024-09-06
Johnson D Stenseth1011Argentina2024-09-19
Julie K Campain1012Argentina2024-09-13
Jennifer Z Flosi1013Japan2024-08-31
Leja Z Royster1014Canada2024-09-12
Maria S Figeroa1015Russia2024-09-15
Munro T Wieser1016Russia2024-08-28
Morrow C Nicka1017Brazil2024-09-10
Aditya S Nicka1018Russia2024-09-15
Isabel O Rulapaugh1019Australia2024-09-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro E NestleItalyStephen Shaw QUALIFIED
Ricardo W FollerItalyBernardo Dominic RENEWAL
James C RulapaughCanadaIoni Bowcher UNQUALIFIED
Mayumi Y PaprockiAustraliaElwin Sharvill NEGOTIATION
Antonio L MacleadCanadaXuxue Feng NEW
Costa S RoysterArgentinaStephen Shaw NEW
Munro J ButtSpainIoni Bowcher NEW
Alejandro I PaprockiJapanXuxue Feng UNQUALIFIED
Sinclair Q ButtCanadaIvan Magalhaes PROPOSAL
Leon O WhobreyFranceXuxue Feng NEGOTIATION
Deepesh Q BowleyArgentinaStephen Shaw PROPOSAL
Wickens H PaprockiCanadaElwin Sharvill NEW
Ivar D WhobreyIndiaStephen Shaw PROPOSAL
Greenwood W VocelkaRussiaElwin Sharvill NEW
Tony Q RulapaughSpainBernardo Dominic PROPOSAL
Cody F FollerItalyIvan Magalhaes UNQUALIFIED
Jeanfrancois V FigeroaUnited KingdomBernardo Dominic RENEWAL
Johnson N GarufiCanadaAsiya Javayant PROPOSAL
Mujtaba L TollnerGermanyAnna Fali NEGOTIATION
Izzy U RulapaughCanadaXuxue Feng RENEWAL
Faith G SaylorsArgentinaOnyama Limba QUALIFIED
Munro J BologniaJapanAmy Elsner QUALIFIED
Salvatore O KolmetzIndiaBernardo Dominic RENEWAL
Ricardo I TollnerGermanyIvan Magalhaes QUALIFIED
Emily Y MacleadIndiaAsiya Javayant NEW
Izzy G BologniaItalyAnna Fali UNQUALIFIED
Ivar W CaudyArgentinaAnna Fali RENEWAL
Ashley D GauchoUnited KingdomElwin Sharvill PROPOSAL
Munro T SchemmerSpainStephen Shaw NEGOTIATION
Chavez P ChuiAustraliaBernardo Dominic UNQUALIFIED
Mayumi K OldroydSpainBernardo Dominic RENEWAL
Isabel M FollerBrazilAmy Elsner UNQUALIFIED
Misaki D PoquetteCanadaXuxue Feng RENEWAL
Leon G AmigonJapanIoni Bowcher RENEWAL
Maria P SlusarskiSpainAsiya Javayant PROPOSAL
Claire U SergiRussiaXuxue Feng RENEWAL
Misaki M MacleadFranceElwin Sharvill QUALIFIED
Salvatore H AmigonSpainAsiya Javayant NEGOTIATION
Maria B OstroskyArgentinaXuxue Feng QUALIFIED
Maria U OldroydUnited KingdomStephen Shaw RENEWAL

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