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
Cody K GarufiCanadaElwin Sharvill RENEWAL
Tony P NestleAustraliaOnyama Limba UNQUALIFIED
Leon X NestleRussiaOnyama Limba RENEWAL
Silvio Q SchemmerFranceAsiya Javayant NEGOTIATION
Aditya B AlbaresJapanIvan Magalhaes UNQUALIFIED
Maria R MaletGermanyAnna Fali QUALIFIED
Costa X FollerBrazilAsiya Javayant QUALIFIED
Cody R GlickFranceStephen Shaw NEGOTIATION
Ashley F BowleyCanadaAsiya Javayant NEW
Sinclair K RoysterGermanyAnna Fali UNQUALIFIED
Octavia V GarufiUnited KingdomAnna Fali QUALIFIED
Mayumi G SlusarskiCanadaOnyama Limba RENEWAL
Aruna N SchemmerRussiaAmy Elsner QUALIFIED
Faith J KolmetzIndiaXuxue Feng RENEWAL
Sinclair E CampainUnited KingdomOnyama Limba RENEWAL
Ashley H PoquetteSpainAmy Elsner PROPOSAL
Mujtaba C VocelkaFranceIoni Bowcher PROPOSAL
Rodrigues Z SaylorsRussiaAnna Fali UNQUALIFIED
Nicolas I BowleyItalyElwin Sharvill NEW
Jeanfrancois G PaprockiGermanyXuxue Feng QUALIFIED
Stacey M CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Jennifer R TollnerItalyOnyama Limba NEGOTIATION
Octavia O SaylorsGermanyBernardo Dominic QUALIFIED
Tony V VocelkaJapanXuxue Feng UNQUALIFIED
Clifford S PoquetteAustraliaElwin Sharvill NEW
Jeanfrancois W FlosiFranceAmy Elsner NEGOTIATION
Stacey L PoquetteUnited KingdomAsiya Javayant RENEWAL
Jones J RimArgentinaXuxue Feng PROPOSAL
Isabel U DarakjyUnited KingdomIvan Magalhaes PROPOSAL
Mayumi T MaletSpainElwin Sharvill RENEWAL
Misaki O KolmetzJapanIoni Bowcher NEW
Rodrigues L DilliardAustraliaOnyama Limba NEW
Izzy Z KuskoItalyAmy Elsner QUALIFIED
Clifford R FigeroaGermanyStephen Shaw NEGOTIATION
Octavia C GillianIndiaAsiya Javayant RENEWAL
Francesco W VocelkaIndiaBernardo Dominic NEGOTIATION
Izzy N GauchoItalyStephen Shaw PROPOSAL
Tony G KolmetzAustraliaXuxue Feng QUALIFIED
Clifford H GlickIndiaAsiya Javayant RENEWAL
Isabel T KuskoAustraliaStephen Shaw QUALIFIED
Morrow V KuskoBrazilAsiya Javayant PROPOSAL
Aditya W ChuiCanadaAmy Elsner QUALIFIED
Aruna N WhobreySpainElwin Sharvill NEW
Munro M RimAustraliaXuxue Feng QUALIFIED
Maisha A AmigonArgentinaIoni Bowcher NEGOTIATION
Munro B BriddickItalyAnna Fali PROPOSAL
Ivar O GauchoGermanyIvan Magalhaes QUALIFIED
Jeanfrancois A NestleBrazilAmy Elsner RENEWAL
Adams N KuskoJapanStephen Shaw NEW
Misaki E StockhamJapanAsiya Javayant RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika L RutaCanadaAsiya Javayant RENEWAL
Faith I SlusarskiIndiaStephen Shaw PROPOSAL
Greenwood O ShinkoRussiaAsiya Javayant QUALIFIED
Leon K NickaJapanAmy Elsner UNQUALIFIED
Stacey G TollnerAustraliaStephen Shaw QUALIFIED
Cody I RutaRussiaAmy Elsner NEGOTIATION
Kadeem X CaudyItalyIoni Bowcher UNQUALIFIED
Juan I PaprockiBrazilAnna Fali NEW
Isabel E GlickUnited KingdomOnyama Limba QUALIFIED
Salvatore X BowleyUnited KingdomIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy J DarakjyArgentina2024-05-25Chanay, Jeffrey A Esq RENEWAL62Ioni Bowcher
1001Morrow H SchemmerSpain2024-06-09Printing Dimensions UNQUALIFIED98Stephen Shaw
1002Sinclair X GlickJapan2024-06-09Commercial Press RENEWAL79Onyama Limba
1003Kaitlin Z AmigonBrazil2024-05-17Truhlar And Truhlar Attys NEW22Bernardo Dominic
1004Faith F WhobreyCanada2024-05-27Truhlar And Truhlar Attys NEW98Anna Fali
1005Jeanfrancois Z RulapaughIndia2024-06-09Benton, John B Jr RENEWAL16Ioni Bowcher
1006Arvin E GarufiJapan2024-05-28Benton, John B Jr RENEWAL24Stephen Shaw
1007Misaki X NickaJapan2024-06-04Chapman, Ross E Esq RENEWAL11Bernardo Dominic
1008Ashley W RimFrance2024-05-28Rangoni Of Florence UNQUALIFIED23Asiya Javayant
1009Stacey Y StensethSpain2024-06-08Dorl, James J Esq UNQUALIFIED8Asiya Javayant
1010Rodrigues O BologniaItaly2024-05-21Chapman, Ross E Esq RENEWAL58Ioni Bowcher
1011Arvin C InouyeSpain2024-05-24Printing Dimensions PROPOSAL34Onyama Limba
1012Ashley P RimRussia2024-05-24King, Christopher A Esq NEGOTIATION3Bernardo Dominic
1013Deepesh N SchemmerFrance2024-06-13Benton, John B Jr UNQUALIFIED35Bernardo Dominic
1014Aruna Q WhobreySpain2024-06-13Chapman, Ross E Esq NEGOTIATION84Onyama Limba
1015Isabel M VocelkaCanada2024-05-27Printing Dimensions UNQUALIFIED80Amy Elsner
1016Arvin Z AmigonArgentina2024-06-14Chanay, Jeffrey A Esq QUALIFIED84Elwin Sharvill
1017Faith S BriddickFrance2024-05-21Rangoni Of Florence UNQUALIFIED74Amy Elsner
1018Arvin V GauchoIndia2024-06-15Chemel, James L Cpa UNQUALIFIED41Amy Elsner
1019Faith S AmigonItaly2024-05-19Morlong Associates PROPOSAL75Stephen Shaw
1020Tony Q SlusarskiBrazil2024-05-21Benton, John B Jr QUALIFIED71Ivan Magalhaes
1021Ivar W CampainSpain2024-05-26Feltz Printing Service UNQUALIFIED64Asiya Javayant
1022David L OldroydUnited Kingdom2024-05-19Truhlar And Truhlar Attys UNQUALIFIED5Asiya Javayant
1023Greenwood Z DoeJapan2024-05-22Benton, John B Jr RENEWAL92Amy Elsner
1024Adams Q ButtGermany2024-06-06Chapman, Ross E Esq QUALIFIED62Anna Fali
1025Aditya V SaylorsAustralia2024-06-08Commercial Press NEGOTIATION92Ioni Bowcher
1026Juan T SlusarskiCanada2024-06-03Feltz Printing Service NEGOTIATION61Amy Elsner
1027Kaitlin I GauchoFrance2024-06-14Buckley Miller Wright NEW7Amy Elsner
1028Alejandro Q GarufiCanada2024-06-15Dorl, James J Esq NEGOTIATION12Ivan Magalhaes
1029Munro H GarufiCanada2024-06-08Rousseaux, Michael Esq UNQUALIFIED86Stephen Shaw
1030Leja R KolmetzGermany2024-05-25Chapman, Ross E Esq NEGOTIATION61Onyama Limba
1031Ashley C ShinkoIndia2024-05-30Chapman, Ross E Esq UNQUALIFIED79Ioni Bowcher
1032Claire Z VocelkaArgentina2024-06-11King, Christopher A Esq NEW57Ioni Bowcher
1033Ashley N MaletCanada2024-06-02Buckley Miller Wright PROPOSAL59Ivan Magalhaes
1034Adams D NickaAustralia2024-05-25Morlong Associates NEGOTIATION94Stephen Shaw
1035Stacey M WieserJapan2024-05-22Feiner Bros RENEWAL21Anna Fali
1036Kaitlin A MaletBrazil2024-05-19Benton, John B Jr UNQUALIFIED10Anna Fali
1037Aika K AlbaresGermany2024-05-29Rangoni Of Florence QUALIFIED52Ioni Bowcher
1038Deepesh Z PoquetteAustralia2024-05-25Rousseaux, Michael Esq PROPOSAL88Xuxue Feng
1039Clifford I WieserRussia2024-06-13Chapman, Ross E Esq QUALIFIED75Xuxue Feng
1040Nicolas C PerinGermany2024-05-22Buckley Miller Wright NEGOTIATION11Bernardo Dominic
1041Munro D BologniaJapan2024-05-17King, Christopher A Esq UNQUALIFIED94Ioni Bowcher
1042Francesco S RoysterAustralia2024-06-14Feltz Printing Service PROPOSAL53Stephen Shaw
1043Kadeem I BowleyItaly2024-05-21Truhlar And Truhlar Attys RENEWAL34Asiya Javayant
1044Tony I WieserItaly2024-05-17Buckley Miller Wright NEW12Xuxue Feng
1045Wickens C OstroskyRussia2024-06-14Buckley Miller Wright UNQUALIFIED41Ivan Magalhaes
1046Salvatore S AlbaresArgentina2024-05-29Commercial Press NEGOTIATION92Onyama Limba
1047Aditya J WieserBrazil2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED69Ioni Bowcher
1048Mujtaba D FigeroaJapan2024-06-07King, Christopher A Esq NEGOTIATION52Amy Elsner
1049Aruna Y IturbideBrazil2024-05-26Dorl, James J Esq QUALIFIED72Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Misaki M NickaUnited KingdomElwin Sharvill NEGOTIATION
Leon D DilliardJapanIvan Magalhaes RENEWAL
Salvatore C NestleCanadaBernardo Dominic PROPOSAL
James B GauchoFranceAmy Elsner RENEWAL
Nicolas U RutaRussiaBernardo Dominic RENEWAL
Emily M RutaRussiaAmy Elsner NEW
Jennifer M PoquetteSpainAmy Elsner RENEWAL
Cody X MorascaIndiaStephen Shaw NEGOTIATION
Mujtaba G SchemmerUnited KingdomIoni Bowcher UNQUALIFIED
Morrow Y DilliardUnited KingdomOnyama Limba RENEWAL
Rodrigues Y StensethSpainAnna Fali RENEWAL
Aruna T PoquetteCanadaIvan Magalhaes PROPOSAL
Rodrigues B GarufiFranceElwin Sharvill NEGOTIATION
Faith G OldroydFranceAnna Fali NEW
Johnson H RulapaughUnited KingdomIoni Bowcher QUALIFIED
James D FollerItalyIvan Magalhaes QUALIFIED
Sinclair A WhobreyItalyElwin Sharvill PROPOSAL
Tony Z DilliardAustraliaIvan Magalhaes PROPOSAL
Murillo A WaycottIndiaAsiya Javayant NEGOTIATION
Sinclair A FlosiGermanyBernardo Dominic UNQUALIFIED
Mayumi Q FollerBrazilOnyama Limba UNQUALIFIED
Maria P RoysterGermanyElwin Sharvill UNQUALIFIED
Salvatore L GillianFranceBernardo Dominic QUALIFIED
Jones K GlickSpainIvan Magalhaes NEGOTIATION
Adams F CampainUnited KingdomIoni Bowcher NEW
Cody H PerinUnited KingdomOnyama Limba NEW
Silvio R DarakjyUnited KingdomAmy Elsner PROPOSAL
Julie N PaprockiGermanyIoni Bowcher RENEWAL
Sinclair D FlosiIndiaStephen Shaw UNQUALIFIED
Leja J IturbideRussiaIvan Magalhaes NEGOTIATION
David J RutaRussiaAnna Fali PROPOSAL
Munro B NestleItalyStephen Shaw NEW
Johnson T FerenczFranceOnyama Limba RENEWAL
Antonio Z VenereUnited KingdomIoni Bowcher NEGOTIATION
Morrow N PerinGermanyXuxue Feng QUALIFIED
Jennifer U RulapaughCanadaStephen Shaw NEGOTIATION
Octavia L GarufiIndiaElwin Sharvill UNQUALIFIED
Misaki A MacleadCanadaOnyama Limba UNQUALIFIED
Sinclair T VenereBrazilElwin Sharvill UNQUALIFIED
Izzy V SaylorsSpainAnna Fali PROPOSAL
Julie X BowleyRussiaIvan Magalhaes NEGOTIATION
Ivar L PerinGermanyAsiya Javayant NEGOTIATION
Salvatore Q MaletCanadaIoni Bowcher RENEWAL
Claire C AlbaresJapanAsiya Javayant QUALIFIED
Morrow G BriddickUnited KingdomBernardo Dominic UNQUALIFIED
Tony P AlbaresItalyElwin Sharvill QUALIFIED
Ivar D AlbaresSpainIoni Bowcher UNQUALIFIED
Maria I BowleyArgentinaAmy Elsner UNQUALIFIED
Johnson K AmigonRussiaAnna Fali RENEWAL
Aditya H GauchoJapanIvan Magalhaes PROPOSAL
Frozen Columns
Name
Nicolas M Glick
Aika X Nestle
David V Poquette
Aditya G Paprocki
Stacey K Campain
Rodrigues P Malet
Juan X Shinko
Aditya J Gillian
Salvatore H Malet
Julie R Figeroa
Rodrigues I Chui
Tony H Malet
Rodrigues T Bowley
Kaitlin Z Malet
Izzy T Sergi
Leon H Paprocki
Johnson Z Campain
Leon C Wieser
Mujtaba F Foller
Stacey E Oldroyd
Alejandro E Marrier
Mayumi S Perin
Leja X Ostrosky
Octavia I Caldarera
Izzy B Kusko
Maria D Sergi
Murillo L Bowley
Maria M Saylors
Julie M Venere
Rodrigues Q Amigon
Claire M Stenseth
Aruna O Albares
Johnson C Paprocki
Claire E Butt
Antonio Z Maclead
Julie F Inouye
Johnson T Rim
Ashley T Marrier
David Z Tollner
Jennifer W Ruta
Alejandro P Saylors
Clifford V Doe
Morrow F Caldarera
Ricardo F Whobrey
Jennifer E Ostrosky
Aruna B Poquette
Kadeem Z Foller
Emily E Perin
Morrow T Campain
Greenwood V Bowley
IdCountryDate
1000Canada2024-05-27
1001Australia2024-05-19
1002Canada2024-06-09
1003Japan2024-05-30
1004France2024-06-03
1005Germany2024-05-29
1006Spain2024-06-02
1007Spain2024-05-20
1008Brazil2024-06-10
1009Brazil2024-05-31
1010Italy2024-05-31
1011France2024-05-23
1012Russia2024-06-11
1013India2024-05-31
1014Russia2024-05-20
1015Italy2024-05-30
1016Germany2024-05-18
1017Canada2024-06-07
1018France2024-06-07
1019Germany2024-05-23
1020United Kingdom2024-05-30
1021Italy2024-05-25
1022Russia2024-06-04
1023Spain2024-06-12
1024Argentina2024-06-04
1025Spain2024-05-21
1026United Kingdom2024-06-07
1027United Kingdom2024-06-03
1028Russia2024-06-03
1029France2024-05-27
1030India2024-06-02
1031Canada2024-06-14
1032Germany2024-05-19
1033Spain2024-05-20
1034Argentina2024-06-04
1035Germany2024-06-15
1036Italy2024-05-24
1037Russia2024-05-23
1038India2024-06-08
1039Argentina2024-05-22
1040Canada2024-06-01
1041Spain2024-05-22
1042Brazil2024-05-19
1043United Kingdom2024-06-08
1044India2024-06-07
1045Italy2024-06-13
1046India2024-05-21
1047Japan2024-05-27
1048Canada2024-06-15
1049Japan2024-05-17

On-Demand Data

NameIdCountryDate
Emily V Maclead1000United Kingdom2024-05-31
Aditya Q Amigon1001Russia2024-06-11
Salvatore A Nestle1002Spain2024-05-31
Ricardo D Doe1003Italy2024-06-09
Adams B Stockham1004Canada2024-05-21
Antonio Q Gillian1005India2024-05-17
Chavez J Rulapaugh1006Italy2024-06-14
Munro X Gillian1007Russia2024-05-26
Smith V Inouye1008Brazil2024-06-09
Darci S Briddick1009France2024-05-30
Mujtaba U Slusarski1010Germany2024-05-17
Ashley Z Figeroa1011Argentina2024-06-04
Nicolas V Inouye1012Germany2024-05-31
Costa B Waycott1013France2024-05-26
Maisha B Foller1014France2024-06-03
Leja L Garufi1015Brazil2024-06-09
Maisha S Gillian1016Japan2024-06-02
Morrow J Ostrosky1017Brazil2024-06-13
Izzy I Albares1018Italy2024-05-20
Chavez S Stockham1019Brazil2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas O PerinItalyStephen Shaw NEW
Aruna N CampainAustraliaAmy Elsner NEGOTIATION
Tony O BowleyJapanBernardo Dominic PROPOSAL
Darci Q VenereGermanyStephen Shaw NEW
Aditya W WieserSpainBernardo Dominic UNQUALIFIED
Jefferson R DarakjyJapanAmy Elsner PROPOSAL
Silvio A SergiSpainElwin Sharvill UNQUALIFIED
Morrow E BologniaGermanyIvan Magalhaes RENEWAL
Costa C InouyeBrazilBernardo Dominic NEW
Sinclair X CaldareraItalyAmy Elsner UNQUALIFIED
Deepesh F GarufiBrazilAsiya Javayant QUALIFIED
Mujtaba M RulapaughRussiaXuxue Feng NEW
Francesco S FigeroaUnited KingdomAmy Elsner NEW
Jones P DarakjyFranceXuxue Feng UNQUALIFIED
Claire A MaletAustraliaXuxue Feng QUALIFIED
Kaitlin C DilliardFranceAmy Elsner NEGOTIATION
Tony Y DilliardFranceAnna Fali NEW
Tony M KuskoRussiaIvan Magalhaes RENEWAL
Wickens O ButtAustraliaIoni Bowcher NEW
Leon C InouyeBrazilXuxue Feng QUALIFIED
Johnson M SlusarskiRussiaStephen Shaw NEGOTIATION
Juan R RimUnited KingdomStephen Shaw NEGOTIATION
Aditya T SaylorsGermanyAmy Elsner RENEWAL
Wickens K StockhamRussiaIvan Magalhaes NEGOTIATION
Wickens W RoysterBrazilBernardo Dominic PROPOSAL
Maisha Z StockhamItalyXuxue Feng NEGOTIATION
Kaitlin S MaletArgentinaElwin Sharvill PROPOSAL
Costa V ChuiArgentinaBernardo Dominic UNQUALIFIED
Rodrigues R BowleyUnited KingdomIvan Magalhaes NEW
Misaki Y PaprockiRussiaStephen Shaw RENEWAL
Faith I SaylorsJapanAnna Fali QUALIFIED
Morrow X DilliardCanadaIoni Bowcher PROPOSAL
Antonio R VocelkaFranceElwin Sharvill PROPOSAL
David T BriddickFranceIvan Magalhaes RENEWAL
James V MaletAustraliaXuxue Feng RENEWAL
Maria C KuskoRussiaOnyama Limba QUALIFIED
Aika S PerinCanadaElwin Sharvill RENEWAL
Maisha S BowleyUnited KingdomAsiya Javayant QUALIFIED
Juan N SchemmerUnited KingdomBernardo Dominic RENEWAL
Kaitlin S PoquetteBrazilIvan Magalhaes 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>