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
Antonio R OldroydIndiaAnna Fali NEGOTIATION
Maria Y DarakjyArgentinaIoni Bowcher QUALIFIED
Alejandro N NestleSpainStephen Shaw UNQUALIFIED
Mayumi I SlusarskiIndiaElwin Sharvill UNQUALIFIED
James S ButtFranceAmy Elsner UNQUALIFIED
Jeanfrancois N GauchoRussiaAsiya Javayant NEW
Murillo N MarrierGermanyElwin Sharvill PROPOSAL
Aika N NestleFranceOnyama Limba RENEWAL
Jefferson A GillianFranceBernardo Dominic NEGOTIATION
Greenwood A RimJapanStephen Shaw QUALIFIED
Mayumi G MarrierBrazilAnna Fali NEGOTIATION
Costa T DarakjyFranceAsiya Javayant NEGOTIATION
Silvio B MorascaBrazilElwin Sharvill QUALIFIED
Ricardo B DilliardCanadaOnyama Limba PROPOSAL
Ricardo W SlusarskiGermanyStephen Shaw RENEWAL
Jeanfrancois X ButtGermanyStephen Shaw UNQUALIFIED
Morrow M RulapaughRussiaElwin Sharvill NEGOTIATION
Jeanfrancois O CaudyRussiaOnyama Limba QUALIFIED
Isabel A MorascaGermanyIvan Magalhaes QUALIFIED
Clifford V BowleyUnited KingdomIoni Bowcher RENEWAL
Morrow K MaletAustraliaElwin Sharvill UNQUALIFIED
Mujtaba P DoeBrazilOnyama Limba UNQUALIFIED
Morrow Y PerinFranceStephen Shaw UNQUALIFIED
Johnson Z BriddickCanadaOnyama Limba RENEWAL
Johnson B AmigonCanadaOnyama Limba UNQUALIFIED
Rodrigues U AmigonArgentinaAnna Fali PROPOSAL
Mayumi E StensethFranceElwin Sharvill UNQUALIFIED
Julie L DilliardSpainElwin Sharvill UNQUALIFIED
Smith O FlosiCanadaIvan Magalhaes PROPOSAL
Aruna T StockhamUnited KingdomXuxue Feng QUALIFIED
Munro A SchemmerUnited KingdomOnyama Limba QUALIFIED
Misaki W WieserJapanAnna Fali UNQUALIFIED
Stacey K KuskoCanadaStephen Shaw NEGOTIATION
Adams R MarrierGermanyAnna Fali QUALIFIED
Julie H BriddickGermanyAmy Elsner RENEWAL
Rodrigues H StensethGermanyBernardo Dominic RENEWAL
Alejandro B KuskoFranceAnna Fali UNQUALIFIED
Jennifer A BowleyItalyIvan Magalhaes PROPOSAL
Stacey F NestleRussiaStephen Shaw NEGOTIATION
Mujtaba D FollerBrazilXuxue Feng UNQUALIFIED
Julie O StockhamAustraliaBernardo Dominic NEW
Julie U VenereJapanBernardo Dominic NEGOTIATION
Jennifer B MarrierFranceOnyama Limba NEW
Ivar S MacleadUnited KingdomAnna Fali UNQUALIFIED
Smith X CaudyItalyOnyama Limba QUALIFIED
Munro Q WieserUnited KingdomOnyama Limba NEGOTIATION
Cody Q ButtGermanyAnna Fali QUALIFIED
Deepesh M GlickAustraliaOnyama Limba RENEWAL
Isabel K GlickIndiaStephen Shaw UNQUALIFIED
Julie O ShinkoBrazilStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin U FlosiJapanStephen Shaw UNQUALIFIED
Faith I DoeJapanStephen Shaw UNQUALIFIED
Aruna N FigeroaIndiaStephen Shaw PROPOSAL
Tony Z RoysterJapanIvan Magalhaes RENEWAL
Clifford Q CaldareraSpainAsiya Javayant NEW
Silvio N KolmetzUnited KingdomOnyama Limba QUALIFIED
Maisha P GlickArgentinaStephen Shaw RENEWAL
Maisha A WaycottAustraliaOnyama Limba NEW
Nicolas F VocelkaArgentinaAmy Elsner RENEWAL
Leja S TollnerFranceXuxue Feng UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore T CaudyAustralia2024-04-27Printing Dimensions QUALIFIED88Elwin Sharvill
1001Clifford J RimJapan2024-05-21Morlong Associates RENEWAL6Ioni Bowcher
1002Julie Q BowleyCanada2024-05-23Rangoni Of Florence NEW73Elwin Sharvill
1003Aditya S FerenczRussia2024-05-20Feltz Printing Service QUALIFIED54Anna Fali
1004David K MaletItaly2024-05-09Chanay, Jeffrey A Esq UNQUALIFIED12Bernardo Dominic
1005Faith G FerenczItaly2024-05-19Printing Dimensions UNQUALIFIED20Stephen Shaw
1006Aditya Q RutaItaly2024-05-11Morlong Associates NEW75Onyama Limba
1007Aruna B RutaSpain2024-05-24Morlong Associates NEGOTIATION52Xuxue Feng
1008Emily W RutaItaly2024-04-28Rangoni Of Florence QUALIFIED70Bernardo Dominic
1009Stacey S NestleCanada2024-05-08King, Christopher A Esq RENEWAL38Stephen Shaw
1010Aruna B BologniaJapan2024-05-16Morlong Associates NEGOTIATION7Amy Elsner
1011Stacey L VocelkaFrance2024-05-01Dorl, James J Esq UNQUALIFIED19Ivan Magalhaes
1012Antonio W MacleadIndia2024-05-16Dorl, James J Esq UNQUALIFIED27Ivan Magalhaes
1013Aditya L SaylorsAustralia2024-05-08King, Christopher A Esq NEW11Ivan Magalhaes
1014Antonio Z BriddickGermany2024-04-29Buckley Miller Wright NEGOTIATION5Ioni Bowcher
1015Munro R OstroskySpain2024-05-17Feltz Printing Service PROPOSAL10Asiya Javayant
1016Greenwood F DoeItaly2024-04-30Buckley Miller Wright NEGOTIATION47Xuxue Feng
1017Wickens P IturbideIndia2024-04-26King, Christopher A Esq NEW94Onyama Limba
1018Jeanfrancois X FerenczArgentina2024-05-07Truhlar And Truhlar Attys NEGOTIATION92Onyama Limba
1019Misaki T WieserRussia2024-05-07Buckley Miller Wright QUALIFIED79Elwin Sharvill
1020Arvin P CaldareraJapan2024-05-17Truhlar And Truhlar Attys NEGOTIATION6Asiya Javayant
1021Antonio W StockhamCanada2024-04-25Chanay, Jeffrey A Esq NEW6Ivan Magalhaes
1022Johnson Q TollnerUnited Kingdom2024-05-03Printing Dimensions QUALIFIED89Bernardo Dominic
1023Juan Z DilliardJapan2024-04-28Benton, John B Jr UNQUALIFIED84Onyama Limba
1024Juan P AlbaresRussia2024-05-06Feltz Printing Service UNQUALIFIED0Xuxue Feng
1025Johnson F WhobreyBrazil2024-05-20Benton, John B Jr PROPOSAL77Asiya Javayant
1026Murillo O GauchoUnited Kingdom2024-04-27Dorl, James J Esq NEW69Onyama Limba
1027Isabel T NickaUnited Kingdom2024-05-01Feltz Printing Service RENEWAL72Amy Elsner
1028Darci G RimFrance2024-05-12Rousseaux, Michael Esq RENEWAL47Ioni Bowcher
1029Misaki Z GauchoJapan2024-04-25King, Christopher A Esq RENEWAL74Stephen Shaw
1030Johnson R SchemmerRussia2024-04-30Feiner Bros QUALIFIED30Stephen Shaw
1031Leon T OldroydBrazil2024-05-06Truhlar And Truhlar Attys NEW46Amy Elsner
1032Deepesh T NickaAustralia2024-05-15Rousseaux, Michael Esq NEGOTIATION56Ivan Magalhaes
1033Adams T StensethArgentina2024-05-08Chemel, James L Cpa NEGOTIATION78Ivan Magalhaes
1034Stacey J IturbideGermany2024-05-11Chemel, James L Cpa UNQUALIFIED25Onyama Limba
1035Jefferson G GarufiIndia2024-05-24Dorl, James J Esq RENEWAL14Elwin Sharvill
1036Claire C OldroydRussia2024-05-17Buckley Miller Wright NEW60Ioni Bowcher
1037David D RutaBrazil2024-05-11Buckley Miller Wright NEGOTIATION75Onyama Limba
1038Julie C BowleySpain2024-05-14Chemel, James L Cpa PROPOSAL73Ivan Magalhaes
1039Misaki D PaprockiGermany2024-04-27Benton, John B Jr UNQUALIFIED35Elwin Sharvill
1040Munro P BologniaGermany2024-05-02Rangoni Of Florence QUALIFIED75Ivan Magalhaes
1041Smith U MacleadArgentina2024-05-19Chemel, James L Cpa QUALIFIED54Ioni Bowcher
1042Julie L MacleadFrance2024-05-18Morlong Associates QUALIFIED16Ivan Magalhaes
1043Ivar J MaletAustralia2024-05-07Feiner Bros PROPOSAL84Onyama Limba
1044Kaitlin E GarufiRussia2024-05-22Truhlar And Truhlar Attys RENEWAL55Elwin Sharvill
1045Kadeem Z StensethJapan2024-04-29Truhlar And Truhlar Attys PROPOSAL26Bernardo Dominic
1046Mujtaba Q NestleAustralia2024-04-30Dorl, James J Esq UNQUALIFIED13Xuxue Feng
1047Julie N OstroskyAustralia2024-05-06Buckley Miller Wright RENEWAL34Stephen Shaw
1048Emily E StockhamUnited Kingdom2024-05-13Feiner Bros NEGOTIATION74Xuxue Feng
1049Chavez V CampainAustralia2024-04-27Morlong Associates QUALIFIED73Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Tony W DarakjyIndiaOnyama Limba NEGOTIATION
Chavez Y GarufiIndiaElwin Sharvill RENEWAL
Misaki N GillianRussiaStephen Shaw RENEWAL
Aditya R SchemmerGermanyBernardo Dominic UNQUALIFIED
Leja Y StockhamGermanyBernardo Dominic QUALIFIED
Ivar J FlosiIndiaAnna Fali PROPOSAL
Isabel N OldroydAustraliaAsiya Javayant NEGOTIATION
Murillo V FlosiIndiaOnyama Limba PROPOSAL
Tony Y StensethIndiaBernardo Dominic NEGOTIATION
Leon R FerenczIndiaAnna Fali RENEWAL
Leon G DoeGermanyIoni Bowcher UNQUALIFIED
Juan M SlusarskiAustraliaStephen Shaw RENEWAL
Chavez C MaletBrazilIoni Bowcher NEW
Maria E NickaAustraliaElwin Sharvill PROPOSAL
Adams K RoysterAustraliaAmy Elsner RENEWAL
Ivar T FollerUnited KingdomXuxue Feng UNQUALIFIED
Smith E VenereJapanAmy Elsner NEW
Antonio Y WieserGermanyIvan Magalhaes UNQUALIFIED
Nicolas L PerinGermanyIoni Bowcher RENEWAL
Sinclair F SaylorsArgentinaBernardo Dominic UNQUALIFIED
Jennifer P WieserItalyIoni Bowcher UNQUALIFIED
David D NestleSpainElwin Sharvill PROPOSAL
Greenwood B GlickRussiaXuxue Feng PROPOSAL
Ivar W WhobreySpainIoni Bowcher PROPOSAL
Wickens N MarrierItalyBernardo Dominic NEGOTIATION
Maria U IturbideGermanyOnyama Limba RENEWAL
Izzy X DilliardCanadaStephen Shaw PROPOSAL
Darci U MacleadSpainXuxue Feng QUALIFIED
Antonio X FollerFranceAnna Fali QUALIFIED
Adams O FollerRussiaIoni Bowcher QUALIFIED
Julie N NickaIndiaStephen Shaw NEGOTIATION
Octavia Z BriddickRussiaElwin Sharvill PROPOSAL
Costa E CaldareraItalyBernardo Dominic UNQUALIFIED
Leja X RoysterSpainIoni Bowcher QUALIFIED
Smith A MorascaArgentinaIoni Bowcher NEW
Juan I WieserCanadaIvan Magalhaes RENEWAL
Cody O VocelkaSpainIoni Bowcher UNQUALIFIED
Faith T MacleadSpainAmy Elsner UNQUALIFIED
Smith Z FlosiCanadaElwin Sharvill RENEWAL
James T FollerCanadaAsiya Javayant QUALIFIED
Aruna P WieserBrazilAsiya Javayant PROPOSAL
Faith M GarufiGermanyAsiya Javayant RENEWAL
Arvin A InouyeIndiaIoni Bowcher PROPOSAL
Emily Q FollerIndiaOnyama Limba QUALIFIED
Chavez W MarrierUnited KingdomElwin Sharvill NEGOTIATION
Juan E RoysterUnited KingdomXuxue Feng NEGOTIATION
Maisha Z TollnerGermanyOnyama Limba UNQUALIFIED
David B BologniaCanadaXuxue Feng NEW
Adams I SergiBrazilAsiya Javayant PROPOSAL
Silvio Y ButtRussiaAnna Fali NEGOTIATION
Frozen Columns
Name
Smith S Ferencz
Kaitlin X Amigon
Ivar C Malet
Leon W Albares
Francesco O Ferencz
Tony U Kolmetz
Ricardo D Vocelka
Chavez P Perin
Munro B Royster
Aika O Doe
Deepesh C Perin
Alejandro X Bolognia
Octavia P Saylors
Silvio T Malet
Jefferson K Amigon
Jones H Morasca
Deepesh O Inouye
Francesco T Stockham
Juan Z Rulapaugh
Johnson R Bowley
David L Rim
Kaitlin E Glick
Ashley I Rim
Nicolas Q Paprocki
Mayumi V Shinko
Rodrigues V Wieser
Cody Q Iturbide
Morrow Z Dilliard
Salvatore D Stockham
Misaki G Vocelka
Aditya X Kusko
Wickens R Dilliard
Julie M Gillian
David R Campain
Kadeem A Rulapaugh
Mujtaba R Iturbide
Tony F Paprocki
Alejandro U Albares
Mayumi D Stockham
Faith G Stenseth
Mayumi S Tollner
Darci T Dilliard
Juan K Shinko
Misaki U Marrier
Murillo J Doe
Aditya U Stenseth
Deepesh R Malet
Claire D Iturbide
Costa T Foller
Leja P Slusarski
IdCountryDate
1000India2024-05-15
1001Germany2024-05-22
1002Canada2024-05-07
1003Italy2024-05-24
1004Spain2024-05-18
1005Australia2024-05-10
1006Brazil2024-04-28
1007Canada2024-04-28
1008Germany2024-04-27
1009Germany2024-04-28
1010Japan2024-05-04
1011Japan2024-05-08
1012Spain2024-05-02
1013Germany2024-05-06
1014Argentina2024-04-27
1015Canada2024-05-06
1016Spain2024-04-30
1017Italy2024-05-05
1018Japan2024-05-16
1019India2024-05-05
1020Australia2024-05-10
1021Australia2024-05-11
1022Germany2024-05-04
1023Argentina2024-04-25
1024France2024-04-28
1025Italy2024-05-19
1026Australia2024-05-09
1027United Kingdom2024-04-27
1028Japan2024-05-23
1029Canada2024-04-28
1030United Kingdom2024-04-29
1031India2024-05-20
1032United Kingdom2024-05-07
1033Canada2024-05-09
1034Russia2024-05-10
1035Australia2024-05-14
1036India2024-04-25
1037Canada2024-05-03
1038Canada2024-05-13
1039Brazil2024-05-03
1040Russia2024-05-21
1041Brazil2024-05-12
1042Australia2024-05-13
1043Brazil2024-05-21
1044Australia2024-05-10
1045India2024-05-09
1046Australia2024-05-03
1047United Kingdom2024-04-28
1048Australia2024-05-08
1049Germany2024-05-22

On-Demand Data

NameIdCountryDate
Ivar C Marrier1000France2024-05-14
Adams F Chui1001Russia2024-05-16
Tony K Flosi1002Spain2024-04-30
Darci E Doe1003Spain2024-05-17
Sinclair A Rulapaugh1004India2024-05-05
Johnson W Bowley1005United Kingdom2024-04-25
Ivar F Rim1006Italy2024-05-17
David U Ostrosky1007India2024-05-06
Antonio J Inouye1008Brazil2024-04-29
Maisha H Saylors1009United Kingdom2024-05-05
Ivar E Slusarski1010Argentina2024-05-11
Arvin P Stenseth1011United Kingdom2024-05-23
Tony S Iturbide1012Germany2024-05-02
Costa Z Slusarski1013Australia2024-05-16
Mayumi K Butt1014United Kingdom2024-05-17
Kaitlin K Maclead1015Canada2024-05-19
Leja V Flosi1016Argentina2024-05-04
Jefferson P Shinko1017Canada2024-05-03
Stacey B Kusko1018Germany2024-05-01
Julie U Ruta1019Brazil2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem N PoquetteAustraliaAnna Fali UNQUALIFIED
Clifford S VocelkaAustraliaAmy Elsner UNQUALIFIED
Munro N SchemmerArgentinaAmy Elsner NEGOTIATION
Salvatore X SchemmerItalyIvan Magalhaes NEW
David F MaletGermanyOnyama Limba NEW
Sinclair A WieserArgentinaIoni Bowcher QUALIFIED
Morrow O ChuiCanadaIoni Bowcher PROPOSAL
Kadeem A NestleSpainXuxue Feng PROPOSAL
Tony Q StensethJapanIoni Bowcher QUALIFIED
Stacey S OstroskyBrazilElwin Sharvill RENEWAL
Aika N BowleyCanadaStephen Shaw PROPOSAL
Arvin R VenereCanadaAsiya Javayant UNQUALIFIED
Faith S FerenczIndiaIvan Magalhaes NEGOTIATION
Faith W VenereCanadaBernardo Dominic RENEWAL
Costa I CampainBrazilStephen Shaw UNQUALIFIED
Misaki S IturbideAustraliaStephen Shaw QUALIFIED
Tony V WhobreyUnited KingdomAmy Elsner NEW
Johnson W PoquetteGermanyBernardo Dominic UNQUALIFIED
Emily Z DilliardUnited KingdomAsiya Javayant UNQUALIFIED
Aika U OldroydArgentinaIvan Magalhaes UNQUALIFIED
Greenwood N BriddickFranceElwin Sharvill UNQUALIFIED
Clifford C WaycottRussiaAmy Elsner NEGOTIATION
Kaitlin F AmigonAustraliaIoni Bowcher NEGOTIATION
Arvin G WhobreySpainIvan Magalhaes NEW
Leja P FerenczItalyIoni Bowcher NEGOTIATION
Cody H RutaIndiaElwin Sharvill RENEWAL
Juan X OldroydAustraliaBernardo Dominic RENEWAL
Juan Z SaylorsSpainIvan Magalhaes RENEWAL
Smith A GlickAustraliaOnyama Limba RENEWAL
Emily K MacleadUnited KingdomAsiya Javayant PROPOSAL
Aditya H DarakjyFranceXuxue Feng NEGOTIATION
Costa B TollnerUnited KingdomIoni Bowcher NEGOTIATION
Misaki E ShinkoArgentinaElwin Sharvill QUALIFIED
Julie H FerenczSpainStephen Shaw PROPOSAL
Alejandro J BologniaFranceStephen Shaw PROPOSAL
Aika J BologniaGermanyBernardo Dominic NEW
Clifford M GlickGermanyOnyama Limba NEGOTIATION
Cody I OldroydCanadaAnna Fali PROPOSAL
Arvin Y DoeUnited KingdomIoni Bowcher RENEWAL
Chavez Y WhobreyItalyOnyama Limba RENEWAL

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