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
Mayumi E ChuiAustraliaIvan Magalhaes UNQUALIFIED
Cody K PerinBrazilStephen Shaw PROPOSAL
Antonio W GillianIndiaAnna Fali NEGOTIATION
Murillo Y SergiJapanElwin Sharvill PROPOSAL
Costa W FlosiBrazilIoni Bowcher NEW
Deepesh E FigeroaArgentinaAsiya Javayant UNQUALIFIED
Wickens U AlbaresAustraliaAnna Fali RENEWAL
Silvio L AmigonIndiaIoni Bowcher NEGOTIATION
David V StensethRussiaStephen Shaw NEW
Cody R MarrierGermanyStephen Shaw UNQUALIFIED
Chavez Q KuskoAustraliaXuxue Feng RENEWAL
Deepesh X KuskoArgentinaAnna Fali RENEWAL
Kadeem M WaycottGermanyElwin Sharvill RENEWAL
Silvio L SlusarskiUnited KingdomIvan Magalhaes UNQUALIFIED
Munro X BowleyGermanyXuxue Feng NEW
Salvatore P ShinkoSpainXuxue Feng NEGOTIATION
Johnson F WhobreyIndiaStephen Shaw UNQUALIFIED
Clifford I VenereJapanStephen Shaw UNQUALIFIED
Antonio F MorascaCanadaStephen Shaw UNQUALIFIED
Emily K RimArgentinaAnna Fali PROPOSAL
Kadeem G BologniaJapanIoni Bowcher UNQUALIFIED
Maisha H InouyeRussiaIoni Bowcher NEGOTIATION
Maisha B CaldareraSpainAnna Fali NEGOTIATION
Cody T StensethIndiaOnyama Limba NEGOTIATION
Jefferson Y GauchoSpainStephen Shaw PROPOSAL
Clifford N BriddickGermanyAnna Fali RENEWAL
Mujtaba L SaylorsArgentinaBernardo Dominic NEGOTIATION
Leon G CampainIndiaBernardo Dominic QUALIFIED
Maisha F CaldareraJapanIoni Bowcher NEW
Jennifer T PoquetteBrazilElwin Sharvill UNQUALIFIED
Aditya D WaycottRussiaAnna Fali NEW
Jefferson X BriddickAustraliaElwin Sharvill NEGOTIATION
Chavez L GlickGermanyIvan Magalhaes UNQUALIFIED
Tony F GlickGermanyAnna Fali RENEWAL
Leja S PerinCanadaIoni Bowcher NEW
Jones A DilliardArgentinaIvan Magalhaes RENEWAL
Octavia M WaycottUnited KingdomAmy Elsner NEW
Antonio L MarrierSpainIvan Magalhaes UNQUALIFIED
Arvin E VenereItalyAmy Elsner QUALIFIED
Aruna C CampainAustraliaAnna Fali NEW
Izzy O PaprockiAustraliaStephen Shaw NEGOTIATION
Kaitlin O OldroydFranceStephen Shaw QUALIFIED
Cody U GlickRussiaOnyama Limba RENEWAL
Aika U MaletUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin A DarakjyAustraliaAmy Elsner QUALIFIED
Isabel T PoquetteIndiaIoni Bowcher UNQUALIFIED
Maria X InouyeGermanyIvan Magalhaes NEGOTIATION
James G FlosiArgentinaBernardo Dominic QUALIFIED
Misaki O KuskoIndiaIoni Bowcher PROPOSAL
Mujtaba N ButtUnited KingdomOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Stacey X SergiUnited KingdomIoni Bowcher PROPOSAL
Salvatore Z KolmetzBrazilAsiya Javayant PROPOSAL
Morrow E VenereUnited KingdomAmy Elsner NEGOTIATION
Stacey M RoysterFranceIvan Magalhaes NEGOTIATION
Deepesh I CaldareraAustraliaElwin Sharvill NEW
Aditya J BriddickFranceAsiya Javayant NEW
Nicolas L KuskoAustraliaXuxue Feng QUALIFIED
Salvatore R DoeBrazilXuxue Feng RENEWAL
Aditya L RutaJapanXuxue Feng NEW
Isabel Y PaprockiRussiaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi M CampainFrance2024-06-04Chanay, Jeffrey A Esq PROPOSAL15Asiya Javayant
1001Salvatore L SergiRussia2024-05-21Printing Dimensions NEGOTIATION75Stephen Shaw
1002Jeanfrancois I BowleyCanada2024-05-21Feiner Bros NEW13Amy Elsner
1003Jeanfrancois T MarrierAustralia2024-05-16Buckley Miller Wright NEGOTIATION17Anna Fali
1004Munro G PoquetteBrazil2024-05-26Buckley Miller Wright NEGOTIATION56Amy Elsner
1005Leon X SlusarskiIndia2024-05-28Rousseaux, Michael Esq NEW36Anna Fali
1006Smith C GillianRussia2024-06-04Feltz Printing Service UNQUALIFIED3Asiya Javayant
1007Ashley R BologniaSpain2024-05-22Chanay, Jeffrey A Esq NEGOTIATION80Bernardo Dominic
1008Izzy D ButtUnited Kingdom2024-06-04Truhlar And Truhlar Attys UNQUALIFIED82Ioni Bowcher
1009Aika L FigeroaGermany2024-06-08King, Christopher A Esq QUALIFIED55Amy Elsner
1010Octavia W GlickFrance2024-05-23Feltz Printing Service NEGOTIATION87Anna Fali
1011Jeanfrancois I DilliardCanada2024-05-17Benton, John B Jr NEW11Amy Elsner
1012Johnson B BologniaFrance2024-06-13Commercial Press QUALIFIED79Asiya Javayant
1013Mayumi R MaletBrazil2024-06-03Feltz Printing Service UNQUALIFIED55Stephen Shaw
1014Mujtaba H FollerSpain2024-06-13Rangoni Of Florence QUALIFIED49Bernardo Dominic
1015Sinclair F SchemmerRussia2024-06-10Truhlar And Truhlar Attys NEW89Bernardo Dominic
1016Faith K IturbideArgentina2024-06-09Benton, John B Jr RENEWAL45Ivan Magalhaes
1017Wickens G GarufiItaly2024-06-08Buckley Miller Wright NEGOTIATION16Asiya Javayant
1018Leja J SaylorsRussia2024-06-09Chapman, Ross E Esq UNQUALIFIED11Amy Elsner
1019Ricardo P DoeUnited Kingdom2024-06-02King, Christopher A Esq NEW96Ioni Bowcher
1020Juan S StockhamBrazil2024-05-24Chapman, Ross E Esq PROPOSAL62Asiya Javayant
1021Greenwood P RoysterUnited Kingdom2024-06-05Chapman, Ross E Esq QUALIFIED56Onyama Limba
1022Julie F FollerUnited Kingdom2024-05-25Rousseaux, Michael Esq UNQUALIFIED61Ivan Magalhaes
1023Izzy H InouyeUnited Kingdom2024-06-12Feiner Bros NEW53Ioni Bowcher
1024Sinclair R AlbaresRussia2024-05-30Commercial Press NEGOTIATION52Amy Elsner
1025Izzy H ButtSpain2024-05-18Feiner Bros NEW95Ioni Bowcher
1026Izzy Z WhobreyFrance2024-05-29Truhlar And Truhlar Attys RENEWAL16Ioni Bowcher
1027Ivar H BriddickJapan2024-06-02Chemel, James L Cpa NEW28Ioni Bowcher
1028Francesco Q DarakjyBrazil2024-05-24Feltz Printing Service NEW66Asiya Javayant
1029Jones Q KolmetzFrance2024-05-17Printing Dimensions RENEWAL30Xuxue Feng
1030Julie F SergiJapan2024-06-06Feiner Bros NEGOTIATION78Xuxue Feng
1031Juan J CaudyGermany2024-06-08Printing Dimensions RENEWAL64Stephen Shaw
1032Smith P SchemmerIndia2024-06-13Morlong Associates UNQUALIFIED86Stephen Shaw
1033Morrow O MaletFrance2024-05-22Chanay, Jeffrey A Esq RENEWAL20Onyama Limba
1034Jennifer X WaycottUnited Kingdom2024-05-22Morlong Associates UNQUALIFIED33Xuxue Feng
1035Johnson K CaldareraUnited Kingdom2024-05-26King, Christopher A Esq NEGOTIATION90Elwin Sharvill
1036Leja G SchemmerIndia2024-06-01Chapman, Ross E Esq RENEWAL20Xuxue Feng
1037Adams D RulapaughBrazil2024-05-22Dorl, James J Esq QUALIFIED85Onyama Limba
1038Silvio A SchemmerArgentina2024-05-20Feltz Printing Service NEW56Asiya Javayant
1039Emily B PoquetteSpain2024-05-27Chanay, Jeffrey A Esq QUALIFIED81Stephen Shaw
1040Claire O SergiGermany2024-06-04Chemel, James L Cpa UNQUALIFIED69Elwin Sharvill
1041Ashley I RutaUnited Kingdom2024-06-13Commercial Press UNQUALIFIED35Stephen Shaw
1042Munro Z StockhamItaly2024-05-22Commercial Press NEW87Asiya Javayant
1043Murillo X PoquetteBrazil2024-06-07Truhlar And Truhlar Attys NEW93Onyama Limba
1044Stacey R RutaCanada2024-06-08Feiner Bros NEGOTIATION3Stephen Shaw
1045Francesco D FollerArgentina2024-05-16Chapman, Ross E Esq RENEWAL97Amy Elsner
1046Chavez R VocelkaBrazil2024-05-21Truhlar And Truhlar Attys PROPOSAL99Anna Fali
1047Sinclair D GillianCanada2024-05-17Morlong Associates QUALIFIED1Elwin Sharvill
1048James I RimUnited Kingdom2024-05-31Chanay, Jeffrey A Esq QUALIFIED35Onyama Limba
1049Kadeem J ButtIndia2024-06-10Rousseaux, Michael Esq RENEWAL17Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Maisha L BowleyArgentinaXuxue Feng RENEWAL
Cody L BologniaRussiaElwin Sharvill QUALIFIED
Wickens Q GillianUnited KingdomIoni Bowcher PROPOSAL
David C WieserFranceAnna Fali NEW
Emily U FlosiRussiaAnna Fali PROPOSAL
Kadeem B SergiRussiaElwin Sharvill QUALIFIED
Emily F IturbideBrazilAsiya Javayant RENEWAL
Morrow Z OldroydCanadaIvan Magalhaes PROPOSAL
Ricardo U TollnerJapanAnna Fali QUALIFIED
Deepesh C KuskoJapanStephen Shaw RENEWAL
Ashley F PoquetteGermanyBernardo Dominic PROPOSAL
Sinclair W InouyeFranceAsiya Javayant NEW
Mayumi K CampainUnited KingdomAmy Elsner RENEWAL
Rodrigues Z AlbaresIndiaAnna Fali UNQUALIFIED
Mujtaba A AlbaresJapanIoni Bowcher QUALIFIED
Ivar V RimAustraliaXuxue Feng QUALIFIED
Emily Y MarrierArgentinaIoni Bowcher NEGOTIATION
Jefferson Q OstroskyUnited KingdomIvan Magalhaes PROPOSAL
Darci C MarrierFranceAsiya Javayant QUALIFIED
Salvatore A MarrierItalyIvan Magalhaes NEW
Darci B NickaGermanyIvan Magalhaes UNQUALIFIED
Jefferson T BowleyGermanyXuxue Feng UNQUALIFIED
Ashley S SlusarskiArgentinaBernardo Dominic PROPOSAL
James C OstroskyUnited KingdomBernardo Dominic NEGOTIATION
Izzy Y NickaIndiaStephen Shaw UNQUALIFIED
Tony Y FerenczArgentinaElwin Sharvill UNQUALIFIED
Mujtaba N FigeroaIndiaIvan Magalhaes PROPOSAL
Smith M DarakjySpainXuxue Feng RENEWAL
Isabel H MaletRussiaAnna Fali UNQUALIFIED
Leja N MaletBrazilIvan Magalhaes NEGOTIATION
Faith T ShinkoIndiaAnna Fali NEW
Alejandro B NickaFranceIoni Bowcher RENEWAL
Octavia J NestleIndiaAnna Fali UNQUALIFIED
Jones N SchemmerSpainXuxue Feng RENEWAL
Sinclair P TollnerGermanyAsiya Javayant NEW
Jennifer H AmigonArgentinaBernardo Dominic NEW
Mayumi S SlusarskiGermanyElwin Sharvill NEGOTIATION
Nicolas D KuskoUnited KingdomBernardo Dominic PROPOSAL
Claire G AlbaresIndiaOnyama Limba PROPOSAL
Cody M VenereRussiaAnna Fali NEW
Murillo Q NestleSpainAsiya Javayant QUALIFIED
Aika V GauchoRussiaStephen Shaw NEW
Stacey L RulapaughUnited KingdomElwin Sharvill NEW
Darci I VocelkaBrazilIvan Magalhaes NEGOTIATION
Aruna D MaletCanadaBernardo Dominic RENEWAL
James P MacleadAustraliaElwin Sharvill NEW
Costa L SergiCanadaAnna Fali PROPOSAL
James Z VenereGermanyAnna Fali NEGOTIATION
Leon B VenereFranceElwin Sharvill NEW
Darci H KolmetzBrazilOnyama Limba NEW
Frozen Columns
Name
Leon R Iturbide
Darci F Dilliard
Chavez P Rim
Nicolas E Shinko
Stacey Z Bowley
Kaitlin E Oldroyd
Costa C Gaucho
James J Marrier
Francesco V Slusarski
Johnson C Malet
Clifford X Schemmer
Johnson A Bolognia
Aika J Shinko
Alejandro U Amigon
Leja B Kolmetz
Claire A Poquette
Wickens H Perin
Johnson J Saylors
Mayumi R Bolognia
Alejandro Q Bowley
Kadeem M Vocelka
Ashley G Oldroyd
James W Chui
Jefferson M Stenseth
Adams U Shinko
Murillo J Waycott
Isabel T Caudy
Wickens K Oldroyd
Jennifer Z Paprocki
Cody T Gaucho
Izzy U Waycott
David P Butt
Juan T Darakjy
James A Butt
Cody V Chui
Antonio Q Perin
Jeanfrancois O Foller
Alejandro K Marrier
Octavia O Campain
Aruna C Wieser
Adams U Flosi
Emily O Figeroa
Maisha L Caldarera
Antonio D Campain
Silvio M Chui
Stacey A Stockham
Misaki P Perin
Kaitlin N Malet
Murillo Y Bolognia
Alejandro X Royster
IdCountryDate
1000Germany2024-05-20
1001Argentina2024-06-13
1002Germany2024-06-14
1003France2024-05-17
1004India2024-05-17
1005Brazil2024-05-29
1006Argentina2024-05-27
1007Canada2024-05-24
1008Argentina2024-06-06
1009India2024-05-24
1010United Kingdom2024-06-07
1011Australia2024-05-23
1012Argentina2024-05-26
1013United Kingdom2024-05-31
1014Brazil2024-05-16
1015Spain2024-05-25
1016Brazil2024-06-04
1017Brazil2024-06-07
1018United Kingdom2024-05-26
1019Japan2024-05-29
1020Russia2024-06-14
1021India2024-05-26
1022France2024-06-13
1023Brazil2024-05-31
1024Germany2024-05-30
1025Canada2024-05-27
1026Japan2024-05-21
1027France2024-05-22
1028Spain2024-06-08
1029Italy2024-06-03
1030Germany2024-05-23
1031Argentina2024-05-28
1032Japan2024-06-10
1033Japan2024-05-29
1034Brazil2024-06-12
1035Germany2024-05-30
1036France2024-06-02
1037Russia2024-06-09
1038France2024-05-28
1039France2024-06-01
1040France2024-05-25
1041Russia2024-05-27
1042Italy2024-05-27
1043France2024-06-12
1044Australia2024-05-19
1045Argentina2024-05-28
1046Argentina2024-05-19
1047Spain2024-06-14
1048United Kingdom2024-06-11
1049Brazil2024-06-09

On-Demand Data

NameIdCountryDate
Salvatore O Kusko1000Canada2024-06-10
Leja H Briddick1001Italy2024-05-18
Leja U Saylors1002Russia2024-05-30
Adams N Wieser1003United Kingdom2024-05-30
Clifford T Amigon1004Japan2024-06-04
Aika A Caldarera1005Germany2024-05-27
Ashley P Bowley1006Japan2024-06-08
Alejandro Y Slusarski1007Argentina2024-06-10
David J Kusko1008Australia2024-06-03
Greenwood J Gillian1009Brazil2024-06-11
Munro I Bolognia1010Canada2024-06-10
Wickens I Gillian1011Brazil2024-06-13
Adams X Foller1012France2024-05-25
Murillo V Vocelka1013Japan2024-05-30
Darci R Bolognia1014Italy2024-05-19
David M Morasca1015Australia2024-06-06
Antonio L Waycott1016France2024-05-19
Leon C Gaucho1017France2024-05-16
Alejandro H Slusarski1018Argentina2024-05-27
Greenwood R Saylors1019Australia2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley C FollerCanadaBernardo Dominic RENEWAL
Isabel S OldroydFranceBernardo Dominic RENEWAL
Kadeem D AmigonItalyIvan Magalhaes NEW
Aruna E KolmetzRussiaXuxue Feng UNQUALIFIED
Jeanfrancois P FerenczRussiaStephen Shaw NEGOTIATION
Wickens C InouyeRussiaStephen Shaw NEW
Adams S DilliardJapanStephen Shaw PROPOSAL
Kaitlin J RimBrazilStephen Shaw NEGOTIATION
Darci A PerinAustraliaElwin Sharvill NEGOTIATION
Ivar Y PoquetteIndiaAnna Fali UNQUALIFIED
Ricardo O MacleadItalyAmy Elsner PROPOSAL
Maisha X DarakjySpainIoni Bowcher RENEWAL
Wickens K SaylorsArgentinaAmy Elsner QUALIFIED
Claire H RoysterGermanyAmy Elsner NEW
Jones R SaylorsJapanIvan Magalhaes QUALIFIED
Morrow D GillianJapanAmy Elsner QUALIFIED
Arvin V IturbideJapanAsiya Javayant UNQUALIFIED
Julie W PerinFranceAnna Fali PROPOSAL
Morrow O MaletGermanyStephen Shaw RENEWAL
Izzy N FlosiUnited KingdomBernardo Dominic QUALIFIED
Wickens I GillianAustraliaIvan Magalhaes RENEWAL
Jeanfrancois J FigeroaArgentinaOnyama Limba NEGOTIATION
Aditya G BowleyArgentinaIvan Magalhaes NEW
Kaitlin U PoquetteArgentinaBernardo Dominic RENEWAL
James V FlosiJapanAmy Elsner PROPOSAL
Faith U BriddickArgentinaOnyama Limba NEW
Octavia N PoquetteUnited KingdomBernardo Dominic UNQUALIFIED
Izzy F RoysterFranceIoni Bowcher NEGOTIATION
Leon E TollnerFranceStephen Shaw UNQUALIFIED
Silvio S MorascaRussiaAsiya Javayant NEGOTIATION
Ashley J KolmetzGermanyAsiya Javayant UNQUALIFIED
Costa I SchemmerUnited KingdomIvan Magalhaes NEW
Ricardo U WieserCanadaStephen Shaw QUALIFIED
Cody K RimUnited KingdomOnyama Limba UNQUALIFIED
Nicolas H GillianBrazilStephen Shaw NEW
Smith N PaprockiIndiaOnyama Limba NEGOTIATION
Jeanfrancois Q SergiSpainElwin Sharvill NEW
Wickens E VocelkaBrazilIoni Bowcher NEGOTIATION
Emily L DoeGermanyOnyama Limba QUALIFIED
Murillo L MaletJapanAnna Fali UNQUALIFIED

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