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
Johnson F AmigonArgentinaBernardo Dominic UNQUALIFIED
Alejandro X PoquetteCanadaIvan Magalhaes PROPOSAL
Julie N IturbideCanadaAnna Fali UNQUALIFIED
Darci U AmigonArgentinaIoni Bowcher QUALIFIED
Adams R OstroskyGermanyBernardo Dominic PROPOSAL
Murillo P VenereItalyAmy Elsner PROPOSAL
Octavia F IturbideCanadaStephen Shaw NEGOTIATION
Ricardo X ShinkoGermanyBernardo Dominic NEGOTIATION
Stacey O GlickIndiaStephen Shaw PROPOSAL
Arvin K NestleCanadaOnyama Limba PROPOSAL
Nicolas S RulapaughRussiaIvan Magalhaes NEGOTIATION
Morrow B TollnerFranceElwin Sharvill PROPOSAL
Maria C WhobreyRussiaAsiya Javayant NEW
Izzy A CaldareraSpainIvan Magalhaes QUALIFIED
Kadeem P StensethItalyAsiya Javayant PROPOSAL
Kaitlin D CaudyBrazilAmy Elsner PROPOSAL
Ashley N PaprockiArgentinaOnyama Limba NEGOTIATION
Johnson F VocelkaFranceIvan Magalhaes RENEWAL
Misaki N GillianFranceOnyama Limba UNQUALIFIED
Francesco E BowleyAustraliaXuxue Feng UNQUALIFIED
Aditya B WieserIndiaAmy Elsner QUALIFIED
Emily K GlickUnited KingdomIvan Magalhaes NEGOTIATION
Morrow F ShinkoSpainIvan Magalhaes NEW
Clifford V GauchoArgentinaIoni Bowcher RENEWAL
Munro H MorascaRussiaAsiya Javayant NEGOTIATION
Maria N MarrierItalyStephen Shaw UNQUALIFIED
Greenwood B FerenczSpainBernardo Dominic UNQUALIFIED
Claire E GarufiArgentinaAnna Fali UNQUALIFIED
Costa J InouyeGermanyOnyama Limba UNQUALIFIED
Leon A ChuiBrazilStephen Shaw RENEWAL
Leon X BologniaBrazilOnyama Limba NEGOTIATION
Mayumi J PoquetteFranceXuxue Feng RENEWAL
Alejandro U CaudyJapanIvan Magalhaes QUALIFIED
Ivar L DoeIndiaAsiya Javayant NEW
Antonio B BowleyCanadaXuxue Feng RENEWAL
Adams G VenereGermanyIvan Magalhaes RENEWAL
Mayumi J DarakjyRussiaStephen Shaw QUALIFIED
Smith M KuskoItalyBernardo Dominic QUALIFIED
Clifford V ButtRussiaIvan Magalhaes RENEWAL
Tony F PerinAustraliaElwin Sharvill PROPOSAL
Jeanfrancois S OldroydFranceIvan Magalhaes UNQUALIFIED
Antonio X StockhamItalyBernardo Dominic QUALIFIED
Stacey M RimCanadaBernardo Dominic NEGOTIATION
Ricardo O WaycottFranceAmy Elsner UNQUALIFIED
Mujtaba M WaycottArgentinaIoni Bowcher RENEWAL
Maria L CaudyGermanyIoni Bowcher RENEWAL
Kadeem V GarufiJapanIoni Bowcher RENEWAL
Salvatore Z NestleUnited KingdomXuxue Feng QUALIFIED
Nicolas Z SchemmerAustraliaAmy Elsner RENEWAL
Salvatore K DarakjyArgentinaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Adams L DoeJapanAsiya Javayant NEW
Murillo D SlusarskiBrazilAnna Fali UNQUALIFIED
Jennifer B PaprockiBrazilIvan Magalhaes PROPOSAL
Costa N NickaUnited KingdomOnyama Limba UNQUALIFIED
Murillo H DilliardArgentinaIvan Magalhaes PROPOSAL
Alejandro Q KolmetzItalyElwin Sharvill QUALIFIED
Aditya J ButtJapanAnna Fali UNQUALIFIED
Maisha B NickaAustraliaStephen Shaw UNQUALIFIED
Ivar M StensethBrazilIvan Magalhaes NEGOTIATION
Maria O WhobreyItalyElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio B InouyeIndia2024-05-16Truhlar And Truhlar Attys PROPOSAL38Ioni Bowcher
1001Chavez X PaprockiRussia2024-05-15Printing Dimensions NEW34Xuxue Feng
1002Tony B PoquetteFrance2024-05-11Chemel, James L Cpa NEGOTIATION93Ioni Bowcher
1003Kaitlin N GlickAustralia2024-05-16Truhlar And Truhlar Attys PROPOSAL16Xuxue Feng
1004Maria D FigeroaRussia2024-05-03King, Christopher A Esq RENEWAL61Amy Elsner
1005Claire D IturbideBrazil2024-05-24Commercial Press UNQUALIFIED65Ioni Bowcher
1006David I BriddickUnited Kingdom2024-05-17Feiner Bros NEW71Ivan Magalhaes
1007Wickens P AlbaresJapan2024-05-24Printing Dimensions QUALIFIED8Anna Fali
1008Nicolas G WhobreyJapan2024-05-12Feiner Bros RENEWAL44Stephen Shaw
1009Tony Y StensethRussia2024-04-29Feltz Printing Service QUALIFIED9Xuxue Feng
1010Arvin J SaylorsCanada2024-05-17Truhlar And Truhlar Attys UNQUALIFIED64Xuxue Feng
1011Antonio T SaylorsIndia2024-05-24Dorl, James J Esq QUALIFIED25Xuxue Feng
1012Claire Z WaycottSpain2024-05-12Chanay, Jeffrey A Esq UNQUALIFIED28Elwin Sharvill
1013Maisha M TollnerJapan2024-05-26Rousseaux, Michael Esq QUALIFIED50Onyama Limba
1014James Z KolmetzGermany2024-04-27Rousseaux, Michael Esq NEW66Stephen Shaw
1015Smith V AlbaresSpain2024-05-11Commercial Press RENEWAL14Ioni Bowcher
1016Aditya Z GarufiRussia2024-05-25Buckley Miller Wright UNQUALIFIED41Anna Fali
1017Munro B RimIndia2024-05-07King, Christopher A Esq NEW48Elwin Sharvill
1018Morrow Y FerenczFrance2024-05-13Chapman, Ross E Esq NEW87Ioni Bowcher
1019Adams R WaycottItaly2024-04-29Truhlar And Truhlar Attys QUALIFIED49Ioni Bowcher
1020Cody Z MaletIndia2024-05-23Truhlar And Truhlar Attys QUALIFIED34Elwin Sharvill
1021Murillo D RulapaughBrazil2024-05-09Printing Dimensions NEGOTIATION57Asiya Javayant
1022Salvatore E CaudyItaly2024-05-22Chemel, James L Cpa NEGOTIATION8Onyama Limba
1023Ashley C SchemmerJapan2024-05-16Feltz Printing Service UNQUALIFIED22Amy Elsner
1024Maria Q SergiIndia2024-05-26Rousseaux, Michael Esq NEW57Ivan Magalhaes
1025Chavez J PerinRussia2024-05-07Morlong Associates RENEWAL42Amy Elsner
1026Greenwood D PerinCanada2024-05-03Feiner Bros QUALIFIED97Amy Elsner
1027Mayumi J DarakjySpain2024-05-10Chemel, James L Cpa RENEWAL22Elwin Sharvill
1028Mujtaba H ChuiBrazil2024-05-14Feiner Bros PROPOSAL26Stephen Shaw
1029Ricardo M ChuiSpain2024-05-07Commercial Press QUALIFIED45Asiya Javayant
1030Maria Q BologniaArgentina2024-05-12Rousseaux, Michael Esq QUALIFIED22Stephen Shaw
1031Silvio X DilliardSpain2024-05-05Chapman, Ross E Esq UNQUALIFIED75Stephen Shaw
1032Aditya R MarrierCanada2024-05-16Chemel, James L Cpa NEW2Anna Fali
1033David H FerenczRussia2024-05-21Truhlar And Truhlar Attys NEW82Anna Fali
1034Munro Y CaudyGermany2024-05-21Truhlar And Truhlar Attys NEW70Stephen Shaw
1035Jefferson D WaycottItaly2024-05-09Feltz Printing Service UNQUALIFIED24Stephen Shaw
1036Leon F RutaIndia2024-05-20Chanay, Jeffrey A Esq QUALIFIED38Anna Fali
1037Julie O OstroskyRussia2024-05-03Rangoni Of Florence NEW71Stephen Shaw
1038Isabel A StensethBrazil2024-05-09Morlong Associates PROPOSAL95Stephen Shaw
1039Morrow M DilliardArgentina2024-05-19Feiner Bros RENEWAL90Onyama Limba
1040Faith C DoeSpain2024-05-19Printing Dimensions UNQUALIFIED18Asiya Javayant
1041Kaitlin N SaylorsArgentina2024-05-26Printing Dimensions NEGOTIATION75Anna Fali
1042Aditya H VocelkaFrance2024-05-12King, Christopher A Esq PROPOSAL2Ivan Magalhaes
1043Adams I RoysterSpain2024-05-05Benton, John B Jr QUALIFIED36Ioni Bowcher
1044Faith L MacleadSpain2024-04-27Buckley Miller Wright UNQUALIFIED68Ioni Bowcher
1045Francesco D DoeArgentina2024-05-16Benton, John B Jr QUALIFIED60Anna Fali
1046Maria I RimItaly2024-05-21Chapman, Ross E Esq UNQUALIFIED35Anna Fali
1047Francesco S KolmetzBrazil2024-04-30Benton, John B Jr PROPOSAL81Anna Fali
1048David O PaprockiUnited Kingdom2024-04-27Morlong Associates NEGOTIATION68Onyama Limba
1049Francesco J RoysterUnited Kingdom2024-05-04Chemel, James L Cpa QUALIFIED38Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Jones N ChuiGermanyXuxue Feng QUALIFIED
James X InouyeJapanOnyama Limba QUALIFIED
Alejandro U RimRussiaXuxue Feng PROPOSAL
Maria R FigeroaSpainIvan Magalhaes NEGOTIATION
Greenwood A BologniaGermanyBernardo Dominic NEW
Jones F RoysterFranceXuxue Feng PROPOSAL
Jones W GarufiGermanyElwin Sharvill NEW
Rodrigues V FigeroaFranceStephen Shaw UNQUALIFIED
Misaki C KuskoItalyAsiya Javayant RENEWAL
Morrow O DilliardJapanAsiya Javayant NEGOTIATION
Tony C CampainIndiaStephen Shaw QUALIFIED
Silvio U WhobreyIndiaXuxue Feng NEW
Aditya K WieserJapanAsiya Javayant NEGOTIATION
Leon M MorascaSpainBernardo Dominic RENEWAL
Silvio A NickaUnited KingdomBernardo Dominic UNQUALIFIED
Darci D StensethUnited KingdomStephen Shaw NEGOTIATION
Izzy A SchemmerCanadaAnna Fali QUALIFIED
Munro E MaletItalyOnyama Limba PROPOSAL
Kaitlin B MacleadIndiaAsiya Javayant PROPOSAL
Munro O OldroydSpainIvan Magalhaes RENEWAL
Chavez J CaldareraUnited KingdomXuxue Feng QUALIFIED
Emily V FollerSpainAsiya Javayant NEW
Morrow G AlbaresUnited KingdomIoni Bowcher PROPOSAL
Darci X WaycottBrazilAmy Elsner UNQUALIFIED
Leon Q ButtCanadaAnna Fali PROPOSAL
Deepesh Q SergiCanadaXuxue Feng PROPOSAL
Greenwood Q NestleCanadaOnyama Limba NEW
Mujtaba I VenereBrazilAmy Elsner NEW
Tony F DoeBrazilIoni Bowcher NEW
Munro I CampainItalyBernardo Dominic RENEWAL
Stacey W MacleadJapanIoni Bowcher NEGOTIATION
Francesco A RulapaughSpainIvan Magalhaes NEGOTIATION
Maria W BriddickCanadaIoni Bowcher RENEWAL
Maria Q KuskoCanadaAsiya Javayant NEGOTIATION
Johnson B PerinIndiaStephen Shaw UNQUALIFIED
Murillo F MorascaItalyIvan Magalhaes RENEWAL
Jones X TollnerCanadaBernardo Dominic NEW
Kadeem W VenereJapanOnyama Limba UNQUALIFIED
Julie V CaldareraSpainAmy Elsner PROPOSAL
Arvin E CaldareraCanadaXuxue Feng NEW
Julie S WaycottCanadaElwin Sharvill NEW
Maria X BowleyIndiaAnna Fali PROPOSAL
Salvatore Y OstroskyFranceIvan Magalhaes NEGOTIATION
Jennifer F CaudyJapanAsiya Javayant NEGOTIATION
Deepesh Q ButtFranceElwin Sharvill RENEWAL
James O CaldareraUnited KingdomBernardo Dominic NEGOTIATION
Aruna U IturbideGermanyOnyama Limba PROPOSAL
Stacey M DarakjyIndiaOnyama Limba NEW
Jones G OldroydFranceOnyama Limba NEW
Sinclair K WaycottItalyIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Clifford U Malet
James U Nestle
Maria N Kusko
Silvio F Nicka
Clifford G Nicka
Emily Y Saylors
Clifford U Ruta
Cody I Royster
Tony D Morasca
Johnson R Sergi
Stacey Z Flosi
Ashley F Vocelka
Tony Q Slusarski
Emily T Sergi
Julie W Briddick
Munro A Poquette
Chavez N Darakjy
Cody V Perin
Ivar F Briddick
Murillo G Campain
Johnson Z Darakjy
Tony K Royster
Jones N Glick
Silvio L Glick
Mayumi N Paprocki
Salvatore E Amigon
Alejandro C Malet
Misaki M Stenseth
David B Bolognia
Sinclair U Amigon
Costa I Gaucho
Julie K Campain
Kaitlin O Chui
Alejandro F Dilliard
Aditya Q Kusko
Nicolas I Gillian
Rodrigues Q Nestle
Rodrigues W Amigon
Faith R Caldarera
Mayumi Q Saylors
Isabel N Malet
Izzy K Marrier
Leja K Caldarera
Aditya H Slusarski
Claire G Saylors
Emily X Schemmer
Octavia M Venere
Clifford K Ostrosky
Johnson P Bolognia
Sinclair Z Albares
IdCountryDate
1000Brazil2024-05-23
1001Australia2024-05-20
1002United Kingdom2024-05-15
1003Australia2024-04-28
1004India2024-05-23
1005Argentina2024-05-02
1006India2024-05-13
1007Germany2024-05-25
1008Canada2024-05-12
1009Canada2024-05-01
1010France2024-05-06
1011Japan2024-05-09
1012India2024-05-04
1013India2024-04-30
1014France2024-05-21
1015Germany2024-05-15
1016United Kingdom2024-05-10
1017Russia2024-05-24
1018Japan2024-04-29
1019France2024-05-09
1020Italy2024-04-30
1021India2024-04-28
1022Canada2024-05-23
1023Russia2024-05-06
1024Canada2024-05-06
1025Spain2024-05-15
1026Australia2024-05-07
1027Canada2024-05-12
1028India2024-05-19
1029Spain2024-05-13
1030Canada2024-05-03
1031Australia2024-05-03
1032Italy2024-05-08
1033France2024-05-17
1034Argentina2024-05-25
1035Canada2024-05-23
1036Australia2024-05-19
1037India2024-05-04
1038Spain2024-05-10
1039Canada2024-05-13
1040Australia2024-05-11
1041India2024-04-28
1042Germany2024-04-29
1043France2024-05-04
1044Australia2024-04-29
1045Italy2024-04-28
1046Italy2024-04-27
1047Argentina2024-05-06
1048Canada2024-05-09
1049Brazil2024-05-17

On-Demand Data

NameIdCountryDate
Julie C Wieser1000France2024-05-23
Tony F Venere1001Japan2024-05-23
Wickens T Albares1002Russia2024-05-21
Leja K Ferencz1003Japan2024-05-04
Octavia F Malet1004Germany2024-05-25
Ivar W Venere1005Italy2024-05-24
Aditya M Garufi1006India2024-05-06
Maisha I Tollner1007Australia2024-05-16
Tony M Caldarera1008Argentina2024-05-12
Deepesh O Foller1009Italy2024-05-05
Kadeem D Figeroa1010Australia2024-04-29
Arvin O Kusko1011Germany2024-05-09
Julie F Doe1012Germany2024-05-26
Aika Q Whobrey1013Australia2024-05-09
Mayumi T Whobrey1014India2024-04-30
Arvin Y Marrier1015Argentina2024-05-01
Leja B Darakjy1016Spain2024-05-02
Kaitlin Y Schemmer1017Germany2024-05-10
Francesco L Whobrey1018Argentina2024-05-13
Smith W Rulapaugh1019Germany2024-05-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki R TollnerFranceXuxue Feng QUALIFIED
Chavez X KolmetzFranceStephen Shaw QUALIFIED
Darci J GlickJapanXuxue Feng UNQUALIFIED
Deepesh M WaycottFranceStephen Shaw NEGOTIATION
Jefferson U OstroskyIndiaElwin Sharvill PROPOSAL
Octavia O MaletBrazilOnyama Limba PROPOSAL
Faith M VocelkaFranceIvan Magalhaes NEGOTIATION
Kadeem B BriddickAustraliaAmy Elsner RENEWAL
Isabel N FigeroaIndiaIoni Bowcher RENEWAL
Francesco X GlickRussiaIoni Bowcher NEW
Aika H MaletUnited KingdomIvan Magalhaes NEW
Salvatore K VocelkaRussiaBernardo Dominic QUALIFIED
Nicolas V BriddickGermanyIoni Bowcher PROPOSAL
Misaki X DarakjyBrazilStephen Shaw RENEWAL
Stacey C SaylorsIndiaBernardo Dominic QUALIFIED
Faith V CaldareraFranceOnyama Limba NEGOTIATION
Emily O OstroskyRussiaXuxue Feng PROPOSAL
Aika U RimGermanyStephen Shaw QUALIFIED
Aruna E TollnerJapanBernardo Dominic NEW
Cody L DarakjyItalyOnyama Limba QUALIFIED
Ivar S RoysterUnited KingdomOnyama Limba QUALIFIED
Silvio Z SchemmerIndiaStephen Shaw PROPOSAL
Ricardo T ChuiArgentinaElwin Sharvill PROPOSAL
James O MacleadCanadaAnna Fali RENEWAL
Jones T FollerRussiaElwin Sharvill QUALIFIED
Faith I GillianJapanIvan Magalhaes NEW
Clifford J DarakjyCanadaBernardo Dominic RENEWAL
Jennifer F NickaJapanAsiya Javayant PROPOSAL
Darci S CaudyJapanIoni Bowcher NEW
Rodrigues V InouyeRussiaElwin Sharvill NEGOTIATION
Jones S TollnerFranceStephen Shaw QUALIFIED
Smith B RutaAustraliaIoni Bowcher RENEWAL
Deepesh V SlusarskiSpainIvan Magalhaes RENEWAL
Chavez U GarufiBrazilBernardo Dominic PROPOSAL
Darci F VenereUnited KingdomStephen Shaw UNQUALIFIED
Kadeem J MarrierArgentinaOnyama Limba QUALIFIED
Aika J RimCanadaBernardo Dominic UNQUALIFIED
David M FlosiJapanElwin Sharvill RENEWAL
Kaitlin O SchemmerGermanyBernardo Dominic NEGOTIATION
Aruna F PaprockiItalyAmy Elsner NEW

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