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
Francesco C PerinItalyAnna Fali NEW
Costa L VenereJapanXuxue Feng NEGOTIATION
Silvio H SchemmerBrazilIoni Bowcher UNQUALIFIED
Leon K OstroskyAustraliaAmy Elsner UNQUALIFIED
Adams L StensethCanadaStephen Shaw NEGOTIATION
Jefferson J DarakjyArgentinaIoni Bowcher NEGOTIATION
Stacey F BowleyArgentinaElwin Sharvill NEGOTIATION
Jefferson I ChuiArgentinaStephen Shaw RENEWAL
Jones O NestleArgentinaIvan Magalhaes UNQUALIFIED
Octavia U FerenczGermanyAmy Elsner PROPOSAL
Ivar O KolmetzBrazilElwin Sharvill NEGOTIATION
Darci N PaprockiFranceElwin Sharvill UNQUALIFIED
Alejandro V OstroskyItalyXuxue Feng UNQUALIFIED
Smith L InouyeAustraliaStephen Shaw NEGOTIATION
Wickens Y BologniaArgentinaBernardo Dominic NEGOTIATION
Julie D PaprockiBrazilIoni Bowcher QUALIFIED
Johnson C SaylorsIndiaAnna Fali UNQUALIFIED
Jones Y GauchoSpainBernardo Dominic RENEWAL
Rodrigues O FigeroaGermanyBernardo Dominic PROPOSAL
Rodrigues F FerenczItalyBernardo Dominic PROPOSAL
Darci U AmigonSpainStephen Shaw NEGOTIATION
Claire V ChuiRussiaAnna Fali UNQUALIFIED
Johnson V BowleyRussiaIvan Magalhaes PROPOSAL
Sinclair C InouyeBrazilBernardo Dominic NEGOTIATION
Aika R BowleyBrazilStephen Shaw NEGOTIATION
Aruna M GauchoRussiaElwin Sharvill RENEWAL
Silvio E ButtGermanyIoni Bowcher UNQUALIFIED
Julie J KuskoAustraliaIvan Magalhaes NEW
David D GauchoUnited KingdomElwin Sharvill PROPOSAL
Alejandro M KolmetzCanadaStephen Shaw NEW
Nicolas V FerenczFranceAmy Elsner PROPOSAL
Claire W MaletItalyXuxue Feng QUALIFIED
Sinclair E CaudyAustraliaAmy Elsner UNQUALIFIED
Rodrigues S WaycottFranceElwin Sharvill PROPOSAL
Munro H SlusarskiBrazilElwin Sharvill RENEWAL
Rodrigues A RoysterBrazilBernardo Dominic NEGOTIATION
Aruna Q MaletGermanyAmy Elsner RENEWAL
Francesco E SergiUnited KingdomAmy Elsner NEGOTIATION
Jefferson S RoysterGermanyOnyama Limba RENEWAL
Antonio S RulapaughIndiaAnna Fali NEGOTIATION
Johnson Y StensethIndiaAnna Fali QUALIFIED
Maisha M BologniaSpainStephen Shaw NEGOTIATION
Misaki K CaldareraIndiaIvan Magalhaes QUALIFIED
David J KuskoItalyAnna Fali NEW
Nicolas W DilliardUnited KingdomIoni Bowcher QUALIFIED
Ashley W BowleyGermanyAmy Elsner UNQUALIFIED
Aditya A WaycottJapanIvan Magalhaes NEW
Wickens X GauchoFranceAsiya Javayant NEW
Leon A OstroskyItalyBernardo Dominic UNQUALIFIED
Mayumi N KuskoBrazilBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer P VocelkaArgentinaElwin Sharvill QUALIFIED
David G MarrierUnited KingdomAmy Elsner NEGOTIATION
Chavez T OstroskyFranceOnyama Limba PROPOSAL
Alejandro V ChuiArgentinaIvan Magalhaes RENEWAL
Silvio F KolmetzArgentinaAmy Elsner PROPOSAL
Francesco X VenereSpainStephen Shaw NEGOTIATION
Smith X CampainArgentinaAmy Elsner NEW
Stacey L BologniaItalyAmy Elsner NEW
Ricardo C KolmetzFranceAsiya Javayant QUALIFIED
Greenwood A RulapaughJapanIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba Z GillianSpain2024-06-18Benton, John B Jr NEW75Ivan Magalhaes
1001Johnson W DoeAustralia2024-06-20Feltz Printing Service NEGOTIATION95Asiya Javayant
1002Smith R AlbaresAustralia2024-06-16Morlong Associates QUALIFIED66Ioni Bowcher
1003Jeanfrancois Z SergiJapan2024-05-31Printing Dimensions RENEWAL6Ioni Bowcher
1004Greenwood P VocelkaRussia2024-05-25Dorl, James J Esq NEW29Anna Fali
1005Silvio X DilliardRussia2024-06-02Dorl, James J Esq NEGOTIATION2Elwin Sharvill
1006Claire U GillianSpain2024-06-13Rousseaux, Michael Esq PROPOSAL95Bernardo Dominic
1007Claire B SchemmerBrazil2024-06-18Rangoni Of Florence UNQUALIFIED8Stephen Shaw
1008Misaki A GarufiAustralia2024-05-26Truhlar And Truhlar Attys QUALIFIED26Ioni Bowcher
1009Morrow A WieserCanada2024-06-15King, Christopher A Esq QUALIFIED26Onyama Limba
1010Nicolas M FollerSpain2024-05-29Morlong Associates NEW61Ivan Magalhaes
1011Maisha V RoysterSpain2024-06-12Rousseaux, Michael Esq NEW1Asiya Javayant
1012Costa M OldroydRussia2024-06-07Commercial Press PROPOSAL52Onyama Limba
1013Misaki T WieserRussia2024-06-18Rousseaux, Michael Esq QUALIFIED48Ioni Bowcher
1014Leja N DarakjyArgentina2024-05-27Morlong Associates NEGOTIATION20Stephen Shaw
1015Murillo P AmigonBrazil2024-06-20Buckley Miller Wright PROPOSAL77Onyama Limba
1016Ivar W DoeUnited Kingdom2024-06-09Benton, John B Jr QUALIFIED59Ioni Bowcher
1017Octavia A AlbaresCanada2024-05-28Chanay, Jeffrey A Esq RENEWAL99Stephen Shaw
1018James F PerinGermany2024-06-03Feltz Printing Service UNQUALIFIED96Anna Fali
1019Antonio H GauchoSpain2024-05-28Chemel, James L Cpa QUALIFIED67Stephen Shaw
1020Jennifer P VenereAustralia2024-06-11Chanay, Jeffrey A Esq QUALIFIED75Ivan Magalhaes
1021Smith F ButtSpain2024-05-25Dorl, James J Esq QUALIFIED14Onyama Limba
1022Johnson D CampainItaly2024-06-08Rousseaux, Michael Esq UNQUALIFIED5Stephen Shaw
1023Jeanfrancois C CaudyArgentina2024-05-28Chapman, Ross E Esq UNQUALIFIED27Stephen Shaw
1024Deepesh V InouyeBrazil2024-06-21Morlong Associates QUALIFIED31Ioni Bowcher
1025Cody G BowleyItaly2024-05-25Chapman, Ross E Esq RENEWAL1Asiya Javayant
1026Aruna E OstroskyArgentina2024-06-07Rangoni Of Florence QUALIFIED46Ivan Magalhaes
1027Julie T TollnerSpain2024-06-02Dorl, James J Esq QUALIFIED54Xuxue Feng
1028Tony N BriddickAustralia2024-06-18Morlong Associates RENEWAL95Xuxue Feng
1029Alejandro L GillianUnited Kingdom2024-06-01Chanay, Jeffrey A Esq RENEWAL37Elwin Sharvill
1030Munro S AlbaresSpain2024-06-16Rangoni Of Florence NEW76Xuxue Feng
1031Octavia O FlosiBrazil2024-06-05Buckley Miller Wright RENEWAL97Anna Fali
1032Salvatore A RoysterItaly2024-05-23Rousseaux, Michael Esq RENEWAL69Amy Elsner
1033Darci S WaycottUnited Kingdom2024-05-29Morlong Associates NEGOTIATION96Xuxue Feng
1034Izzy E KolmetzCanada2024-06-12Chanay, Jeffrey A Esq RENEWAL91Onyama Limba
1035James C WieserGermany2024-06-08King, Christopher A Esq PROPOSAL45Elwin Sharvill
1036Ricardo L RulapaughBrazil2024-05-24Chapman, Ross E Esq NEGOTIATION58Elwin Sharvill
1037Johnson B VocelkaArgentina2024-05-30Chapman, Ross E Esq PROPOSAL0Elwin Sharvill
1038Chavez I WieserCanada2024-06-01Morlong Associates RENEWAL16Ioni Bowcher
1039Jones V AlbaresFrance2024-06-05Chapman, Ross E Esq NEW49Onyama Limba
1040Claire S RulapaughRussia2024-05-30Truhlar And Truhlar Attys UNQUALIFIED30Anna Fali
1041Deepesh F VenereSpain2024-06-04Commercial Press NEW24Asiya Javayant
1042Chavez W StensethSpain2024-05-30Benton, John B Jr UNQUALIFIED25Ivan Magalhaes
1043Jennifer M RimRussia2024-06-04Benton, John B Jr UNQUALIFIED38Bernardo Dominic
1044Jennifer R ChuiCanada2024-06-20Feltz Printing Service UNQUALIFIED50Anna Fali
1045Maisha C ShinkoGermany2024-06-11Rangoni Of Florence PROPOSAL29Elwin Sharvill
1046Arvin F MaletSpain2024-06-02Chapman, Ross E Esq RENEWAL83Bernardo Dominic
1047Aditya B PaprockiGermany2024-05-24Chapman, Ross E Esq RENEWAL3Onyama Limba
1048Claire J AmigonSpain2024-06-17Buckley Miller Wright PROPOSAL42Bernardo Dominic
1049Aika G MarrierSpain2024-06-03Chapman, Ross E Esq NEW17Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Clifford D CaldareraFranceOnyama Limba NEW
Rodrigues O SlusarskiArgentinaElwin Sharvill UNQUALIFIED
Clifford V ShinkoCanadaOnyama Limba NEGOTIATION
Greenwood I ChuiAustraliaIoni Bowcher UNQUALIFIED
Ivar P SaylorsFranceAnna Fali NEGOTIATION
Alejandro H WaycottFranceIoni Bowcher NEW
Antonio L FerenczGermanyStephen Shaw PROPOSAL
Cody S KuskoSpainOnyama Limba RENEWAL
Stacey S WaycottFranceAsiya Javayant NEGOTIATION
Jefferson A CaldareraArgentinaBernardo Dominic UNQUALIFIED
Rodrigues U RulapaughUnited KingdomStephen Shaw NEW
Kadeem J ChuiRussiaAmy Elsner NEGOTIATION
Jeanfrancois P WaycottGermanyStephen Shaw PROPOSAL
Arvin B PoquetteCanadaAsiya Javayant UNQUALIFIED
Kaitlin G GarufiAustraliaStephen Shaw RENEWAL
Aika H RoysterJapanIoni Bowcher NEW
Chavez O KolmetzFranceStephen Shaw PROPOSAL
Costa H OldroydItalyElwin Sharvill PROPOSAL
Rodrigues W CampainGermanyIoni Bowcher NEGOTIATION
Deepesh S BologniaJapanIvan Magalhaes QUALIFIED
Tony S GauchoFranceOnyama Limba PROPOSAL
Antonio K NestleRussiaStephen Shaw NEGOTIATION
Johnson J GillianSpainIvan Magalhaes UNQUALIFIED
Wickens I PaprockiAustraliaIvan Magalhaes PROPOSAL
Mujtaba Y GillianCanadaStephen Shaw RENEWAL
Adams X FlosiJapanXuxue Feng UNQUALIFIED
Darci S MaletRussiaIvan Magalhaes NEW
Johnson N SlusarskiUnited KingdomIvan Magalhaes NEW
Deepesh K MacleadSpainAsiya Javayant RENEWAL
Deepesh V BologniaItalyAnna Fali RENEWAL
Deepesh D FerenczBrazilIvan Magalhaes QUALIFIED
Darci V PaprockiIndiaAsiya Javayant UNQUALIFIED
Clifford N AlbaresItalyIvan Magalhaes QUALIFIED
Maisha T DarakjySpainBernardo Dominic QUALIFIED
Julie I FigeroaCanadaStephen Shaw RENEWAL
Munro D ChuiJapanElwin Sharvill NEW
Misaki M RutaJapanStephen Shaw NEW
Aruna O BriddickRussiaAmy Elsner PROPOSAL
Tony B SaylorsFranceIvan Magalhaes UNQUALIFIED
Mayumi Q KuskoFranceStephen Shaw UNQUALIFIED
Jones P RoysterJapanElwin Sharvill QUALIFIED
Cody L RimSpainAmy Elsner PROPOSAL
Morrow T NestleJapanOnyama Limba NEGOTIATION
Deepesh X NestleGermanyBernardo Dominic RENEWAL
Costa E SaylorsCanadaAmy Elsner NEGOTIATION
Arvin C CaldareraJapanAsiya Javayant NEGOTIATION
Jones N MaletItalyStephen Shaw NEW
Misaki K MorascaIndiaAsiya Javayant PROPOSAL
Nicolas Z SlusarskiAustraliaElwin Sharvill QUALIFIED
Jefferson D TollnerSpainAsiya Javayant RENEWAL
Frozen Columns
Name
Morrow S Slusarski
Ricardo U Figeroa
Maisha F Flosi
Ivar V Doe
Ricardo X Campain
Jennifer A Perin
Izzy S Whobrey
Aditya J Schemmer
Smith N Ferencz
Izzy B Malet
Izzy V Inouye
Isabel V Stenseth
Emily J Malet
Alejandro P Morasca
Maria B Garufi
Jones N Figeroa
Ivar D Malet
Alejandro T Whobrey
Izzy E Ostrosky
Sinclair A Darakjy
Costa V Nestle
Faith X Oldroyd
Clifford E Venere
Aruna J Caudy
Nicolas J Wieser
Nicolas N Schemmer
James Y Nestle
Antonio C Darakjy
Mujtaba P Doe
Juan J Wieser
Murillo F Dilliard
Antonio E Inouye
Aika C Doe
Munro D Dilliard
Emily Y Royster
Sinclair S Wieser
Francesco E Briddick
Aditya L Sergi
Aditya L Stenseth
Izzy W Kusko
Wickens T Stenseth
Ashley S Tollner
Jones E Sergi
Stacey F Darakjy
Misaki Q Doe
Emily L Butt
Tony N Flosi
Johnson R Wieser
Isabel Q Ferencz
Salvatore X Amigon
IdCountryDate
1000Italy2024-06-05
1001Japan2024-06-19
1002Brazil2024-06-10
1003India2024-05-23
1004Argentina2024-06-21
1005Spain2024-06-13
1006Canada2024-06-01
1007India2024-06-10
1008Brazil2024-06-21
1009Brazil2024-06-15
1010Japan2024-06-13
1011Spain2024-06-12
1012Germany2024-05-26
1013United Kingdom2024-05-24
1014Russia2024-05-31
1015France2024-06-14
1016Spain2024-05-29
1017Brazil2024-06-18
1018United Kingdom2024-05-24
1019India2024-06-17
1020Germany2024-06-09
1021Italy2024-06-04
1022Russia2024-05-29
1023Argentina2024-06-15
1024United Kingdom2024-06-08
1025Russia2024-06-13
1026Canada2024-06-10
1027Italy2024-06-16
1028Australia2024-06-13
1029Argentina2024-05-31
1030Germany2024-06-08
1031Argentina2024-06-05
1032France2024-05-30
1033India2024-06-05
1034Brazil2024-06-08
1035Russia2024-06-16
1036Spain2024-06-19
1037Italy2024-06-21
1038Canada2024-06-18
1039Japan2024-05-28
1040France2024-05-27
1041India2024-06-19
1042India2024-05-25
1043France2024-06-10
1044Japan2024-05-26
1045United Kingdom2024-05-23
1046India2024-06-01
1047Australia2024-05-23
1048India2024-05-26
1049France2024-06-15

On-Demand Data

NameIdCountryDate
Murillo U Albares1000Argentina2024-06-18
Ivar P Butt1001Canada2024-05-26
Claire R Kusko1002Japan2024-06-01
Leja F Sergi1003Spain2024-05-31
Antonio B Sergi1004Spain2024-05-23
Ashley I Amigon1005France2024-05-27
Mujtaba I Albares1006Argentina2024-05-31
Cody Z Morasca1007Russia2024-06-08
Maisha D Caudy1008Australia2024-06-13
Jefferson F Bolognia1009Argentina2024-05-31
James P Bowley1010Australia2024-06-15
Jennifer R Poquette1011France2024-05-29
Chavez B Inouye1012Australia2024-06-05
Emily N Foller1013Italy2024-06-07
Darci V Tollner1014Germany2024-06-08
Leja N Bolognia1015Russia2024-06-17
Darci P Foller1016Australia2024-06-04
Maria M Nicka1017Argentina2024-06-01
Cody Y Doe1018Italy2024-06-18
Munro J Darakjy1019Spain2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore B TollnerUnited KingdomIoni Bowcher QUALIFIED
Maisha U DoeGermanyAmy Elsner QUALIFIED
Octavia Y BowleyArgentinaAsiya Javayant RENEWAL
Leja A GauchoBrazilXuxue Feng QUALIFIED
Ricardo Z CaudyUnited KingdomOnyama Limba NEW
Costa Y MacleadIndiaIvan Magalhaes UNQUALIFIED
Claire N ShinkoGermanyAsiya Javayant PROPOSAL
Aruna Y SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Stacey D NickaGermanyIoni Bowcher PROPOSAL
Silvio N ChuiIndiaStephen Shaw RENEWAL
Izzy M AlbaresJapanAmy Elsner PROPOSAL
Jennifer C CaudyGermanyIoni Bowcher NEW
Johnson L FerenczUnited KingdomOnyama Limba PROPOSAL
Rodrigues X FerenczArgentinaAmy Elsner NEGOTIATION
Isabel G InouyeUnited KingdomElwin Sharvill QUALIFIED
Silvio Q MacleadIndiaXuxue Feng PROPOSAL
Jeanfrancois Q InouyeArgentinaIoni Bowcher NEGOTIATION
Sinclair Y ButtFranceIvan Magalhaes NEW
Kaitlin I MarrierBrazilElwin Sharvill RENEWAL
Salvatore H VenereCanadaAnna Fali NEGOTIATION
James S BologniaJapanAnna Fali UNQUALIFIED
Morrow Q StockhamRussiaBernardo Dominic NEW
Jones I VocelkaSpainXuxue Feng RENEWAL
Munro S RoysterIndiaBernardo Dominic RENEWAL
Isabel H VocelkaCanadaOnyama Limba NEW
Silvio X ShinkoIndiaStephen Shaw UNQUALIFIED
Murillo S ChuiFranceBernardo Dominic NEGOTIATION
Salvatore V CampainJapanOnyama Limba NEGOTIATION
Deepesh Z FlosiAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois B SaylorsSpainAnna Fali NEW
Izzy R RimGermanyAsiya Javayant RENEWAL
Salvatore U BologniaAustraliaIoni Bowcher QUALIFIED
Faith Y BriddickBrazilOnyama Limba PROPOSAL
Nicolas F WaycottCanadaBernardo Dominic UNQUALIFIED
Alejandro T WieserSpainAmy Elsner NEGOTIATION
Clifford D GauchoAustraliaElwin Sharvill RENEWAL
Arvin R BologniaJapanIoni Bowcher RENEWAL
Greenwood B FollerSpainOnyama Limba NEW
David E PoquetteBrazilIoni Bowcher QUALIFIED
Rodrigues J WhobreyBrazilStephen Shaw QUALIFIED

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