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
Juan L WieserArgentinaStephen Shaw UNQUALIFIED
Aika J AmigonUnited KingdomStephen Shaw NEW
Maria H SchemmerBrazilOnyama Limba UNQUALIFIED
Alejandro C NestleIndiaElwin Sharvill PROPOSAL
David Y RimRussiaIvan Magalhaes PROPOSAL
Greenwood O KuskoFranceStephen Shaw PROPOSAL
Juan T CaudyJapanElwin Sharvill QUALIFIED
Jefferson E CaudyRussiaIoni Bowcher UNQUALIFIED
Jefferson Q MorascaBrazilAmy Elsner PROPOSAL
Munro A ChuiUnited KingdomAmy Elsner PROPOSAL
Arvin Y RoysterArgentinaAnna Fali PROPOSAL
Cody I DarakjyRussiaAmy Elsner NEW
Aika Y CampainGermanyAsiya Javayant NEW
Tony M SlusarskiJapanStephen Shaw PROPOSAL
Isabel S PaprockiAustraliaAnna Fali RENEWAL
Johnson M ButtCanadaXuxue Feng RENEWAL
Ivar F InouyeItalyBernardo Dominic NEW
Aditya Q SaylorsSpainXuxue Feng QUALIFIED
Misaki E FerenczIndiaBernardo Dominic PROPOSAL
Ricardo Z TollnerUnited KingdomXuxue Feng RENEWAL
Silvio X IturbideItalyStephen Shaw PROPOSAL
James F BowleyArgentinaStephen Shaw UNQUALIFIED
Maisha Y FigeroaCanadaIvan Magalhaes QUALIFIED
Adams J RoysterBrazilAnna Fali NEGOTIATION
Stacey U ButtSpainIvan Magalhaes UNQUALIFIED
Ashley V MacleadBrazilAsiya Javayant RENEWAL
Mujtaba R FollerRussiaElwin Sharvill RENEWAL
Ivar L StensethGermanyIoni Bowcher QUALIFIED
Johnson O FlosiJapanAsiya Javayant UNQUALIFIED
Octavia X NestleCanadaBernardo Dominic PROPOSAL
Munro J StockhamIndiaAsiya Javayant PROPOSAL
Isabel L VocelkaIndiaOnyama Limba PROPOSAL
Leja D MaletFranceAmy Elsner RENEWAL
Chavez U BriddickRussiaOnyama Limba RENEWAL
Smith D IturbideSpainIoni Bowcher NEGOTIATION
James M MacleadGermanyStephen Shaw UNQUALIFIED
Morrow W AmigonArgentinaStephen Shaw PROPOSAL
Aruna L ChuiGermanyIvan Magalhaes NEW
Jeanfrancois T OldroydBrazilIoni Bowcher PROPOSAL
Juan C SchemmerSpainAmy Elsner RENEWAL
Kaitlin O GarufiCanadaAmy Elsner UNQUALIFIED
Leja W VenereGermanyXuxue Feng QUALIFIED
Munro W PerinCanadaBernardo Dominic NEW
Maria U WaycottUnited KingdomAnna Fali UNQUALIFIED
Mujtaba Y NickaFranceElwin Sharvill NEGOTIATION
Julie M TollnerUnited KingdomIoni Bowcher NEGOTIATION
Morrow M AlbaresGermanyBernardo Dominic QUALIFIED
Morrow O FerenczJapanAmy Elsner NEGOTIATION
Nicolas X MarrierIndiaElwin Sharvill NEGOTIATION
Misaki O KolmetzFranceIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Chavez X PoquetteBrazilIvan Magalhaes QUALIFIED
Darci H ShinkoJapanIvan Magalhaes RENEWAL
Faith V ChuiItalyOnyama Limba NEW
Aruna E ShinkoSpainElwin Sharvill PROPOSAL
Emily U MacleadGermanyAnna Fali PROPOSAL
Aruna O MarrierBrazilStephen Shaw NEGOTIATION
David B MacleadGermanyBernardo Dominic NEW
Smith I SchemmerUnited KingdomAnna Fali NEGOTIATION
Isabel H InouyeAustraliaXuxue Feng QUALIFIED
Ricardo M AmigonSpainAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin K CaudyAustralia2024-06-09King, Christopher A Esq QUALIFIED32Stephen Shaw
1001James Y FigeroaAustralia2024-05-28Feiner Bros NEW45Amy Elsner
1002Munro X PerinAustralia2024-06-11Morlong Associates NEGOTIATION3Bernardo Dominic
1003Greenwood E WieserUnited Kingdom2024-06-07Dorl, James J Esq UNQUALIFIED37Xuxue Feng
1004Kaitlin N DoeIndia2024-05-28Printing Dimensions QUALIFIED45Bernardo Dominic
1005Cody R OstroskyAustralia2024-05-26Morlong Associates NEGOTIATION54Ioni Bowcher
1006Alejandro Q BowleyFrance2024-06-12Chemel, James L Cpa UNQUALIFIED73Amy Elsner
1007Alejandro U StockhamSpain2024-06-08Feltz Printing Service NEW23Ioni Bowcher
1008Kaitlin X GarufiUnited Kingdom2024-06-03King, Christopher A Esq RENEWAL51Xuxue Feng
1009Silvio R NestleSpain2024-05-30Morlong Associates PROPOSAL44Ioni Bowcher
1010Leon J CaldareraFrance2024-06-19Rousseaux, Michael Esq UNQUALIFIED60Ivan Magalhaes
1011Ashley W FigeroaUnited Kingdom2024-06-09Feiner Bros QUALIFIED5Ivan Magalhaes
1012Mayumi J NestleFrance2024-05-29Morlong Associates QUALIFIED71Ivan Magalhaes
1013Adams I PaprockiSpain2024-06-05Chanay, Jeffrey A Esq RENEWAL65Anna Fali
1014Faith T PaprockiIndia2024-06-21Feltz Printing Service QUALIFIED88Ivan Magalhaes
1015Costa G RulapaughCanada2024-06-14Dorl, James J Esq RENEWAL98Xuxue Feng
1016Aditya V ChuiArgentina2024-06-04Morlong Associates PROPOSAL1Asiya Javayant
1017Alejandro A SergiJapan2024-06-17Morlong Associates NEW62Stephen Shaw
1018Leja I MaletSpain2024-05-30Benton, John B Jr RENEWAL57Anna Fali
1019Clifford C StockhamSpain2024-05-26Chanay, Jeffrey A Esq NEW78Elwin Sharvill
1020Octavia U BowleyBrazil2024-05-23Truhlar And Truhlar Attys UNQUALIFIED21Amy Elsner
1021Nicolas F InouyeIndia2024-06-09Truhlar And Truhlar Attys RENEWAL14Onyama Limba
1022Adams R BowleyAustralia2024-06-01King, Christopher A Esq RENEWAL44Ioni Bowcher
1023Maria T InouyeSpain2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED65Xuxue Feng
1024Johnson Z CaudyUnited Kingdom2024-05-28Truhlar And Truhlar Attys PROPOSAL22Ivan Magalhaes
1025Darci R ButtGermany2024-05-28King, Christopher A Esq NEW98Xuxue Feng
1026Maisha L BologniaIndia2024-06-21Feiner Bros NEW85Amy Elsner
1027Antonio J MaletSpain2024-06-05Dorl, James J Esq NEGOTIATION42Asiya Javayant
1028Antonio J RimUnited Kingdom2024-06-05Commercial Press NEGOTIATION29Ivan Magalhaes
1029Kaitlin T CampainArgentina2024-05-29Chapman, Ross E Esq NEGOTIATION78Xuxue Feng
1030Smith K MaletIndia2024-06-02King, Christopher A Esq NEGOTIATION15Anna Fali
1031Jefferson W DoeUnited Kingdom2024-05-29Printing Dimensions QUALIFIED85Bernardo Dominic
1032Julie S FerenczAustralia2024-05-24Truhlar And Truhlar Attys NEGOTIATION12Ivan Magalhaes
1033Darci B SergiAustralia2024-06-19Rangoni Of Florence RENEWAL66Elwin Sharvill
1034Jeanfrancois V KuskoJapan2024-06-20Chanay, Jeffrey A Esq NEGOTIATION13Ivan Magalhaes
1035Leja I FigeroaIndia2024-06-01King, Christopher A Esq UNQUALIFIED8Ioni Bowcher
1036Morrow T MarrierSpain2024-06-04Rousseaux, Michael Esq PROPOSAL62Ioni Bowcher
1037Mujtaba N RimGermany2024-06-16Benton, John B Jr UNQUALIFIED5Ivan Magalhaes
1038Nicolas V KuskoArgentina2024-06-06Rangoni Of Florence UNQUALIFIED37Amy Elsner
1039Rodrigues C FerenczRussia2024-05-31Truhlar And Truhlar Attys NEW89Asiya Javayant
1040Nicolas U WhobreyIndia2024-06-05Chemel, James L Cpa NEW88Onyama Limba
1041Stacey L WaycottRussia2024-06-02Commercial Press UNQUALIFIED82Xuxue Feng
1042Clifford O TollnerAustralia2024-06-15Rangoni Of Florence UNQUALIFIED18Xuxue Feng
1043Sinclair R InouyeRussia2024-06-21King, Christopher A Esq NEGOTIATION70Bernardo Dominic
1044Kaitlin E InouyeJapan2024-06-06Chapman, Ross E Esq QUALIFIED96Bernardo Dominic
1045Silvio Q NickaSpain2024-06-07Feltz Printing Service PROPOSAL1Onyama Limba
1046Silvio D DarakjySpain2024-06-01Chemel, James L Cpa NEW98Asiya Javayant
1047Nicolas X MarrierBrazil2024-06-01Rousseaux, Michael Esq RENEWAL79Anna Fali
1048Jones E RutaAustralia2024-05-25Feltz Printing Service NEW27Asiya Javayant
1049Smith Q VocelkaCanada2024-06-18Dorl, James J Esq NEGOTIATION33Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Octavia N CaudyRussiaStephen Shaw PROPOSAL
Julie C RutaSpainBernardo Dominic NEW
Aditya C OldroydItalyIoni Bowcher NEGOTIATION
Silvio A MarrierGermanyBernardo Dominic PROPOSAL
Adams D GlickGermanyAnna Fali QUALIFIED
Maria Z VocelkaRussiaXuxue Feng NEGOTIATION
Claire I WieserBrazilElwin Sharvill NEGOTIATION
Misaki N FigeroaGermanyAsiya Javayant UNQUALIFIED
Munro T OstroskyCanadaIoni Bowcher NEW
Aditya S MarrierArgentinaElwin Sharvill NEW
Alejandro V CaudyIndiaIoni Bowcher RENEWAL
Johnson B RoysterUnited KingdomAmy Elsner UNQUALIFIED
Arvin H RoysterFranceXuxue Feng QUALIFIED
Francesco I StensethCanadaAnna Fali UNQUALIFIED
Tony O ShinkoSpainStephen Shaw UNQUALIFIED
Greenwood O FigeroaBrazilAnna Fali QUALIFIED
Francesco E KuskoJapanBernardo Dominic PROPOSAL
Chavez Q WieserSpainStephen Shaw PROPOSAL
Antonio Y MaletRussiaOnyama Limba UNQUALIFIED
Julie W RulapaughRussiaAsiya Javayant QUALIFIED
Stacey V BriddickBrazilElwin Sharvill RENEWAL
Rodrigues C ChuiUnited KingdomXuxue Feng UNQUALIFIED
Julie I PoquetteAustraliaIoni Bowcher QUALIFIED
Alejandro A DarakjyCanadaStephen Shaw PROPOSAL
Mayumi G DarakjyGermanyXuxue Feng NEW
Claire N WieserGermanyAmy Elsner QUALIFIED
Costa N GillianSpainOnyama Limba RENEWAL
Sinclair B SaylorsGermanyAmy Elsner NEGOTIATION
Ashley E ButtJapanAnna Fali PROPOSAL
Mujtaba G WaycottIndiaElwin Sharvill NEGOTIATION
Faith N GillianItalyAmy Elsner QUALIFIED
Costa A GlickGermanyElwin Sharvill RENEWAL
Munro E KolmetzAustraliaBernardo Dominic NEGOTIATION
Morrow F MaletUnited KingdomElwin Sharvill UNQUALIFIED
Wickens J FigeroaUnited KingdomOnyama Limba PROPOSAL
Clifford S CampainSpainOnyama Limba PROPOSAL
Ivar B InouyeFranceXuxue Feng QUALIFIED
Emily L FollerArgentinaBernardo Dominic NEGOTIATION
Aruna W VocelkaJapanAsiya Javayant NEGOTIATION
Ivar R BowleyAustraliaBernardo Dominic QUALIFIED
James F GarufiIndiaIvan Magalhaes PROPOSAL
Johnson V RoysterJapanOnyama Limba UNQUALIFIED
Jefferson M FlosiIndiaXuxue Feng NEGOTIATION
James Q PaprockiJapanIvan Magalhaes NEW
Murillo F KuskoCanadaElwin Sharvill PROPOSAL
Isabel Y ChuiBrazilBernardo Dominic UNQUALIFIED
Isabel V DarakjyGermanyXuxue Feng QUALIFIED
Mayumi O MaletSpainAnna Fali QUALIFIED
Clifford Y BologniaAustraliaXuxue Feng NEGOTIATION
Francesco Y MorascaCanadaAmy Elsner NEW
Frozen Columns
Name
Tony I Ruta
Mayumi J Wieser
Faith Z Iturbide
Mujtaba I Bolognia
Emily M Rulapaugh
Francesco G Venere
Antonio P Nestle
Octavia B Paprocki
Izzy J Flosi
Chavez X Butt
Jeanfrancois D Shinko
Morrow P Gillian
Alejandro Y Bolognia
Antonio U Kusko
Morrow E Kolmetz
Francesco F Morasca
Ashley Y Morasca
Aditya O Oldroyd
Jefferson Z Rulapaugh
Nicolas D Rim
Aika I Gillian
Jefferson D Doe
Johnson Z Tollner
Adams T Butt
Smith F Marrier
Kaitlin V Caldarera
Sinclair X Rulapaugh
Octavia Z Ferencz
Wickens S Kolmetz
Kadeem I Ruta
Ashley B Bowley
Costa W Stenseth
Leja P Dilliard
Darci I Ferencz
Jennifer K Morasca
Munro A Caldarera
Kadeem I Gillian
Aditya K Rim
Antonio I Vocelka
Emily S Amigon
Clifford P Perin
Ricardo B Stenseth
Deepesh S Caldarera
Mujtaba L Poquette
Costa G Venere
Sinclair E Malet
Antonio H Amigon
Aika J Briddick
Maria Z Royster
Wickens X Iturbide
IdCountryDate
1000France2024-05-30
1001Russia2024-06-08
1002France2024-06-20
1003Italy2024-06-20
1004Spain2024-06-19
1005Argentina2024-06-04
1006France2024-05-31
1007Spain2024-05-27
1008Japan2024-06-04
1009United Kingdom2024-05-30
1010Germany2024-06-05
1011Canada2024-06-19
1012Australia2024-06-16
1013Japan2024-06-13
1014Japan2024-06-21
1015Canada2024-06-06
1016Japan2024-06-06
1017Japan2024-06-15
1018Brazil2024-06-10
1019Italy2024-06-13
1020Russia2024-06-05
1021Spain2024-06-19
1022Japan2024-06-12
1023Argentina2024-06-02
1024France2024-05-27
1025United Kingdom2024-05-23
1026Australia2024-06-02
1027United Kingdom2024-06-18
1028Australia2024-05-23
1029Italy2024-06-11
1030Russia2024-06-13
1031Australia2024-05-25
1032Spain2024-06-19
1033Japan2024-06-15
1034Brazil2024-06-12
1035Argentina2024-06-02
1036France2024-05-29
1037Brazil2024-05-31
1038United Kingdom2024-06-21
1039Japan2024-06-04
1040Canada2024-06-19
1041Australia2024-05-30
1042United Kingdom2024-06-11
1043Argentina2024-06-20
1044Russia2024-05-24
1045United Kingdom2024-05-27
1046Russia2024-06-12
1047Russia2024-05-26
1048Argentina2024-06-14
1049Canada2024-05-29

On-Demand Data

NameIdCountryDate
Ivar F Slusarski1000Japan2024-05-28
Juan Z Ostrosky1001Australia2024-05-24
Johnson W Slusarski1002Argentina2024-05-28
Emily B Shinko1003Australia2024-06-13
Leon O Tollner1004Argentina2024-06-03
Julie W Kolmetz1005Germany2024-06-10
Ashley J Briddick1006Japan2024-05-28
Kadeem O Gaucho1007India2024-06-03
Morrow D Ferencz1008Germany2024-05-31
Clifford R Stenseth1009Russia2024-05-23
Mujtaba Z Bolognia1010India2024-06-15
Aruna V Ferencz1011United Kingdom2024-06-11
Jones E Amigon1012Japan2024-06-01
Mujtaba B Glick1013United Kingdom2024-06-04
Arvin V Amigon1014Italy2024-06-21
Kadeem C Venere1015France2024-06-03
Ashley Q Maclead1016Spain2024-05-29
Rodrigues L Rulapaugh1017Italy2024-06-16
Ivar M Poquette1018Spain2024-06-14
Deepesh Q Schemmer1019Brazil2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin S AlbaresCanadaIoni Bowcher RENEWAL
Maisha S DoeGermanyBernardo Dominic NEGOTIATION
Ivar J WieserRussiaElwin Sharvill NEGOTIATION
Nicolas M RoysterFranceAsiya Javayant QUALIFIED
Jennifer S MorascaArgentinaAnna Fali NEW
Leja J SlusarskiFranceBernardo Dominic RENEWAL
Murillo V VenereBrazilElwin Sharvill NEW
Aika M VenereJapanOnyama Limba NEW
Wickens R VenereCanadaAnna Fali PROPOSAL
Costa N TollnerItalyAmy Elsner UNQUALIFIED
Arvin Z MaletBrazilAnna Fali NEGOTIATION
Darci T ShinkoFranceIvan Magalhaes RENEWAL
Ivar W FerenczAustraliaStephen Shaw NEGOTIATION
Salvatore H CampainGermanyBernardo Dominic NEW
Kadeem I GillianIndiaAnna Fali PROPOSAL
Stacey Y GlickFranceIoni Bowcher NEGOTIATION
Jeanfrancois J StockhamArgentinaAsiya Javayant NEGOTIATION
Silvio W GillianRussiaIoni Bowcher NEW
Smith X GillianCanadaOnyama Limba QUALIFIED
Cody V SaylorsJapanIoni Bowcher NEGOTIATION
Octavia A OldroydSpainIoni Bowcher NEGOTIATION
Stacey I MorascaAustraliaXuxue Feng NEW
Clifford W DilliardUnited KingdomBernardo Dominic PROPOSAL
Murillo L VocelkaArgentinaAsiya Javayant UNQUALIFIED
Faith O BriddickJapanOnyama Limba UNQUALIFIED
Kaitlin M BriddickSpainAmy Elsner PROPOSAL
Rodrigues T DilliardArgentinaAmy Elsner QUALIFIED
Maisha I MaletGermanyElwin Sharvill NEGOTIATION
Murillo U InouyeBrazilAsiya Javayant PROPOSAL
Morrow N KolmetzIndiaElwin Sharvill UNQUALIFIED
Maisha N RulapaughSpainStephen Shaw NEW
Antonio U FollerSpainIvan Magalhaes QUALIFIED
Aditya I FigeroaFranceAnna Fali NEW
Smith V GillianJapanIoni Bowcher QUALIFIED
Julie E CaudyItalyXuxue Feng QUALIFIED
Emily X RutaUnited KingdomAsiya Javayant QUALIFIED
Antonio B BologniaJapanStephen Shaw QUALIFIED
Octavia S MacleadArgentinaXuxue Feng QUALIFIED
Wickens F WieserUnited KingdomBernardo Dominic NEW
Francesco H GarufiFranceAmy Elsner 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>