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
Claire L WhobreyIndiaIoni Bowcher RENEWAL
Isabel F GillianArgentinaAsiya Javayant UNQUALIFIED
Izzy O DoeRussiaOnyama Limba UNQUALIFIED
Ashley G PoquetteUnited KingdomIoni Bowcher NEW
Mayumi Y GarufiIndiaAsiya Javayant RENEWAL
Rodrigues Q MaletCanadaAnna Fali NEGOTIATION
Aditya Q VenereRussiaStephen Shaw NEW
Stacey C DarakjyAustraliaIoni Bowcher NEGOTIATION
Maria T WieserSpainIvan Magalhaes UNQUALIFIED
Jefferson L DarakjyUnited KingdomXuxue Feng PROPOSAL
Leon P RulapaughCanadaXuxue Feng NEGOTIATION
Julie H ShinkoAustraliaIoni Bowcher RENEWAL
Smith O ChuiRussiaBernardo Dominic UNQUALIFIED
Wickens F GarufiArgentinaXuxue Feng NEW
Octavia T FerenczJapanAnna Fali UNQUALIFIED
Murillo D RulapaughRussiaElwin Sharvill NEGOTIATION
Faith D InouyeBrazilAsiya Javayant RENEWAL
Maria R CaldareraBrazilIvan Magalhaes PROPOSAL
Ricardo L GauchoBrazilXuxue Feng UNQUALIFIED
Wickens V InouyeBrazilAnna Fali RENEWAL
Alejandro A BowleyCanadaIvan Magalhaes UNQUALIFIED
Arvin L FigeroaIndiaXuxue Feng UNQUALIFIED
Mujtaba P CampainAustraliaIvan Magalhaes NEW
Rodrigues W BologniaFranceStephen Shaw NEGOTIATION
Kaitlin N StockhamItalyBernardo Dominic RENEWAL
Ashley N BriddickRussiaIvan Magalhaes NEW
Leja D BologniaCanadaOnyama Limba NEGOTIATION
David E GauchoItalyAnna Fali NEW
Nicolas F NickaArgentinaStephen Shaw PROPOSAL
Isabel G MacleadArgentinaIvan Magalhaes NEGOTIATION
Deepesh F StensethBrazilIvan Magalhaes NEGOTIATION
Aika L WaycottAustraliaStephen Shaw NEGOTIATION
Emily N FlosiBrazilAsiya Javayant QUALIFIED
Jennifer Z IturbideSpainBernardo Dominic QUALIFIED
Murillo O RoysterArgentinaAmy Elsner RENEWAL
Emily M MaletJapanAsiya Javayant PROPOSAL
Silvio K VocelkaAustraliaAsiya Javayant NEGOTIATION
Arvin U ShinkoUnited KingdomIvan Magalhaes PROPOSAL
James G FlosiBrazilOnyama Limba NEW
Francesco H GlickUnited KingdomElwin Sharvill NEGOTIATION
Maisha U PoquetteRussiaOnyama Limba UNQUALIFIED
Izzy U PoquetteJapanAmy Elsner QUALIFIED
Aruna Q DarakjyBrazilAsiya Javayant QUALIFIED
Darci V NickaBrazilOnyama Limba PROPOSAL
Jefferson O BologniaAustraliaStephen Shaw PROPOSAL
Emily O VocelkaUnited KingdomIvan Magalhaes UNQUALIFIED
Ivar O RoysterArgentinaXuxue Feng QUALIFIED
Jennifer D BowleyFranceAsiya Javayant NEW
Arvin Y VocelkaItalyAsiya Javayant PROPOSAL
Murillo U PerinAustraliaStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Isabel G MaletCanadaElwin Sharvill UNQUALIFIED
Cody B KuskoSpainOnyama Limba QUALIFIED
Costa V CampainItalyStephen Shaw NEW
Leon R KuskoGermanyOnyama Limba RENEWAL
Izzy W RulapaughGermanyIvan Magalhaes QUALIFIED
Juan O NickaFranceIoni Bowcher NEW
Salvatore Z KolmetzAustraliaXuxue Feng QUALIFIED
Ricardo C AmigonGermanyAnna Fali NEW
Munro E ShinkoJapanAmy Elsner UNQUALIFIED
James Y BriddickRussiaStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois P GillianIndia2024-06-21Chapman, Ross E Esq PROPOSAL7Ivan Magalhaes
1001Murillo Z SergiRussia2024-06-23Chanay, Jeffrey A Esq UNQUALIFIED33Ivan Magalhaes
1002Munro J GillianCanada2024-06-01Rousseaux, Michael Esq NEGOTIATION94Onyama Limba
1003Izzy L KolmetzGermany2024-06-08Rangoni Of Florence QUALIFIED68Anna Fali
1004Greenwood J FigeroaIndia2024-06-10Rangoni Of Florence QUALIFIED81Anna Fali
1005Kaitlin O SlusarskiFrance2024-06-12Truhlar And Truhlar Attys UNQUALIFIED87Asiya Javayant
1006Maria G RoysterSpain2024-06-21Chapman, Ross E Esq PROPOSAL20Bernardo Dominic
1007Jeanfrancois T InouyeSpain2024-06-08Buckley Miller Wright UNQUALIFIED4Elwin Sharvill
1008Juan J RutaSpain2024-06-19Feiner Bros QUALIFIED26Elwin Sharvill
1009Jefferson H BriddickGermany2024-06-21Dorl, James J Esq NEW75Ioni Bowcher
1010Faith H MarrierAustralia2024-06-20Printing Dimensions PROPOSAL34Amy Elsner
1011Tony O FlosiAustralia2024-06-07Benton, John B Jr UNQUALIFIED11Amy Elsner
1012Aditya Y WaycottSpain2024-06-04Truhlar And Truhlar Attys PROPOSAL6Onyama Limba
1013Mayumi B GauchoArgentina2024-06-03Rousseaux, Michael Esq PROPOSAL24Ivan Magalhaes
1014Darci N MarrierArgentina2024-06-13Feiner Bros QUALIFIED30Onyama Limba
1015Leja W StensethRussia2024-06-15Dorl, James J Esq PROPOSAL97Ivan Magalhaes
1016Silvio I AlbaresUnited Kingdom2024-06-19Truhlar And Truhlar Attys RENEWAL61Stephen Shaw
1017Murillo M RimGermany2024-06-20Morlong Associates QUALIFIED38Stephen Shaw
1018Emily L MaletArgentina2024-06-12Chanay, Jeffrey A Esq QUALIFIED4Asiya Javayant
1019Emily P VenereIndia2024-06-11Benton, John B Jr RENEWAL96Onyama Limba
1020Juan F FollerFrance2024-06-14Printing Dimensions RENEWAL87Amy Elsner
1021Adams W DoeBrazil2024-06-05Chemel, James L Cpa NEW18Xuxue Feng
1022Juan S GillianSpain2024-05-26Commercial Press UNQUALIFIED75Xuxue Feng
1023Aika Q DoeJapan2024-06-23Chemel, James L Cpa RENEWAL71Ivan Magalhaes
1024Claire U OstroskyAustralia2024-06-08Rangoni Of Florence PROPOSAL37Ivan Magalhaes
1025Kaitlin Q ChuiAustralia2024-06-18Printing Dimensions NEGOTIATION56Stephen Shaw
1026Mayumi G FerenczSpain2024-06-05Chapman, Ross E Esq UNQUALIFIED45Anna Fali
1027Francesco O CampainUnited Kingdom2024-06-22Chapman, Ross E Esq NEW74Amy Elsner
1028Greenwood J FerenczAustralia2024-05-29Printing Dimensions RENEWAL10Anna Fali
1029Julie Y PerinItaly2024-06-10Buckley Miller Wright PROPOSAL29Onyama Limba
1030Izzy E SlusarskiJapan2024-05-28King, Christopher A Esq NEGOTIATION6Amy Elsner
1031Tony K WhobreyFrance2024-06-08King, Christopher A Esq NEW80Asiya Javayant
1032Johnson L RimFrance2024-06-13Truhlar And Truhlar Attys NEGOTIATION65Anna Fali
1033Smith D FerenczFrance2024-05-31Feltz Printing Service PROPOSAL25Xuxue Feng
1034Morrow S FigeroaItaly2024-06-14Morlong Associates NEGOTIATION39Elwin Sharvill
1035Deepesh D GlickCanada2024-06-10Benton, John B Jr UNQUALIFIED25Anna Fali
1036Aditya E KuskoUnited Kingdom2024-06-23Rangoni Of Florence NEW7Onyama Limba
1037Rodrigues S IturbideGermany2024-05-26Rousseaux, Michael Esq NEGOTIATION87Onyama Limba
1038Johnson R KuskoCanada2024-06-18Buckley Miller Wright RENEWAL48Xuxue Feng
1039Izzy C MaletItaly2024-06-02Printing Dimensions UNQUALIFIED19Stephen Shaw
1040Cody X AmigonAustralia2024-05-29Chapman, Ross E Esq UNQUALIFIED9Ivan Magalhaes
1041Maria R SergiBrazil2024-05-27King, Christopher A Esq NEGOTIATION42Amy Elsner
1042Arvin H RoysterIndia2024-05-30King, Christopher A Esq UNQUALIFIED44Anna Fali
1043Wickens L NickaFrance2024-05-28Rousseaux, Michael Esq PROPOSAL58Bernardo Dominic
1044Morrow Y GarufiSpain2024-06-11Feltz Printing Service NEW7Onyama Limba
1045David S NestleBrazil2024-06-10Buckley Miller Wright NEGOTIATION30Ivan Magalhaes
1046Isabel X VocelkaSpain2024-06-03King, Christopher A Esq NEGOTIATION9Elwin Sharvill
1047Faith U RutaJapan2024-06-20Chanay, Jeffrey A Esq NEW38Ivan Magalhaes
1048Clifford I StensethCanada2024-06-17Commercial Press NEW97Stephen Shaw
1049Jennifer Y CaldareraGermany2024-06-05Rangoni Of Florence UNQUALIFIED31Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Wickens U VocelkaArgentinaAmy Elsner UNQUALIFIED
Sinclair T PoquetteGermanyIoni Bowcher RENEWAL
Smith R ChuiIndiaAmy Elsner RENEWAL
Johnson X AlbaresJapanElwin Sharvill NEW
Izzy N MarrierItalyBernardo Dominic NEGOTIATION
Deepesh Z PoquetteIndiaIvan Magalhaes NEW
Smith F WieserCanadaAsiya Javayant QUALIFIED
Morrow S ChuiFranceAsiya Javayant NEGOTIATION
Julie O AlbaresCanadaStephen Shaw NEW
Mayumi J DarakjyBrazilStephen Shaw QUALIFIED
Cody E VocelkaCanadaAnna Fali UNQUALIFIED
Faith N FollerBrazilBernardo Dominic PROPOSAL
Ivar X MarrierBrazilElwin Sharvill PROPOSAL
Claire L DarakjyUnited KingdomStephen Shaw NEGOTIATION
Aditya T OstroskyIndiaXuxue Feng NEW
Wickens J PerinRussiaXuxue Feng PROPOSAL
Clifford U FollerFranceBernardo Dominic RENEWAL
Emily F MaletCanadaElwin Sharvill RENEWAL
Jennifer I ShinkoRussiaAnna Fali NEGOTIATION
Salvatore J WhobreySpainIoni Bowcher NEGOTIATION
Munro Z GarufiUnited KingdomOnyama Limba QUALIFIED
James Q WieserFranceStephen Shaw RENEWAL
Wickens J WaycottFranceIoni Bowcher NEW
Mujtaba O ShinkoIndiaAnna Fali PROPOSAL
Silvio X ButtBrazilIoni Bowcher RENEWAL
Misaki F IturbideGermanyAsiya Javayant NEW
Deepesh P MaletIndiaIoni Bowcher UNQUALIFIED
Juan G GillianFranceElwin Sharvill NEGOTIATION
Aruna X ChuiCanadaBernardo Dominic NEGOTIATION
Silvio I SchemmerUnited KingdomXuxue Feng NEGOTIATION
Kaitlin U FigeroaJapanIvan Magalhaes NEW
Rodrigues P DoeItalyStephen Shaw NEW
Leon X DarakjySpainElwin Sharvill PROPOSAL
Adams P IturbideCanadaXuxue Feng UNQUALIFIED
Maria N WhobreyRussiaBernardo Dominic RENEWAL
Smith Y RimUnited KingdomOnyama Limba NEW
Adams S StockhamRussiaIoni Bowcher NEW
Clifford B RoysterBrazilAnna Fali NEW
Nicolas B OstroskyArgentinaIvan Magalhaes QUALIFIED
Antonio W IturbideFranceBernardo Dominic NEGOTIATION
Cody E WhobreyBrazilBernardo Dominic RENEWAL
Octavia K AmigonCanadaOnyama Limba NEW
Nicolas W GauchoRussiaBernardo Dominic NEW
Greenwood H DarakjyUnited KingdomIvan Magalhaes RENEWAL
Smith U ShinkoArgentinaElwin Sharvill NEW
Clifford E SaylorsGermanyIvan Magalhaes PROPOSAL
Aruna A CaudyAustraliaAnna Fali QUALIFIED
Arvin I AlbaresFranceIoni Bowcher QUALIFIED
Sinclair Z VocelkaFranceAnna Fali RENEWAL
Jefferson M BologniaRussiaAmy Elsner NEGOTIATION
Frozen Columns
Name
Chavez C Oldroyd
Leja K Amigon
Sinclair Y Marrier
Jefferson N Poquette
Kadeem A Morasca
Francesco H Kolmetz
Costa Q Slusarski
Emily D Shinko
Kadeem A Morasca
Octavia T Rulapaugh
Clifford I Doe
Adams R Tollner
Claire L Malet
Kadeem L Figeroa
James F Dilliard
Maria V Rulapaugh
Sinclair Q Dilliard
Cody F Dilliard
Ivar I Bolognia
Clifford C Sergi
Ricardo N Iturbide
Deepesh M Inouye
Faith X Darakjy
Arvin F Caldarera
Faith M Figeroa
Rodrigues W Sergi
Faith E Foller
Deepesh B Sergi
Costa Z Maclead
Mayumi C Caldarera
Kadeem P Amigon
Faith V Dilliard
Maisha D Morasca
Aruna A Nestle
Kadeem C Whobrey
Ricardo Q Dilliard
Alejandro X Rim
David K Tollner
Ivar O Amigon
Clifford V Malet
Maisha X Nicka
Tony R Amigon
Ricardo Z Foller
Rodrigues Q Slusarski
Munro G Campain
Cody D Ferencz
Mayumi K Gillian
Antonio W Poquette
Adams C Darakjy
Murillo A Chui
IdCountryDate
1000Brazil2024-06-20
1001United Kingdom2024-06-07
1002Canada2024-06-04
1003Argentina2024-06-17
1004France2024-06-04
1005France2024-05-28
1006India2024-06-16
1007Japan2024-06-11
1008Brazil2024-06-08
1009Brazil2024-06-21
1010France2024-06-15
1011Australia2024-06-16
1012Spain2024-06-16
1013Argentina2024-06-05
1014Argentina2024-06-17
1015Russia2024-05-27
1016Russia2024-05-27
1017Brazil2024-06-17
1018Germany2024-05-29
1019Germany2024-06-21
1020France2024-06-09
1021Spain2024-06-11
1022Canada2024-06-07
1023Italy2024-06-12
1024Australia2024-06-11
1025India2024-06-17
1026Japan2024-06-06
1027Spain2024-06-21
1028Canada2024-06-19
1029Australia2024-06-19
1030Argentina2024-06-18
1031France2024-05-27
1032Italy2024-06-17
1033Argentina2024-06-23
1034Japan2024-05-28
1035United Kingdom2024-06-24
1036Brazil2024-06-07
1037Italy2024-06-01
1038Argentina2024-06-07
1039Argentina2024-06-08
1040Italy2024-06-19
1041Australia2024-06-16
1042United Kingdom2024-05-31
1043Russia2024-06-08
1044Australia2024-06-04
1045Brazil2024-05-31
1046France2024-05-30
1047Japan2024-06-09
1048Brazil2024-05-28
1049Australia2024-06-18

On-Demand Data

NameIdCountryDate
Leon M Saylors1000Canada2024-06-13
Alejandro S Stockham1001Russia2024-05-27
Aruna A Rim1002Australia2024-05-31
Sinclair K Maclead1003Germany2024-06-01
Deepesh N Iturbide1004Germany2024-06-14
Emily W Dilliard1005United Kingdom2024-06-15
Alejandro E Nicka1006United Kingdom2024-05-28
Adams I Bowley1007United Kingdom2024-06-03
Octavia M Nicka1008France2024-06-05
Alejandro R Garufi1009Italy2024-06-09
David B Gillian1010Italy2024-06-21
Leja E Ruta1011Japan2024-05-30
Silvio A Bowley1012India2024-06-13
Leon G Darakjy1013Russia2024-06-09
Misaki V Nestle1014Spain2024-06-05
Maria Y Royster1015Italy2024-06-11
James Z Darakjy1016Italy2024-05-31
Johnson U Maclead1017Russia2024-06-12
Smith D Kolmetz1018Spain2024-06-20
Morrow J Malet1019Russia2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci U FollerJapanElwin Sharvill UNQUALIFIED
Munro Z GillianJapanOnyama Limba PROPOSAL
Misaki D CampainRussiaAnna Fali NEW
Isabel K BowleyAustraliaAsiya Javayant NEW
Aruna L ChuiAustraliaIoni Bowcher QUALIFIED
Maisha X ShinkoBrazilOnyama Limba NEW
Johnson F WaycottSpainAnna Fali RENEWAL
Leja V BriddickItalyAsiya Javayant UNQUALIFIED
Maisha U PoquetteRussiaAsiya Javayant NEGOTIATION
Arvin Q GlickFranceXuxue Feng UNQUALIFIED
Johnson R StensethArgentinaAsiya Javayant NEW
Claire B RutaFranceXuxue Feng PROPOSAL
Jeanfrancois B NestleBrazilOnyama Limba UNQUALIFIED
Antonio E PerinFranceAmy Elsner QUALIFIED
Sinclair D GlickAustraliaElwin Sharvill UNQUALIFIED
Ricardo E KolmetzSpainOnyama Limba UNQUALIFIED
Octavia F VenereJapanAsiya Javayant UNQUALIFIED
Ivar P WhobreyBrazilAsiya Javayant QUALIFIED
Faith F CampainSpainAnna Fali NEW
Cody F PoquetteRussiaXuxue Feng QUALIFIED
Costa J GillianAustraliaStephen Shaw QUALIFIED
Kaitlin N FerenczBrazilIvan Magalhaes UNQUALIFIED
Greenwood Q StockhamAustraliaAmy Elsner NEW
Alejandro G PaprockiGermanyIvan Magalhaes UNQUALIFIED
Deepesh C GauchoAustraliaAsiya Javayant QUALIFIED
Julie K KolmetzItalyBernardo Dominic QUALIFIED
Arvin K FerenczRussiaIvan Magalhaes QUALIFIED
Izzy F CampainAustraliaIoni Bowcher NEGOTIATION
Francesco Z CaudyBrazilBernardo Dominic NEGOTIATION
Jennifer X SaylorsJapanAmy Elsner RENEWAL
David Y SlusarskiItalyAnna Fali NEGOTIATION
Aditya A BriddickCanadaBernardo Dominic NEW
Adams X WaycottArgentinaElwin Sharvill QUALIFIED
Kaitlin J GarufiSpainXuxue Feng QUALIFIED
Salvatore A DarakjyBrazilBernardo Dominic PROPOSAL
Faith U MarrierUnited KingdomStephen Shaw PROPOSAL
Izzy I KuskoRussiaAnna Fali NEW
Clifford D GillianUnited KingdomOnyama Limba QUALIFIED
Clifford C VocelkaUnited KingdomIoni Bowcher NEW
Costa U MacleadFranceStephen Shaw 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>