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
Jones M GlickFranceBernardo Dominic QUALIFIED
Cody G ChuiAustraliaAnna Fali NEW
Clifford N MacleadRussiaBernardo Dominic NEW
Clifford A NestleFranceAsiya Javayant NEGOTIATION
Stacey N SlusarskiJapanAnna Fali QUALIFIED
Faith O SaylorsSpainXuxue Feng PROPOSAL
Leja D WaycottSpainBernardo Dominic NEGOTIATION
Jeanfrancois T NickaBrazilIoni Bowcher NEGOTIATION
Leon L WieserFranceOnyama Limba NEGOTIATION
Adams V KuskoRussiaBernardo Dominic NEW
Morrow O WaycottAustraliaOnyama Limba NEGOTIATION
Claire J GauchoRussiaAmy Elsner NEGOTIATION
Faith L AmigonAustraliaOnyama Limba RENEWAL
Darci G NickaSpainIvan Magalhaes QUALIFIED
Francesco B KuskoItalyIoni Bowcher PROPOSAL
Jennifer F DilliardIndiaAmy Elsner NEW
Aika S BowleyRussiaBernardo Dominic NEGOTIATION
Aditya X TollnerJapanElwin Sharvill NEGOTIATION
Jennifer S FlosiGermanyAsiya Javayant RENEWAL
Ricardo Q WhobreyIndiaElwin Sharvill NEW
Munro U WieserItalyIvan Magalhaes NEW
Ivar U MorascaJapanXuxue Feng RENEWAL
Alejandro P StockhamAustraliaAsiya Javayant NEW
Leja M ChuiUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois V SchemmerGermanyIvan Magalhaes UNQUALIFIED
Maria N WaycottRussiaBernardo Dominic NEGOTIATION
Nicolas R ButtItalyBernardo Dominic UNQUALIFIED
Juan D SaylorsBrazilXuxue Feng PROPOSAL
Juan R FerenczItalyElwin Sharvill NEGOTIATION
Sinclair B WhobreyUnited KingdomOnyama Limba RENEWAL
Ivar X FerenczGermanyAmy Elsner PROPOSAL
Cody S MacleadIndiaElwin Sharvill PROPOSAL
Izzy Y NickaRussiaIvan Magalhaes RENEWAL
Misaki O SaylorsGermanyAmy Elsner QUALIFIED
Francesco L MorascaCanadaAnna Fali NEW
Mujtaba U SergiGermanyOnyama Limba NEGOTIATION
Izzy T GlickJapanAsiya Javayant QUALIFIED
Jones M RoysterJapanStephen Shaw QUALIFIED
Misaki W SchemmerArgentinaXuxue Feng QUALIFIED
Julie Y RulapaughArgentinaXuxue Feng UNQUALIFIED
Maisha M ChuiFranceAnna Fali UNQUALIFIED
Kadeem D GlickIndiaIvan Magalhaes UNQUALIFIED
Jennifer U RulapaughRussiaAnna Fali UNQUALIFIED
Nicolas C BriddickIndiaBernardo Dominic UNQUALIFIED
Claire J MaletSpainStephen Shaw QUALIFIED
Faith L CaldareraIndiaIvan Magalhaes UNQUALIFIED
Munro P MarrierAustraliaStephen Shaw RENEWAL
Johnson X WaycottCanadaAmy Elsner PROPOSAL
Arvin E PerinUnited KingdomBernardo Dominic PROPOSAL
Kadeem G GlickSpainStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa V PerinAustraliaOnyama Limba NEW
Clifford L MacleadUnited KingdomOnyama Limba RENEWAL
Kaitlin X FollerBrazilAnna Fali QUALIFIED
Isabel L BologniaAustraliaIvan Magalhaes RENEWAL
Mujtaba V SlusarskiRussiaAnna Fali NEW
Cody H StockhamAustraliaAnna Fali NEW
Alejandro L BowleyCanadaAmy Elsner UNQUALIFIED
Alejandro Q BologniaIndiaAmy Elsner NEGOTIATION
David F BologniaUnited KingdomAmy Elsner QUALIFIED
Aika B MarrierFranceAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria P FlosiGermany2024-05-25Chapman, Ross E Esq UNQUALIFIED11Anna Fali
1001Aditya P BologniaBrazil2024-05-17Feiner Bros NEW35Stephen Shaw
1002Clifford Q OldroydSpain2024-05-01Rangoni Of Florence NEGOTIATION32Xuxue Feng
1003Francesco T NickaGermany2024-05-25Chemel, James L Cpa NEW23Stephen Shaw
1004Faith Z PaprockiJapan2024-05-12Morlong Associates NEW61Xuxue Feng
1005Francesco I TollnerCanada2024-05-01Rangoni Of Florence QUALIFIED13Bernardo Dominic
1006Alejandro I AmigonArgentina2024-05-19Printing Dimensions RENEWAL31Ioni Bowcher
1007Mayumi H KuskoJapan2024-05-17Buckley Miller Wright NEW52Ioni Bowcher
1008Aruna D FlosiUnited Kingdom2024-04-27Rangoni Of Florence NEGOTIATION46Elwin Sharvill
1009Claire D TollnerIndia2024-04-28Rangoni Of Florence UNQUALIFIED50Onyama Limba
1010Ashley Q StockhamRussia2024-05-04Feltz Printing Service RENEWAL24Anna Fali
1011Adams H MorascaCanada2024-05-14Truhlar And Truhlar Attys NEW50Onyama Limba
1012Chavez V AlbaresIndia2024-05-16Benton, John B Jr PROPOSAL74Elwin Sharvill
1013Emily M MorascaGermany2024-04-28Printing Dimensions NEGOTIATION17Stephen Shaw
1014Chavez C ButtGermany2024-05-18Chanay, Jeffrey A Esq NEW46Amy Elsner
1015Kadeem L DilliardJapan2024-05-23Rangoni Of Florence RENEWAL99Onyama Limba
1016Adams C KuskoItaly2024-05-10Dorl, James J Esq NEGOTIATION66Anna Fali
1017Morrow V ShinkoRussia2024-05-04Morlong Associates NEGOTIATION29Ioni Bowcher
1018Maisha F CampainCanada2024-05-23Chapman, Ross E Esq NEW88Xuxue Feng
1019Ashley F SlusarskiArgentina2024-05-19Dorl, James J Esq NEW28Elwin Sharvill
1020Silvio F RoysterFrance2024-05-18Dorl, James J Esq RENEWAL98Xuxue Feng
1021Tony I PaprockiRussia2024-05-20Morlong Associates NEGOTIATION7Elwin Sharvill
1022Clifford V MaletJapan2024-05-02Chemel, James L Cpa UNQUALIFIED86Elwin Sharvill
1023Wickens Q ButtBrazil2024-05-05Rangoni Of Florence UNQUALIFIED59Asiya Javayant
1024James X PoquetteGermany2024-05-13Chanay, Jeffrey A Esq RENEWAL37Ioni Bowcher
1025Octavia S WhobreyIndia2024-04-28Printing Dimensions RENEWAL50Stephen Shaw
1026Costa A CampainFrance2024-05-11Feltz Printing Service UNQUALIFIED0Onyama Limba
1027Izzy X WieserAustralia2024-04-27Chemel, James L Cpa NEGOTIATION36Asiya Javayant
1028Faith F ShinkoItaly2024-05-07Dorl, James J Esq NEW17Amy Elsner
1029Emily G RimArgentina2024-05-14Morlong Associates NEW9Anna Fali
1030Faith E VocelkaBrazil2024-05-22Feltz Printing Service UNQUALIFIED67Ivan Magalhaes
1031Smith S GlickArgentina2024-05-11Chapman, Ross E Esq PROPOSAL83Stephen Shaw
1032Faith J GlickSpain2024-04-30Chanay, Jeffrey A Esq UNQUALIFIED12Xuxue Feng
1033Salvatore R BologniaCanada2024-05-08Chapman, Ross E Esq NEGOTIATION32Xuxue Feng
1034Isabel L KuskoUnited Kingdom2024-05-22King, Christopher A Esq NEW93Bernardo Dominic
1035Jones I DilliardJapan2024-05-06Benton, John B Jr UNQUALIFIED27Ivan Magalhaes
1036Salvatore R KuskoAustralia2024-05-22Benton, John B Jr NEGOTIATION12Amy Elsner
1037Deepesh T VocelkaGermany2024-05-01Dorl, James J Esq RENEWAL37Anna Fali
1038Murillo P OstroskyArgentina2024-05-13Dorl, James J Esq PROPOSAL90Amy Elsner
1039Costa F KolmetzIndia2024-05-22Buckley Miller Wright UNQUALIFIED23Anna Fali
1040Juan C ShinkoSpain2024-05-13Rousseaux, Michael Esq UNQUALIFIED39Stephen Shaw
1041Clifford H FigeroaSpain2024-05-22Truhlar And Truhlar Attys NEGOTIATION50Amy Elsner
1042Wickens U PerinCanada2024-05-07Chanay, Jeffrey A Esq NEW78Xuxue Feng
1043Wickens X VenereCanada2024-05-14King, Christopher A Esq NEW41Ivan Magalhaes
1044Claire M NickaCanada2024-04-30Benton, John B Jr QUALIFIED98Ivan Magalhaes
1045Maria N VenereBrazil2024-05-21Dorl, James J Esq PROPOSAL68Stephen Shaw
1046Faith G PerinBrazil2024-04-27King, Christopher A Esq UNQUALIFIED55Ioni Bowcher
1047Octavia S DilliardJapan2024-05-03Chemel, James L Cpa NEGOTIATION10Anna Fali
1048Jeanfrancois Z SergiArgentina2024-05-12Printing Dimensions NEGOTIATION86Amy Elsner
1049Isabel Z WaycottUnited Kingdom2024-05-07Chanay, Jeffrey A Esq UNQUALIFIED71Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Izzy M MaletIndiaAsiya Javayant NEGOTIATION
Maria Z PaprockiCanadaXuxue Feng RENEWAL
Leon N CampainIndiaAnna Fali RENEWAL
Aditya S AmigonArgentinaAmy Elsner RENEWAL
Leja E WhobreyBrazilIvan Magalhaes UNQUALIFIED
Kadeem J GauchoJapanIvan Magalhaes NEW
Aruna E AlbaresGermanyAnna Fali NEGOTIATION
Maisha Y StensethArgentinaElwin Sharvill NEW
Faith I RoysterRussiaElwin Sharvill NEW
Leja J RimGermanyAmy Elsner QUALIFIED
Costa E StockhamSpainBernardo Dominic NEW
Antonio R GauchoFranceBernardo Dominic NEGOTIATION
Cody O AmigonUnited KingdomIoni Bowcher NEGOTIATION
Cody J RulapaughGermanyBernardo Dominic QUALIFIED
Sinclair J DilliardArgentinaIvan Magalhaes PROPOSAL
Murillo Y FlosiBrazilAsiya Javayant NEGOTIATION
Mayumi R RoysterCanadaElwin Sharvill RENEWAL
Jennifer X DilliardAustraliaXuxue Feng PROPOSAL
Salvatore N CaldareraRussiaIvan Magalhaes QUALIFIED
Smith J WieserJapanIvan Magalhaes QUALIFIED
Juan R IturbideFranceAsiya Javayant QUALIFIED
Stacey P SchemmerJapanIvan Magalhaes PROPOSAL
Clifford D FerenczBrazilIoni Bowcher UNQUALIFIED
Julie J GlickAustraliaAmy Elsner RENEWAL
Jefferson Q SchemmerBrazilIoni Bowcher PROPOSAL
Ricardo C StockhamUnited KingdomAmy Elsner NEGOTIATION
Johnson N SergiCanadaAnna Fali NEW
Arvin J BowleyCanadaAnna Fali UNQUALIFIED
Isabel Y MarrierGermanyStephen Shaw RENEWAL
Darci O InouyeGermanyIoni Bowcher NEW
Octavia L MaletGermanyBernardo Dominic QUALIFIED
Mujtaba M VenereCanadaOnyama Limba UNQUALIFIED
Jennifer X MaletIndiaBernardo Dominic UNQUALIFIED
David W KuskoCanadaAsiya Javayant RENEWAL
Mujtaba J BowleyItalyAnna Fali NEW
Smith C AmigonAustraliaIoni Bowcher NEW
Maria N OldroydSpainIvan Magalhaes NEGOTIATION
Octavia U StensethAustraliaOnyama Limba NEW
Emily D FollerBrazilIoni Bowcher RENEWAL
Greenwood R RoysterArgentinaOnyama Limba RENEWAL
Octavia P GarufiArgentinaAmy Elsner NEGOTIATION
Alejandro N DoeItalyStephen Shaw PROPOSAL
Adams Y KuskoIndiaBernardo Dominic QUALIFIED
Morrow A CampainJapanBernardo Dominic PROPOSAL
Chavez B OldroydJapanIoni Bowcher UNQUALIFIED
Francesco R GlickGermanyAnna Fali PROPOSAL
Tony S FollerUnited KingdomBernardo Dominic NEGOTIATION
Maisha S IturbideSpainElwin Sharvill UNQUALIFIED
Stacey D OstroskyItalyAnna Fali QUALIFIED
Silvio P WhobreySpainIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Stacey R Marrier
Isabel P Schemmer
Leja G Bolognia
Ricardo J Foller
Kaitlin Z Malet
Morrow T Slusarski
Emily L Wieser
Silvio Z Stenseth
Murillo N Marrier
Claire W Caldarera
Johnson N Saylors
Ivar O Vocelka
Murillo B Bolognia
Aika V Shinko
Aruna W Vocelka
Salvatore P Dilliard
Salvatore R Marrier
Maisha G Caudy
Jennifer P Rulapaugh
Johnson U Flosi
Isabel N Darakjy
Arvin Y Slusarski
Leja H Bowley
Morrow H Ostrosky
Juan P Gillian
Wickens A Briddick
Silvio V Shinko
Mujtaba E Albares
Ivar W Morasca
Cody Z Vocelka
Chavez D Iturbide
Emily P Paprocki
Alejandro A Bolognia
Aika N Flosi
Maria B Slusarski
Kaitlin P Albares
Chavez M Butt
Jennifer F Malet
Juan H Saylors
Mujtaba W Campain
Costa J Campain
Alejandro Y Dilliard
Misaki A Glick
James Z Glick
Chavez D Malet
Jones A Whobrey
Faith U Wieser
Munro L Gillian
Tony I Amigon
Kadeem V Maclead
IdCountryDate
1000Germany2024-05-14
1001France2024-05-22
1002Argentina2024-05-07
1003India2024-05-05
1004Argentina2024-04-27
1005Spain2024-05-26
1006France2024-05-13
1007India2024-05-08
1008Australia2024-05-13
1009Spain2024-05-06
1010India2024-04-30
1011India2024-05-11
1012India2024-05-06
1013Germany2024-05-03
1014France2024-05-02
1015France2024-05-24
1016Russia2024-05-03
1017Canada2024-05-02
1018Japan2024-05-17
1019Spain2024-05-12
1020Italy2024-05-06
1021Spain2024-05-16
1022Canada2024-05-03
1023Argentina2024-05-17
1024Spain2024-05-23
1025Brazil2024-05-20
1026Canada2024-05-13
1027Italy2024-05-07
1028France2024-04-30
1029Canada2024-05-08
1030Russia2024-05-07
1031India2024-05-23
1032Brazil2024-05-07
1033Italy2024-05-20
1034Spain2024-05-22
1035Germany2024-05-07
1036United Kingdom2024-05-24
1037India2024-05-08
1038India2024-05-12
1039Japan2024-05-23
1040Russia2024-04-28
1041Russia2024-05-22
1042Russia2024-05-14
1043Russia2024-05-06
1044Japan2024-05-10
1045France2024-05-25
1046Australia2024-05-17
1047Italy2024-04-29
1048Brazil2024-05-05
1049United Kingdom2024-05-01

On-Demand Data

NameIdCountryDate
James J Glick1000Russia2024-05-15
Isabel Z Kusko1001Japan2024-05-13
Jennifer X Malet1002Australia2024-04-30
James E Wieser1003France2024-05-05
Silvio T Gaucho1004Australia2024-05-01
Arvin Z Tollner1005Spain2024-05-06
Stacey V Perin1006India2024-05-11
Izzy F Poquette1007Japan2024-05-04
Salvatore X Flosi1008France2024-05-19
Ricardo O Chui1009Canada2024-05-04
Darci U Paprocki1010Italy2024-05-06
Aditya R Iturbide1011India2024-05-06
Smith V Darakjy1012France2024-05-16
Arvin X Figeroa1013United Kingdom2024-05-17
Rodrigues G Bowley1014United Kingdom2024-04-30
Leon H Chui1015France2024-04-27
Chavez X Butt1016India2024-05-04
Mayumi L Caudy1017Argentina2024-05-24
Mayumi Z Dilliard1018Spain2024-05-22
Morrow Q Kolmetz1019France2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio D BowleySpainAnna Fali RENEWAL
Kadeem L CampainItalyStephen Shaw UNQUALIFIED
Kaitlin A RimItalyAsiya Javayant NEW
David L PoquetteArgentinaBernardo Dominic NEGOTIATION
Salvatore P StensethAustraliaAsiya Javayant PROPOSAL
Stacey L PerinArgentinaIoni Bowcher RENEWAL
Clifford W OstroskyJapanStephen Shaw UNQUALIFIED
Octavia X BriddickArgentinaElwin Sharvill UNQUALIFIED
Ricardo A BriddickRussiaAnna Fali UNQUALIFIED
Jefferson R BologniaSpainAnna Fali RENEWAL
Jennifer G SchemmerFranceBernardo Dominic PROPOSAL
Alejandro N TollnerAustraliaAsiya Javayant PROPOSAL
Juan U BriddickGermanyXuxue Feng NEGOTIATION
Darci Q DoeUnited KingdomStephen Shaw UNQUALIFIED
Tony Q ShinkoJapanOnyama Limba PROPOSAL
Faith D IturbideSpainStephen Shaw QUALIFIED
Clifford S OldroydAustraliaIoni Bowcher PROPOSAL
Antonio A MacleadAustraliaXuxue Feng PROPOSAL
Stacey C CaudyArgentinaAsiya Javayant RENEWAL
James P VocelkaSpainBernardo Dominic RENEWAL
Faith S CampainFranceOnyama Limba UNQUALIFIED
Adams F TollnerBrazilStephen Shaw UNQUALIFIED
Ashley G FlosiCanadaAmy Elsner NEW
Isabel P WaycottAustraliaAsiya Javayant QUALIFIED
Salvatore Y GarufiGermanyXuxue Feng NEGOTIATION
Octavia J StensethIndiaIvan Magalhaes QUALIFIED
Emily B VocelkaFranceAsiya Javayant UNQUALIFIED
Rodrigues R ButtSpainBernardo Dominic PROPOSAL
Maisha E MaletBrazilOnyama Limba NEGOTIATION
Cody J FlosiRussiaOnyama Limba NEW
Leja I MaletBrazilXuxue Feng NEGOTIATION
Mujtaba A BologniaArgentinaAsiya Javayant QUALIFIED
Deepesh C AlbaresRussiaBernardo Dominic UNQUALIFIED
Aditya J RulapaughJapanXuxue Feng NEW
Clifford D WhobreyAustraliaOnyama Limba NEGOTIATION
Nicolas S BologniaRussiaAsiya Javayant UNQUALIFIED
Kaitlin V DilliardBrazilXuxue Feng NEW
Aditya Z SchemmerJapanOnyama Limba PROPOSAL
Kaitlin T RoysterItalyAnna Fali UNQUALIFIED
Jennifer B BriddickRussiaIoni Bowcher QUALIFIED

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