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
Clifford C VenereRussiaIvan Magalhaes NEGOTIATION
Munro N MaletItalyStephen Shaw NEGOTIATION
Emily I SergiIndiaAsiya Javayant PROPOSAL
Kadeem A AmigonFranceAnna Fali PROPOSAL
Leja G RutaJapanXuxue Feng PROPOSAL
Silvio L StockhamJapanAnna Fali QUALIFIED
Smith A BowleyItalyElwin Sharvill RENEWAL
Mujtaba F FollerFranceBernardo Dominic UNQUALIFIED
Julie A WaycottBrazilAsiya Javayant RENEWAL
Isabel M TollnerRussiaXuxue Feng NEW
Cody M WieserRussiaOnyama Limba UNQUALIFIED
Costa Z MaletSpainStephen Shaw NEW
Tony C PoquetteRussiaAnna Fali NEGOTIATION
Antonio S OldroydRussiaElwin Sharvill QUALIFIED
Maria K DoeBrazilIvan Magalhaes QUALIFIED
Aditya C CaldareraJapanAnna Fali NEW
Smith K FerenczItalyXuxue Feng PROPOSAL
Claire J ButtFranceOnyama Limba NEGOTIATION
Isabel B IturbideSpainAsiya Javayant NEW
Salvatore Q RoysterJapanElwin Sharvill PROPOSAL
Arvin D KolmetzIndiaXuxue Feng UNQUALIFIED
Claire B RulapaughIndiaIvan Magalhaes NEW
Aruna S StensethItalyBernardo Dominic RENEWAL
Murillo E GillianItalyAsiya Javayant RENEWAL
Claire C BowleyCanadaAnna Fali NEGOTIATION
Juan A ShinkoRussiaElwin Sharvill NEGOTIATION
Ricardo S PoquetteUnited KingdomXuxue Feng UNQUALIFIED
Aruna R MacleadUnited KingdomIvan Magalhaes UNQUALIFIED
Munro J AmigonGermanyXuxue Feng QUALIFIED
Stacey P FerenczIndiaAmy Elsner NEGOTIATION
Tony I PerinSpainOnyama Limba UNQUALIFIED
Ricardo N BologniaBrazilIoni Bowcher UNQUALIFIED
Jeanfrancois T MaletIndiaAsiya Javayant NEGOTIATION
Arvin R PoquetteIndiaAmy Elsner RENEWAL
Ashley X VocelkaFranceElwin Sharvill NEW
Adams T TollnerRussiaStephen Shaw QUALIFIED
Johnson C CaudyItalyAnna Fali NEW
Chavez S TollnerJapanElwin Sharvill RENEWAL
Adams W GarufiUnited KingdomIoni Bowcher PROPOSAL
Cody C GarufiBrazilIoni Bowcher QUALIFIED
Salvatore X CaldareraBrazilElwin Sharvill QUALIFIED
Smith J WhobreySpainIvan Magalhaes UNQUALIFIED
Maria A FigeroaRussiaBernardo Dominic PROPOSAL
Johnson I WhobreyIndiaElwin Sharvill PROPOSAL
Mayumi W ShinkoSpainIvan Magalhaes NEGOTIATION
Aditya O SchemmerCanadaStephen Shaw QUALIFIED
Darci K OldroydFranceStephen Shaw NEW
Maria O MaletJapanOnyama Limba PROPOSAL
Darci P VenereGermanyAmy Elsner NEGOTIATION
Stacey W RutaJapanOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aruna Q StensethIndiaIoni Bowcher NEGOTIATION
Misaki F FollerSpainAmy Elsner PROPOSAL
Arvin Y GauchoIndiaElwin Sharvill NEW
Faith Z GauchoUnited KingdomElwin Sharvill NEGOTIATION
Jefferson U VenereGermanyAnna Fali QUALIFIED
Chavez U MarrierAustraliaAmy Elsner NEW
Mayumi X GauchoJapanXuxue Feng RENEWAL
Silvio Q VenereJapanAsiya Javayant RENEWAL
Deepesh A SergiBrazilStephen Shaw UNQUALIFIED
Emily J MacleadCanadaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba G InouyeAustralia2024-06-04Commercial Press RENEWAL43Stephen Shaw
1001Clifford K ChuiCanada2024-06-17King, Christopher A Esq NEGOTIATION81Xuxue Feng
1002Johnson G SlusarskiFrance2024-06-20Dorl, James J Esq QUALIFIED83Xuxue Feng
1003Morrow S NestleRussia2024-06-16King, Christopher A Esq NEW64Stephen Shaw
1004Jones G RoysterItaly2024-06-01Truhlar And Truhlar Attys UNQUALIFIED97Amy Elsner
1005Nicolas E BriddickFrance2024-06-08Morlong Associates NEGOTIATION59Anna Fali
1006David S BologniaSpain2024-05-30Chanay, Jeffrey A Esq RENEWAL47Onyama Limba
1007Aika D MorascaCanada2024-05-30Benton, John B Jr QUALIFIED80Onyama Limba
1008Mayumi G SlusarskiItaly2024-06-19Benton, John B Jr NEGOTIATION85Asiya Javayant
1009Maria F FerenczRussia2024-06-23Feltz Printing Service QUALIFIED81Onyama Limba
1010Deepesh D DarakjyIndia2024-06-20Buckley Miller Wright RENEWAL93Ioni Bowcher
1011Octavia C CaldareraRussia2024-06-01Dorl, James J Esq QUALIFIED81Ioni Bowcher
1012Morrow T FigeroaAustralia2024-06-10Chapman, Ross E Esq UNQUALIFIED57Asiya Javayant
1013Clifford P BriddickFrance2024-05-26Chemel, James L Cpa PROPOSAL2Xuxue Feng
1014Maria M MarrierUnited Kingdom2024-06-15Rangoni Of Florence RENEWAL16Asiya Javayant
1015Murillo R ChuiIndia2024-05-31Dorl, James J Esq NEGOTIATION59Ioni Bowcher
1016Munro R IturbideIndia2024-06-11Printing Dimensions NEW9Anna Fali
1017Clifford T FerenczFrance2024-06-07Printing Dimensions PROPOSAL31Asiya Javayant
1018Darci E MarrierFrance2024-06-19Rangoni Of Florence QUALIFIED37Amy Elsner
1019Arvin W MorascaFrance2024-06-05Commercial Press QUALIFIED67Anna Fali
1020Chavez O WieserCanada2024-06-01Commercial Press NEGOTIATION96Anna Fali
1021Murillo R VenereSpain2024-06-16Rousseaux, Michael Esq RENEWAL50Onyama Limba
1022Juan Z RutaIndia2024-06-01Feiner Bros RENEWAL53Elwin Sharvill
1023Munro K RulapaughIndia2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED31Xuxue Feng
1024Emily Q NickaSpain2024-06-12Feltz Printing Service RENEWAL81Bernardo Dominic
1025Misaki A CaldareraCanada2024-06-07Chanay, Jeffrey A Esq NEW49Ioni Bowcher
1026Wickens H KuskoCanada2024-06-05Rangoni Of Florence QUALIFIED34Amy Elsner
1027David P KuskoAustralia2024-06-03Printing Dimensions QUALIFIED8Asiya Javayant
1028Antonio S VenereUnited Kingdom2024-05-27Rousseaux, Michael Esq QUALIFIED30Anna Fali
1029Misaki A DilliardFrance2024-05-31Benton, John B Jr QUALIFIED19Stephen Shaw
1030Clifford Y IturbideAustralia2024-05-26Printing Dimensions UNQUALIFIED49Bernardo Dominic
1031Emily V MarrierIndia2024-06-16Benton, John B Jr NEW94Asiya Javayant
1032Leja R TollnerFrance2024-06-08Truhlar And Truhlar Attys NEGOTIATION57Ioni Bowcher
1033Rodrigues Y BologniaSpain2024-05-27Chemel, James L Cpa NEGOTIATION9Stephen Shaw
1034Arvin B RulapaughBrazil2024-05-30Buckley Miller Wright PROPOSAL20Asiya Javayant
1035Faith W BriddickArgentina2024-06-15Morlong Associates NEGOTIATION56Onyama Limba
1036Sinclair J SchemmerFrance2024-06-23Chemel, James L Cpa NEW96Asiya Javayant
1037Mayumi P RulapaughAustralia2024-05-29Feltz Printing Service PROPOSAL5Ioni Bowcher
1038Kadeem R AmigonGermany2024-06-18Commercial Press UNQUALIFIED48Anna Fali
1039Cody E TollnerUnited Kingdom2024-06-10Chanay, Jeffrey A Esq NEW29Ioni Bowcher
1040Clifford D ShinkoAustralia2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED51Ivan Magalhaes
1041Leja C OldroydArgentina2024-06-06Feiner Bros NEW0Bernardo Dominic
1042James A StockhamSpain2024-05-28Printing Dimensions UNQUALIFIED29Elwin Sharvill
1043Izzy U WieserItaly2024-06-08Chanay, Jeffrey A Esq QUALIFIED28Amy Elsner
1044Smith K RutaItaly2024-06-23Rangoni Of Florence QUALIFIED5Ioni Bowcher
1045Antonio Q WaycottBrazil2024-06-03Chemel, James L Cpa RENEWAL73Anna Fali
1046Claire W CampainRussia2024-06-07Dorl, James J Esq PROPOSAL97Ivan Magalhaes
1047Ivar E ChuiGermany2024-06-16Buckley Miller Wright NEGOTIATION37Xuxue Feng
1048Emily N WaycottAustralia2024-06-08Chapman, Ross E Esq NEW99Xuxue Feng
1049Smith G StockhamIndia2024-06-04Benton, John B Jr NEW42Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Octavia L BologniaRussiaBernardo Dominic NEGOTIATION
Darci M IturbideArgentinaAsiya Javayant UNQUALIFIED
Faith A FollerItalyIvan Magalhaes UNQUALIFIED
Ivar P RoysterRussiaElwin Sharvill NEW
Smith K InouyeIndiaAsiya Javayant QUALIFIED
Maria Z RoysterJapanStephen Shaw NEGOTIATION
Darci K CaudyUnited KingdomIvan Magalhaes NEW
Jones L KuskoCanadaElwin Sharvill NEGOTIATION
Alejandro O FerenczIndiaStephen Shaw NEW
Chavez N WhobreyRussiaElwin Sharvill NEGOTIATION
Ricardo S InouyeCanadaAsiya Javayant NEGOTIATION
Mayumi B FollerFranceAsiya Javayant NEGOTIATION
Julie P GlickCanadaBernardo Dominic RENEWAL
Salvatore N KolmetzItalyAmy Elsner NEGOTIATION
Ashley W GarufiRussiaBernardo Dominic PROPOSAL
Tony T FlosiItalyAmy Elsner PROPOSAL
Munro O SaylorsFranceIvan Magalhaes NEGOTIATION
Misaki K PerinCanadaStephen Shaw UNQUALIFIED
Aditya L MarrierRussiaAmy Elsner NEGOTIATION
Chavez J MarrierAustraliaIvan Magalhaes QUALIFIED
Jennifer S StensethUnited KingdomAmy Elsner NEGOTIATION
Mayumi C NestleGermanyBernardo Dominic QUALIFIED
Smith E WaycottArgentinaBernardo Dominic RENEWAL
James L FigeroaItalyIoni Bowcher NEGOTIATION
Adams E FigeroaSpainStephen Shaw QUALIFIED
Mayumi I RulapaughFranceAmy Elsner NEW
Mayumi S IturbideCanadaOnyama Limba QUALIFIED
Ricardo I ChuiCanadaIoni Bowcher NEW
Rodrigues K MaletAustraliaIoni Bowcher PROPOSAL
Ashley C BologniaFranceStephen Shaw PROPOSAL
Chavez R CaldareraIndiaBernardo Dominic UNQUALIFIED
Clifford A FerenczArgentinaXuxue Feng RENEWAL
Sinclair H DilliardUnited KingdomAmy Elsner RENEWAL
Clifford P FerenczItalyAmy Elsner NEW
Stacey F NickaRussiaIvan Magalhaes NEW
Kaitlin V SlusarskiUnited KingdomAsiya Javayant NEW
Aruna N IturbideItalyAsiya Javayant UNQUALIFIED
Isabel L DilliardBrazilStephen Shaw PROPOSAL
Kadeem S DoeJapanOnyama Limba PROPOSAL
Antonio G SchemmerIndiaAmy Elsner RENEWAL
Johnson O MarrierSpainAmy Elsner QUALIFIED
Smith W ChuiItalyStephen Shaw RENEWAL
Deepesh D NickaFranceElwin Sharvill NEGOTIATION
Sinclair E FerenczCanadaStephen Shaw NEW
Greenwood K MarrierArgentinaIvan Magalhaes NEGOTIATION
Jennifer M RoysterJapanIoni Bowcher QUALIFIED
Aika B MacleadUnited KingdomElwin Sharvill RENEWAL
Alejandro T GlickJapanOnyama Limba RENEWAL
Maria V MarrierJapanAnna Fali QUALIFIED
Izzy Z CaudyBrazilBernardo Dominic PROPOSAL
Frozen Columns
Name
Juan Y Poquette
Greenwood P Figeroa
Johnson A Saylors
Juan V Shinko
Chavez E Sergi
Ricardo K Paprocki
Jones X Kusko
James A Foller
Wickens I Schemmer
Morrow P Paprocki
Arvin K Vocelka
Clifford U Flosi
Tony O Stenseth
Aruna I Perin
James J Foller
Ivar T Gaucho
Mayumi Y Waycott
Jeanfrancois M Bolognia
Jones R Poquette
Salvatore L Ostrosky
Izzy R Marrier
Greenwood X Vocelka
Nicolas K Albares
Aika Z Whobrey
David P Royster
Julie G Poquette
Julie G Oldroyd
Chavez C Malet
Mujtaba B Butt
Mujtaba S Kusko
Aditya T Chui
David L Darakjy
Leon M Whobrey
Morrow Y Royster
Izzy A Figeroa
Tony S Albares
Jefferson I Venere
Costa B Vocelka
Murillo V Stenseth
Aditya M Slusarski
Mujtaba P Sergi
Cody Q Tollner
Costa X Flosi
Rodrigues P Ruta
Octavia E Wieser
Alejandro B Dilliard
Sinclair E Gaucho
Claire Q Sergi
Aditya O Briddick
Jefferson N Shinko
IdCountryDate
1000Brazil2024-06-08
1001Australia2024-06-02
1002Italy2024-06-24
1003Spain2024-05-30
1004Italy2024-06-22
1005France2024-06-14
1006Russia2024-06-08
1007Canada2024-05-26
1008United Kingdom2024-06-22
1009Germany2024-06-20
1010Japan2024-06-07
1011Russia2024-06-01
1012Italy2024-06-13
1013Australia2024-06-09
1014Japan2024-06-23
1015Australia2024-06-09
1016Brazil2024-05-26
1017Italy2024-06-19
1018India2024-06-08
1019Brazil2024-06-12
1020Canada2024-06-01
1021Germany2024-06-18
1022United Kingdom2024-06-08
1023Australia2024-06-05
1024Argentina2024-06-20
1025Italy2024-06-04
1026United Kingdom2024-06-19
1027Canada2024-06-24
1028Russia2024-06-08
1029Russia2024-06-02
1030Spain2024-06-20
1031United Kingdom2024-06-15
1032Brazil2024-06-03
1033Germany2024-06-10
1034Spain2024-06-06
1035Spain2024-06-24
1036Brazil2024-06-13
1037Australia2024-06-11
1038Russia2024-06-16
1039Spain2024-06-12
1040Italy2024-06-22
1041Brazil2024-06-20
1042Russia2024-05-27
1043Italy2024-06-02
1044Brazil2024-05-31
1045India2024-06-13
1046United Kingdom2024-05-28
1047Brazil2024-06-13
1048Japan2024-06-17
1049Canada2024-06-06

On-Demand Data

NameIdCountryDate
Kaitlin X Marrier1000Brazil2024-06-01
Smith E Marrier1001Australia2024-06-24
Munro V Caldarera1002Russia2024-06-23
Greenwood F Oldroyd1003France2024-06-20
Silvio Y Flosi1004Spain2024-06-03
Darci Y Dilliard1005Australia2024-06-21
Leon T Campain1006Argentina2024-06-13
Leja W Malet1007Italy2024-05-28
Mujtaba S Ruta1008Japan2024-06-23
Isabel A Kolmetz1009United Kingdom2024-06-10
Chavez N Garufi1010Argentina2024-05-26
Mujtaba G Waycott1011Canada2024-06-24
Mayumi U Ruta1012Germany2024-06-01
Jones Q Perin1013Russia2024-06-02
Sinclair J Inouye1014Australia2024-06-13
Nicolas C Caudy1015India2024-06-21
Misaki W Flosi1016Italy2024-06-05
Ivar F Vocelka1017Australia2024-06-19
Alejandro Q Sergi1018Argentina2024-06-23
Claire K Garufi1019Spain2024-06-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith L MorascaJapanXuxue Feng NEW
Antonio J AmigonJapanAmy Elsner QUALIFIED
Smith C GauchoArgentinaAmy Elsner RENEWAL
Stacey D CampainSpainBernardo Dominic RENEWAL
Leon D InouyeUnited KingdomXuxue Feng UNQUALIFIED
Rodrigues W ChuiUnited KingdomStephen Shaw RENEWAL
Salvatore F StockhamSpainIvan Magalhaes UNQUALIFIED
Costa E MaletRussiaAmy Elsner PROPOSAL
David C MacleadFranceElwin Sharvill PROPOSAL
Tony C GarufiAustraliaOnyama Limba UNQUALIFIED
Aika R DarakjyArgentinaBernardo Dominic RENEWAL
Ricardo W IturbideJapanBernardo Dominic QUALIFIED
Arvin O ButtCanadaAmy Elsner PROPOSAL
Wickens U SergiAustraliaElwin Sharvill NEW
Emily K RulapaughItalyStephen Shaw NEW
Munro P StockhamCanadaElwin Sharvill QUALIFIED
David Z GillianUnited KingdomIvan Magalhaes UNQUALIFIED
Tony P OstroskyIndiaBernardo Dominic PROPOSAL
Clifford C SergiFranceIoni Bowcher QUALIFIED
Silvio T ButtItalyAsiya Javayant RENEWAL
Juan M RulapaughRussiaElwin Sharvill UNQUALIFIED
Mayumi A CaudyArgentinaIvan Magalhaes PROPOSAL
Octavia N GillianCanadaXuxue Feng UNQUALIFIED
Ricardo G BriddickAustraliaElwin Sharvill QUALIFIED
Antonio S BriddickFranceIoni Bowcher NEGOTIATION
Ivar K ChuiArgentinaXuxue Feng NEGOTIATION
Jones C DarakjyIndiaAnna Fali NEGOTIATION
Greenwood E CaldareraArgentinaAnna Fali NEGOTIATION
Adams M DilliardCanadaElwin Sharvill NEW
Costa Z WieserGermanyAnna Fali UNQUALIFIED
Greenwood B RimAustraliaAmy Elsner RENEWAL
Leon M WieserFranceBernardo Dominic NEW
Wickens N StockhamGermanyXuxue Feng RENEWAL
Silvio S GauchoItalyElwin Sharvill NEW
Claire I StensethUnited KingdomAnna Fali QUALIFIED
Ricardo V TollnerJapanOnyama Limba PROPOSAL
Alejandro Z GillianIndiaElwin Sharvill PROPOSAL
Kaitlin F ChuiGermanyAsiya Javayant NEW
Izzy K RulapaughArgentinaStephen Shaw UNQUALIFIED
Deepesh Q FlosiFranceAnna Fali PROPOSAL

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