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
Isabel M MaletRussiaAnna Fali UNQUALIFIED
Johnson W AmigonJapanXuxue Feng NEGOTIATION
Maria O ChuiIndiaBernardo Dominic PROPOSAL
Tony F DoeItalyAmy Elsner RENEWAL
Emily B CaudyIndiaIoni Bowcher QUALIFIED
Octavia E GarufiItalyIoni Bowcher UNQUALIFIED
Octavia V GillianBrazilIvan Magalhaes NEW
Mayumi C NestleRussiaBernardo Dominic QUALIFIED
Leon E GlickUnited KingdomAsiya Javayant QUALIFIED
Ricardo Z DarakjyUnited KingdomIoni Bowcher PROPOSAL
Alejandro C RoysterArgentinaAmy Elsner RENEWAL
Jones N GarufiSpainAsiya Javayant NEGOTIATION
Aika F PaprockiSpainElwin Sharvill QUALIFIED
Nicolas C VenereGermanyAnna Fali PROPOSAL
Maisha N TollnerIndiaStephen Shaw NEW
Kaitlin N MacleadRussiaIvan Magalhaes RENEWAL
Mujtaba N GarufiAustraliaIoni Bowcher NEW
Mujtaba S MorascaCanadaXuxue Feng RENEWAL
Munro H FollerIndiaElwin Sharvill QUALIFIED
Jefferson J AlbaresAustraliaAnna Fali QUALIFIED
Tony U CampainAustraliaOnyama Limba UNQUALIFIED
Mayumi D AlbaresRussiaAmy Elsner NEW
Francesco V SlusarskiIndiaXuxue Feng NEW
Misaki C ChuiIndiaBernardo Dominic PROPOSAL
James D KuskoAustraliaOnyama Limba QUALIFIED
Maria P GlickAustraliaXuxue Feng NEW
Jones P IturbideIndiaOnyama Limba PROPOSAL
Maisha W SergiArgentinaIvan Magalhaes NEGOTIATION
Aruna W SaylorsItalyOnyama Limba RENEWAL
Julie Z IturbideArgentinaElwin Sharvill UNQUALIFIED
Faith H SaylorsArgentinaIoni Bowcher NEW
Darci I MarrierFranceIvan Magalhaes RENEWAL
Aditya N CaudyCanadaXuxue Feng NEGOTIATION
Sinclair D RulapaughFranceAsiya Javayant PROPOSAL
Isabel J MaletGermanyAnna Fali UNQUALIFIED
Antonio O SchemmerGermanyElwin Sharvill PROPOSAL
Julie R DilliardUnited KingdomAmy Elsner RENEWAL
Jeanfrancois C PoquetteRussiaBernardo Dominic RENEWAL
Mujtaba W SchemmerBrazilXuxue Feng UNQUALIFIED
Jeanfrancois Y VenereRussiaAmy Elsner UNQUALIFIED
Johnson F OldroydArgentinaElwin Sharvill RENEWAL
Arvin Q SaylorsItalyIoni Bowcher UNQUALIFIED
Wickens H FlosiRussiaAsiya Javayant PROPOSAL
Cody Z WhobreyGermanyAsiya Javayant UNQUALIFIED
James V MarrierBrazilBernardo Dominic QUALIFIED
Sinclair H ButtRussiaIoni Bowcher NEW
Clifford A ButtRussiaElwin Sharvill NEW
James U WhobreyGermanyAnna Fali PROPOSAL
Aika U DoeItalyBernardo Dominic PROPOSAL
Wickens P SaylorsRussiaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jones W MaletFranceAsiya Javayant UNQUALIFIED
Juan K MarrierItalyXuxue Feng NEGOTIATION
Alejandro R AmigonFranceOnyama Limba NEW
Juan Z BowleyItalyOnyama Limba PROPOSAL
Nicolas X IturbideJapanAsiya Javayant NEW
Jeanfrancois V ChuiUnited KingdomXuxue Feng NEGOTIATION
Johnson V CaldareraSpainXuxue Feng QUALIFIED
Aditya S StensethFranceBernardo Dominic NEGOTIATION
Aika C OstroskyArgentinaAsiya Javayant PROPOSAL
Chavez D KuskoUnited KingdomAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro O PerinUnited Kingdom2024-05-29Commercial Press PROPOSAL45Ioni Bowcher
1001Juan R NickaCanada2024-06-22Rousseaux, Michael Esq RENEWAL3Xuxue Feng
1002Stacey L NestleUnited Kingdom2024-06-04Truhlar And Truhlar Attys RENEWAL74Elwin Sharvill
1003Ashley E MacleadBrazil2024-06-10Printing Dimensions NEW13Amy Elsner
1004Leja Z OstroskyItaly2024-06-13Rangoni Of Florence QUALIFIED7Ivan Magalhaes
1005Adams E AmigonUnited Kingdom2024-06-02Chemel, James L Cpa UNQUALIFIED23Amy Elsner
1006Wickens F WhobreyItaly2024-06-13Printing Dimensions UNQUALIFIED33Onyama Limba
1007Emily I NickaJapan2024-05-31Chanay, Jeffrey A Esq NEGOTIATION65Ioni Bowcher
1008Cody S PaprockiSpain2024-05-31Morlong Associates PROPOSAL30Elwin Sharvill
1009Clifford T CaudySpain2024-06-21Chanay, Jeffrey A Esq PROPOSAL1Stephen Shaw
1010Leon K MarrierIndia2024-06-01Commercial Press NEW87Stephen Shaw
1011Tony W BriddickBrazil2024-06-23Morlong Associates QUALIFIED68Ioni Bowcher
1012Costa V GlickItaly2024-06-01Buckley Miller Wright NEGOTIATION11Asiya Javayant
1013Aruna P FerenczIndia2024-05-29Dorl, James J Esq NEGOTIATION27Bernardo Dominic
1014Jennifer E TollnerIndia2024-05-29Feltz Printing Service QUALIFIED16Onyama Limba
1015Emily L CaldareraAustralia2024-06-21Dorl, James J Esq QUALIFIED36Bernardo Dominic
1016Ricardo T CaudyBrazil2024-06-07Rangoni Of Florence RENEWAL15Onyama Limba
1017Mayumi N IturbideArgentina2024-06-04Chanay, Jeffrey A Esq QUALIFIED43Ivan Magalhaes
1018Emily R PaprockiGermany2024-06-03Benton, John B Jr RENEWAL81Ioni Bowcher
1019Salvatore T BriddickFrance2024-06-07Morlong Associates NEW88Anna Fali
1020Costa S SchemmerIndia2024-05-28Rangoni Of Florence UNQUALIFIED15Onyama Limba
1021Leja E AmigonArgentina2024-06-10Chanay, Jeffrey A Esq QUALIFIED59Xuxue Feng
1022Nicolas N GlickGermany2024-06-06Chemel, James L Cpa PROPOSAL16Ivan Magalhaes
1023Sinclair K BowleyUnited Kingdom2024-06-11Morlong Associates NEW24Xuxue Feng
1024Cody R GillianGermany2024-05-28Feltz Printing Service PROPOSAL59Ioni Bowcher
1025Jennifer W RoysterAustralia2024-06-09Dorl, James J Esq NEGOTIATION83Stephen Shaw
1026Maisha G WieserIndia2024-06-21Dorl, James J Esq NEW71Amy Elsner
1027Antonio T NickaUnited Kingdom2024-06-11King, Christopher A Esq UNQUALIFIED1Ivan Magalhaes
1028Adams L CampainArgentina2024-06-08Truhlar And Truhlar Attys QUALIFIED75Asiya Javayant
1029Julie M SlusarskiRussia2024-06-02Dorl, James J Esq UNQUALIFIED86Elwin Sharvill
1030Jefferson N DilliardSpain2024-06-05Chapman, Ross E Esq QUALIFIED27Bernardo Dominic
1031Costa P KolmetzAustralia2024-06-13Printing Dimensions PROPOSAL50Stephen Shaw
1032Rodrigues U GarufiSpain2024-06-13Printing Dimensions NEW55Onyama Limba
1033Misaki X MacleadSpain2024-06-02Dorl, James J Esq NEGOTIATION65Elwin Sharvill
1034Leja P GauchoSpain2024-06-12Printing Dimensions PROPOSAL73Amy Elsner
1035James S OldroydIndia2024-06-11Truhlar And Truhlar Attys PROPOSAL55Anna Fali
1036Juan C NestleUnited Kingdom2024-06-12Chapman, Ross E Esq UNQUALIFIED38Bernardo Dominic
1037Rodrigues J PerinCanada2024-06-05Rangoni Of Florence PROPOSAL94Ioni Bowcher
1038Jennifer Q FlosiRussia2024-06-01Chapman, Ross E Esq QUALIFIED41Ivan Magalhaes
1039Aruna L SchemmerCanada2024-06-23Buckley Miller Wright NEGOTIATION95Amy Elsner
1040Isabel L DarakjyRussia2024-06-01Rangoni Of Florence UNQUALIFIED66Elwin Sharvill
1041Clifford Y KuskoRussia2024-06-12Chemel, James L Cpa PROPOSAL39Ioni Bowcher
1042David Z GillianSpain2024-06-04Chapman, Ross E Esq PROPOSAL81Anna Fali
1043Julie V GlickIndia2024-06-01Feltz Printing Service RENEWAL87Xuxue Feng
1044Leon E VocelkaItaly2024-05-30Feltz Printing Service NEGOTIATION17Ivan Magalhaes
1045Jones P VocelkaRussia2024-06-06Benton, John B Jr RENEWAL4Asiya Javayant
1046Arvin Y NickaArgentina2024-06-22Dorl, James J Esq QUALIFIED20Amy Elsner
1047Wickens I OldroydItaly2024-06-23Benton, John B Jr RENEWAL13Anna Fali
1048Nicolas H PerinArgentina2024-06-17Truhlar And Truhlar Attys PROPOSAL38Ioni Bowcher
1049Mayumi K OstroskyAustralia2024-06-11Chapman, Ross E Esq PROPOSAL25Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois T OldroydItalyElwin Sharvill UNQUALIFIED
Aditya A RulapaughJapanAnna Fali QUALIFIED
Claire R KuskoFranceXuxue Feng NEW
Johnson Y GlickIndiaAsiya Javayant UNQUALIFIED
Kadeem Q ChuiJapanBernardo Dominic RENEWAL
Emily O ShinkoIndiaAsiya Javayant QUALIFIED
Aruna K SaylorsGermanyOnyama Limba QUALIFIED
Juan L ChuiArgentinaAsiya Javayant NEW
Munro Y ShinkoJapanIoni Bowcher PROPOSAL
Mayumi P GlickBrazilAsiya Javayant NEGOTIATION
Sinclair P WaycottRussiaAmy Elsner NEW
Sinclair Y FerenczCanadaStephen Shaw NEGOTIATION
Adams H FigeroaSpainAsiya Javayant UNQUALIFIED
Juan H RoysterJapanIvan Magalhaes QUALIFIED
Wickens B PoquetteArgentinaElwin Sharvill NEW
Smith T KolmetzItalyIoni Bowcher PROPOSAL
Chavez O CaldareraUnited KingdomAmy Elsner RENEWAL
Adams S PoquetteGermanyStephen Shaw NEGOTIATION
Francesco J BriddickSpainElwin Sharvill UNQUALIFIED
Deepesh Y RutaJapanAnna Fali QUALIFIED
Munro Y GauchoAustraliaAmy Elsner NEW
Sinclair Z PerinUnited KingdomIvan Magalhaes NEGOTIATION
Misaki B ShinkoSpainIoni Bowcher NEW
Julie K PerinIndiaIoni Bowcher QUALIFIED
Clifford T RulapaughCanadaOnyama Limba UNQUALIFIED
Francesco S MaletArgentinaBernardo Dominic PROPOSAL
Mujtaba D RulapaughJapanStephen Shaw QUALIFIED
Mujtaba I FigeroaFranceBernardo Dominic RENEWAL
Smith K OstroskyCanadaAsiya Javayant NEGOTIATION
Ricardo J MaletAustraliaAmy Elsner QUALIFIED
Tony X PaprockiRussiaAsiya Javayant QUALIFIED
Octavia A BriddickRussiaOnyama Limba QUALIFIED
Sinclair T CaldareraAustraliaAnna Fali PROPOSAL
Kadeem O MaletArgentinaIoni Bowcher PROPOSAL
Aruna C RoysterSpainAsiya Javayant RENEWAL
Costa M SchemmerGermanyIvan Magalhaes UNQUALIFIED
Johnson O VocelkaIndiaAmy Elsner RENEWAL
Emily B MorascaSpainIvan Magalhaes NEGOTIATION
Tony B GauchoJapanAnna Fali RENEWAL
Isabel O FollerIndiaElwin Sharvill NEGOTIATION
Tony Z NestleCanadaBernardo Dominic NEGOTIATION
Kaitlin V InouyeCanadaOnyama Limba UNQUALIFIED
Antonio N AlbaresCanadaOnyama Limba QUALIFIED
Juan D NickaCanadaOnyama Limba UNQUALIFIED
Maisha U WaycottSpainIvan Magalhaes NEGOTIATION
Smith E RimIndiaIoni Bowcher NEGOTIATION
Cody K KolmetzItalyAmy Elsner NEGOTIATION
Francesco L KuskoItalyXuxue Feng NEGOTIATION
Costa U MaletAustraliaIoni Bowcher QUALIFIED
Silvio X PoquetteBrazilIoni Bowcher NEGOTIATION
Frozen Columns
Name
Maria T Tollner
Sinclair D Darakjy
Stacey G Malet
Julie S Bolognia
Emily K Briddick
Stacey O Kusko
Nicolas U Nestle
Mujtaba Y Maclead
Smith A Flosi
Ashley D Paprocki
Rodrigues O Royster
Julie Z Bolognia
James K Maclead
Faith D Paprocki
Ashley D Ruta
Morrow B Kusko
Arvin Q Paprocki
Maria K Gaucho
Leja F Ruta
Sinclair T Ferencz
Aika C Whobrey
Greenwood W Schemmer
Julie J Poquette
Rodrigues X Schemmer
Rodrigues W Figeroa
Claire M Inouye
Cody Z Caldarera
Octavia M Darakjy
James S Inouye
Sinclair U Darakjy
Jeanfrancois G Stenseth
Wickens B Gaucho
Munro F Campain
Faith N Paprocki
Ivar B Gillian
Morrow M Flosi
Misaki G Nicka
Aditya C Glick
Leon R Marrier
Cody C Albares
Maisha O Marrier
Aruna C Flosi
Alejandro M Doe
Deepesh F Tollner
Ashley J Glick
Wickens W Vocelka
Aika U Tollner
Kadeem U Caudy
Jones W Royster
Smith I Campain
IdCountryDate
1000France2024-06-18
1001Australia2024-06-01
1002Italy2024-06-22
1003Germany2024-06-01
1004Brazil2024-06-20
1005India2024-06-07
1006Spain2024-06-04
1007Russia2024-06-03
1008France2024-06-23
1009India2024-06-07
1010Australia2024-06-19
1011United Kingdom2024-05-27
1012France2024-05-30
1013India2024-06-16
1014Australia2024-06-08
1015United Kingdom2024-06-09
1016India2024-06-09
1017France2024-06-14
1018Japan2024-06-18
1019Japan2024-06-01
1020Spain2024-06-08
1021Canada2024-05-30
1022India2024-06-23
1023India2024-05-29
1024Japan2024-06-17
1025France2024-06-01
1026India2024-06-06
1027Japan2024-06-17
1028France2024-06-03
1029Argentina2024-06-04
1030Brazil2024-06-19
1031Canada2024-06-14
1032Japan2024-05-28
1033Australia2024-06-04
1034Brazil2024-06-06
1035Canada2024-06-14
1036Australia2024-06-18
1037Italy2024-05-27
1038Canada2024-06-02
1039Russia2024-06-01
1040Spain2024-06-15
1041Japan2024-06-13
1042France2024-06-14
1043Spain2024-06-04
1044Japan2024-06-02
1045France2024-06-20
1046Germany2024-05-27
1047Japan2024-05-29
1048Argentina2024-06-19
1049Russia2024-06-10

On-Demand Data

NameIdCountryDate
Tony E Perin1000Italy2024-05-25
Murillo W Butt1001France2024-06-06
Maisha W Whobrey1002Russia2024-06-16
Octavia L Gillian1003Brazil2024-06-15
Johnson X Venere1004United Kingdom2024-05-26
Smith Y Chui1005Italy2024-06-16
Leja Q Perin1006United Kingdom2024-06-17
Ricardo G Butt1007Russia2024-06-12
Tony H Oldroyd1008Japan2024-05-27
Antonio C Vocelka1009India2024-05-30
Salvatore N Ruta1010Russia2024-06-01
Clifford D Ostrosky1011France2024-05-25
Maisha L Nestle1012Australia2024-06-16
Mujtaba N Ostrosky1013Spain2024-05-26
Jones Q Nestle1014Brazil2024-06-08
Jeanfrancois A Amigon1015Canada2024-06-04
Octavia S Ostrosky1016Canada2024-06-22
Maisha Q Ruta1017Brazil2024-06-17
Johnson F Kusko1018Russia2024-06-12
Mujtaba E Nicka1019Argentina2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer C NestleSpainElwin Sharvill NEGOTIATION
Jeanfrancois Q MaletBrazilAsiya Javayant QUALIFIED
Rodrigues Z MarrierCanadaBernardo Dominic UNQUALIFIED
Mayumi Z FigeroaSpainIvan Magalhaes RENEWAL
Tony Q StockhamBrazilAnna Fali NEGOTIATION
Izzy Q FlosiUnited KingdomOnyama Limba QUALIFIED
Maisha J AlbaresArgentinaOnyama Limba RENEWAL
Jeanfrancois R OldroydJapanStephen Shaw RENEWAL
Emily Z CampainIndiaStephen Shaw UNQUALIFIED
Aditya I CaldareraArgentinaAnna Fali QUALIFIED
Ivar Y SlusarskiBrazilBernardo Dominic PROPOSAL
Ivar A MarrierRussiaElwin Sharvill NEW
Jennifer Y PerinUnited KingdomXuxue Feng RENEWAL
Smith Z RutaArgentinaBernardo Dominic NEW
Stacey M CampainRussiaBernardo Dominic UNQUALIFIED
Johnson C KolmetzJapanStephen Shaw QUALIFIED
Rodrigues J RoysterItalyAmy Elsner QUALIFIED
Tony A CaudyJapanStephen Shaw NEGOTIATION
Mujtaba K MaletIndiaOnyama Limba UNQUALIFIED
Maisha V TollnerUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois U OstroskyItalyAnna Fali NEW
Arvin Z MaletIndiaStephen Shaw NEGOTIATION
Kaitlin U NestleUnited KingdomElwin Sharvill PROPOSAL
Mayumi N MacleadFranceAmy Elsner RENEWAL
Faith O BriddickBrazilStephen Shaw RENEWAL
Leja Y StockhamIndiaAsiya Javayant QUALIFIED
Claire M AlbaresFranceBernardo Dominic QUALIFIED
Adams C CaldareraCanadaXuxue Feng NEW
Silvio K KuskoUnited KingdomBernardo Dominic PROPOSAL
Francesco I FollerItalyAmy Elsner UNQUALIFIED
Aruna Q ButtSpainIvan Magalhaes UNQUALIFIED
Leja S FigeroaAustraliaOnyama Limba PROPOSAL
Alejandro C OldroydUnited KingdomXuxue Feng UNQUALIFIED
Jefferson O DilliardIndiaXuxue Feng QUALIFIED
Deepesh N PaprockiJapanIoni Bowcher UNQUALIFIED
Julie K RimIndiaStephen Shaw NEW
Antonio S MorascaItalyStephen Shaw RENEWAL
Greenwood L SchemmerRussiaIoni Bowcher PROPOSAL
Arvin V IturbideFranceXuxue Feng QUALIFIED
Maisha M SlusarskiAustraliaAmy Elsner 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>