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
Antonio C TollnerIndiaAmy Elsner RENEWAL
Leon X OldroydJapanAsiya Javayant PROPOSAL
Antonio L PerinRussiaXuxue Feng NEGOTIATION
Adams V RoysterFranceStephen Shaw PROPOSAL
Juan Z MaletArgentinaAmy Elsner RENEWAL
Jefferson W WhobreyIndiaOnyama Limba RENEWAL
Leon O RutaBrazilAmy Elsner NEGOTIATION
Emily M VenereSpainBernardo Dominic PROPOSAL
Morrow D MarrierItalyAsiya Javayant QUALIFIED
Jefferson T GillianSpainOnyama Limba QUALIFIED
Darci K NickaArgentinaOnyama Limba QUALIFIED
Faith M SaylorsGermanyElwin Sharvill UNQUALIFIED
Ricardo A WaycottIndiaOnyama Limba RENEWAL
Morrow Q FerenczArgentinaIoni Bowcher RENEWAL
Munro G KolmetzFranceStephen Shaw QUALIFIED
Francesco V AlbaresIndiaIoni Bowcher QUALIFIED
Morrow P CampainSpainBernardo Dominic NEGOTIATION
Isabel O AlbaresJapanStephen Shaw QUALIFIED
Adams R NickaJapanXuxue Feng UNQUALIFIED
Antonio Z FlosiArgentinaElwin Sharvill UNQUALIFIED
Leja N GillianSpainOnyama Limba PROPOSAL
Wickens Z WhobreyUnited KingdomAnna Fali UNQUALIFIED
Mujtaba V RutaBrazilAsiya Javayant NEW
Mujtaba B KuskoGermanyXuxue Feng NEW
Ricardo Q DoeAustraliaElwin Sharvill PROPOSAL
Murillo I WhobreyAustraliaOnyama Limba NEW
Izzy U KuskoCanadaAmy Elsner UNQUALIFIED
Jones U RulapaughFranceXuxue Feng UNQUALIFIED
Silvio U RulapaughArgentinaBernardo Dominic PROPOSAL
Maisha K DarakjyFranceXuxue Feng NEW
Munro J GillianJapanIvan Magalhaes QUALIFIED
Jennifer H TollnerRussiaBernardo Dominic UNQUALIFIED
Morrow G InouyeUnited KingdomStephen Shaw RENEWAL
Smith M ChuiArgentinaAsiya Javayant QUALIFIED
Cody T MarrierAustraliaBernardo Dominic RENEWAL
Faith U VenereGermanyAnna Fali NEW
Julie J RutaItalyIvan Magalhaes PROPOSAL
Francesco B RulapaughItalyXuxue Feng NEW
Juan O MaletFranceAmy Elsner RENEWAL
Izzy H RulapaughGermanyBernardo Dominic QUALIFIED
Stacey W FollerUnited KingdomStephen Shaw NEW
Jennifer Y StockhamArgentinaElwin Sharvill PROPOSAL
Salvatore X BriddickSpainBernardo Dominic NEGOTIATION
Nicolas Y NickaJapanIvan Magalhaes QUALIFIED
Kaitlin E CaldareraSpainElwin Sharvill PROPOSAL
Emily J OldroydSpainAsiya Javayant NEGOTIATION
Aruna P BriddickItalyAmy Elsner RENEWAL
Sinclair N PoquetteJapanStephen Shaw PROPOSAL
Mujtaba W DilliardJapanIvan Magalhaes NEGOTIATION
James H CaldareraIndiaBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Chavez L WhobreyBrazilIoni Bowcher NEW
Cody U ButtBrazilAmy Elsner QUALIFIED
Francesco Z SlusarskiArgentinaAmy Elsner QUALIFIED
Aika X BriddickGermanyXuxue Feng NEW
Smith X SaylorsIndiaIvan Magalhaes NEW
Murillo J BowleyGermanyIvan Magalhaes NEW
Leon I WieserUnited KingdomIoni Bowcher NEW
Nicolas G MarrierIndiaOnyama Limba NEW
Stacey G StockhamItalyAsiya Javayant RENEWAL
Cody A NestleSpainAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya I RulapaughUnited Kingdom2024-06-11Truhlar And Truhlar Attys UNQUALIFIED33Anna Fali
1001Costa Q MorascaCanada2024-05-27Commercial Press NEW11Amy Elsner
1002Stacey V MarrierItaly2024-06-10Commercial Press PROPOSAL66Amy Elsner
1003Sinclair K DoeJapan2024-06-20Rousseaux, Michael Esq RENEWAL75Stephen Shaw
1004Jennifer U BologniaJapan2024-06-02Rangoni Of Florence UNQUALIFIED43Ivan Magalhaes
1005Jefferson A SergiRussia2024-06-14Morlong Associates UNQUALIFIED9Ioni Bowcher
1006Tony B FlosiItaly2024-06-01Commercial Press NEGOTIATION68Asiya Javayant
1007Juan G MacleadSpain2024-06-15Morlong Associates PROPOSAL87Xuxue Feng
1008Leon S FerenczAustralia2024-06-09Printing Dimensions NEW64Anna Fali
1009Jefferson X DarakjyArgentina2024-05-28Truhlar And Truhlar Attys NEGOTIATION45Ioni Bowcher
1010Jefferson T AmigonFrance2024-06-20Feltz Printing Service RENEWAL8Elwin Sharvill
1011Mujtaba C TollnerJapan2024-05-25Rangoni Of Florence NEW3Amy Elsner
1012Munro X SergiJapan2024-06-12Commercial Press QUALIFIED68Amy Elsner
1013Smith A FigeroaIndia2024-06-13Buckley Miller Wright NEGOTIATION99Xuxue Feng
1014Chavez P OstroskyUnited Kingdom2024-06-09Rousseaux, Michael Esq PROPOSAL69Amy Elsner
1015Murillo N RimSpain2024-05-31Commercial Press PROPOSAL17Asiya Javayant
1016Aruna I PoquetteRussia2024-06-01Rousseaux, Michael Esq NEW29Elwin Sharvill
1017Emily Y SaylorsItaly2024-06-18Morlong Associates RENEWAL65Onyama Limba
1018Johnson V InouyeArgentina2024-06-06Feiner Bros QUALIFIED73Asiya Javayant
1019Clifford I StockhamIndia2024-06-18Truhlar And Truhlar Attys UNQUALIFIED5Stephen Shaw
1020Deepesh O FollerBrazil2024-05-27Feiner Bros PROPOSAL99Stephen Shaw
1021Antonio E PerinJapan2024-06-06Feltz Printing Service RENEWAL12Bernardo Dominic
1022Smith P SchemmerItaly2024-06-11Commercial Press PROPOSAL47Elwin Sharvill
1023David P MaletSpain2024-05-27Commercial Press NEGOTIATION57Ivan Magalhaes
1024Francesco Z MaletAustralia2024-06-13Printing Dimensions NEGOTIATION13Amy Elsner
1025Arvin P BriddickJapan2024-05-30Chanay, Jeffrey A Esq QUALIFIED38Ivan Magalhaes
1026Clifford O SlusarskiIndia2024-06-04Commercial Press PROPOSAL28Stephen Shaw
1027Kadeem R DoeGermany2024-06-20King, Christopher A Esq NEGOTIATION81Onyama Limba
1028Johnson X GauchoRussia2024-06-16Dorl, James J Esq UNQUALIFIED56Anna Fali
1029Juan G VenereAustralia2024-05-28Chemel, James L Cpa NEW92Onyama Limba
1030Maria F GlickRussia2024-06-04Rousseaux, Michael Esq RENEWAL69Bernardo Dominic
1031Maisha Y RoysterRussia2024-05-25King, Christopher A Esq PROPOSAL26Onyama Limba
1032Smith T DoeUnited Kingdom2024-06-03Truhlar And Truhlar Attys QUALIFIED28Anna Fali
1033Alejandro G VenereRussia2024-06-06Rousseaux, Michael Esq QUALIFIED77Bernardo Dominic
1034Adams Q FollerIndia2024-05-27King, Christopher A Esq PROPOSAL87Bernardo Dominic
1035Aika A BologniaArgentina2024-06-03Feiner Bros QUALIFIED65Amy Elsner
1036Chavez O PaprockiCanada2024-06-07Truhlar And Truhlar Attys RENEWAL14Amy Elsner
1037Ivar Y OldroydJapan2024-05-26Dorl, James J Esq PROPOSAL78Amy Elsner
1038James P SchemmerBrazil2024-06-12Truhlar And Truhlar Attys NEGOTIATION1Onyama Limba
1039Sinclair D SlusarskiCanada2024-06-16Benton, John B Jr QUALIFIED61Anna Fali
1040Jennifer U ShinkoFrance2024-06-01Printing Dimensions NEGOTIATION18Onyama Limba
1041Chavez J PaprockiIndia2024-06-21Rangoni Of Florence NEW6Asiya Javayant
1042Isabel Y PerinGermany2024-05-25Benton, John B Jr RENEWAL98Onyama Limba
1043Misaki T AmigonArgentina2024-05-29Dorl, James J Esq UNQUALIFIED43Stephen Shaw
1044Ricardo W GlickCanada2024-06-06Buckley Miller Wright NEGOTIATION62Amy Elsner
1045Nicolas S InouyeFrance2024-06-05Printing Dimensions RENEWAL34Asiya Javayant
1046Jeanfrancois J AmigonItaly2024-06-14Dorl, James J Esq RENEWAL24Amy Elsner
1047Maisha Q InouyeBrazil2024-06-17Chanay, Jeffrey A Esq UNQUALIFIED76Onyama Limba
1048Jones O ChuiJapan2024-06-10Morlong Associates UNQUALIFIED35Elwin Sharvill
1049Alejandro Y RutaSpain2024-06-17Chemel, James L Cpa QUALIFIED69Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leon F DilliardCanadaXuxue Feng NEW
Mayumi N RimArgentinaAmy Elsner UNQUALIFIED
Aruna H RutaAustraliaAmy Elsner RENEWAL
Adams O TollnerGermanyElwin Sharvill NEW
Jones N CaudyRussiaBernardo Dominic QUALIFIED
Octavia V FollerArgentinaAnna Fali PROPOSAL
Ivar Y MorascaRussiaBernardo Dominic NEGOTIATION
Francesco K ChuiUnited KingdomBernardo Dominic QUALIFIED
Aditya K PerinJapanStephen Shaw NEGOTIATION
Stacey W NickaCanadaStephen Shaw NEGOTIATION
Tony D ChuiJapanAnna Fali PROPOSAL
Alejandro A InouyeRussiaAmy Elsner RENEWAL
Salvatore H GlickArgentinaOnyama Limba NEW
Johnson R ButtArgentinaAsiya Javayant RENEWAL
Chavez L PaprockiCanadaStephen Shaw UNQUALIFIED
Alejandro Z IturbideGermanyElwin Sharvill QUALIFIED
Kaitlin L RulapaughIndiaOnyama Limba NEGOTIATION
Maria Q FerenczSpainOnyama Limba NEGOTIATION
David N FigeroaRussiaBernardo Dominic UNQUALIFIED
Alejandro Y MaletBrazilOnyama Limba NEGOTIATION
James B RimArgentinaBernardo Dominic RENEWAL
Ricardo G VenereJapanStephen Shaw NEW
Tony Q SchemmerJapanIvan Magalhaes UNQUALIFIED
Deepesh P WaycottGermanyAnna Fali UNQUALIFIED
Alejandro G MorascaBrazilStephen Shaw QUALIFIED
Greenwood Q OldroydRussiaAmy Elsner QUALIFIED
Izzy G MaletRussiaStephen Shaw NEW
Aika Y SlusarskiFranceIoni Bowcher NEGOTIATION
Julie C BologniaCanadaElwin Sharvill NEGOTIATION
Wickens U FerenczUnited KingdomIoni Bowcher RENEWAL
Munro R AlbaresGermanyIoni Bowcher NEGOTIATION
Costa N FollerItalyXuxue Feng PROPOSAL
Deepesh B RoysterFranceIoni Bowcher NEW
Johnson W OstroskyAustraliaAmy Elsner UNQUALIFIED
Darci N PerinItalyBernardo Dominic RENEWAL
Costa S MarrierArgentinaStephen Shaw NEW
Faith G VocelkaArgentinaIoni Bowcher PROPOSAL
Arvin P AmigonRussiaBernardo Dominic QUALIFIED
Maisha X GauchoRussiaStephen Shaw NEW
Jefferson M ShinkoIndiaXuxue Feng PROPOSAL
Nicolas R CaldareraIndiaStephen Shaw NEGOTIATION
Misaki T MaletItalyIvan Magalhaes QUALIFIED
Ivar N AmigonJapanXuxue Feng QUALIFIED
Maisha Q TollnerIndiaElwin Sharvill PROPOSAL
Greenwood K RutaFranceAsiya Javayant RENEWAL
Stacey C WieserItalyOnyama Limba QUALIFIED
Ricardo W KolmetzBrazilAmy Elsner QUALIFIED
Jefferson R MaletSpainElwin Sharvill QUALIFIED
Wickens U BologniaArgentinaIoni Bowcher NEGOTIATION
Kaitlin Q StockhamSpainAmy Elsner QUALIFIED
Frozen Columns
Name
Jones Q Stenseth
Chavez F Rim
Kaitlin W Vocelka
Morrow H Kusko
Maria A Albares
Jones K Ferencz
Faith M Saylors
Jennifer W Whobrey
Greenwood H Foller
Ricardo B Inouye
Johnson B Venere
Aika C Foller
Octavia H Caldarera
Costa O Malet
Jennifer V Saylors
James Y Amigon
Kaitlin J Ostrosky
Aika C Shinko
Emily M Shinko
Leja K Gaucho
Juan L Briddick
Nicolas L Morasca
Mayumi W Darakjy
Arvin V Kusko
Octavia F Wieser
Smith Q Amigon
Cody P Dilliard
Munro V Wieser
Greenwood T Ferencz
Clifford J Malet
Jefferson H Stenseth
Cody G Stenseth
Smith F Royster
Smith C Rim
Ashley G Shinko
Alejandro P Bowley
Johnson H Caudy
David Q Shinko
Claire P Albares
Deepesh Q Bowley
Francesco T Darakjy
Tony H Inouye
Salvatore B Butt
Jefferson Q Campain
Kaitlin O Nicka
Costa V Albares
Aditya Z Shinko
Aruna S Saylors
Arvin N Stenseth
Mayumi A Bowley
IdCountryDate
1000Brazil2024-06-13
1001United Kingdom2024-05-30
1002United Kingdom2024-06-08
1003Brazil2024-05-25
1004Argentina2024-06-17
1005United Kingdom2024-05-27
1006Italy2024-06-14
1007Argentina2024-06-04
1008Italy2024-06-20
1009France2024-06-15
1010Japan2024-06-18
1011Italy2024-06-03
1012Argentina2024-06-05
1013Argentina2024-05-30
1014India2024-05-30
1015Spain2024-06-04
1016Germany2024-06-05
1017Spain2024-06-19
1018Canada2024-05-25
1019Australia2024-06-10
1020India2024-06-03
1021United Kingdom2024-06-13
1022United Kingdom2024-05-26
1023Italy2024-06-04
1024Italy2024-06-18
1025Russia2024-06-20
1026Australia2024-06-08
1027India2024-06-01
1028Brazil2024-06-13
1029Russia2024-06-16
1030Australia2024-06-12
1031Spain2024-05-28
1032Spain2024-06-10
1033Canada2024-05-30
1034France2024-06-11
1035France2024-05-23
1036United Kingdom2024-05-31
1037Spain2024-05-25
1038Germany2024-06-17
1039Italy2024-06-20
1040Australia2024-06-16
1041Canada2024-05-28
1042Argentina2024-06-15
1043Germany2024-06-17
1044United Kingdom2024-06-17
1045India2024-05-28
1046Canada2024-06-20
1047Spain2024-06-02
1048Brazil2024-06-12
1049Japan2024-06-07

On-Demand Data

NameIdCountryDate
Jennifer Z Tollner1000United Kingdom2024-06-20
Izzy C Albares1001Brazil2024-06-07
Juan F Gaucho1002France2024-06-06
Nicolas T Ruta1003Canada2024-06-21
Rodrigues C Poquette1004Australia2024-06-21
Maisha R Gaucho1005Brazil2024-06-02
Munro R Morasca1006Italy2024-06-17
James M Dilliard1007France2024-06-12
Deepesh E Doe1008Italy2024-06-20
James U Gaucho1009Spain2024-06-14
Johnson U Nicka1010United Kingdom2024-05-29
Isabel E Poquette1011United Kingdom2024-05-27
Nicolas A Tollner1012Italy2024-05-24
David T Ferencz1013Canada2024-06-01
Mayumi Y Briddick1014India2024-06-21
Deepesh F Foller1015Canada2024-06-02
Ricardo E Vocelka1016Argentina2024-05-27
Ricardo X Oldroyd1017Argentina2024-06-06
Ivar A Saylors1018India2024-05-29
Deepesh R Gillian1019India2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily B MaletItalyIoni Bowcher NEW
Jefferson T BologniaSpainAsiya Javayant PROPOSAL
Aika T SlusarskiSpainStephen Shaw PROPOSAL
Maria B RulapaughAustraliaElwin Sharvill NEGOTIATION
Isabel I OstroskyRussiaXuxue Feng QUALIFIED
Arvin S SlusarskiItalyXuxue Feng NEW
Chavez G KuskoArgentinaElwin Sharvill RENEWAL
Ashley G ChuiJapanIvan Magalhaes NEW
Arvin G OldroydItalyAnna Fali RENEWAL
Salvatore W DoeSpainXuxue Feng QUALIFIED
Rodrigues U ChuiAustraliaOnyama Limba PROPOSAL
Julie U VocelkaArgentinaAsiya Javayant QUALIFIED
Kaitlin F PoquetteAustraliaIvan Magalhaes NEGOTIATION
Emily Z DilliardBrazilAmy Elsner PROPOSAL
Leon M DoeArgentinaIvan Magalhaes PROPOSAL
Emily N RimGermanyElwin Sharvill QUALIFIED
Darci P OstroskyGermanyAsiya Javayant QUALIFIED
Clifford A DoeSpainXuxue Feng NEW
Adams R GlickFranceIoni Bowcher NEGOTIATION
Cody E RutaJapanIvan Magalhaes QUALIFIED
Ivar H MaletItalyOnyama Limba RENEWAL
Maisha F MaletUnited KingdomIoni Bowcher PROPOSAL
Kaitlin Y OstroskyCanadaIoni Bowcher QUALIFIED
Nicolas K WaycottArgentinaOnyama Limba NEW
Murillo Q PerinRussiaAmy Elsner QUALIFIED
Kaitlin Y FollerIndiaAsiya Javayant RENEWAL
Munro C GillianGermanyIoni Bowcher NEW
Silvio T StensethRussiaXuxue Feng PROPOSAL
Francesco C SergiItalyAnna Fali NEW
Kadeem Q DilliardSpainOnyama Limba NEW
Silvio E MarrierAustraliaIoni Bowcher QUALIFIED
Aditya E GarufiIndiaXuxue Feng RENEWAL
Silvio L NestleBrazilAnna Fali PROPOSAL
Aruna T GauchoCanadaBernardo Dominic UNQUALIFIED
Juan I FerenczGermanyXuxue Feng UNQUALIFIED
Maria S WhobreyIndiaXuxue Feng RENEWAL
Johnson I MarrierItalyAnna Fali QUALIFIED
Jones M SlusarskiUnited KingdomAmy Elsner PROPOSAL
Nicolas L GarufiCanadaStephen Shaw NEGOTIATION
Greenwood U CaudyIndiaOnyama Limba 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>