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
Greenwood S MorascaFranceStephen Shaw NEGOTIATION
Wickens H CampainGermanyAnna Fali NEW
Misaki P DilliardAustraliaElwin Sharvill NEGOTIATION
Deepesh K MaletBrazilAsiya Javayant PROPOSAL
Francesco H GauchoGermanyAnna Fali NEW
Ricardo N IturbideAustraliaAsiya Javayant UNQUALIFIED
Silvio G SergiBrazilIvan Magalhaes QUALIFIED
Juan L CaudySpainElwin Sharvill NEW
Francesco U CaudyFranceIvan Magalhaes NEW
Clifford B WaycottCanadaElwin Sharvill PROPOSAL
Salvatore J IturbideJapanXuxue Feng QUALIFIED
Salvatore Z CaudyAustraliaOnyama Limba RENEWAL
Leja C AmigonBrazilStephen Shaw PROPOSAL
Smith O NickaGermanyIoni Bowcher RENEWAL
Smith J SlusarskiCanadaIoni Bowcher UNQUALIFIED
Ashley Q MaletAustraliaOnyama Limba QUALIFIED
Aika N KuskoSpainAnna Fali NEW
Francesco U GillianBrazilElwin Sharvill NEW
Stacey Z BriddickSpainIoni Bowcher RENEWAL
Sinclair W OstroskySpainOnyama Limba NEGOTIATION
Ivar S FlosiAustraliaXuxue Feng UNQUALIFIED
Juan H ShinkoBrazilIvan Magalhaes NEW
James K OldroydCanadaAsiya Javayant NEGOTIATION
Arvin P DilliardRussiaElwin Sharvill QUALIFIED
Maria H VenereArgentinaElwin Sharvill NEGOTIATION
Izzy B FlosiFranceStephen Shaw PROPOSAL
Smith T RimSpainAmy Elsner RENEWAL
Johnson J BologniaArgentinaAnna Fali QUALIFIED
Adams U WieserCanadaIvan Magalhaes PROPOSAL
Francesco M MorascaAustraliaStephen Shaw RENEWAL
Jeanfrancois J GauchoCanadaXuxue Feng UNQUALIFIED
Leon P KolmetzAustraliaAnna Fali UNQUALIFIED
Costa G DarakjyAustraliaElwin Sharvill NEGOTIATION
Murillo P DoeGermanyAsiya Javayant RENEWAL
Wickens S FlosiJapanElwin Sharvill UNQUALIFIED
Nicolas K OstroskyGermanyOnyama Limba PROPOSAL
James D GillianRussiaAsiya Javayant RENEWAL
Misaki J RimArgentinaElwin Sharvill RENEWAL
Jefferson O BriddickFranceBernardo Dominic UNQUALIFIED
Emily M SchemmerRussiaBernardo Dominic RENEWAL
Silvio L PoquetteItalyOnyama Limba PROPOSAL
Julie I DarakjyIndiaXuxue Feng RENEWAL
Mujtaba K GlickIndiaXuxue Feng PROPOSAL
Rodrigues V MorascaAustraliaOnyama Limba PROPOSAL
Isabel M OldroydIndiaOnyama Limba RENEWAL
Juan X IturbideGermanyAsiya Javayant NEGOTIATION
Stacey C CaldareraFranceIoni Bowcher NEGOTIATION
David Y WaycottJapanAsiya Javayant UNQUALIFIED
Morrow W IturbideJapanOnyama Limba PROPOSAL
Johnson V OldroydRussiaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Cody Y IturbideBrazilIoni Bowcher QUALIFIED
Francesco L StensethJapanIoni Bowcher NEGOTIATION
Maisha J GillianUnited KingdomAnna Fali NEGOTIATION
Darci J GarufiUnited KingdomOnyama Limba QUALIFIED
Jones C BowleyFranceXuxue Feng PROPOSAL
Silvio F WieserSpainAnna Fali NEGOTIATION
Aditya S DarakjySpainAmy Elsner QUALIFIED
Octavia C WhobreyArgentinaBernardo Dominic UNQUALIFIED
Smith S VocelkaSpainOnyama Limba NEGOTIATION
Munro I PaprockiAustraliaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika V NestleRussia2024-05-11Commercial Press UNQUALIFIED21Bernardo Dominic
1001Misaki P CampainIndia2024-05-17Dorl, James J Esq RENEWAL1Stephen Shaw
1002Silvio Z FigeroaArgentina2024-05-10Printing Dimensions UNQUALIFIED64Bernardo Dominic
1003Julie G AlbaresItaly2024-05-23Rousseaux, Michael Esq PROPOSAL98Asiya Javayant
1004Tony J RulapaughUnited Kingdom2024-05-02Rousseaux, Michael Esq NEGOTIATION25Asiya Javayant
1005Ashley D AlbaresBrazil2024-05-05Morlong Associates NEW53Onyama Limba
1006Izzy Y KolmetzAustralia2024-05-26Printing Dimensions NEW17Stephen Shaw
1007Leja O InouyeFrance2024-05-09Morlong Associates QUALIFIED15Onyama Limba
1008Silvio O StensethJapan2024-05-13Feltz Printing Service UNQUALIFIED80Asiya Javayant
1009James N SchemmerGermany2024-05-01Morlong Associates UNQUALIFIED73Elwin Sharvill
1010Aditya Z FerenczFrance2024-04-29Chapman, Ross E Esq UNQUALIFIED7Onyama Limba
1011Mayumi B OldroydAustralia2024-05-07Chapman, Ross E Esq UNQUALIFIED34Ioni Bowcher
1012Juan I MaletRussia2024-05-06Buckley Miller Wright UNQUALIFIED35Amy Elsner
1013Salvatore N MarrierJapan2024-05-24Chapman, Ross E Esq NEGOTIATION15Ioni Bowcher
1014Emily W StockhamRussia2024-05-20Feltz Printing Service NEGOTIATION93Xuxue Feng
1015Murillo Y SlusarskiArgentina2024-04-28Buckley Miller Wright UNQUALIFIED50Onyama Limba
1016Aika Y FerenczSpain2024-05-17King, Christopher A Esq PROPOSAL85Asiya Javayant
1017Smith F FigeroaItaly2024-05-16Printing Dimensions NEW6Asiya Javayant
1018Morrow G WaycottBrazil2024-05-14Rousseaux, Michael Esq QUALIFIED14Asiya Javayant
1019Francesco N FollerAustralia2024-04-29Buckley Miller Wright QUALIFIED35Ivan Magalhaes
1020Antonio Q OstroskyRussia2024-05-25Rousseaux, Michael Esq NEGOTIATION60Stephen Shaw
1021Stacey D WieserGermany2024-04-27Dorl, James J Esq NEGOTIATION98Ivan Magalhaes
1022Faith K ShinkoFrance2024-05-26Feltz Printing Service RENEWAL32Bernardo Dominic
1023Kadeem K FigeroaJapan2024-05-23Commercial Press QUALIFIED42Elwin Sharvill
1024Salvatore P VenereCanada2024-05-08Dorl, James J Esq NEW68Ivan Magalhaes
1025Deepesh H CaldareraJapan2024-05-05Commercial Press NEW1Amy Elsner
1026Emily G SaylorsRussia2024-04-29Dorl, James J Esq PROPOSAL39Ioni Bowcher
1027Faith I DoeIndia2024-05-15Rangoni Of Florence NEW20Bernardo Dominic
1028Ivar T WieserBrazil2024-05-12King, Christopher A Esq UNQUALIFIED2Onyama Limba
1029Nicolas J RulapaughFrance2024-05-24Chanay, Jeffrey A Esq RENEWAL76Ivan Magalhaes
1030Octavia D FerenczGermany2024-04-28Truhlar And Truhlar Attys NEGOTIATION37Ivan Magalhaes
1031Maisha Y ChuiCanada2024-05-16Benton, John B Jr PROPOSAL75Xuxue Feng
1032Leon K SlusarskiGermany2024-05-09Printing Dimensions NEW29Bernardo Dominic
1033Ivar S ButtRussia2024-05-11Feltz Printing Service UNQUALIFIED83Onyama Limba
1034Jefferson T WieserRussia2024-05-08Chemel, James L Cpa UNQUALIFIED71Onyama Limba
1035Silvio B CaudyCanada2024-05-18Chanay, Jeffrey A Esq UNQUALIFIED42Elwin Sharvill
1036James D AlbaresRussia2024-05-18King, Christopher A Esq NEGOTIATION91Stephen Shaw
1037James G PerinGermany2024-05-06Rangoni Of Florence RENEWAL86Stephen Shaw
1038Sinclair U FerenczFrance2024-05-21Rangoni Of Florence NEGOTIATION2Anna Fali
1039Johnson M TollnerArgentina2024-05-14Chemel, James L Cpa QUALIFIED70Elwin Sharvill
1040Stacey X CaldareraFrance2024-05-02King, Christopher A Esq QUALIFIED85Amy Elsner
1041Chavez V PoquetteGermany2024-05-12Feltz Printing Service NEGOTIATION1Stephen Shaw
1042Munro H FlosiBrazil2024-05-21Rangoni Of Florence PROPOSAL17Elwin Sharvill
1043Johnson D GarufiUnited Kingdom2024-05-24Printing Dimensions UNQUALIFIED87Amy Elsner
1044Antonio X OstroskyRussia2024-05-13Feltz Printing Service NEGOTIATION83Ioni Bowcher
1045Leja H AlbaresAustralia2024-05-08King, Christopher A Esq UNQUALIFIED16Elwin Sharvill
1046Isabel Z GarufiJapan2024-04-29Commercial Press PROPOSAL38Bernardo Dominic
1047Salvatore Y AlbaresRussia2024-05-02Benton, John B Jr NEGOTIATION29Asiya Javayant
1048Salvatore S OstroskySpain2024-05-19Truhlar And Truhlar Attys NEW11Elwin Sharvill
1049Greenwood L SchemmerFrance2024-05-25Feltz Printing Service RENEWAL32Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Isabel M PoquetteBrazilXuxue Feng PROPOSAL
Ricardo T DilliardUnited KingdomStephen Shaw UNQUALIFIED
Jones Y FigeroaSpainIoni Bowcher NEW
Deepesh R CaldareraFranceBernardo Dominic PROPOSAL
Munro R ChuiCanadaOnyama Limba UNQUALIFIED
James P DilliardArgentinaOnyama Limba NEW
Smith P RulapaughAustraliaIvan Magalhaes UNQUALIFIED
David M PerinCanadaStephen Shaw NEGOTIATION
Kaitlin E FlosiGermanyElwin Sharvill PROPOSAL
Chavez R StensethRussiaElwin Sharvill PROPOSAL
Greenwood A BowleyBrazilAnna Fali NEGOTIATION
Chavez D SaylorsUnited KingdomAnna Fali RENEWAL
David J WaycottUnited KingdomBernardo Dominic PROPOSAL
Stacey N FollerGermanyOnyama Limba RENEWAL
Jeanfrancois Z SergiFranceOnyama Limba UNQUALIFIED
Emily H SergiBrazilStephen Shaw RENEWAL
Munro R VenereIndiaStephen Shaw NEGOTIATION
David N RutaUnited KingdomIoni Bowcher PROPOSAL
Wickens C DarakjyFranceStephen Shaw NEW
Munro D WieserArgentinaAmy Elsner PROPOSAL
Antonio E PerinGermanyIvan Magalhaes RENEWAL
Isabel K PerinBrazilStephen Shaw PROPOSAL
Mujtaba C BowleyCanadaBernardo Dominic UNQUALIFIED
Maisha R RutaAustraliaAnna Fali QUALIFIED
Alejandro C ShinkoAustraliaBernardo Dominic NEW
Adams V KuskoCanadaXuxue Feng QUALIFIED
Rodrigues W DoeFranceElwin Sharvill RENEWAL
Alejandro S VocelkaFranceIvan Magalhaes RENEWAL
Antonio U StockhamBrazilIoni Bowcher PROPOSAL
Juan Y GauchoGermanyAnna Fali PROPOSAL
Alejandro Y WhobreyCanadaIoni Bowcher QUALIFIED
Deepesh Q SchemmerFranceXuxue Feng NEGOTIATION
Murillo N MaletUnited KingdomXuxue Feng QUALIFIED
Claire H DarakjySpainIoni Bowcher RENEWAL
Greenwood H InouyeArgentinaBernardo Dominic QUALIFIED
Claire L CampainAustraliaBernardo Dominic NEW
Costa F FerenczAustraliaIoni Bowcher PROPOSAL
Salvatore D DoeIndiaIoni Bowcher NEW
Maria N MacleadJapanStephen Shaw RENEWAL
Francesco H DarakjyFranceStephen Shaw RENEWAL
Jeanfrancois Z MarrierUnited KingdomAmy Elsner UNQUALIFIED
Tony R StensethCanadaOnyama Limba NEGOTIATION
Kaitlin K DarakjyUnited KingdomBernardo Dominic NEGOTIATION
David R MorascaJapanStephen Shaw NEGOTIATION
Wickens N VocelkaItalyIoni Bowcher PROPOSAL
Francesco H RoysterCanadaAsiya Javayant UNQUALIFIED
Stacey L NestleRussiaElwin Sharvill PROPOSAL
Mujtaba N GillianBrazilElwin Sharvill RENEWAL
Leja N IturbideUnited KingdomAsiya Javayant RENEWAL
Aditya F AlbaresBrazilIoni Bowcher NEGOTIATION
Frozen Columns
Name
Ricardo H Poquette
Maria D Schemmer
Smith F Foller
Stacey W Garufi
Salvatore H Dilliard
Darci P Saylors
Ashley Q Bolognia
Aditya A Paprocki
Misaki K Rim
Izzy Q Bowley
Leon I Paprocki
Antonio K Kolmetz
Ivar U Vocelka
Mayumi N Amigon
Murillo R Briddick
James T Doe
Sinclair R Vocelka
Antonio S Gaucho
Adams N Flosi
Ivar J Malet
Morrow T Dilliard
Alejandro M Doe
Clifford R Morasca
Silvio E Vocelka
Kaitlin Z Chui
Maria J Darakjy
Morrow N Bolognia
Kadeem D Saylors
Chavez L Saylors
Izzy A Marrier
Jones G Flosi
Aruna T Ruta
Claire P Dilliard
Greenwood G Ruta
Julie B Gillian
Jennifer O Glick
James Q Iturbide
Octavia H Caldarera
Leja P Ruta
Ivar V Gaucho
Juan W Inouye
Johnson X Doe
Stacey M Amigon
Wickens G Royster
Mujtaba H Sergi
Adams V Kusko
David P Caldarera
Aruna E Maclead
Faith Y Glick
Johnson T Garufi
IdCountryDate
1000Russia2024-05-16
1001Japan2024-04-29
1002Argentina2024-05-23
1003Canada2024-05-10
1004Argentina2024-05-19
1005Canada2024-05-16
1006India2024-05-13
1007Argentina2024-05-02
1008Japan2024-05-17
1009Japan2024-04-28
1010Germany2024-05-08
1011Italy2024-05-21
1012Italy2024-05-14
1013Canada2024-05-17
1014Spain2024-04-29
1015Canada2024-05-04
1016France2024-05-17
1017Canada2024-05-06
1018India2024-05-12
1019Spain2024-05-04
1020Germany2024-05-24
1021Australia2024-05-05
1022Germany2024-05-03
1023Italy2024-05-20
1024Germany2024-05-07
1025Italy2024-05-11
1026Canada2024-05-22
1027Russia2024-05-25
1028France2024-05-26
1029United Kingdom2024-04-28
1030United Kingdom2024-05-25
1031Spain2024-05-09
1032Canada2024-05-09
1033Brazil2024-05-14
1034Italy2024-05-04
1035United Kingdom2024-05-19
1036India2024-05-12
1037Brazil2024-05-11
1038Australia2024-05-09
1039Australia2024-05-06
1040Argentina2024-05-15
1041Russia2024-05-20
1042United Kingdom2024-04-27
1043United Kingdom2024-05-20
1044Argentina2024-05-13
1045Italy2024-05-10
1046Germany2024-05-20
1047Germany2024-05-25
1048Russia2024-05-26
1049Argentina2024-05-07

On-Demand Data

NameIdCountryDate
Aditya T Ferencz1000France2024-05-21
Francesco O Malet1001Spain2024-05-22
Johnson U Kusko1002Russia2024-05-04
Jeanfrancois F Vocelka1003Spain2024-05-08
Chavez B Kolmetz1004Japan2024-04-30
Julie T Whobrey1005Australia2024-05-24
Tony P Ruta1006Russia2024-05-11
Deepesh U Tollner1007Italy2024-05-06
Darci U Chui1008United Kingdom2024-05-05
Smith P Amigon1009Australia2024-05-10
Francesco N Figeroa1010Brazil2024-05-02
Ivar A Chui1011United Kingdom2024-05-25
Emily E Caudy1012Argentina2024-05-07
Izzy O Bolognia1013Russia2024-05-14
Misaki Y Figeroa1014Canada2024-04-29
Izzy X Morasca1015France2024-05-13
Jones V Albares1016Italy2024-05-06
James G Glick1017Russia2024-05-14
Octavia J Morasca1018India2024-05-03
Alejandro A Bolognia1019Germany2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood D DarakjyIndiaIvan Magalhaes QUALIFIED
Jefferson C MaletUnited KingdomIoni Bowcher RENEWAL
Octavia D InouyeGermanyAnna Fali QUALIFIED
Smith B CaldareraArgentinaAnna Fali RENEWAL
Leja Q MorascaArgentinaAnna Fali UNQUALIFIED
Kaitlin C GlickSpainOnyama Limba QUALIFIED
James T AlbaresSpainAsiya Javayant QUALIFIED
Ivar I FlosiItalyOnyama Limba NEGOTIATION
Antonio U BriddickSpainXuxue Feng RENEWAL
Clifford Y WhobreySpainAnna Fali RENEWAL
Cody M DilliardGermanyStephen Shaw QUALIFIED
Greenwood S InouyeJapanIvan Magalhaes PROPOSAL
Nicolas B NickaCanadaBernardo Dominic NEGOTIATION
Tony G SchemmerUnited KingdomBernardo Dominic QUALIFIED
Leon N WaycottRussiaIvan Magalhaes NEGOTIATION
Isabel Z ButtGermanyBernardo Dominic RENEWAL
Greenwood E InouyeItalyElwin Sharvill UNQUALIFIED
Antonio S CaldareraCanadaBernardo Dominic NEGOTIATION
Chavez M SlusarskiBrazilStephen Shaw NEW
Arvin P KuskoSpainXuxue Feng RENEWAL
Ricardo U NestleFranceBernardo Dominic NEW
Izzy A StockhamRussiaIvan Magalhaes QUALIFIED
Rodrigues K KuskoIndiaStephen Shaw QUALIFIED
Silvio U SlusarskiIndiaAmy Elsner RENEWAL
Emily W ShinkoJapanElwin Sharvill UNQUALIFIED
Izzy G SchemmerAustraliaOnyama Limba NEW
Jefferson D RulapaughUnited KingdomStephen Shaw NEGOTIATION
Ashley H CampainSpainAsiya Javayant UNQUALIFIED
Munro N ButtGermanyIoni Bowcher UNQUALIFIED
Kadeem N RulapaughIndiaBernardo Dominic PROPOSAL
Juan R StockhamJapanXuxue Feng PROPOSAL
Octavia H StockhamCanadaBernardo Dominic QUALIFIED
Ivar U VocelkaBrazilBernardo Dominic RENEWAL
Julie A MarrierUnited KingdomXuxue Feng PROPOSAL
Stacey N WieserArgentinaElwin Sharvill UNQUALIFIED
Jefferson W KuskoUnited KingdomElwin Sharvill RENEWAL
Jefferson A PoquetteIndiaXuxue Feng NEGOTIATION
Salvatore B VenereArgentinaOnyama Limba NEW
Claire W VenereAustraliaIoni Bowcher RENEWAL
Ivar C FollerSpainAnna Fali NEGOTIATION

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