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
Adams Q NickaArgentinaXuxue Feng QUALIFIED
Ashley M DoeFranceBernardo Dominic QUALIFIED
Maisha Y FigeroaIndiaIvan Magalhaes PROPOSAL
Francesco T SergiFranceStephen Shaw RENEWAL
Emily P RulapaughFranceElwin Sharvill PROPOSAL
Leon R CampainJapanElwin Sharvill UNQUALIFIED
Munro R VenereBrazilBernardo Dominic QUALIFIED
Jeanfrancois D MaletCanadaIvan Magalhaes PROPOSAL
Izzy J RulapaughSpainAmy Elsner UNQUALIFIED
Wickens Y GlickCanadaElwin Sharvill UNQUALIFIED
Izzy R AmigonSpainBernardo Dominic QUALIFIED
Kadeem G RulapaughCanadaStephen Shaw UNQUALIFIED
Adams N DoeGermanyXuxue Feng UNQUALIFIED
Costa V IturbideIndiaBernardo Dominic RENEWAL
Mujtaba H ShinkoBrazilBernardo Dominic NEW
Julie G StockhamIndiaElwin Sharvill PROPOSAL
Kaitlin J GillianJapanStephen Shaw NEW
Salvatore N NickaFranceIvan Magalhaes NEW
Sinclair W FlosiItalyAmy Elsner QUALIFIED
Sinclair T RoysterArgentinaIoni Bowcher NEW
Cody O DilliardJapanXuxue Feng UNQUALIFIED
Jefferson A DoeSpainXuxue Feng NEW
Ricardo W ChuiRussiaAnna Fali PROPOSAL
Silvio N ButtCanadaXuxue Feng UNQUALIFIED
Ricardo H RimArgentinaAnna Fali UNQUALIFIED
Arvin O OstroskyAustraliaIoni Bowcher NEGOTIATION
Jefferson I PerinAustraliaBernardo Dominic QUALIFIED
Mujtaba K MaletIndiaStephen Shaw QUALIFIED
Jeanfrancois X OstroskyItalyXuxue Feng PROPOSAL
Aditya L GillianArgentinaAnna Fali NEW
Kadeem S WhobreyUnited KingdomIvan Magalhaes NEW
Darci T MaletJapanAmy Elsner NEGOTIATION
Jefferson S BologniaJapanIoni Bowcher PROPOSAL
Deepesh I DoeGermanyStephen Shaw RENEWAL
Jefferson V OldroydItalyIvan Magalhaes RENEWAL
Costa Q WhobreyRussiaStephen Shaw PROPOSAL
Sinclair N SchemmerRussiaElwin Sharvill PROPOSAL
Salvatore O OstroskyUnited KingdomAsiya Javayant RENEWAL
Maisha F FollerRussiaElwin Sharvill NEW
Maisha U MacleadIndiaStephen Shaw QUALIFIED
Antonio A NickaGermanyXuxue Feng QUALIFIED
Salvatore F StockhamItalyIvan Magalhaes PROPOSAL
Claire I StensethBrazilAmy Elsner QUALIFIED
Rodrigues L FlosiFranceIoni Bowcher NEGOTIATION
Misaki Q StensethGermanyOnyama Limba NEGOTIATION
Alejandro J RutaGermanyAmy Elsner QUALIFIED
Isabel R PoquetteSpainOnyama Limba UNQUALIFIED
Jones M GillianArgentinaIoni Bowcher NEGOTIATION
Misaki Z CaudyCanadaBernardo Dominic PROPOSAL
Ivar O SlusarskiRussiaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Ivar U DoeRussiaOnyama Limba NEW
Jefferson B FlosiJapanBernardo Dominic PROPOSAL
Aditya D GlickBrazilIvan Magalhaes PROPOSAL
Maria D BologniaUnited KingdomXuxue Feng UNQUALIFIED
Morrow P KolmetzAustraliaAsiya Javayant QUALIFIED
Clifford S WieserSpainXuxue Feng NEW
Clifford S FerenczJapanIvan Magalhaes RENEWAL
Julie S CaldareraJapanXuxue Feng QUALIFIED
Morrow W StockhamArgentinaAnna Fali NEW
Isabel D SlusarskiGermanyBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja I WieserIndia2024-05-19Chemel, James L Cpa NEGOTIATION51Bernardo Dominic
1001Mujtaba Z AmigonSpain2024-05-09Feltz Printing Service NEGOTIATION43Anna Fali
1002Arvin K BologniaRussia2024-05-26Chapman, Ross E Esq PROPOSAL17Anna Fali
1003Julie Q TollnerCanada2024-05-06Printing Dimensions NEW56Onyama Limba
1004Greenwood T StockhamBrazil2024-05-22Rousseaux, Michael Esq RENEWAL73Elwin Sharvill
1005Jones Q NickaBrazil2024-05-19Dorl, James J Esq NEGOTIATION91Xuxue Feng
1006Salvatore L DilliardSpain2024-05-07Dorl, James J Esq QUALIFIED42Anna Fali
1007Rodrigues G ShinkoUnited Kingdom2024-05-07Feltz Printing Service UNQUALIFIED27Amy Elsner
1008Jones W FerenczAustralia2024-05-23Morlong Associates NEGOTIATION61Anna Fali
1009Mayumi A FigeroaFrance2024-04-30Morlong Associates RENEWAL78Bernardo Dominic
1010Tony P SaylorsAustralia2024-05-23Printing Dimensions QUALIFIED7Ioni Bowcher
1011Costa U NestleIndia2024-05-08Rangoni Of Florence UNQUALIFIED89Amy Elsner
1012Misaki P OstroskySpain2024-05-09Feiner Bros RENEWAL81Anna Fali
1013Adams S PaprockiBrazil2024-04-29Chanay, Jeffrey A Esq NEGOTIATION37Asiya Javayant
1014Jeanfrancois S NickaSpain2024-05-22Commercial Press PROPOSAL26Amy Elsner
1015Faith Q FollerUnited Kingdom2024-05-01King, Christopher A Esq QUALIFIED64Anna Fali
1016Stacey P OldroydItaly2024-05-03Printing Dimensions UNQUALIFIED28Onyama Limba
1017Jefferson U StensethRussia2024-05-02Rousseaux, Michael Esq PROPOSAL45Xuxue Feng
1018Chavez M BriddickUnited Kingdom2024-05-21Feltz Printing Service NEW21Xuxue Feng
1019Rodrigues V MaletBrazil2024-05-08Dorl, James J Esq NEGOTIATION75Xuxue Feng
1020Johnson R TollnerAustralia2024-05-10Feltz Printing Service NEW57Amy Elsner
1021Kaitlin E DilliardItaly2024-04-30Buckley Miller Wright RENEWAL32Bernardo Dominic
1022Kadeem O GillianJapan2024-05-21Rousseaux, Michael Esq QUALIFIED27Ivan Magalhaes
1023Johnson Z MorascaSpain2024-04-29Chapman, Ross E Esq UNQUALIFIED79Onyama Limba
1024Wickens I ButtBrazil2024-05-14Morlong Associates UNQUALIFIED89Elwin Sharvill
1025Faith H SchemmerUnited Kingdom2024-05-03Rousseaux, Michael Esq NEGOTIATION81Onyama Limba
1026Leja U SlusarskiJapan2024-05-10Buckley Miller Wright UNQUALIFIED6Onyama Limba
1027Jennifer L InouyeItaly2024-05-04Chemel, James L Cpa UNQUALIFIED5Asiya Javayant
1028Adams U AlbaresJapan2024-05-20Chemel, James L Cpa QUALIFIED33Elwin Sharvill
1029Mujtaba A TollnerRussia2024-04-28Printing Dimensions PROPOSAL76Ioni Bowcher
1030Tony W TollnerCanada2024-05-07Printing Dimensions UNQUALIFIED25Bernardo Dominic
1031Aruna J BowleyIndia2024-05-15Morlong Associates RENEWAL11Ivan Magalhaes
1032Adams F MorascaIndia2024-05-12Truhlar And Truhlar Attys RENEWAL75Amy Elsner
1033Antonio X MorascaRussia2024-05-18Chemel, James L Cpa NEW27Anna Fali
1034Juan J StockhamItaly2024-05-13Rangoni Of Florence NEGOTIATION73Ivan Magalhaes
1035Aika B RutaGermany2024-05-22Printing Dimensions UNQUALIFIED83Anna Fali
1036Julie Z GauchoUnited Kingdom2024-05-05Buckley Miller Wright NEGOTIATION81Onyama Limba
1037Nicolas I FigeroaFrance2024-05-07Chapman, Ross E Esq UNQUALIFIED79Ioni Bowcher
1038Maria E AlbaresFrance2024-05-26Rangoni Of Florence NEGOTIATION61Amy Elsner
1039Tony S InouyeGermany2024-05-01Commercial Press PROPOSAL13Asiya Javayant
1040Nicolas I VocelkaJapan2024-05-11Dorl, James J Esq NEW28Asiya Javayant
1041Munro V DarakjyGermany2024-05-23Rangoni Of Florence QUALIFIED8Bernardo Dominic
1042Silvio I InouyeSpain2024-04-28Chemel, James L Cpa QUALIFIED53Amy Elsner
1043Ashley J RulapaughFrance2024-05-26Chapman, Ross E Esq UNQUALIFIED64Amy Elsner
1044Faith B PoquetteGermany2024-05-02Rangoni Of Florence RENEWAL45Stephen Shaw
1045Claire W StensethBrazil2024-04-29Chemel, James L Cpa UNQUALIFIED0Ioni Bowcher
1046Johnson E StockhamFrance2024-05-09Chanay, Jeffrey A Esq QUALIFIED72Anna Fali
1047David G MaletSpain2024-05-10King, Christopher A Esq QUALIFIED53Onyama Limba
1048Antonio T CaldareraAustralia2024-05-22Truhlar And Truhlar Attys RENEWAL15Onyama Limba
1049Tony F MacleadJapan2024-05-02Morlong Associates QUALIFIED65Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Adams O ChuiUnited KingdomIoni Bowcher NEGOTIATION
Jefferson O TollnerIndiaStephen Shaw QUALIFIED
Leon U KuskoJapanAnna Fali QUALIFIED
Adams G FollerSpainAsiya Javayant UNQUALIFIED
Jefferson Y TollnerFranceXuxue Feng QUALIFIED
Sinclair W OstroskyBrazilStephen Shaw UNQUALIFIED
Julie R VenereItalyAnna Fali QUALIFIED
Costa M DarakjyAustraliaIvan Magalhaes PROPOSAL
Isabel F GlickSpainIvan Magalhaes UNQUALIFIED
Maisha A OldroydGermanyIoni Bowcher UNQUALIFIED
Kadeem L MaletJapanStephen Shaw QUALIFIED
Ashley U GillianSpainAsiya Javayant NEW
Chavez N VocelkaUnited KingdomIvan Magalhaes NEGOTIATION
Wickens C ButtJapanIvan Magalhaes RENEWAL
Johnson Z OldroydAustraliaBernardo Dominic PROPOSAL
Darci Y FerenczBrazilElwin Sharvill NEGOTIATION
Murillo K BowleyUnited KingdomIoni Bowcher NEW
Leon N NickaArgentinaAnna Fali RENEWAL
Munro E PaprockiCanadaStephen Shaw PROPOSAL
David R MarrierCanadaAsiya Javayant QUALIFIED
Aika T RutaGermanyAnna Fali PROPOSAL
David S CaldareraSpainIoni Bowcher PROPOSAL
Deepesh P WieserItalyIvan Magalhaes UNQUALIFIED
Silvio V AlbaresGermanyOnyama Limba NEW
David P CaldareraJapanXuxue Feng QUALIFIED
Wickens X GauchoJapanXuxue Feng NEGOTIATION
Jones I GauchoRussiaAsiya Javayant RENEWAL
Greenwood I OstroskyAustraliaAmy Elsner NEW
Smith Y DilliardRussiaIoni Bowcher PROPOSAL
Aruna N AlbaresSpainAmy Elsner PROPOSAL
Izzy Z VenereUnited KingdomStephen Shaw NEGOTIATION
Silvio Y KolmetzAustraliaBernardo Dominic RENEWAL
Kaitlin H MarrierCanadaAmy Elsner NEGOTIATION
Mayumi Z RulapaughAustraliaXuxue Feng QUALIFIED
Faith V SergiCanadaStephen Shaw UNQUALIFIED
Antonio L GarufiFranceIoni Bowcher UNQUALIFIED
Alejandro Q GillianJapanAmy Elsner PROPOSAL
Claire S DarakjyAustraliaXuxue Feng UNQUALIFIED
Stacey X KuskoGermanyIoni Bowcher QUALIFIED
David N IturbideIndiaAmy Elsner PROPOSAL
Kaitlin F WhobreyArgentinaElwin Sharvill UNQUALIFIED
Francesco Y FigeroaBrazilElwin Sharvill UNQUALIFIED
Greenwood R MaletIndiaBernardo Dominic QUALIFIED
Jeanfrancois Q CampainArgentinaElwin Sharvill UNQUALIFIED
Ricardo L AmigonJapanXuxue Feng NEGOTIATION
Munro M ShinkoItalyStephen Shaw QUALIFIED
Jefferson P WieserArgentinaBernardo Dominic PROPOSAL
Leon S SlusarskiSpainIvan Magalhaes PROPOSAL
David S PaprockiCanadaXuxue Feng NEW
Octavia N OstroskyItalyElwin Sharvill NEGOTIATION
Frozen Columns
Name
Francesco A Ruta
Antonio L Briddick
Kaitlin B Morasca
Aruna B Malet
Leon X Briddick
David J Foller
Aruna X Nestle
Ricardo S Garufi
Deepesh V Malet
Darci K Shinko
Ricardo H Shinko
David G Darakjy
Julie T Stockham
Adams K Ruta
Mayumi G Paprocki
Claire M Malet
James Z Rim
Octavia O Maclead
Nicolas S Flosi
Deepesh C Flosi
Izzy U Foller
Leon P Stockham
Jeanfrancois V Whobrey
Nicolas J Kusko
Sinclair D Darakjy
Ricardo Y Tollner
Emily E Garufi
Antonio Z Darakjy
Octavia I Shinko
Wickens Y Waycott
Rodrigues L Malet
Ashley E Gillian
Ashley J Dilliard
Stacey L Bowley
Morrow E Venere
Isabel M Kolmetz
Maisha E Stenseth
Adams W Bowley
Antonio E Poquette
Nicolas H Whobrey
Darci C Foller
Faith Y Royster
Munro P Garufi
Chavez C Tollner
Stacey H Vocelka
Leja L Iturbide
Murillo G Sergi
Ricardo X Gaucho
Rodrigues Q Paprocki
Rodrigues S Garufi
IdCountryDate
1000Australia2024-05-25
1001Argentina2024-05-19
1002India2024-05-08
1003United Kingdom2024-05-27
1004Argentina2024-05-01
1005Japan2024-05-07
1006Brazil2024-05-11
1007Spain2024-05-13
1008Japan2024-05-15
1009Spain2024-05-11
1010India2024-05-25
1011Argentina2024-05-22
1012Japan2024-05-22
1013Canada2024-05-24
1014France2024-05-06
1015France2024-05-13
1016Germany2024-05-24
1017Australia2024-05-02
1018Germany2024-05-16
1019Spain2024-05-13
1020Japan2024-05-04
1021Russia2024-05-02
1022India2024-05-13
1023India2024-04-29
1024Argentina2024-05-16
1025Brazil2024-05-21
1026United Kingdom2024-05-11
1027Germany2024-05-07
1028Germany2024-05-17
1029India2024-05-08
1030Brazil2024-05-20
1031Germany2024-05-15
1032India2024-05-05
1033Germany2024-05-10
1034Argentina2024-05-17
1035Spain2024-05-12
1036France2024-05-19
1037Italy2024-05-24
1038Germany2024-05-22
1039Brazil2024-05-07
1040Canada2024-05-06
1041France2024-05-06
1042Italy2024-05-12
1043Italy2024-05-18
1044Australia2024-05-01
1045France2024-05-11
1046Spain2024-05-02
1047Germany2024-05-14
1048Spain2024-05-05
1049Australia2024-05-08

On-Demand Data

NameIdCountryDate
Juan L Flosi1000Spain2024-05-27
Murillo K Butt1001France2024-05-18
Octavia B Stenseth1002Russia2024-05-26
Tony I Slusarski1003Argentina2024-05-17
Wickens K Iturbide1004Canada2024-05-02
Jennifer B Venere1005Germany2024-05-12
Chavez I Rim1006Argentina2024-05-23
Faith Z Dilliard1007Spain2024-05-10
Jefferson U Figeroa1008Italy2024-05-05
Mujtaba H Campain1009France2024-04-30
Salvatore G Saylors1010United Kingdom2024-05-24
Juan P Dilliard1011Russia2024-05-16
Murillo I Tollner1012Brazil2024-05-24
Francesco D Tollner1013France2024-05-14
Claire O Royster1014Australia2024-05-09
Costa Y Saylors1015Argentina2024-05-11
Ricardo Y Rulapaugh1016Spain2024-05-08
Cody R Wieser1017Italy2024-05-10
Francesco U Foller1018United Kingdom2024-05-02
Isabel O Doe1019Spain2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi P KuskoFranceAmy Elsner QUALIFIED
Ivar U FollerRussiaBernardo Dominic NEGOTIATION
Ricardo C InouyeJapanOnyama Limba RENEWAL
Leja Z GillianSpainAsiya Javayant PROPOSAL
Kaitlin G FollerGermanyAnna Fali RENEWAL
Murillo O RimBrazilIoni Bowcher UNQUALIFIED
David V IturbideUnited KingdomAmy Elsner PROPOSAL
Rodrigues Q MarrierRussiaOnyama Limba NEGOTIATION
Isabel E BologniaSpainAnna Fali PROPOSAL
Greenwood A BriddickRussiaAsiya Javayant NEGOTIATION
Misaki Y WhobreySpainIoni Bowcher QUALIFIED
Wickens M ShinkoArgentinaIvan Magalhaes RENEWAL
Isabel V WhobreyItalyIoni Bowcher UNQUALIFIED
Greenwood M InouyeBrazilXuxue Feng NEGOTIATION
Chavez L RoysterUnited KingdomStephen Shaw NEW
Cody P MarrierCanadaStephen Shaw PROPOSAL
Nicolas T PerinBrazilBernardo Dominic NEW
Murillo M GauchoCanadaAnna Fali PROPOSAL
Nicolas A OstroskyGermanyAnna Fali NEGOTIATION
Kadeem Y BologniaIndiaAsiya Javayant UNQUALIFIED
Clifford Y NickaAustraliaXuxue Feng NEW
Johnson T WieserUnited KingdomBernardo Dominic UNQUALIFIED
Alejandro J ButtCanadaBernardo Dominic RENEWAL
Jennifer I StensethItalyOnyama Limba PROPOSAL
Johnson T VenereRussiaAmy Elsner NEW
Deepesh J FlosiCanadaXuxue Feng RENEWAL
Leja D WieserCanadaElwin Sharvill NEW
Munro G DilliardBrazilAmy Elsner NEW
Rodrigues V GlickJapanIoni Bowcher UNQUALIFIED
Claire W AlbaresJapanAsiya Javayant RENEWAL
Alejandro R ShinkoBrazilElwin Sharvill NEW
James B CaldareraBrazilXuxue Feng UNQUALIFIED
Mayumi E TollnerBrazilIvan Magalhaes QUALIFIED
Nicolas F NestleSpainAmy Elsner QUALIFIED
Morrow D MaletGermanyAnna Fali NEW
Leon Q OldroydFranceAnna Fali PROPOSAL
Juan R DilliardCanadaBernardo Dominic NEW
Jennifer Z SchemmerJapanAmy Elsner QUALIFIED
Claire S StockhamBrazilIvan Magalhaes PROPOSAL
Julie Y CaldareraUnited KingdomAsiya Javayant 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>