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
Ashley N MacleadSpainAmy Elsner UNQUALIFIED
Costa O MarrierArgentinaXuxue Feng RENEWAL
James W StensethAustraliaBernardo Dominic QUALIFIED
Clifford D SchemmerBrazilStephen Shaw RENEWAL
Munro H AmigonSpainAnna Fali PROPOSAL
Julie G PoquetteSpainOnyama Limba PROPOSAL
Claire F MorascaRussiaXuxue Feng UNQUALIFIED
Munro E GillianUnited KingdomAnna Fali NEW
Tony V CaudyJapanBernardo Dominic QUALIFIED
Costa U WieserGermanyBernardo Dominic PROPOSAL
Julie C ButtUnited KingdomOnyama Limba UNQUALIFIED
Izzy Q AlbaresItalyAnna Fali QUALIFIED
Morrow O IturbideIndiaAnna Fali NEW
Claire V FlosiJapanBernardo Dominic NEW
Wickens H BriddickBrazilIvan Magalhaes NEW
Aditya E GillianIndiaElwin Sharvill NEGOTIATION
Aika N GauchoArgentinaStephen Shaw UNQUALIFIED
Chavez L PoquetteJapanBernardo Dominic NEW
Julie Q VenereUnited KingdomBernardo Dominic UNQUALIFIED
Clifford E RulapaughRussiaBernardo Dominic QUALIFIED
Leon A FerenczFranceOnyama Limba PROPOSAL
Claire L CampainItalyAnna Fali UNQUALIFIED
Arvin I SergiSpainBernardo Dominic PROPOSAL
Jennifer Y IturbideCanadaAsiya Javayant QUALIFIED
Sinclair B SlusarskiBrazilAnna Fali QUALIFIED
Emily D BologniaJapanStephen Shaw QUALIFIED
Juan J OldroydBrazilAmy Elsner UNQUALIFIED
Kadeem R KuskoBrazilIoni Bowcher NEGOTIATION
Jones I FlosiUnited KingdomOnyama Limba UNQUALIFIED
Chavez J MacleadJapanStephen Shaw QUALIFIED
Darci U GlickUnited KingdomElwin Sharvill RENEWAL
Johnson N KuskoIndiaBernardo Dominic PROPOSAL
Jones Q DilliardItalyAnna Fali QUALIFIED
Faith Z NickaFranceOnyama Limba NEW
Ricardo I OldroydRussiaStephen Shaw PROPOSAL
Mayumi E CaldareraJapanAsiya Javayant NEW
James P SergiRussiaOnyama Limba PROPOSAL
Mayumi O AlbaresGermanyElwin Sharvill NEW
Leja L WieserAustraliaOnyama Limba PROPOSAL
Leon K GauchoArgentinaAsiya Javayant QUALIFIED
Johnson W GlickArgentinaBernardo Dominic UNQUALIFIED
Francesco G RulapaughSpainXuxue Feng UNQUALIFIED
Wickens Y DoeBrazilAmy Elsner NEW
Arvin R MaletBrazilXuxue Feng PROPOSAL
Murillo B PerinItalyAsiya Javayant NEGOTIATION
Arvin Q NestleSpainIoni Bowcher NEGOTIATION
Aruna V PaprockiFranceOnyama Limba UNQUALIFIED
Ivar M MarrierArgentinaBernardo Dominic NEW
Izzy Q PaprockiBrazilAnna Fali UNQUALIFIED
Deepesh E SergiGermanyAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Morrow P VocelkaSpainElwin Sharvill UNQUALIFIED
Aditya C GauchoGermanyXuxue Feng NEW
Jennifer F ShinkoSpainBernardo Dominic RENEWAL
Nicolas D BologniaItalyStephen Shaw UNQUALIFIED
Salvatore P ButtIndiaAmy Elsner NEW
Izzy S SlusarskiBrazilIoni Bowcher NEW
Munro I CampainRussiaAnna Fali NEGOTIATION
Alejandro C BologniaGermanyBernardo Dominic NEW
James W MaletSpainIoni Bowcher QUALIFIED
Emily I FerenczBrazilIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer M CaudyRussia2024-05-27Chanay, Jeffrey A Esq NEW59Onyama Limba
1001Adams L FollerIndia2024-05-27Feiner Bros QUALIFIED85Xuxue Feng
1002Claire H DilliardGermany2024-05-24Commercial Press UNQUALIFIED90Xuxue Feng
1003Maisha P PoquetteSpain2024-06-01Chanay, Jeffrey A Esq QUALIFIED4Elwin Sharvill
1004Leon J IturbideCanada2024-06-06Feltz Printing Service QUALIFIED58Asiya Javayant
1005Kadeem W DoeIndia2024-06-14Feiner Bros NEGOTIATION70Stephen Shaw
1006Maria T KuskoFrance2024-06-15Commercial Press NEGOTIATION59Onyama Limba
1007Chavez J PerinAustralia2024-06-11Chapman, Ross E Esq NEGOTIATION75Stephen Shaw
1008Silvio B SchemmerUnited Kingdom2024-06-15Buckley Miller Wright NEW22Onyama Limba
1009Nicolas P BriddickArgentina2024-05-28Feltz Printing Service RENEWAL60Onyama Limba
1010Maria I CaudyFrance2024-06-11Commercial Press UNQUALIFIED20Stephen Shaw
1011Smith X NestleJapan2024-05-31King, Christopher A Esq NEW96Xuxue Feng
1012Chavez L DarakjyCanada2024-06-01Benton, John B Jr PROPOSAL47Elwin Sharvill
1013David D BriddickArgentina2024-05-25Chemel, James L Cpa NEW94Ivan Magalhaes
1014Kaitlin O AlbaresGermany2024-06-01Rangoni Of Florence UNQUALIFIED80Anna Fali
1015Morrow K DoeJapan2024-06-10Rousseaux, Michael Esq NEW63Elwin Sharvill
1016Tony J SaylorsAustralia2024-06-17Dorl, James J Esq QUALIFIED1Asiya Javayant
1017Octavia W OldroydGermany2024-06-15King, Christopher A Esq RENEWAL67Anna Fali
1018Emily Y DilliardItaly2024-06-08Buckley Miller Wright NEGOTIATION1Ivan Magalhaes
1019Emily H BologniaCanada2024-06-15Chapman, Ross E Esq QUALIFIED98Stephen Shaw
1020Arvin A AmigonAustralia2024-06-20Dorl, James J Esq RENEWAL47Elwin Sharvill
1021Maria C AmigonRussia2024-05-23Rousseaux, Michael Esq PROPOSAL17Xuxue Feng
1022Julie H PoquetteIndia2024-06-20Chapman, Ross E Esq UNQUALIFIED61Elwin Sharvill
1023Jones I AmigonRussia2024-06-04Feiner Bros NEW55Stephen Shaw
1024Jennifer I CampainBrazil2024-06-17Chanay, Jeffrey A Esq QUALIFIED9Stephen Shaw
1025Jennifer U MaletGermany2024-06-09Chemel, James L Cpa RENEWAL56Stephen Shaw
1026Mujtaba P RutaItaly2024-06-11Chemel, James L Cpa QUALIFIED23Amy Elsner
1027Rodrigues X RutaBrazil2024-05-31Chanay, Jeffrey A Esq NEW83Ivan Magalhaes
1028Misaki B FigeroaItaly2024-06-10Printing Dimensions QUALIFIED18Amy Elsner
1029Maria Q TollnerCanada2024-05-22Rousseaux, Michael Esq NEGOTIATION18Elwin Sharvill
1030Arvin G DilliardJapan2024-06-05Chemel, James L Cpa UNQUALIFIED9Xuxue Feng
1031Cody D DilliardGermany2024-06-07Dorl, James J Esq QUALIFIED24Anna Fali
1032Johnson H PoquetteBrazil2024-06-14Benton, John B Jr NEGOTIATION16Bernardo Dominic
1033Leja L MarrierIndia2024-05-23Dorl, James J Esq PROPOSAL67Asiya Javayant
1034Salvatore D MacleadArgentina2024-06-12Printing Dimensions NEW20Stephen Shaw
1035Ashley S BowleyCanada2024-05-24Chemel, James L Cpa RENEWAL26Anna Fali
1036Isabel D InouyeJapan2024-05-27Chanay, Jeffrey A Esq NEGOTIATION24Stephen Shaw
1037Aika P SchemmerIndia2024-06-12Dorl, James J Esq QUALIFIED67Asiya Javayant
1038Octavia F MarrierAustralia2024-06-19Feltz Printing Service NEGOTIATION26Asiya Javayant
1039Leja T GillianFrance2024-05-30Printing Dimensions NEW44Onyama Limba
1040Silvio S RulapaughJapan2024-06-01Chanay, Jeffrey A Esq PROPOSAL21Bernardo Dominic
1041Emily O CampainUnited Kingdom2024-06-17Chapman, Ross E Esq NEW85Asiya Javayant
1042Jefferson S KuskoSpain2024-05-31Feiner Bros NEGOTIATION72Ivan Magalhaes
1043Maria Z GauchoFrance2024-06-09Benton, John B Jr QUALIFIED19Xuxue Feng
1044Cody U KuskoRussia2024-06-18Feiner Bros NEGOTIATION66Bernardo Dominic
1045Mayumi C VocelkaSpain2024-05-24Morlong Associates RENEWAL74Xuxue Feng
1046Aika X CaudyJapan2024-06-18Commercial Press QUALIFIED96Stephen Shaw
1047Cody C DarakjyCanada2024-05-29Dorl, James J Esq PROPOSAL5Ioni Bowcher
1048Adams Y DarakjyIndia2024-06-04Dorl, James J Esq PROPOSAL79Ioni Bowcher
1049David V WhobreyCanada2024-05-26King, Christopher A Esq QUALIFIED41Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Munro R GlickBrazilAmy Elsner NEW
Darci J CaudyCanadaAmy Elsner NEGOTIATION
Morrow P AmigonIndiaOnyama Limba NEW
Ricardo W StockhamIndiaBernardo Dominic PROPOSAL
Silvio B AlbaresUnited KingdomElwin Sharvill RENEWAL
Leja I PaprockiFranceBernardo Dominic QUALIFIED
Misaki A ChuiGermanyIoni Bowcher NEW
Julie W InouyeRussiaIvan Magalhaes NEGOTIATION
Octavia C WieserRussiaStephen Shaw RENEWAL
Cody S DarakjyJapanXuxue Feng RENEWAL
Salvatore B KuskoBrazilAsiya Javayant UNQUALIFIED
Juan G DilliardIndiaIoni Bowcher NEGOTIATION
Claire K StockhamArgentinaOnyama Limba QUALIFIED
Juan B PerinUnited KingdomIvan Magalhaes PROPOSAL
Salvatore V VocelkaRussiaAnna Fali PROPOSAL
Izzy P GillianAustraliaAmy Elsner PROPOSAL
Julie Z KuskoBrazilAnna Fali NEGOTIATION
Morrow Q DilliardBrazilIvan Magalhaes QUALIFIED
Deepesh R VocelkaIndiaAmy Elsner RENEWAL
Cody Y GauchoSpainXuxue Feng PROPOSAL
Chavez I VocelkaBrazilIoni Bowcher NEW
Mayumi X FigeroaJapanXuxue Feng NEGOTIATION
Izzy W FigeroaSpainStephen Shaw UNQUALIFIED
Silvio M TollnerIndiaElwin Sharvill UNQUALIFIED
Misaki V StockhamGermanyBernardo Dominic RENEWAL
Jefferson A RulapaughAustraliaElwin Sharvill NEW
Octavia I IturbideAustraliaIoni Bowcher RENEWAL
Kaitlin M BowleyBrazilElwin Sharvill NEW
Leja A OstroskyAustraliaOnyama Limba NEGOTIATION
Jeanfrancois Q FollerAustraliaBernardo Dominic RENEWAL
Greenwood B AmigonUnited KingdomAnna Fali NEGOTIATION
Nicolas U DilliardArgentinaIvan Magalhaes RENEWAL
Sinclair G MacleadSpainStephen Shaw QUALIFIED
Stacey I KuskoGermanyElwin Sharvill PROPOSAL
Munro R SchemmerBrazilXuxue Feng UNQUALIFIED
Aditya P RoysterArgentinaAnna Fali NEW
Stacey L ButtAustraliaAnna Fali PROPOSAL
Octavia A RutaCanadaAsiya Javayant PROPOSAL
Kaitlin B RutaRussiaIoni Bowcher QUALIFIED
Kadeem A FigeroaSpainXuxue Feng PROPOSAL
Aruna F BologniaArgentinaStephen Shaw QUALIFIED
Misaki K TollnerSpainIvan Magalhaes NEGOTIATION
Munro O AmigonArgentinaAsiya Javayant NEGOTIATION
Kadeem B PoquetteAustraliaAnna Fali NEGOTIATION
Maisha V AlbaresCanadaXuxue Feng UNQUALIFIED
Maisha F TollnerItalyIvan Magalhaes NEGOTIATION
Sinclair O PaprockiCanadaIvan Magalhaes NEGOTIATION
Jennifer E GauchoBrazilAnna Fali NEW
Mayumi L RutaUnited KingdomIvan Magalhaes UNQUALIFIED
Claire X WaycottSpainOnyama Limba UNQUALIFIED
Frozen Columns
Name
David K Perin
Smith J Briddick
Ashley D Poquette
Aika C Nestle
Nicolas W Albares
James P Ostrosky
Darci R Kusko
Clifford I Bolognia
Silvio K Caudy
Murillo W Amigon
Murillo I Iturbide
James Y Darakjy
Salvatore B Waycott
Juan P Wieser
Munro J Royster
Maisha U Darakjy
Chavez H Schemmer
Juan E Nicka
Ricardo O Bowley
Tony C Caudy
Ivar U Kusko
Izzy O Maclead
Leja B Vocelka
Aika I Stenseth
Sinclair U Iturbide
Nicolas J Briddick
Misaki H Rulapaugh
David T Saylors
Ivar S Flosi
Izzy V Whobrey
Leon J Caldarera
Nicolas N Garufi
Ivar Q Albares
Munro E Kusko
Johnson Q Waycott
Kaitlin J Poquette
Jennifer S Saylors
Aruna R Doe
Maria X Albares
Antonio B Schemmer
Costa A Dilliard
Isabel N Paprocki
Munro B Malet
Faith O Slusarski
Izzy B Paprocki
Jefferson R Rulapaugh
Wickens E Perin
Francesco P Dilliard
Kaitlin K Dilliard
Isabel I Poquette
IdCountryDate
1000Australia2024-05-27
1001Brazil2024-06-06
1002Canada2024-06-12
1003India2024-05-23
1004Italy2024-06-18
1005Argentina2024-06-10
1006India2024-05-22
1007Italy2024-05-31
1008Spain2024-06-15
1009Argentina2024-06-17
1010Russia2024-06-17
1011Russia2024-06-17
1012Canada2024-06-10
1013Canada2024-06-16
1014India2024-06-03
1015France2024-06-13
1016Argentina2024-05-28
1017United Kingdom2024-06-05
1018Italy2024-06-14
1019Argentina2024-06-15
1020France2024-06-04
1021Japan2024-05-23
1022United Kingdom2024-06-08
1023Spain2024-06-20
1024Australia2024-05-27
1025India2024-05-22
1026Brazil2024-06-18
1027United Kingdom2024-05-30
1028Spain2024-06-15
1029Argentina2024-05-23
1030India2024-05-22
1031Canada2024-06-16
1032Japan2024-06-09
1033Canada2024-06-15
1034United Kingdom2024-05-25
1035Canada2024-06-08
1036France2024-06-08
1037Spain2024-06-13
1038Germany2024-05-23
1039Russia2024-05-24
1040Spain2024-06-09
1041United Kingdom2024-06-09
1042Germany2024-06-19
1043Brazil2024-06-01
1044Canada2024-06-06
1045Russia2024-06-12
1046France2024-05-25
1047Germany2024-06-20
1048India2024-05-22
1049India2024-05-26

On-Demand Data

NameIdCountryDate
Costa M Schemmer1000Russia2024-06-01
Ricardo V Slusarski1001Italy2024-06-10
Nicolas L Waycott1002Brazil2024-06-02
Costa P Gillian1003Japan2024-06-09
Maisha I Perin1004Spain2024-06-19
Maisha G Butt1005United Kingdom2024-05-31
Jennifer H Bowley1006Russia2024-06-17
Ashley U Oldroyd1007Russia2024-06-01
Johnson X Butt1008Argentina2024-06-13
Aika X Venere1009France2024-05-23
Mayumi L Rim1010Canada2024-05-27
Mujtaba N Shinko1011Spain2024-05-29
Maisha O Morasca1012India2024-06-10
Jones Q Venere1013Italy2024-06-09
Chavez H Ruta1014United Kingdom2024-05-27
Kaitlin T Stockham1015Brazil2024-06-17
Ivar G Ostrosky1016Brazil2024-05-29
Ashley O Stenseth1017Italy2024-06-05
Julie A Wieser1018Argentina2024-06-13
Costa Q Darakjy1019Spain2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood A KolmetzUnited KingdomAnna Fali RENEWAL
Jefferson B CaldareraJapanAnna Fali PROPOSAL
Nicolas H SlusarskiItalyOnyama Limba NEW
Chavez X GlickBrazilBernardo Dominic RENEWAL
Arvin B FollerAustraliaAsiya Javayant PROPOSAL
Kaitlin A WhobreySpainOnyama Limba UNQUALIFIED
Chavez K VenereRussiaStephen Shaw RENEWAL
Faith Z GarufiFranceIvan Magalhaes RENEWAL
David M SergiJapanXuxue Feng QUALIFIED
Salvatore T GauchoFranceStephen Shaw NEW
Emily E KuskoRussiaAsiya Javayant RENEWAL
Nicolas V InouyeItalyAsiya Javayant UNQUALIFIED
Kadeem J FlosiUnited KingdomXuxue Feng UNQUALIFIED
Adams G MaletBrazilXuxue Feng UNQUALIFIED
Murillo Q NestleIndiaAmy Elsner PROPOSAL
Aruna R GauchoBrazilElwin Sharvill NEW
Smith G OldroydIndiaOnyama Limba UNQUALIFIED
Ivar A BowleyBrazilXuxue Feng NEGOTIATION
Aika B FigeroaGermanyIvan Magalhaes PROPOSAL
Leon U WhobreyGermanyAmy Elsner NEW
Morrow R DilliardRussiaStephen Shaw NEGOTIATION
Ricardo Y PaprockiAustraliaOnyama Limba UNQUALIFIED
David B MaletJapanXuxue Feng UNQUALIFIED
Cody I StockhamIndiaXuxue Feng UNQUALIFIED
Sinclair F ShinkoBrazilBernardo Dominic PROPOSAL
Wickens L SchemmerFranceIvan Magalhaes NEW
Kadeem D WieserCanadaAnna Fali NEGOTIATION
Wickens S DoeSpainBernardo Dominic UNQUALIFIED
Jeanfrancois V PerinRussiaElwin Sharvill PROPOSAL
Mayumi M SaylorsGermanyAnna Fali NEW
Kaitlin P DilliardArgentinaBernardo Dominic UNQUALIFIED
Stacey C ShinkoGermanyBernardo Dominic UNQUALIFIED
Wickens H RutaCanadaIoni Bowcher NEW
Mujtaba Y GillianGermanyAsiya Javayant UNQUALIFIED
Francesco T BriddickAustraliaStephen Shaw NEGOTIATION
Greenwood Y RimArgentinaAnna Fali QUALIFIED
Juan P SchemmerFranceAsiya Javayant NEGOTIATION
Jones P BriddickIndiaIoni Bowcher UNQUALIFIED
Maisha L MorascaSpainAmy Elsner PROPOSAL
Jeanfrancois K BologniaBrazilAsiya Javayant PROPOSAL

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