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
Salvatore D RutaIndiaAnna Fali QUALIFIED
Jennifer B WhobreyAustraliaAnna Fali PROPOSAL
Salvatore W DarakjyUnited KingdomAmy Elsner RENEWAL
Mujtaba W RoysterCanadaElwin Sharvill UNQUALIFIED
Clifford I BowleyIndiaXuxue Feng RENEWAL
Cody Y DoeUnited KingdomIvan Magalhaes QUALIFIED
Silvio H BriddickFranceOnyama Limba RENEWAL
Claire Q OldroydItalyBernardo Dominic PROPOSAL
Johnson Z AmigonSpainBernardo Dominic NEW
Octavia J PoquetteArgentinaBernardo Dominic NEW
Clifford D SaylorsIndiaAnna Fali RENEWAL
Costa U VocelkaRussiaAsiya Javayant QUALIFIED
Silvio Q BologniaUnited KingdomXuxue Feng NEW
Greenwood D SlusarskiRussiaStephen Shaw RENEWAL
Jefferson Z FigeroaBrazilStephen Shaw UNQUALIFIED
Leja L KuskoAustraliaElwin Sharvill QUALIFIED
Ashley F MaletIndiaAmy Elsner PROPOSAL
Silvio Y DilliardGermanyXuxue Feng NEW
Johnson G FigeroaArgentinaStephen Shaw NEW
Claire G TollnerIndiaIvan Magalhaes QUALIFIED
Aika O MarrierCanadaOnyama Limba QUALIFIED
Jones E GarufiJapanStephen Shaw NEW
Leja E ChuiCanadaAnna Fali PROPOSAL
Julie A MorascaFranceElwin Sharvill RENEWAL
Murillo Y RimFranceElwin Sharvill NEW
Faith D GlickFranceIvan Magalhaes PROPOSAL
Kadeem D FollerBrazilBernardo Dominic PROPOSAL
Izzy N MaletUnited KingdomAsiya Javayant NEW
Aruna U MaletAustraliaAmy Elsner NEGOTIATION
Johnson G WieserIndiaXuxue Feng NEGOTIATION
Aruna S VocelkaUnited KingdomIvan Magalhaes NEW
Ricardo I CampainCanadaBernardo Dominic NEGOTIATION
Deepesh C VenereArgentinaIoni Bowcher NEGOTIATION
Ivar Y StockhamSpainStephen Shaw PROPOSAL
Morrow D SaylorsJapanBernardo Dominic QUALIFIED
Morrow F RutaCanadaXuxue Feng RENEWAL
Morrow D CampainUnited KingdomElwin Sharvill RENEWAL
Munro E CampainItalyStephen Shaw NEW
Ashley R StensethBrazilIoni Bowcher NEGOTIATION
Julie C InouyeJapanXuxue Feng PROPOSAL
Arvin E InouyeItalyAmy Elsner RENEWAL
Ivar L MacleadRussiaAmy Elsner NEGOTIATION
Adams L SchemmerFranceBernardo Dominic UNQUALIFIED
Darci U DoeSpainAnna Fali QUALIFIED
Jeanfrancois M BriddickRussiaAnna Fali UNQUALIFIED
Izzy M BriddickSpainBernardo Dominic NEGOTIATION
Claire Z RulapaughIndiaXuxue Feng NEW
Ivar G RimFranceBernardo Dominic QUALIFIED
Salvatore X GillianAustraliaAnna Fali QUALIFIED
Antonio I StockhamSpainIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ivar B DoeSpainElwin Sharvill NEW
Greenwood P MaletArgentinaAmy Elsner PROPOSAL
Mayumi O RutaArgentinaAmy Elsner RENEWAL
Tony M WaycottUnited KingdomBernardo Dominic NEW
Munro L GauchoIndiaOnyama Limba RENEWAL
Kaitlin J MorascaIndiaAnna Fali NEW
Clifford V VocelkaIndiaAmy Elsner QUALIFIED
Juan O WaycottJapanBernardo Dominic UNQUALIFIED
Aika F MaletBrazilAmy Elsner UNQUALIFIED
Smith U FigeroaItalyElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki G GillianAustralia2024-05-17Dorl, James J Esq QUALIFIED31Ivan Magalhaes
1001Aika Z FigeroaRussia2024-05-01Feiner Bros RENEWAL62Ivan Magalhaes
1002Aditya L SlusarskiFrance2024-05-23Truhlar And Truhlar Attys RENEWAL53Xuxue Feng
1003Ivar G CaudyFrance2024-05-10Truhlar And Truhlar Attys RENEWAL98Amy Elsner
1004Arvin E StockhamItaly2024-05-09Rangoni Of Florence PROPOSAL44Xuxue Feng
1005Wickens N DilliardGermany2024-05-20Feltz Printing Service RENEWAL78Anna Fali
1006Isabel L MarrierBrazil2024-05-01Chemel, James L Cpa PROPOSAL37Asiya Javayant
1007Chavez G KolmetzSpain2024-05-09Morlong Associates UNQUALIFIED49Xuxue Feng
1008Aika L DoeItaly2024-05-17Printing Dimensions NEGOTIATION28Asiya Javayant
1009Maria H OldroydAustralia2024-05-25Buckley Miller Wright NEGOTIATION15Elwin Sharvill
1010Wickens B NestleJapan2024-05-09Chapman, Ross E Esq NEW10Elwin Sharvill
1011Cody Q KuskoUnited Kingdom2024-05-25Benton, John B Jr RENEWAL27Onyama Limba
1012Ashley X ButtSpain2024-05-20Feltz Printing Service RENEWAL12Xuxue Feng
1013Silvio Z CaudyRussia2024-04-27Truhlar And Truhlar Attys NEW68Anna Fali
1014Leon J ShinkoFrance2024-05-07Feltz Printing Service NEGOTIATION19Asiya Javayant
1015Deepesh K PoquetteAustralia2024-05-12Dorl, James J Esq UNQUALIFIED56Anna Fali
1016Nicolas L BowleySpain2024-05-04Feltz Printing Service UNQUALIFIED28Ivan Magalhaes
1017Rodrigues Z PaprockiArgentina2024-05-20Feltz Printing Service RENEWAL95Stephen Shaw
1018Emily T InouyeArgentina2024-05-04Chemel, James L Cpa RENEWAL74Elwin Sharvill
1019Kadeem Y RutaRussia2024-05-10Benton, John B Jr RENEWAL32Ivan Magalhaes
1020Rodrigues W SergiArgentina2024-05-16Chapman, Ross E Esq PROPOSAL57Anna Fali
1021Costa A MaletCanada2024-05-07Printing Dimensions PROPOSAL73Elwin Sharvill
1022Juan I BriddickAustralia2024-05-24Rangoni Of Florence NEGOTIATION65Anna Fali
1023Morrow F KolmetzBrazil2024-05-12Rangoni Of Florence QUALIFIED7Bernardo Dominic
1024Jennifer L TollnerItaly2024-05-24Chanay, Jeffrey A Esq RENEWAL28Anna Fali
1025Leja T SlusarskiArgentina2024-05-17Printing Dimensions NEW58Asiya Javayant
1026Munro Z DoeAustralia2024-04-30Dorl, James J Esq PROPOSAL46Ivan Magalhaes
1027Clifford K GarufiCanada2024-05-14Dorl, James J Esq NEGOTIATION39Ivan Magalhaes
1028Nicolas N MarrierBrazil2024-05-16Rousseaux, Michael Esq UNQUALIFIED44Onyama Limba
1029Stacey R SlusarskiBrazil2024-04-26Feiner Bros QUALIFIED21Elwin Sharvill
1030Clifford I DarakjyArgentina2024-05-18Dorl, James J Esq NEW90Ioni Bowcher
1031Mayumi B MarrierCanada2024-05-19Truhlar And Truhlar Attys NEW4Anna Fali
1032Salvatore Z ShinkoArgentina2024-05-16Feiner Bros QUALIFIED35Elwin Sharvill
1033Cody P CaudyItaly2024-04-28Truhlar And Truhlar Attys UNQUALIFIED46Stephen Shaw
1034Darci R ButtItaly2024-05-16Rousseaux, Michael Esq NEGOTIATION15Anna Fali
1035Antonio K BriddickIndia2024-05-08Printing Dimensions UNQUALIFIED83Onyama Limba
1036Alejandro I GlickBrazil2024-05-04Feltz Printing Service UNQUALIFIED56Ioni Bowcher
1037Chavez F BowleyUnited Kingdom2024-05-08King, Christopher A Esq RENEWAL35Asiya Javayant
1038Leon N PerinBrazil2024-05-11Dorl, James J Esq PROPOSAL78Onyama Limba
1039Ivar U AlbaresIndia2024-05-08Truhlar And Truhlar Attys NEW13Stephen Shaw
1040Cody J FlosiArgentina2024-05-21Truhlar And Truhlar Attys PROPOSAL8Stephen Shaw
1041Aditya K NestleSpain2024-05-17Dorl, James J Esq NEW26Xuxue Feng
1042Kaitlin T VenereJapan2024-05-21Feiner Bros NEW64Onyama Limba
1043Leon A WhobreyBrazil2024-05-10Chapman, Ross E Esq RENEWAL7Elwin Sharvill
1044James Y BologniaArgentina2024-05-01Buckley Miller Wright NEGOTIATION24Onyama Limba
1045Faith N RimJapan2024-04-28Buckley Miller Wright NEW66Xuxue Feng
1046Aruna V SchemmerUnited Kingdom2024-05-01Benton, John B Jr QUALIFIED40Onyama Limba
1047Costa E BologniaAustralia2024-05-02Rousseaux, Michael Esq NEW86Bernardo Dominic
1048Ashley I WaycottRussia2024-05-03Truhlar And Truhlar Attys RENEWAL22Ivan Magalhaes
1049Alejandro A PerinItaly2024-05-13Commercial Press QUALIFIED40Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Murillo R CaudyGermanyStephen Shaw RENEWAL
Ivar X NickaFranceElwin Sharvill NEGOTIATION
Antonio Z WhobreySpainAnna Fali UNQUALIFIED
Jefferson P StensethItalyBernardo Dominic PROPOSAL
Ashley U MaletJapanIvan Magalhaes NEGOTIATION
Munro A BriddickArgentinaElwin Sharvill UNQUALIFIED
Johnson T WieserAustraliaAmy Elsner UNQUALIFIED
Tony E WaycottItalyIvan Magalhaes UNQUALIFIED
Leon S MaletIndiaOnyama Limba PROPOSAL
Cody E SergiFranceElwin Sharvill QUALIFIED
Cody Y WhobreySpainAsiya Javayant UNQUALIFIED
Cody P SchemmerFranceIoni Bowcher RENEWAL
Cody Y FigeroaIndiaXuxue Feng NEGOTIATION
Julie B FollerSpainAmy Elsner QUALIFIED
Johnson V WaycottCanadaElwin Sharvill NEW
Faith I GlickCanadaAsiya Javayant NEW
Faith M CaldareraItalyIoni Bowcher NEGOTIATION
Aika S CampainItalyElwin Sharvill RENEWAL
James A RutaBrazilAnna Fali QUALIFIED
Smith P InouyeCanadaStephen Shaw NEGOTIATION
Clifford R FigeroaBrazilXuxue Feng RENEWAL
Tony E VocelkaArgentinaAsiya Javayant NEGOTIATION
Ricardo R ShinkoCanadaBernardo Dominic NEW
Munro H GauchoItalyAmy Elsner PROPOSAL
Wickens Q SchemmerFranceXuxue Feng QUALIFIED
Aditya H PoquetteFranceAmy Elsner UNQUALIFIED
Smith P FlosiSpainAmy Elsner NEW
Costa F SaylorsRussiaAsiya Javayant RENEWAL
Mujtaba D PoquetteGermanyBernardo Dominic NEGOTIATION
Greenwood Y BologniaFranceIvan Magalhaes QUALIFIED
Jones Q RutaFranceBernardo Dominic PROPOSAL
Leon O NickaAustraliaXuxue Feng UNQUALIFIED
Octavia T StockhamIndiaStephen Shaw NEGOTIATION
Salvatore T VocelkaJapanOnyama Limba RENEWAL
Sinclair C BowleyArgentinaOnyama Limba PROPOSAL
Mayumi I FigeroaJapanIvan Magalhaes UNQUALIFIED
Leja S MaletCanadaXuxue Feng PROPOSAL
Ricardo L ShinkoBrazilStephen Shaw UNQUALIFIED
Kaitlin B ShinkoItalyIoni Bowcher PROPOSAL
Francesco P IturbideSpainAmy Elsner UNQUALIFIED
Jeanfrancois Y DarakjyCanadaElwin Sharvill RENEWAL
Leon U BowleyAustraliaElwin Sharvill QUALIFIED
Stacey G FerenczSpainOnyama Limba RENEWAL
Izzy H AlbaresGermanyStephen Shaw NEW
Chavez X BowleyIndiaAnna Fali UNQUALIFIED
Jennifer V IturbideSpainBernardo Dominic QUALIFIED
Salvatore B OstroskyBrazilAmy Elsner QUALIFIED
Ashley B RutaItalyIoni Bowcher NEW
Leon Y SlusarskiJapanIoni Bowcher NEW
Izzy T StockhamCanadaStephen Shaw UNQUALIFIED
Frozen Columns
Name
David O Briddick
Smith B Saylors
Francesco P Maclead
Cody U Gaucho
Faith S Bolognia
Ricardo N Sergi
Stacey G Dilliard
Misaki F Gillian
Salvatore Q Nicka
Aditya P Rulapaugh
Murillo L Morasca
Ivar L Kusko
Adams B Shinko
Nicolas Y Malet
Emily O Caldarera
Aditya S Sergi
Mayumi D Paprocki
Darci L Darakjy
Chavez E Inouye
Adams R Saylors
Murillo U Albares
Tony Q Nestle
Smith I Malet
Ivar U Tollner
Maisha H Malet
Alejandro I Bowley
Ivar W Royster
Isabel Q Oldroyd
Leon C Poquette
Juan H Ruta
Juan E Marrier
Jennifer S Albares
Mayumi Y Tollner
Leon N Rim
Emily D Doe
Greenwood O Venere
Silvio B Schemmer
Greenwood M Chui
David P Nestle
Maisha Q Iturbide
Alejandro N Amigon
Kadeem A Albares
Greenwood Z Glick
Emily K Waycott
Darci I Darakjy
Kaitlin B Bowley
Ashley N Glick
Nicolas F Oldroyd
Emily K Nicka
Chavez G Perin
IdCountryDate
1000Australia2024-05-12
1001Russia2024-04-28
1002Argentina2024-05-10
1003Canada2024-05-11
1004Spain2024-05-10
1005Australia2024-05-17
1006Japan2024-05-23
1007Italy2024-05-21
1008Australia2024-05-22
1009Germany2024-05-04
1010United Kingdom2024-05-11
1011Russia2024-05-23
1012Spain2024-05-12
1013Canada2024-05-03
1014Germany2024-05-25
1015India2024-05-07
1016Italy2024-05-08
1017France2024-05-02
1018Brazil2024-05-07
1019France2024-05-15
1020United Kingdom2024-05-25
1021Spain2024-05-04
1022United Kingdom2024-05-02
1023United Kingdom2024-05-11
1024Italy2024-04-30
1025Spain2024-05-12
1026France2024-05-12
1027Russia2024-05-14
1028Spain2024-04-30
1029Australia2024-05-19
1030France2024-05-09
1031Germany2024-05-01
1032Australia2024-04-26
1033India2024-05-14
1034Germany2024-04-26
1035Canada2024-04-28
1036Italy2024-05-02
1037Spain2024-05-06
1038Spain2024-05-14
1039France2024-05-07
1040Russia2024-05-24
1041India2024-05-16
1042Japan2024-05-10
1043United Kingdom2024-05-01
1044Brazil2024-05-14
1045France2024-05-18
1046Italy2024-05-15
1047Brazil2024-04-26
1048Italy2024-05-25
1049Germany2024-05-15

On-Demand Data

NameIdCountryDate
Greenwood U Nestle1000Australia2024-05-18
Deepesh G Ruta1001Canada2024-05-21
David A Perin1002Canada2024-05-19
Leon J Oldroyd1003Australia2024-04-26
Jeanfrancois Q Nicka1004Argentina2024-04-28
Morrow O Maclead1005Japan2024-05-04
Julie H Saylors1006Italy2024-04-28
Silvio G Butt1007Germany2024-05-09
Jefferson N Perin1008Canada2024-05-05
Emily U Saylors1009Spain2024-05-22
Salvatore K Stenseth1010Russia2024-05-23
Francesco Q Malet1011Australia2024-05-21
Izzy D Oldroyd1012India2024-05-14
Munro K Butt1013India2024-04-30
David D Rulapaugh1014United Kingdom2024-05-08
Morrow Y Perin1015Argentina2024-05-03
Mayumi L Whobrey1016India2024-05-07
Murillo V Foller1017Germany2024-05-10
Jones B Ostrosky1018Argentina2024-05-23
Clifford H Shinko1019United Kingdom2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas D KolmetzIndiaOnyama Limba NEGOTIATION
Costa C GillianIndiaElwin Sharvill NEGOTIATION
Stacey X FlosiJapanAnna Fali QUALIFIED
Antonio H SaylorsUnited KingdomAsiya Javayant RENEWAL
Nicolas U BologniaSpainAnna Fali NEW
Kaitlin E PaprockiGermanyIoni Bowcher QUALIFIED
Tony X AlbaresCanadaStephen Shaw QUALIFIED
David F IturbideBrazilStephen Shaw QUALIFIED
Jefferson P DoeAustraliaIoni Bowcher NEGOTIATION
Kaitlin X CaldareraGermanyAmy Elsner PROPOSAL
Ivar R PaprockiJapanStephen Shaw QUALIFIED
Arvin W KolmetzCanadaElwin Sharvill PROPOSAL
Murillo X RutaAustraliaAnna Fali NEW
Leon Q OldroydIndiaIoni Bowcher NEW
Izzy D CampainCanadaXuxue Feng RENEWAL
Aruna P AmigonArgentinaBernardo Dominic QUALIFIED
Smith A DilliardBrazilBernardo Dominic RENEWAL
Jeanfrancois N FollerGermanyXuxue Feng RENEWAL
Costa P GauchoUnited KingdomAsiya Javayant UNQUALIFIED
Salvatore P OldroydGermanyAsiya Javayant NEGOTIATION
Morrow T MarrierRussiaStephen Shaw NEGOTIATION
Isabel F MaletGermanyOnyama Limba QUALIFIED
Ivar R GarufiItalyXuxue Feng PROPOSAL
Aruna L NestleJapanAnna Fali NEGOTIATION
Greenwood I MaletFranceIoni Bowcher RENEWAL
Cody X ShinkoRussiaOnyama Limba QUALIFIED
Tony F PoquetteRussiaAsiya Javayant NEW
Leon D RutaItalyBernardo Dominic NEGOTIATION
Maria Z CaldareraCanadaBernardo Dominic NEW
Ricardo S RoysterItalyIoni Bowcher RENEWAL
Morrow D GauchoItalyIoni Bowcher NEGOTIATION
James M PerinItalyIoni Bowcher UNQUALIFIED
Stacey B MarrierSpainIvan Magalhaes QUALIFIED
Rodrigues P SchemmerRussiaOnyama Limba NEW
Francesco N MaletJapanElwin Sharvill PROPOSAL
Juan I MaletJapanElwin Sharvill UNQUALIFIED
Johnson T RutaArgentinaElwin Sharvill NEW
Octavia B GauchoUnited KingdomAsiya Javayant UNQUALIFIED
Aika U MacleadGermanyAnna Fali UNQUALIFIED
Ricardo Z OldroydArgentinaIvan Magalhaes 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>