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
Aika E OldroydBrazilStephen Shaw PROPOSAL
Francesco U DilliardRussiaOnyama Limba NEGOTIATION
Isabel G FlosiGermanyXuxue Feng PROPOSAL
Maria V RulapaughIndiaOnyama Limba NEGOTIATION
Chavez C RutaAustraliaIoni Bowcher UNQUALIFIED
Leon N TollnerBrazilBernardo Dominic NEW
Greenwood D FigeroaBrazilOnyama Limba UNQUALIFIED
Francesco W FlosiGermanyAsiya Javayant UNQUALIFIED
Darci W NickaSpainBernardo Dominic NEW
Deepesh P KolmetzJapanBernardo Dominic PROPOSAL
Sinclair S BriddickAustraliaOnyama Limba RENEWAL
Tony J VocelkaGermanyBernardo Dominic PROPOSAL
Rodrigues L VenereGermanyElwin Sharvill NEW
Jennifer P IturbideArgentinaStephen Shaw PROPOSAL
Jefferson A PaprockiUnited KingdomXuxue Feng QUALIFIED
Greenwood Z TollnerAustraliaXuxue Feng NEGOTIATION
Leja E IturbideGermanyIoni Bowcher QUALIFIED
Izzy R NickaBrazilElwin Sharvill NEGOTIATION
David P KuskoArgentinaAnna Fali PROPOSAL
Kadeem T PaprockiFranceBernardo Dominic UNQUALIFIED
Clifford X FollerItalyAmy Elsner QUALIFIED
Mayumi N RulapaughUnited KingdomIvan Magalhaes UNQUALIFIED
Mujtaba G VocelkaJapanIoni Bowcher PROPOSAL
Leja B MaletFranceIvan Magalhaes NEW
Adams T RutaGermanyStephen Shaw QUALIFIED
Deepesh U MacleadIndiaAnna Fali PROPOSAL
Nicolas K MorascaGermanyIvan Magalhaes NEGOTIATION
Claire I MaletFranceElwin Sharvill UNQUALIFIED
Wickens Y InouyeBrazilAnna Fali PROPOSAL
Smith E MaletIndiaIvan Magalhaes UNQUALIFIED
Juan Y SergiCanadaAsiya Javayant NEW
Smith K GillianItalyOnyama Limba NEW
Cody J NickaCanadaIvan Magalhaes PROPOSAL
Emily H MaletBrazilAmy Elsner RENEWAL
Wickens D CaudyJapanOnyama Limba QUALIFIED
Stacey Y OldroydIndiaBernardo Dominic QUALIFIED
Smith T DilliardRussiaIvan Magalhaes QUALIFIED
Octavia O DoeArgentinaIvan Magalhaes RENEWAL
Mujtaba P StockhamItalyIvan Magalhaes QUALIFIED
Jones G RutaUnited KingdomElwin Sharvill PROPOSAL
Cody D BologniaUnited KingdomIvan Magalhaes QUALIFIED
Murillo G BowleyAustraliaAmy Elsner PROPOSAL
Maria S RimFranceXuxue Feng UNQUALIFIED
Greenwood H KolmetzAustraliaAnna Fali QUALIFIED
Morrow N SaylorsItalyOnyama Limba PROPOSAL
Johnson Q BologniaArgentinaXuxue Feng UNQUALIFIED
Clifford S RoysterBrazilStephen Shaw RENEWAL
Sinclair R MaletAustraliaAnna Fali NEW
Adams R OldroydGermanyXuxue Feng QUALIFIED
Faith J FerenczSpainXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Antonio X SergiBrazilXuxue Feng NEW
Munro H SlusarskiAustraliaXuxue Feng PROPOSAL
James O ButtArgentinaAsiya Javayant QUALIFIED
Aditya Y VocelkaIndiaAsiya Javayant PROPOSAL
Adams P WhobreyRussiaElwin Sharvill UNQUALIFIED
Deepesh B ChuiGermanyBernardo Dominic QUALIFIED
Aika I RutaBrazilBernardo Dominic UNQUALIFIED
Arvin J CaudyCanadaXuxue Feng NEW
Mayumi K SlusarskiGermanyXuxue Feng UNQUALIFIED
Faith D FigeroaCanadaIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois V MaletGermany2024-06-08King, Christopher A Esq UNQUALIFIED53Stephen Shaw
1001Clifford B FigeroaJapan2024-05-20Commercial Press QUALIFIED43Anna Fali
1002Wickens D GlickCanada2024-05-22King, Christopher A Esq NEGOTIATION56Stephen Shaw
1003Greenwood W NickaCanada2024-05-25Printing Dimensions RENEWAL18Amy Elsner
1004Maisha W FollerRussia2024-05-30Rousseaux, Michael Esq NEGOTIATION13Ivan Magalhaes
1005Leon N ButtUnited Kingdom2024-06-02Rousseaux, Michael Esq PROPOSAL1Amy Elsner
1006Silvio Q FigeroaIndia2024-05-23Feiner Bros PROPOSAL9Anna Fali
1007Clifford B VocelkaGermany2024-05-20Buckley Miller Wright PROPOSAL17Xuxue Feng
1008Sinclair N MaletArgentina2024-05-23Rangoni Of Florence PROPOSAL70Amy Elsner
1009Faith W TollnerIndia2024-06-18Commercial Press QUALIFIED10Ivan Magalhaes
1010Maria U CaudyUnited Kingdom2024-06-06Morlong Associates NEW2Bernardo Dominic
1011Nicolas E MarrierRussia2024-06-06Dorl, James J Esq PROPOSAL93Amy Elsner
1012Antonio Y InouyeItaly2024-06-02King, Christopher A Esq RENEWAL19Ioni Bowcher
1013Misaki H VenereSpain2024-05-22King, Christopher A Esq PROPOSAL6Amy Elsner
1014Ashley K AlbaresFrance2024-06-15Feiner Bros NEGOTIATION30Asiya Javayant
1015Antonio B AmigonGermany2024-06-02Printing Dimensions UNQUALIFIED71Elwin Sharvill
1016Kadeem W StockhamSpain2024-06-01Rangoni Of Florence NEW89Asiya Javayant
1017Aika Y VenereSpain2024-06-08Buckley Miller Wright RENEWAL8Ioni Bowcher
1018Smith F FerenczIndia2024-05-27Truhlar And Truhlar Attys UNQUALIFIED64Ioni Bowcher
1019Mayumi B CampainBrazil2024-06-17Rangoni Of Florence PROPOSAL60Amy Elsner
1020Claire T VenereRussia2024-05-25Rousseaux, Michael Esq RENEWAL93Elwin Sharvill
1021Silvio H WieserBrazil2024-05-27Feltz Printing Service UNQUALIFIED60Asiya Javayant
1022Emily C NickaCanada2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED72Ivan Magalhaes
1023Julie L KuskoJapan2024-05-30Benton, John B Jr QUALIFIED31Onyama Limba
1024Kaitlin U ButtSpain2024-06-03Rangoni Of Florence RENEWAL4Amy Elsner
1025Morrow V WaycottItaly2024-05-20Dorl, James J Esq NEGOTIATION68Bernardo Dominic
1026Leja O OldroydArgentina2024-06-06Feltz Printing Service UNQUALIFIED85Anna Fali
1027Aruna S WieserBrazil2024-05-30Rousseaux, Michael Esq QUALIFIED69Ioni Bowcher
1028Smith S GauchoAustralia2024-06-13Feiner Bros QUALIFIED20Ivan Magalhaes
1029Tony M RimCanada2024-05-30Benton, John B Jr QUALIFIED83Xuxue Feng
1030Rodrigues P MarrierGermany2024-05-31Feiner Bros NEW66Bernardo Dominic
1031Costa W OldroydCanada2024-05-20Chapman, Ross E Esq NEGOTIATION53Elwin Sharvill
1032Maria U SchemmerItaly2024-05-20Benton, John B Jr QUALIFIED29Onyama Limba
1033Costa U DilliardUnited Kingdom2024-06-18Feiner Bros QUALIFIED13Stephen Shaw
1034Jones F ChuiCanada2024-05-31King, Christopher A Esq RENEWAL78Amy Elsner
1035Kaitlin G ShinkoUnited Kingdom2024-06-04Commercial Press PROPOSAL15Bernardo Dominic
1036Mayumi E TollnerUnited Kingdom2024-05-21Truhlar And Truhlar Attys UNQUALIFIED93Elwin Sharvill
1037Clifford W RutaGermany2024-06-03Rangoni Of Florence UNQUALIFIED96Stephen Shaw
1038Emily P FigeroaArgentina2024-06-15Chemel, James L Cpa UNQUALIFIED22Ivan Magalhaes
1039Leon T KuskoArgentina2024-06-18Chapman, Ross E Esq RENEWAL98Stephen Shaw
1040Mujtaba W SchemmerAustralia2024-06-12Rangoni Of Florence RENEWAL1Onyama Limba
1041Darci U SaylorsGermany2024-06-05Commercial Press NEW75Stephen Shaw
1042Jeanfrancois U DarakjyGermany2024-05-29Chapman, Ross E Esq NEW16Onyama Limba
1043Jones N BowleyItaly2024-06-15Printing Dimensions PROPOSAL85Anna Fali
1044Sinclair I RutaFrance2024-06-12Chemel, James L Cpa NEGOTIATION27Elwin Sharvill
1045Aruna O RimJapan2024-06-14Rangoni Of Florence PROPOSAL98Elwin Sharvill
1046Silvio D VocelkaArgentina2024-05-28Rangoni Of Florence QUALIFIED75Bernardo Dominic
1047Maria F NestleArgentina2024-05-26King, Christopher A Esq QUALIFIED75Ivan Magalhaes
1048Francesco C MaletGermany2024-05-24Rangoni Of Florence NEW55Bernardo Dominic
1049Costa K WaycottItaly2024-06-03Benton, John B Jr NEW46Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Silvio J IturbideSpainAmy Elsner UNQUALIFIED
Darci N RimArgentinaElwin Sharvill UNQUALIFIED
Alejandro G StockhamRussiaIvan Magalhaes QUALIFIED
Nicolas I StockhamCanadaBernardo Dominic QUALIFIED
Smith V SaylorsFranceAnna Fali RENEWAL
Francesco D WhobreyGermanyXuxue Feng NEGOTIATION
Juan B FerenczCanadaAmy Elsner UNQUALIFIED
Smith X DilliardGermanyElwin Sharvill RENEWAL
Isabel A WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Misaki X NestleItalyStephen Shaw PROPOSAL
Mayumi L MaletCanadaAnna Fali QUALIFIED
Misaki C CaudyArgentinaIoni Bowcher RENEWAL
Isabel J DarakjyIndiaIvan Magalhaes QUALIFIED
Claire U RimBrazilIvan Magalhaes PROPOSAL
Kadeem M RulapaughJapanXuxue Feng NEGOTIATION
Emily I NestleGermanyElwin Sharvill NEGOTIATION
Kaitlin M IturbideAustraliaStephen Shaw NEGOTIATION
Emily E KuskoBrazilAnna Fali NEGOTIATION
Francesco V WaycottUnited KingdomBernardo Dominic NEW
Smith K DoeCanadaBernardo Dominic NEGOTIATION
Rodrigues V MaletJapanOnyama Limba UNQUALIFIED
Morrow K FerenczBrazilIoni Bowcher NEGOTIATION
Kadeem J MacleadArgentinaElwin Sharvill NEGOTIATION
Leja L NestleAustraliaElwin Sharvill NEGOTIATION
Johnson J GauchoBrazilIvan Magalhaes UNQUALIFIED
Stacey R KolmetzJapanAmy Elsner QUALIFIED
Wickens Y OstroskyFranceOnyama Limba QUALIFIED
James J SchemmerAustraliaOnyama Limba QUALIFIED
Aruna F BowleyRussiaIvan Magalhaes NEW
Emily Q StockhamFranceStephen Shaw UNQUALIFIED
Mayumi S KolmetzSpainIvan Magalhaes PROPOSAL
Francesco Z MorascaFranceAmy Elsner UNQUALIFIED
Jones I CampainBrazilBernardo Dominic QUALIFIED
Maisha C RutaRussiaXuxue Feng PROPOSAL
Salvatore I FollerIndiaElwin Sharvill NEGOTIATION
David L AlbaresCanadaIvan Magalhaes NEW
Ricardo O VenereSpainStephen Shaw QUALIFIED
Leja N SergiArgentinaElwin Sharvill NEGOTIATION
Nicolas H AmigonSpainStephen Shaw RENEWAL
David S TollnerFranceXuxue Feng PROPOSAL
Leja I SlusarskiIndiaElwin Sharvill NEW
Stacey O InouyeFranceAsiya Javayant QUALIFIED
Deepesh W CampainCanadaXuxue Feng UNQUALIFIED
Tony S DoeAustraliaBernardo Dominic NEGOTIATION
Arvin V DarakjyCanadaIvan Magalhaes QUALIFIED
Smith E CaudyBrazilStephen Shaw PROPOSAL
Jennifer J PerinIndiaOnyama Limba RENEWAL
Emily Q TollnerFranceXuxue Feng PROPOSAL
Adams X StockhamFranceIvan Magalhaes QUALIFIED
Chavez D CampainBrazilIvan Magalhaes QUALIFIED
Frozen Columns
Name
Rodrigues A Amigon
Tony D Ostrosky
Smith U Maclead
Rodrigues Z Albares
Julie W Marrier
Stacey J Whobrey
Silvio R Flosi
Antonio G Inouye
Nicolas A Ferencz
Kaitlin U Figeroa
Clifford L Shinko
Kadeem N Kusko
Chavez X Kusko
Cody D Campain
Claire X Ferencz
Greenwood R Foller
Claire D Oldroyd
James L Garufi
Octavia V Stenseth
Antonio V Perin
Greenwood S Ruta
Stacey W Oldroyd
Kadeem V Saylors
Aruna I Garufi
Sinclair A Albares
James W Gillian
Aruna M Campain
Emily H Nestle
Octavia Q Royster
Maisha P Shinko
Cody Y Ruta
Smith Z Vocelka
Ricardo Z Foller
Claire S Nicka
Chavez E Rim
Rodrigues H Whobrey
Faith E Briddick
Munro D Bowley
Greenwood Q Maclead
Jeanfrancois N Ostrosky
Rodrigues J Wieser
Costa K Vocelka
Chavez E Iturbide
Silvio C Iturbide
Aika U Albares
Sinclair C Vocelka
Greenwood C Caldarera
Clifford Y Doe
Maisha T Flosi
Isabel K Doe
IdCountryDate
1000Argentina2024-06-10
1001Argentina2024-06-04
1002Germany2024-06-14
1003Argentina2024-05-20
1004Spain2024-06-17
1005Australia2024-05-28
1006Australia2024-06-06
1007Germany2024-05-21
1008Germany2024-06-07
1009Australia2024-05-26
1010Russia2024-06-12
1011United Kingdom2024-06-17
1012India2024-06-08
1013Spain2024-05-23
1014Germany2024-06-13
1015India2024-06-01
1016Brazil2024-06-12
1017Spain2024-06-10
1018Italy2024-06-04
1019Argentina2024-06-13
1020Japan2024-06-09
1021France2024-06-14
1022Canada2024-06-13
1023Canada2024-05-26
1024United Kingdom2024-05-24
1025Australia2024-06-16
1026Spain2024-05-29
1027Spain2024-06-11
1028United Kingdom2024-06-12
1029Brazil2024-06-02
1030Italy2024-05-27
1031Italy2024-05-20
1032Brazil2024-06-03
1033Spain2024-06-13
1034Russia2024-06-11
1035Canada2024-05-24
1036Russia2024-05-27
1037Russia2024-05-29
1038Russia2024-05-30
1039Argentina2024-05-26
1040Canada2024-05-28
1041India2024-06-10
1042Australia2024-05-30
1043France2024-06-03
1044Spain2024-06-13
1045Australia2024-06-04
1046Italy2024-06-02
1047India2024-06-12
1048Germany2024-06-12
1049India2024-06-09

On-Demand Data

NameIdCountryDate
Greenwood K Venere1000India2024-06-12
Antonio W Royster1001Russia2024-05-26
Julie O Ferencz1002India2024-05-23
Juan S Butt1003Brazil2024-06-16
Isabel H Whobrey1004Australia2024-06-08
Nicolas D Rulapaugh1005Australia2024-06-09
Faith G Tollner1006Brazil2024-06-01
Arvin L Shinko1007Italy2024-06-05
Mujtaba J Stockham1008India2024-06-05
Aika C Paprocki1009Australia2024-06-06
Maisha C Malet1010Canada2024-06-01
Mayumi C Flosi1011Brazil2024-06-02
Clifford Y Shinko1012France2024-06-06
Maisha E Flosi1013Spain2024-06-11
Antonio E Marrier1014Germany2024-06-03
Darci T Gillian1015Japan2024-06-07
Murillo G Shinko1016Brazil2024-06-12
Octavia X Ostrosky1017United Kingdom2024-06-10
Ricardo O Malet1018Germany2024-05-26
Arvin J Poquette1019India2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie J SergiJapanAmy Elsner PROPOSAL
Maria N VocelkaFranceAmy Elsner PROPOSAL
Munro G BowleyIndiaIoni Bowcher UNQUALIFIED
Mayumi X OldroydArgentinaIvan Magalhaes NEW
Sinclair M DoeArgentinaAnna Fali NEW
Mayumi N MarrierUnited KingdomElwin Sharvill QUALIFIED
Ivar Y VocelkaArgentinaIvan Magalhaes UNQUALIFIED
Jeanfrancois I SaylorsBrazilAnna Fali NEGOTIATION
Morrow C BowleyUnited KingdomAsiya Javayant NEGOTIATION
Alejandro M BowleyRussiaIoni Bowcher UNQUALIFIED
Juan S GarufiFranceIoni Bowcher QUALIFIED
Deepesh T DoeGermanyBernardo Dominic RENEWAL
Isabel H CaudyFranceXuxue Feng RENEWAL
Kaitlin N MaletCanadaIvan Magalhaes QUALIFIED
Jones O StensethFranceAsiya Javayant NEW
Wickens O MaletSpainXuxue Feng QUALIFIED
Munro O MaletItalyAnna Fali RENEWAL
Kadeem G VenereUnited KingdomElwin Sharvill NEW
Maria X RulapaughUnited KingdomAnna Fali RENEWAL
Ivar O RutaRussiaIoni Bowcher NEGOTIATION
Maria A InouyeJapanIoni Bowcher PROPOSAL
Leon F VenereSpainStephen Shaw UNQUALIFIED
Silvio L ButtFranceIvan Magalhaes PROPOSAL
Wickens Z GlickAustraliaXuxue Feng RENEWAL
Silvio U NestleRussiaXuxue Feng PROPOSAL
Aruna B StensethFranceXuxue Feng UNQUALIFIED
Cody N MorascaFranceBernardo Dominic QUALIFIED
Silvio D DarakjySpainStephen Shaw PROPOSAL
Smith Y AmigonSpainBernardo Dominic QUALIFIED
Mujtaba R GlickGermanyAmy Elsner NEGOTIATION
Antonio Z BowleySpainXuxue Feng NEW
Murillo M MacleadCanadaAnna Fali NEW
Ivar N MaletItalyAnna Fali NEW
Deepesh M WhobreyGermanyElwin Sharvill NEW
David I BriddickItalyElwin Sharvill NEGOTIATION
Clifford G NickaItalyElwin Sharvill UNQUALIFIED
Francesco B PaprockiArgentinaStephen Shaw RENEWAL
Mujtaba U WaycottCanadaStephen Shaw NEW
James Y KolmetzRussiaAsiya Javayant NEW
Greenwood W SergiRussiaIvan Magalhaes 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>