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
Misaki Z ChuiCanadaAsiya Javayant PROPOSAL
Claire T DoeArgentinaAsiya Javayant QUALIFIED
Jennifer F SergiItalyStephen Shaw PROPOSAL
Johnson Z WhobreyGermanyXuxue Feng PROPOSAL
Chavez X InouyeGermanyStephen Shaw UNQUALIFIED
Tony X PoquetteJapanAsiya Javayant PROPOSAL
Aika I KolmetzItalyAmy Elsner NEW
Aruna I MaletFranceIvan Magalhaes PROPOSAL
Arvin A FigeroaBrazilBernardo Dominic QUALIFIED
Alejandro F MarrierArgentinaAsiya Javayant NEGOTIATION
Francesco Z TollnerBrazilAsiya Javayant QUALIFIED
Adams F WhobreyRussiaAnna Fali UNQUALIFIED
Juan O SlusarskiFranceIoni Bowcher NEW
Sinclair X OstroskyFranceAnna Fali UNQUALIFIED
Leja Y CaldareraArgentinaBernardo Dominic NEGOTIATION
Mayumi W StockhamJapanAsiya Javayant RENEWAL
Francesco W StensethAustraliaXuxue Feng PROPOSAL
Jeanfrancois W KuskoJapanIoni Bowcher NEGOTIATION
Stacey O RutaBrazilOnyama Limba NEW
Jeanfrancois U IturbideCanadaIvan Magalhaes UNQUALIFIED
Antonio F WieserJapanStephen Shaw NEW
Ricardo P BologniaUnited KingdomIvan Magalhaes PROPOSAL
Jones J InouyeUnited KingdomStephen Shaw PROPOSAL
Kadeem K NestleUnited KingdomBernardo Dominic QUALIFIED
Maisha W CaldareraGermanyStephen Shaw NEW
Jeanfrancois Q TollnerArgentinaBernardo Dominic NEGOTIATION
Greenwood Z DarakjySpainAnna Fali RENEWAL
Leon I FollerBrazilXuxue Feng NEW
Salvatore O ButtJapanAnna Fali UNQUALIFIED
Jennifer H FerenczAustraliaBernardo Dominic UNQUALIFIED
Arvin Q ChuiArgentinaStephen Shaw NEW
Ashley D CaudyAustraliaAsiya Javayant QUALIFIED
Costa N SlusarskiItalyOnyama Limba PROPOSAL
Clifford P FollerAustraliaXuxue Feng RENEWAL
Arvin W WaycottRussiaAnna Fali QUALIFIED
Izzy Y SergiArgentinaIvan Magalhaes NEGOTIATION
Mujtaba L MacleadAustraliaAnna Fali PROPOSAL
Sinclair F CaudyAustraliaIoni Bowcher PROPOSAL
Isabel F GarufiRussiaAnna Fali UNQUALIFIED
Aditya O MorascaJapanElwin Sharvill PROPOSAL
Ricardo W ShinkoFranceBernardo Dominic QUALIFIED
Mujtaba M CampainJapanIoni Bowcher QUALIFIED
Wickens A NickaAustraliaAmy Elsner NEW
Costa W WhobreyItalyElwin Sharvill NEGOTIATION
Juan A PaprockiIndiaStephen Shaw QUALIFIED
Jeanfrancois Y RoysterArgentinaOnyama Limba UNQUALIFIED
Murillo T RutaCanadaAmy Elsner RENEWAL
Silvio O FlosiJapanStephen Shaw QUALIFIED
Tony C TollnerUnited KingdomOnyama Limba RENEWAL
Chavez B KolmetzArgentinaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Smith H DarakjySpainBernardo Dominic RENEWAL
Izzy R AlbaresIndiaXuxue Feng NEGOTIATION
Costa H CaudySpainOnyama Limba UNQUALIFIED
David U FollerIndiaIvan Magalhaes QUALIFIED
Alejandro Q AmigonIndiaAnna Fali UNQUALIFIED
Salvatore O GillianFranceXuxue Feng PROPOSAL
Emily G StensethArgentinaAsiya Javayant UNQUALIFIED
Maisha X RutaBrazilAmy Elsner NEW
Chavez Q VenereGermanyBernardo Dominic QUALIFIED
Emily L ShinkoAustraliaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria M MaletUnited Kingdom2024-05-15Dorl, James J Esq NEGOTIATION93Anna Fali
1001Rodrigues I MarrierJapan2024-05-25Feiner Bros UNQUALIFIED46Anna Fali
1002Murillo V OldroydGermany2024-04-30Printing Dimensions QUALIFIED66Xuxue Feng
1003Jefferson X StensethJapan2024-05-17Commercial Press NEW63Bernardo Dominic
1004Aruna B MorascaJapan2024-05-23Truhlar And Truhlar Attys NEW63Amy Elsner
1005Izzy X DoeArgentina2024-05-18King, Christopher A Esq PROPOSAL14Xuxue Feng
1006David B AmigonArgentina2024-05-11Chapman, Ross E Esq NEW59Onyama Limba
1007Aditya H GauchoCanada2024-05-04Dorl, James J Esq UNQUALIFIED18Elwin Sharvill
1008Stacey M GauchoSpain2024-05-20Morlong Associates RENEWAL67Ivan Magalhaes
1009Sinclair H BowleyFrance2024-05-23Benton, John B Jr QUALIFIED38Ioni Bowcher
1010Deepesh G GarufiBrazil2024-05-23Rangoni Of Florence RENEWAL21Amy Elsner
1011Morrow F SlusarskiRussia2024-05-27Commercial Press NEW75Amy Elsner
1012Ricardo C FigeroaJapan2024-05-07Buckley Miller Wright PROPOSAL87Ivan Magalhaes
1013Morrow H MarrierArgentina2024-05-19Truhlar And Truhlar Attys PROPOSAL0Amy Elsner
1014Izzy H SchemmerItaly2024-05-19Chemel, James L Cpa RENEWAL57Ivan Magalhaes
1015Izzy Q PerinRussia2024-05-22Printing Dimensions QUALIFIED9Elwin Sharvill
1016Francesco R RimSpain2024-05-17Rangoni Of Florence UNQUALIFIED77Onyama Limba
1017Ricardo S RulapaughJapan2024-05-15King, Christopher A Esq NEW23Anna Fali
1018Greenwood U PerinSpain2024-05-07Dorl, James J Esq RENEWAL6Xuxue Feng
1019Ricardo M StensethAustralia2024-04-28Dorl, James J Esq UNQUALIFIED87Amy Elsner
1020Antonio A SchemmerSpain2024-05-04Printing Dimensions RENEWAL4Amy Elsner
1021Costa C GarufiCanada2024-05-20Dorl, James J Esq UNQUALIFIED45Bernardo Dominic
1022Salvatore Q BowleyItaly2024-05-07Feiner Bros UNQUALIFIED42Ivan Magalhaes
1023Isabel N BriddickBrazil2024-05-06King, Christopher A Esq RENEWAL39Amy Elsner
1024Deepesh V StensethRussia2024-05-25King, Christopher A Esq NEW48Onyama Limba
1025Izzy T GauchoIndia2024-05-02Printing Dimensions PROPOSAL94Asiya Javayant
1026Jeanfrancois L IturbideCanada2024-05-05Benton, John B Jr QUALIFIED42Stephen Shaw
1027Darci S ButtFrance2024-05-18Morlong Associates RENEWAL32Bernardo Dominic
1028Clifford C CampainSpain2024-05-09Chemel, James L Cpa QUALIFIED65Xuxue Feng
1029Julie S InouyeArgentina2024-05-25Rangoni Of Florence RENEWAL84Ivan Magalhaes
1030Mujtaba N KuskoJapan2024-05-01Printing Dimensions PROPOSAL62Amy Elsner
1031Arvin A WieserRussia2024-05-27King, Christopher A Esq PROPOSAL92Amy Elsner
1032Clifford P FerenczCanada2024-05-20Feltz Printing Service NEW62Anna Fali
1033Isabel W MaletRussia2024-05-12Commercial Press UNQUALIFIED26Asiya Javayant
1034Darci G RoysterJapan2024-04-29Chanay, Jeffrey A Esq RENEWAL68Elwin Sharvill
1035Johnson T KuskoArgentina2024-05-20Buckley Miller Wright UNQUALIFIED79Xuxue Feng
1036Jefferson J CampainItaly2024-05-06Rousseaux, Michael Esq NEW68Ivan Magalhaes
1037Adams Y KuskoArgentina2024-05-24Rangoni Of Florence UNQUALIFIED86Bernardo Dominic
1038Cody P CaldareraFrance2024-04-30Feiner Bros RENEWAL96Asiya Javayant
1039Aruna V PoquetteFrance2024-05-12Dorl, James J Esq QUALIFIED53Asiya Javayant
1040Aika N FollerBrazil2024-05-11Benton, John B Jr QUALIFIED38Bernardo Dominic
1041Deepesh L RoysterIndia2024-05-08Chapman, Ross E Esq NEW17Onyama Limba
1042Aditya E MarrierCanada2024-04-30Morlong Associates UNQUALIFIED44Ioni Bowcher
1043Costa P ShinkoIndia2024-05-12Truhlar And Truhlar Attys NEW67Ivan Magalhaes
1044Octavia W RoysterAustralia2024-05-12Commercial Press RENEWAL33Ioni Bowcher
1045Rodrigues U OstroskyGermany2024-05-02Chanay, Jeffrey A Esq PROPOSAL67Ioni Bowcher
1046Smith Z GlickAustralia2024-05-17Commercial Press UNQUALIFIED55Ioni Bowcher
1047Jennifer F AlbaresCanada2024-05-06Buckley Miller Wright RENEWAL88Anna Fali
1048Murillo G VocelkaAustralia2024-05-07Feiner Bros RENEWAL35Asiya Javayant
1049Alejandro J MacleadIndia2024-05-26Benton, John B Jr UNQUALIFIED30Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Jennifer F WhobreyArgentinaAnna Fali PROPOSAL
Salvatore F KolmetzUnited KingdomBernardo Dominic RENEWAL
Faith X WaycottArgentinaOnyama Limba PROPOSAL
Maisha A MaletCanadaIvan Magalhaes PROPOSAL
Greenwood E GlickSpainAnna Fali PROPOSAL
Maria E PerinBrazilAsiya Javayant NEGOTIATION
Chavez P KolmetzCanadaAmy Elsner QUALIFIED
Jefferson N FollerGermanyAnna Fali RENEWAL
Smith A InouyeGermanyElwin Sharvill NEGOTIATION
Leja F VocelkaJapanElwin Sharvill UNQUALIFIED
Sinclair K SlusarskiUnited KingdomBernardo Dominic QUALIFIED
Mayumi B IturbideBrazilAsiya Javayant RENEWAL
Francesco P ShinkoRussiaAnna Fali NEGOTIATION
Jennifer L RoysterCanadaAnna Fali PROPOSAL
Deepesh R NestleIndiaBernardo Dominic QUALIFIED
Kaitlin C SlusarskiSpainXuxue Feng QUALIFIED
Jefferson C FigeroaBrazilAnna Fali UNQUALIFIED
Arvin L ButtFranceBernardo Dominic UNQUALIFIED
Nicolas C SlusarskiSpainIvan Magalhaes PROPOSAL
Mujtaba U MorascaIndiaAmy Elsner PROPOSAL
Octavia G OstroskyItalyXuxue Feng RENEWAL
Alejandro R WhobreyFranceIvan Magalhaes NEW
Adams I WieserSpainStephen Shaw QUALIFIED
Octavia E VocelkaFranceXuxue Feng PROPOSAL
Rodrigues R DilliardAustraliaStephen Shaw RENEWAL
Cody R GarufiBrazilAmy Elsner RENEWAL
Morrow B WhobreyUnited KingdomElwin Sharvill QUALIFIED
Mujtaba W MarrierItalyOnyama Limba NEGOTIATION
Izzy O BriddickJapanAnna Fali QUALIFIED
Julie W OldroydItalyStephen Shaw RENEWAL
Johnson R WieserIndiaIoni Bowcher UNQUALIFIED
Adams O KolmetzAustraliaXuxue Feng RENEWAL
David F GillianJapanAsiya Javayant UNQUALIFIED
Sinclair R BowleyItalyXuxue Feng UNQUALIFIED
Chavez A OstroskyRussiaStephen Shaw PROPOSAL
Emily N CampainUnited KingdomStephen Shaw NEW
Tony P GarufiArgentinaIvan Magalhaes PROPOSAL
Greenwood M WhobreySpainAsiya Javayant QUALIFIED
Antonio B MacleadBrazilXuxue Feng QUALIFIED
Jefferson B VenereItalyStephen Shaw RENEWAL
Antonio G FigeroaIndiaAmy Elsner NEGOTIATION
Deepesh P DilliardItalyBernardo Dominic RENEWAL
Alejandro W FigeroaSpainElwin Sharvill NEGOTIATION
Salvatore C BriddickFranceAsiya Javayant UNQUALIFIED
Octavia F PaprockiAustraliaIvan Magalhaes NEGOTIATION
Leja Y NickaGermanyIoni Bowcher QUALIFIED
Aditya T RimGermanyIvan Magalhaes QUALIFIED
Rodrigues V CaldareraFranceBernardo Dominic NEW
Ricardo A SergiSpainStephen Shaw UNQUALIFIED
Claire D WaycottCanadaAsiya Javayant RENEWAL
Frozen Columns
Name
Izzy L Kusko
Chavez I Malet
Silvio C Shinko
Juan P Paprocki
Mayumi Y Morasca
Jefferson B Rulapaugh
Leja T Saylors
Sinclair S Campain
Claire U Maclead
Claire L Foller
Maisha Q Glick
Tony F Inouye
Jennifer B Foller
Nicolas T Saylors
Silvio R Wieser
Smith R Sergi
Misaki Y Gillian
Alejandro H Iturbide
Stacey P Nestle
Maisha W Amigon
James K Kolmetz
Faith L Doe
Stacey Q Darakjy
Alejandro A Caldarera
Salvatore C Foller
Ricardo N Bolognia
Jones N Schemmer
Maria R Rulapaugh
Leon I Amigon
Julie X Chui
Aditya D Stockham
Tony J Schemmer
Wickens T Stenseth
Wickens F Bolognia
Emily A Iturbide
Jefferson J Vocelka
Darci U Bolognia
Antonio K Glick
Leon I Royster
Jeanfrancois A Inouye
James J Shinko
Wickens O Marrier
Rodrigues R Kusko
Julie L Schemmer
Sinclair A Bowley
Jones W Gillian
Stacey V Stenseth
Isabel D Gaucho
Isabel G Amigon
Jennifer U Iturbide
IdCountryDate
1000France2024-04-30
1001India2024-05-15
1002Australia2024-05-23
1003Spain2024-05-12
1004France2024-05-09
1005Australia2024-05-11
1006France2024-05-23
1007United Kingdom2024-05-15
1008Australia2024-05-13
1009Argentina2024-05-21
1010Japan2024-05-25
1011Canada2024-04-28
1012Brazil2024-05-10
1013Brazil2024-05-26
1014United Kingdom2024-05-24
1015Germany2024-05-25
1016Japan2024-05-26
1017France2024-05-04
1018Germany2024-05-19
1019Brazil2024-05-11
1020Russia2024-05-08
1021Brazil2024-04-30
1022Canada2024-05-03
1023Spain2024-04-29
1024Canada2024-04-28
1025France2024-05-09
1026Russia2024-05-20
1027Japan2024-05-17
1028Italy2024-05-23
1029Italy2024-05-10
1030Italy2024-05-03
1031Spain2024-05-23
1032Japan2024-04-28
1033Spain2024-05-21
1034Russia2024-05-05
1035Brazil2024-05-15
1036Italy2024-05-07
1037Italy2024-05-10
1038India2024-05-19
1039Brazil2024-05-16
1040India2024-04-30
1041India2024-05-26
1042Russia2024-05-03
1043France2024-05-22
1044Canada2024-05-09
1045Germany2024-05-09
1046Australia2024-05-04
1047Russia2024-05-03
1048Spain2024-05-02
1049Argentina2024-05-27

On-Demand Data

NameIdCountryDate
Sinclair A Wieser1000Japan2024-05-22
David W Amigon1001France2024-04-28
Deepesh Z Briddick1002Canada2024-04-28
Morrow K Wieser1003Russia2024-05-10
Johnson C Royster1004Canada2024-04-28
Johnson B Bowley1005Australia2024-04-30
Aruna W Doe1006India2024-05-13
Smith D Vocelka1007Canada2024-05-23
Silvio E Caldarera1008Brazil2024-05-09
Rodrigues H Ruta1009Brazil2024-05-02
Maisha W Bolognia1010United Kingdom2024-05-07
Jefferson B Malet1011Brazil2024-05-06
Tony Q Inouye1012United Kingdom2024-04-29
Munro C Nestle1013Germany2024-04-29
Costa C Stenseth1014Argentina2024-04-28
Julie S Ostrosky1015Germany2024-05-02
Adams Q Caudy1016Russia2024-05-20
Adams R Tollner1017Japan2024-05-01
Alejandro O Rim1018India2024-05-20
Isabel S Paprocki1019Argentina2024-05-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco T TollnerGermanyElwin Sharvill UNQUALIFIED
Mayumi C MarrierSpainAsiya Javayant NEGOTIATION
Maria R SergiItalyOnyama Limba RENEWAL
Izzy K BologniaCanadaStephen Shaw UNQUALIFIED
Mujtaba I SchemmerAustraliaIoni Bowcher UNQUALIFIED
Isabel O GarufiArgentinaStephen Shaw UNQUALIFIED
Costa D VocelkaGermanyXuxue Feng NEGOTIATION
Murillo Z GauchoItalyAnna Fali UNQUALIFIED
Misaki N WieserArgentinaAmy Elsner NEW
Silvio N WaycottJapanOnyama Limba RENEWAL
Deepesh G SchemmerAustraliaAmy Elsner UNQUALIFIED
Stacey J AlbaresSpainAmy Elsner RENEWAL
Mayumi B WieserJapanElwin Sharvill PROPOSAL
Clifford U NickaFranceAmy Elsner RENEWAL
Smith H AmigonAustraliaAsiya Javayant NEW
David B VocelkaArgentinaBernardo Dominic RENEWAL
Izzy W GarufiRussiaIoni Bowcher PROPOSAL
Nicolas B BriddickSpainAsiya Javayant PROPOSAL
Alejandro T AmigonJapanIoni Bowcher NEGOTIATION
Darci M IturbideIndiaAsiya Javayant UNQUALIFIED
Claire Q KuskoGermanyStephen Shaw PROPOSAL
Leja Y StockhamCanadaAmy Elsner PROPOSAL
Nicolas U FlosiBrazilAnna Fali UNQUALIFIED
Isabel E AmigonBrazilAnna Fali NEGOTIATION
Aika B DoeBrazilXuxue Feng RENEWAL
Greenwood M BriddickCanadaElwin Sharvill NEGOTIATION
Emily H CaldareraArgentinaAsiya Javayant NEW
Maisha G MacleadSpainAnna Fali UNQUALIFIED
Silvio L AmigonAustraliaStephen Shaw QUALIFIED
Sinclair P MaletAustraliaIoni Bowcher NEW
Ivar Y StensethCanadaAsiya Javayant QUALIFIED
Costa E GarufiGermanyIvan Magalhaes PROPOSAL
Aruna T IturbideAustraliaIvan Magalhaes NEGOTIATION
Greenwood W KolmetzSpainBernardo Dominic UNQUALIFIED
Clifford K WhobreyRussiaAmy Elsner RENEWAL
Rodrigues X PerinFranceStephen Shaw NEGOTIATION
Jeanfrancois H OstroskySpainXuxue Feng QUALIFIED
Sinclair L InouyeJapanIoni Bowcher NEGOTIATION
Cody N GauchoJapanBernardo Dominic NEW
Aika I IturbideSpainAnna Fali NEGOTIATION

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