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
Munro K RulapaughRussiaBernardo Dominic QUALIFIED
Greenwood S StockhamRussiaAnna Fali NEGOTIATION
Adams E MacleadGermanyIoni Bowcher RENEWAL
Mujtaba C SlusarskiSpainStephen Shaw RENEWAL
Deepesh F BowleyJapanBernardo Dominic NEGOTIATION
Salvatore A PaprockiAustraliaBernardo Dominic UNQUALIFIED
Deepesh Q GillianRussiaAsiya Javayant RENEWAL
Kaitlin F RutaCanadaOnyama Limba QUALIFIED
Aditya M OldroydRussiaStephen Shaw NEGOTIATION
Clifford O DarakjyCanadaAnna Fali NEW
Francesco Q GarufiFranceBernardo Dominic PROPOSAL
Nicolas Q SchemmerJapanOnyama Limba PROPOSAL
Murillo Y RulapaughFranceXuxue Feng NEGOTIATION
Jennifer H GlickRussiaBernardo Dominic QUALIFIED
Misaki D AlbaresArgentinaAsiya Javayant PROPOSAL
Ashley Z NickaUnited KingdomIvan Magalhaes RENEWAL
Leon F TollnerCanadaAsiya Javayant QUALIFIED
Deepesh N DarakjyJapanAmy Elsner NEGOTIATION
Clifford F WaycottBrazilStephen Shaw QUALIFIED
Emily R OstroskyRussiaAmy Elsner UNQUALIFIED
Salvatore J WieserSpainAmy Elsner UNQUALIFIED
James J OstroskyCanadaElwin Sharvill NEW
Octavia N SergiRussiaStephen Shaw RENEWAL
Claire O FollerBrazilStephen Shaw PROPOSAL
Silvio G PerinGermanyAsiya Javayant QUALIFIED
Costa P BriddickSpainOnyama Limba PROPOSAL
Juan X OstroskyCanadaXuxue Feng RENEWAL
Deepesh C StockhamJapanIvan Magalhaes PROPOSAL
Kadeem U FlosiItalyBernardo Dominic UNQUALIFIED
Costa A SchemmerBrazilStephen Shaw NEGOTIATION
Kaitlin T RulapaughIndiaAnna Fali PROPOSAL
Alejandro X KolmetzAustraliaOnyama Limba NEGOTIATION
Ivar W GarufiJapanAmy Elsner NEW
Mujtaba P MorascaFranceBernardo Dominic PROPOSAL
Darci E KuskoFranceIoni Bowcher NEGOTIATION
Cody F GarufiUnited KingdomBernardo Dominic UNQUALIFIED
Maisha G CampainArgentinaAsiya Javayant QUALIFIED
Costa J InouyeIndiaIoni Bowcher NEW
Munro M ButtAustraliaIoni Bowcher RENEWAL
Clifford T PoquetteJapanElwin Sharvill NEGOTIATION
Arvin F CaldareraJapanAmy Elsner NEW
Antonio E AmigonItalyBernardo Dominic PROPOSAL
Izzy P MaletSpainElwin Sharvill PROPOSAL
Jones D DilliardCanadaElwin Sharvill QUALIFIED
Sinclair F DoeIndiaOnyama Limba NEW
Morrow F OldroydSpainStephen Shaw QUALIFIED
Wickens B BologniaBrazilElwin Sharvill UNQUALIFIED
Maisha O DarakjyRussiaStephen Shaw UNQUALIFIED
Aruna T GauchoAustraliaIvan Magalhaes RENEWAL
Jennifer K VocelkaIndiaAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody N IturbideSpainXuxue Feng NEGOTIATION
Aditya Q WhobreySpainOnyama Limba NEW
Antonio X CaldareraBrazilStephen Shaw RENEWAL
Izzy I StensethCanadaOnyama Limba UNQUALIFIED
Rodrigues D SergiUnited KingdomElwin Sharvill NEGOTIATION
Jefferson X WaycottBrazilElwin Sharvill UNQUALIFIED
Aika H VocelkaCanadaAmy Elsner RENEWAL
Rodrigues K CaudyCanadaXuxue Feng NEGOTIATION
Costa N GauchoAustraliaXuxue Feng RENEWAL
Emily M PerinSpainBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas A GlickCanada2024-06-04Buckley Miller Wright NEW8Amy Elsner
1001Chavez G ButtJapan2024-06-03Rousseaux, Michael Esq RENEWAL42Ioni Bowcher
1002Leon E MorascaJapan2024-06-07Morlong Associates RENEWAL11Xuxue Feng
1003Leja P CampainIndia2024-06-12Printing Dimensions RENEWAL88Stephen Shaw
1004Izzy W BriddickUnited Kingdom2024-05-24King, Christopher A Esq QUALIFIED30Xuxue Feng
1005Octavia N PerinBrazil2024-06-02Morlong Associates QUALIFIED2Stephen Shaw
1006Munro H RulapaughGermany2024-06-07Chapman, Ross E Esq NEGOTIATION38Ivan Magalhaes
1007Leja M PoquetteFrance2024-06-22King, Christopher A Esq NEGOTIATION56Elwin Sharvill
1008Johnson K NickaGermany2024-05-26King, Christopher A Esq NEGOTIATION44Bernardo Dominic
1009Isabel L ChuiSpain2024-06-19Rangoni Of Florence UNQUALIFIED3Onyama Limba
1010Murillo B WhobreyGermany2024-06-19Rousseaux, Michael Esq NEGOTIATION42Stephen Shaw
1011Maria V VenereSpain2024-06-06Morlong Associates RENEWAL31Bernardo Dominic
1012Mujtaba Y MacleadAustralia2024-05-31Feiner Bros NEGOTIATION80Ivan Magalhaes
1013Juan O WieserFrance2024-06-02Truhlar And Truhlar Attys PROPOSAL33Asiya Javayant
1014Misaki A AlbaresRussia2024-06-16King, Christopher A Esq PROPOSAL64Ivan Magalhaes
1015Jennifer C RutaRussia2024-06-18Dorl, James J Esq PROPOSAL29Asiya Javayant
1016Aruna O MacleadJapan2024-06-16Benton, John B Jr UNQUALIFIED90Ioni Bowcher
1017Alejandro P FigeroaIndia2024-06-13Dorl, James J Esq NEGOTIATION62Onyama Limba
1018Rodrigues P SchemmerRussia2024-06-13Chapman, Ross E Esq NEGOTIATION34Onyama Limba
1019Arvin X StensethArgentina2024-06-10Rangoni Of Florence NEGOTIATION23Ioni Bowcher
1020Smith V RulapaughSpain2024-06-02Dorl, James J Esq PROPOSAL88Ivan Magalhaes
1021Faith P VenereCanada2024-05-26Feltz Printing Service UNQUALIFIED93Elwin Sharvill
1022Stacey B AlbaresSpain2024-05-29Benton, John B Jr PROPOSAL72Anna Fali
1023Jennifer X MaletArgentina2024-06-18Feiner Bros QUALIFIED91Asiya Javayant
1024Leja O BologniaRussia2024-06-06King, Christopher A Esq UNQUALIFIED89Xuxue Feng
1025Rodrigues S ShinkoIndia2024-05-27Rangoni Of Florence NEW47Ioni Bowcher
1026Adams F StockhamBrazil2024-06-21Feltz Printing Service NEGOTIATION20Bernardo Dominic
1027Emily F ShinkoGermany2024-06-11Truhlar And Truhlar Attys NEGOTIATION14Ioni Bowcher
1028Smith F BriddickSpain2024-05-31Chemel, James L Cpa NEW93Ivan Magalhaes
1029Stacey J PaprockiAustralia2024-05-31Dorl, James J Esq NEW63Asiya Javayant
1030Sinclair U IturbideSpain2024-06-19Commercial Press QUALIFIED51Asiya Javayant
1031Leon G WieserBrazil2024-06-09Dorl, James J Esq PROPOSAL56Xuxue Feng
1032Isabel Z PerinBrazil2024-05-26Printing Dimensions PROPOSAL33Ivan Magalhaes
1033Kaitlin E MacleadGermany2024-06-17King, Christopher A Esq QUALIFIED87Onyama Limba
1034Wickens X BowleyRussia2024-06-20Chanay, Jeffrey A Esq QUALIFIED88Xuxue Feng
1035Claire G PoquetteAustralia2024-06-04Benton, John B Jr NEGOTIATION65Ivan Magalhaes
1036Kaitlin M GillianJapan2024-06-14King, Christopher A Esq QUALIFIED96Onyama Limba
1037Sinclair O GlickGermany2024-06-09Chemel, James L Cpa NEGOTIATION13Ivan Magalhaes
1038Leja J BriddickBrazil2024-06-22Rousseaux, Michael Esq QUALIFIED37Xuxue Feng
1039Rodrigues E NestleJapan2024-06-18King, Christopher A Esq NEW76Ivan Magalhaes
1040Francesco K WieserBrazil2024-06-02Buckley Miller Wright RENEWAL51Stephen Shaw
1041Costa L FollerBrazil2024-06-15Morlong Associates PROPOSAL13Ioni Bowcher
1042Mujtaba I RutaAustralia2024-06-06Feltz Printing Service UNQUALIFIED74Bernardo Dominic
1043Aruna K RulapaughItaly2024-06-04King, Christopher A Esq NEW85Ivan Magalhaes
1044Misaki T AlbaresUnited Kingdom2024-06-10King, Christopher A Esq NEW1Elwin Sharvill
1045Jefferson Y VenereBrazil2024-05-28Rousseaux, Michael Esq NEGOTIATION23Asiya Javayant
1046Isabel C SergiIndia2024-05-24Printing Dimensions NEGOTIATION15Xuxue Feng
1047Sinclair Y KolmetzJapan2024-06-06Buckley Miller Wright PROPOSAL57Elwin Sharvill
1048Salvatore T VocelkaRussia2024-06-04Commercial Press QUALIFIED92Asiya Javayant
1049Salvatore O PoquetteItaly2024-06-20Chemel, James L Cpa PROPOSAL84Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Julie V GauchoGermanyElwin Sharvill NEW
James T AlbaresFranceAnna Fali UNQUALIFIED
Faith O RutaFranceIvan Magalhaes UNQUALIFIED
Aika B DarakjyUnited KingdomXuxue Feng NEGOTIATION
Izzy L GillianItalyOnyama Limba QUALIFIED
Rodrigues F MaletArgentinaBernardo Dominic NEGOTIATION
Octavia O KuskoAustraliaAsiya Javayant UNQUALIFIED
Wickens B MaletAustraliaBernardo Dominic NEW
Johnson P FlosiAustraliaIoni Bowcher NEW
Smith M GillianSpainOnyama Limba QUALIFIED
Aika Q PaprockiRussiaBernardo Dominic NEGOTIATION
Smith H FigeroaFranceIoni Bowcher NEW
Francesco A KolmetzCanadaIvan Magalhaes UNQUALIFIED
Antonio J SlusarskiIndiaElwin Sharvill NEGOTIATION
Murillo S GillianIndiaElwin Sharvill NEW
Juan P NickaFranceBernardo Dominic NEGOTIATION
Munro H MaletGermanyBernardo Dominic QUALIFIED
Morrow P KuskoSpainAmy Elsner NEGOTIATION
Maisha D StockhamArgentinaIvan Magalhaes NEGOTIATION
Costa G MaletGermanyBernardo Dominic QUALIFIED
Darci B PerinRussiaAsiya Javayant PROPOSAL
Juan W DarakjyUnited KingdomIvan Magalhaes PROPOSAL
Kadeem P InouyeItalyIoni Bowcher QUALIFIED
Chavez C PaprockiCanadaOnyama Limba QUALIFIED
Nicolas S ShinkoAustraliaStephen Shaw RENEWAL
Murillo B OldroydItalyAmy Elsner QUALIFIED
Silvio F SergiBrazilAnna Fali RENEWAL
Isabel W MorascaCanadaAsiya Javayant NEGOTIATION
Octavia U FigeroaBrazilAnna Fali RENEWAL
Emily B FlosiItalyXuxue Feng NEGOTIATION
David O SlusarskiFranceAsiya Javayant RENEWAL
Julie D SergiItalyAsiya Javayant QUALIFIED
Ricardo V GillianGermanyStephen Shaw NEW
Chavez P ShinkoJapanBernardo Dominic NEGOTIATION
Deepesh G StockhamCanadaIoni Bowcher QUALIFIED
Mujtaba X IturbideItalyIoni Bowcher QUALIFIED
Isabel J MorascaFranceAmy Elsner QUALIFIED
Kadeem O MacleadAustraliaIoni Bowcher NEGOTIATION
Deepesh S TollnerRussiaAnna Fali NEW
Antonio N IturbideGermanyBernardo Dominic QUALIFIED
Clifford C TollnerBrazilXuxue Feng QUALIFIED
Clifford S VocelkaItalyIoni Bowcher QUALIFIED
Morrow C WhobreyFranceElwin Sharvill PROPOSAL
Juan H CaudyJapanIoni Bowcher RENEWAL
Kaitlin F CaudyUnited KingdomAnna Fali RENEWAL
Morrow I MarrierUnited KingdomAnna Fali UNQUALIFIED
Juan D VenereSpainOnyama Limba PROPOSAL
Costa L TollnerCanadaAmy Elsner UNQUALIFIED
Greenwood Z OstroskyUnited KingdomAnna Fali PROPOSAL
Darci L WhobreyArgentinaAnna Fali PROPOSAL
Frozen Columns
Name
Jeanfrancois F Caldarera
Maria O Rulapaugh
Ricardo W Schemmer
Jones G Caldarera
Tony E Slusarski
Munro N Bowley
Wickens Q Dilliard
Tony S Ferencz
Maisha A Stenseth
Faith I Figeroa
Aika I Whobrey
Claire V Nestle
Costa W Vocelka
Faith C Tollner
Nicolas D Schemmer
Faith C Foller
Alejandro O Schemmer
Faith J Rim
Wickens X Darakjy
Kaitlin R Waycott
Jeanfrancois Q Kolmetz
Sinclair M Malet
Leon F Ostrosky
Costa I Caudy
Deepesh J Figeroa
Maria B Ferencz
Ricardo M Bowley
Salvatore O Poquette
Mayumi I Amigon
Johnson K Briddick
Juan U Kolmetz
Sinclair T Wieser
Julie S Morasca
Kaitlin X Figeroa
Julie E Gillian
Kaitlin S Royster
Adams T Oldroyd
Stacey Q Rim
Ivar Z Wieser
Francesco G Royster
Francesco D Figeroa
Faith L Shinko
Rodrigues L Iturbide
Arvin N Vocelka
Leja P Ostrosky
Ricardo W Bowley
Jones X Oldroyd
Ashley Y Morasca
Claire J Poquette
Tony N Schemmer
IdCountryDate
1000Argentina2024-06-14
1001Australia2024-06-03
1002Canada2024-06-13
1003Japan2024-05-28
1004Germany2024-05-27
1005Spain2024-05-26
1006Spain2024-06-12
1007India2024-06-02
1008Spain2024-06-20
1009India2024-06-09
1010France2024-06-16
1011Spain2024-06-10
1012Australia2024-06-04
1013Argentina2024-06-05
1014Spain2024-06-20
1015Japan2024-06-03
1016France2024-05-26
1017Brazil2024-06-08
1018India2024-05-30
1019Russia2024-06-15
1020Russia2024-06-15
1021Italy2024-06-22
1022Canada2024-06-12
1023Canada2024-06-19
1024Spain2024-06-13
1025Germany2024-05-26
1026Italy2024-05-25
1027Canada2024-06-03
1028Canada2024-06-17
1029India2024-05-30
1030France2024-05-28
1031Canada2024-06-06
1032Argentina2024-06-10
1033Canada2024-06-10
1034Russia2024-05-30
1035Argentina2024-06-09
1036Australia2024-06-13
1037United Kingdom2024-06-17
1038Germany2024-05-30
1039United Kingdom2024-06-13
1040United Kingdom2024-06-21
1041France2024-05-26
1042India2024-05-27
1043Spain2024-06-17
1044United Kingdom2024-06-09
1045Russia2024-05-27
1046Japan2024-06-17
1047Japan2024-05-31
1048Canada2024-06-16
1049Japan2024-05-28

On-Demand Data

NameIdCountryDate
Morrow N Gaucho1000Australia2024-06-04
Emily T Flosi1001Germany2024-05-31
James J Ruta1002Australia2024-06-19
Juan V Chui1003Canada2024-06-16
Francesco Z Venere1004Spain2024-06-04
Faith R Poquette1005Spain2024-06-13
Aruna E Malet1006Japan2024-06-20
Darci B Gaucho1007Japan2024-06-11
James Q Ostrosky1008Argentina2024-06-17
Ivar X Vocelka1009United Kingdom2024-05-28
Octavia K Amigon1010Spain2024-06-05
Aditya N Chui1011United Kingdom2024-06-17
Kaitlin B Marrier1012Argentina2024-06-21
Misaki G Maclead1013France2024-06-18
Silvio F Malet1014Russia2024-05-25
Silvio Y Iturbide1015United Kingdom2024-06-19
Mayumi Y Waycott1016France2024-05-28
Murillo O Foller1017Canada2024-06-09
Murillo W Butt1018Italy2024-06-04
Kadeem W Oldroyd1019Argentina2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony V GarufiAustraliaOnyama Limba NEW
Claire A DarakjyAustraliaStephen Shaw PROPOSAL
Adams F SlusarskiIndiaStephen Shaw RENEWAL
Munro T OldroydBrazilElwin Sharvill PROPOSAL
Jennifer L GillianGermanyIoni Bowcher NEW
James C IturbideArgentinaStephen Shaw RENEWAL
Smith A MorascaIndiaIvan Magalhaes QUALIFIED
Ivar Z TollnerArgentinaAnna Fali QUALIFIED
Octavia Y CampainItalyAnna Fali UNQUALIFIED
Deepesh W MarrierUnited KingdomStephen Shaw NEGOTIATION
Maria A SlusarskiIndiaIoni Bowcher NEW
Aruna E ShinkoIndiaAsiya Javayant QUALIFIED
Leja W TollnerUnited KingdomXuxue Feng PROPOSAL
Aruna E ButtAustraliaElwin Sharvill NEW
Salvatore P GlickJapanOnyama Limba NEGOTIATION
Smith Q SlusarskiBrazilBernardo Dominic PROPOSAL
Jeanfrancois P BologniaAustraliaStephen Shaw QUALIFIED
Jeanfrancois I WaycottItalyOnyama Limba NEGOTIATION
Morrow Q FigeroaSpainIoni Bowcher UNQUALIFIED
Maria E CaldareraFranceElwin Sharvill QUALIFIED
David H KuskoArgentinaXuxue Feng QUALIFIED
Clifford E CampainFranceBernardo Dominic UNQUALIFIED
Jones L GarufiRussiaIoni Bowcher PROPOSAL
Deepesh U PaprockiSpainOnyama Limba QUALIFIED
Francesco P SergiIndiaIvan Magalhaes NEW
Antonio A SlusarskiJapanIoni Bowcher PROPOSAL
Johnson W ChuiFranceOnyama Limba PROPOSAL
Mayumi P PerinJapanElwin Sharvill PROPOSAL
Julie T BowleyUnited KingdomIoni Bowcher RENEWAL
Smith S SlusarskiRussiaAsiya Javayant RENEWAL
Francesco V MorascaBrazilAsiya Javayant PROPOSAL
Deepesh A ButtAustraliaAmy Elsner UNQUALIFIED
Murillo S DilliardFranceStephen Shaw UNQUALIFIED
Kadeem C InouyeItalyOnyama Limba NEW
Izzy W GauchoGermanyAmy Elsner RENEWAL
Aruna S ShinkoUnited KingdomBernardo Dominic RENEWAL
Francesco J GauchoJapanIoni Bowcher NEW
Clifford P BologniaGermanyElwin Sharvill RENEWAL
Faith V WaycottFranceIoni Bowcher UNQUALIFIED
Jennifer V ShinkoItalyXuxue Feng NEW

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