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
Izzy U FerenczSpainOnyama Limba RENEWAL
Juan R VenereFranceOnyama Limba QUALIFIED
Antonio B RimAustraliaStephen Shaw PROPOSAL
Faith Z ChuiJapanElwin Sharvill NEW
Johnson H TollnerJapanAnna Fali RENEWAL
Kaitlin K GauchoArgentinaElwin Sharvill NEGOTIATION
Ivar X WhobreyJapanAmy Elsner RENEWAL
Ricardo T OldroydAustraliaAmy Elsner QUALIFIED
Johnson U CaldareraArgentinaStephen Shaw NEW
Salvatore K GauchoBrazilStephen Shaw NEGOTIATION
Kaitlin B BowleyFranceBernardo Dominic NEW
Claire D SchemmerBrazilBernardo Dominic QUALIFIED
Aika H AlbaresArgentinaIvan Magalhaes RENEWAL
Mayumi A MorascaRussiaBernardo Dominic UNQUALIFIED
Wickens W SaylorsGermanyBernardo Dominic QUALIFIED
Arvin R RutaFranceIvan Magalhaes NEW
Smith H MorascaGermanyAmy Elsner UNQUALIFIED
Mujtaba O CampainItalyAnna Fali NEW
Claire L ShinkoJapanIoni Bowcher NEW
Cody H BowleySpainAsiya Javayant PROPOSAL
Octavia H CampainAustraliaAmy Elsner NEW
Ivar G SlusarskiRussiaIoni Bowcher NEGOTIATION
Munro B DilliardFranceAsiya Javayant NEW
Jeanfrancois P SaylorsFranceAsiya Javayant QUALIFIED
Murillo Q BologniaUnited KingdomIoni Bowcher NEGOTIATION
Jones E VenereJapanAnna Fali NEW
Silvio V WieserItalyBernardo Dominic UNQUALIFIED
Francesco L MorascaFranceXuxue Feng NEGOTIATION
Costa P PerinBrazilAsiya Javayant PROPOSAL
Juan Q BologniaUnited KingdomAsiya Javayant RENEWAL
Leja K DoeIndiaIoni Bowcher RENEWAL
Jones O FerenczBrazilOnyama Limba QUALIFIED
Kadeem P ChuiFranceIoni Bowcher NEW
Mayumi P FlosiArgentinaAmy Elsner NEW
Maria H NickaItalyAnna Fali QUALIFIED
Antonio A AlbaresFranceAmy Elsner QUALIFIED
Rodrigues D BowleyFranceStephen Shaw NEGOTIATION
David X GarufiItalyStephen Shaw NEGOTIATION
Tony M BriddickUnited KingdomStephen Shaw UNQUALIFIED
Maria Z AlbaresFranceIvan Magalhaes NEGOTIATION
Izzy Y RulapaughJapanOnyama Limba NEW
Salvatore T DilliardArgentinaStephen Shaw QUALIFIED
Aditya K AlbaresFranceIoni Bowcher QUALIFIED
Smith N ShinkoSpainIvan Magalhaes UNQUALIFIED
Stacey R OldroydAustraliaAsiya Javayant RENEWAL
Greenwood Q FollerFranceAsiya Javayant QUALIFIED
Misaki G TollnerUnited KingdomStephen Shaw NEW
Smith Q NestleGermanyOnyama Limba NEW
Kadeem O RimFranceStephen Shaw QUALIFIED
Alejandro T OstroskyCanadaAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maisha Q OstroskyIndiaStephen Shaw RENEWAL
Maria U CampainArgentinaBernardo Dominic NEW
Deepesh E MarrierIndiaIoni Bowcher RENEWAL
Silvio A AlbaresCanadaOnyama Limba NEGOTIATION
Ricardo Z CaldareraAustraliaBernardo Dominic UNQUALIFIED
Octavia I FerenczIndiaAmy Elsner NEGOTIATION
Leon Y GarufiFranceAsiya Javayant RENEWAL
Wickens U IturbideSpainAsiya Javayant NEW
Johnson J FlosiJapanElwin Sharvill PROPOSAL
Jefferson G OldroydCanadaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa L StensethAustralia2024-05-28Chemel, James L Cpa QUALIFIED53Stephen Shaw
1001Misaki T MarrierCanada2024-06-18Printing Dimensions NEW71Bernardo Dominic
1002Julie E WaycottSpain2024-06-14Feltz Printing Service PROPOSAL81Stephen Shaw
1003Clifford G GarufiUnited Kingdom2024-06-06Rangoni Of Florence UNQUALIFIED57Stephen Shaw
1004Cody Z BriddickItaly2024-06-10Chanay, Jeffrey A Esq PROPOSAL0Ioni Bowcher
1005Julie R WaycottSpain2024-06-11Truhlar And Truhlar Attys RENEWAL47Anna Fali
1006Deepesh H WhobreyItaly2024-05-31Chapman, Ross E Esq PROPOSAL46Ivan Magalhaes
1007Antonio E KolmetzBrazil2024-06-07Chanay, Jeffrey A Esq QUALIFIED36Xuxue Feng
1008Julie F BologniaFrance2024-06-08Feiner Bros NEW20Anna Fali
1009Octavia E CaudyAustralia2024-06-20Feltz Printing Service NEW81Onyama Limba
1010Emily D SchemmerIndia2024-06-14Dorl, James J Esq RENEWAL29Xuxue Feng
1011Aditya V RoysterCanada2024-05-31Feltz Printing Service RENEWAL26Anna Fali
1012Costa D MacleadGermany2024-06-02Chanay, Jeffrey A Esq NEGOTIATION19Xuxue Feng
1013Murillo S DoeAustralia2024-06-15Morlong Associates NEGOTIATION47Stephen Shaw
1014Aditya Y RimAustralia2024-06-16Buckley Miller Wright UNQUALIFIED70Stephen Shaw
1015Rodrigues D NickaArgentina2024-06-03Morlong Associates NEGOTIATION53Bernardo Dominic
1016Munro Z BowleyFrance2024-05-28Feltz Printing Service UNQUALIFIED82Anna Fali
1017Mujtaba Y CaldareraUnited Kingdom2024-06-04Truhlar And Truhlar Attys RENEWAL66Amy Elsner
1018Jefferson Q FigeroaJapan2024-06-03Chapman, Ross E Esq UNQUALIFIED4Xuxue Feng
1019Morrow E GlickJapan2024-06-19Benton, John B Jr NEGOTIATION73Xuxue Feng
1020Julie F CaudyItaly2024-06-01Truhlar And Truhlar Attys NEW98Bernardo Dominic
1021Leon V SaylorsGermany2024-05-31Feiner Bros RENEWAL24Asiya Javayant
1022Johnson M WieserArgentina2024-06-10Benton, John B Jr RENEWAL45Xuxue Feng
1023Adams F AmigonSpain2024-06-10Morlong Associates QUALIFIED99Stephen Shaw
1024Nicolas V InouyeRussia2024-05-31Rousseaux, Michael Esq QUALIFIED62Anna Fali
1025Darci B AmigonRussia2024-06-10Rousseaux, Michael Esq RENEWAL83Anna Fali
1026Faith X WhobreyItaly2024-06-15Rousseaux, Michael Esq PROPOSAL3Anna Fali
1027Alejandro F StockhamArgentina2024-06-01Buckley Miller Wright QUALIFIED26Onyama Limba
1028Aditya V KuskoUnited Kingdom2024-06-06Chanay, Jeffrey A Esq PROPOSAL20Xuxue Feng
1029Claire Q NickaIndia2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED63Elwin Sharvill
1030Julie J OldroydJapan2024-06-15Feiner Bros PROPOSAL33Amy Elsner
1031Smith L RutaArgentina2024-05-26Dorl, James J Esq PROPOSAL34Ivan Magalhaes
1032Jeanfrancois C GlickAustralia2024-06-17Chanay, Jeffrey A Esq QUALIFIED84Asiya Javayant
1033Morrow X MaletBrazil2024-06-19Truhlar And Truhlar Attys NEW29Asiya Javayant
1034Adams S NestleCanada2024-06-18Buckley Miller Wright RENEWAL8Bernardo Dominic
1035Murillo S GarufiAustralia2024-06-11Dorl, James J Esq NEGOTIATION88Amy Elsner
1036Izzy J FigeroaSpain2024-06-09Commercial Press NEGOTIATION32Bernardo Dominic
1037Mujtaba T SlusarskiFrance2024-06-20Benton, John B Jr NEGOTIATION85Ioni Bowcher
1038Isabel N StensethJapan2024-06-04Feltz Printing Service QUALIFIED2Ivan Magalhaes
1039Juan N RutaSpain2024-06-16Chapman, Ross E Esq QUALIFIED74Elwin Sharvill
1040Salvatore Z TollnerJapan2024-06-21Truhlar And Truhlar Attys NEW55Asiya Javayant
1041Rodrigues R FerenczFrance2024-06-13Morlong Associates NEGOTIATION75Anna Fali
1042Emily Y StensethIndia2024-06-13Dorl, James J Esq QUALIFIED40Ivan Magalhaes
1043Arvin T TollnerSpain2024-06-05Chanay, Jeffrey A Esq PROPOSAL46Anna Fali
1044Jefferson T KuskoIndia2024-05-29Chemel, James L Cpa PROPOSAL33Elwin Sharvill
1045David T SchemmerArgentina2024-05-26Truhlar And Truhlar Attys UNQUALIFIED60Anna Fali
1046Rodrigues E MaletCanada2024-06-09Morlong Associates RENEWAL91Onyama Limba
1047Aika A WieserArgentina2024-05-30Printing Dimensions UNQUALIFIED48Anna Fali
1048Cody D InouyeJapan2024-06-21Buckley Miller Wright NEW82Bernardo Dominic
1049Francesco R BowleyUnited Kingdom2024-06-19Printing Dimensions RENEWAL86Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Isabel M RimRussiaXuxue Feng QUALIFIED
Adams D IturbideJapanIoni Bowcher PROPOSAL
Jones Z PaprockiRussiaIvan Magalhaes NEW
Aditya A FlosiBrazilAsiya Javayant RENEWAL
Emily Z AmigonSpainIoni Bowcher NEGOTIATION
Darci X DilliardFranceElwin Sharvill RENEWAL
Leon T CampainUnited KingdomXuxue Feng UNQUALIFIED
Jones C WieserFranceBernardo Dominic UNQUALIFIED
Greenwood I PaprockiArgentinaAmy Elsner NEGOTIATION
Greenwood O WaycottBrazilOnyama Limba NEGOTIATION
Leon S FollerBrazilAsiya Javayant NEGOTIATION
Octavia X ShinkoUnited KingdomOnyama Limba RENEWAL
Ivar F StensethArgentinaIvan Magalhaes RENEWAL
Wickens J DoeSpainAnna Fali QUALIFIED
Leja U PoquetteGermanyBernardo Dominic UNQUALIFIED
Aruna D FerenczItalyIoni Bowcher NEW
Arvin B StensethRussiaAmy Elsner PROPOSAL
Kadeem Z TollnerFranceAsiya Javayant UNQUALIFIED
Chavez J KuskoJapanAsiya Javayant NEW
Jeanfrancois R ChuiItalyAnna Fali NEGOTIATION
Juan V MacleadUnited KingdomAmy Elsner NEGOTIATION
David R InouyeSpainXuxue Feng NEGOTIATION
Kaitlin D SlusarskiBrazilIvan Magalhaes RENEWAL
Leja C WieserAustraliaBernardo Dominic PROPOSAL
Faith W OstroskyAustraliaElwin Sharvill QUALIFIED
Izzy B PoquetteCanadaIvan Magalhaes QUALIFIED
Kaitlin Y WhobreyIndiaXuxue Feng UNQUALIFIED
Aika O SaylorsBrazilIvan Magalhaes NEGOTIATION
James T BowleyArgentinaAsiya Javayant NEW
Smith Q GillianSpainAnna Fali UNQUALIFIED
Mujtaba M DilliardRussiaIvan Magalhaes NEW
Chavez P GillianItalyStephen Shaw NEGOTIATION
Misaki N MorascaBrazilIvan Magalhaes NEGOTIATION
Deepesh I DilliardArgentinaXuxue Feng QUALIFIED
Jeanfrancois T RoysterBrazilIoni Bowcher NEW
David K NickaItalyIvan Magalhaes NEGOTIATION
Darci V GillianCanadaStephen Shaw RENEWAL
Darci K PerinFranceElwin Sharvill NEGOTIATION
Misaki I AmigonBrazilStephen Shaw NEGOTIATION
Sinclair O PerinSpainAmy Elsner RENEWAL
Rodrigues X SergiSpainElwin Sharvill UNQUALIFIED
Stacey D FigeroaCanadaAmy Elsner NEGOTIATION
Nicolas F FerenczFranceAnna Fali UNQUALIFIED
Misaki K FerenczArgentinaAnna Fali NEGOTIATION
Murillo R BologniaCanadaBernardo Dominic NEGOTIATION
Misaki W BriddickAustraliaElwin Sharvill PROPOSAL
Maria S GarufiCanadaStephen Shaw QUALIFIED
Leon Y RutaBrazilAmy Elsner NEW
Kadeem I OldroydAustraliaBernardo Dominic NEW
Izzy Y DarakjyJapanAmy Elsner RENEWAL
Frozen Columns
Name
Juan M Dilliard
Rodrigues Z Figeroa
Cody J Maclead
Adams O Bowley
Rodrigues C Chui
Julie Z Butt
Claire O Gaucho
Jones A Ferencz
Alejandro E Royster
Silvio V Venere
Alejandro G Malet
Misaki L Schemmer
Clifford S Ruta
Francesco L Ostrosky
Alejandro K Gillian
Smith D Oldroyd
Clifford F Ostrosky
Leja S Marrier
Chavez W Darakjy
Ashley U Royster
Chavez Z Stenseth
Leja M Royster
Adams F Bowley
Tony T Tollner
Kaitlin V Slusarski
Maria N Gaucho
Aruna J Rim
Misaki W Inouye
David K Paprocki
David B Amigon
Darci L Stockham
Juan L Ostrosky
Darci W Figeroa
Antonio L Royster
Nicolas K Bowley
Izzy Z Whobrey
James H Wieser
Ivar X Kolmetz
Alejandro A Inouye
Antonio F Waycott
Faith T Poquette
Jones G Wieser
Izzy V Kolmetz
Julie M Albares
Juan M Vocelka
Mayumi J Flosi
Juan F Oldroyd
Aditya Y Schemmer
Nicolas I Campain
Silvio C Rulapaugh
IdCountryDate
1000Russia2024-06-15
1001United Kingdom2024-06-07
1002United Kingdom2024-06-02
1003Spain2024-06-01
1004India2024-06-14
1005Brazil2024-06-11
1006Canada2024-06-19
1007Argentina2024-06-18
1008Japan2024-06-13
1009India2024-05-28
1010India2024-06-07
1011Brazil2024-06-01
1012Canada2024-06-14
1013Argentina2024-06-11
1014Japan2024-06-14
1015United Kingdom2024-06-08
1016Japan2024-05-25
1017Russia2024-05-31
1018Spain2024-06-08
1019Russia2024-06-03
1020Canada2024-05-28
1021France2024-06-08
1022Italy2024-06-11
1023France2024-05-27
1024Argentina2024-05-26
1025Australia2024-06-13
1026Spain2024-05-27
1027Russia2024-06-07
1028Germany2024-06-12
1029Spain2024-06-13
1030Argentina2024-05-30
1031Australia2024-06-01
1032Spain2024-06-13
1033Australia2024-06-13
1034Italy2024-06-08
1035Russia2024-06-19
1036Canada2024-06-21
1037Spain2024-06-08
1038Italy2024-06-17
1039Argentina2024-05-28
1040Australia2024-06-19
1041France2024-06-19
1042Canada2024-06-13
1043Australia2024-06-21
1044Argentina2024-06-09
1045Germany2024-06-17
1046Spain2024-05-24
1047India2024-06-03
1048Russia2024-06-14
1049Russia2024-05-23

On-Demand Data

NameIdCountryDate
Julie U Caldarera1000Canada2024-06-11
Nicolas I Foller1001Japan2024-06-21
Faith Q Stockham1002Argentina2024-05-28
Kaitlin L Glick1003Spain2024-06-11
Aruna L Figeroa1004Russia2024-06-18
Sinclair R Gaucho1005France2024-06-08
Darci S Doe1006France2024-06-17
Salvatore J Glick1007Japan2024-05-31
Johnson P Malet1008Italy2024-05-31
Juan A Doe1009Australia2024-06-11
Jones Q Maclead1010Brazil2024-06-10
Salvatore D Vocelka1011France2024-06-07
Ashley S Glick1012Russia2024-05-27
Johnson B Malet1013Australia2024-06-06
Aruna F Kolmetz1014Russia2024-06-15
Adams T Campain1015France2024-06-06
Maria K Perin1016Russia2024-06-08
Claire T Inouye1017Brazil2024-05-27
Maria O Tollner1018Brazil2024-06-20
Stacey J Nicka1019Argentina2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci Y SlusarskiArgentinaIoni Bowcher QUALIFIED
Adams A ChuiBrazilOnyama Limba UNQUALIFIED
Smith D FerenczAustraliaXuxue Feng NEGOTIATION
Salvatore N DoeFranceXuxue Feng NEW
Misaki Q GauchoItalyAnna Fali NEGOTIATION
Darci Z RoysterRussiaXuxue Feng NEW
Kaitlin M StensethJapanOnyama Limba RENEWAL
Morrow T FlosiIndiaStephen Shaw UNQUALIFIED
Tony M WhobreyJapanAmy Elsner PROPOSAL
Ivar B PerinCanadaBernardo Dominic QUALIFIED
Faith O PaprockiGermanyAnna Fali QUALIFIED
Isabel T PerinUnited KingdomBernardo Dominic UNQUALIFIED
Aruna G WieserGermanyAmy Elsner QUALIFIED
David A MarrierItalyBernardo Dominic NEW
Izzy J CampainCanadaElwin Sharvill UNQUALIFIED
Ashley S DarakjyRussiaIvan Magalhaes NEGOTIATION
Maria O InouyeCanadaAnna Fali QUALIFIED
Jeanfrancois Z AmigonJapanBernardo Dominic NEW
Aditya P NickaCanadaStephen Shaw QUALIFIED
Claire S GlickBrazilAmy Elsner NEW
Julie L GillianBrazilStephen Shaw UNQUALIFIED
Chavez A PaprockiBrazilBernardo Dominic NEW
Leja Q VocelkaBrazilAsiya Javayant QUALIFIED
Wickens J MarrierRussiaAsiya Javayant RENEWAL
Aditya Q GillianFranceAsiya Javayant PROPOSAL
Rodrigues Y CaldareraArgentinaBernardo Dominic PROPOSAL
Claire D DoeRussiaIoni Bowcher UNQUALIFIED
Jennifer L PoquetteRussiaXuxue Feng RENEWAL
Misaki F MarrierArgentinaIoni Bowcher PROPOSAL
Leon H StockhamBrazilAnna Fali UNQUALIFIED
Cody Q NestleBrazilStephen Shaw NEGOTIATION
Ricardo Z CampainItalyStephen Shaw NEGOTIATION
Maria N MacleadIndiaElwin Sharvill RENEWAL
Misaki X BologniaItalyElwin Sharvill RENEWAL
Wickens S KuskoUnited KingdomOnyama Limba PROPOSAL
Aditya P ShinkoBrazilIoni Bowcher NEW
Smith T OldroydGermanyAnna Fali QUALIFIED
Alejandro U KolmetzUnited KingdomStephen Shaw RENEWAL
Stacey K SaylorsIndiaIvan Magalhaes UNQUALIFIED
Costa E CampainArgentinaAsiya Javayant UNQUALIFIED

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