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
Tony G StensethItalyAsiya Javayant PROPOSAL
Aditya Z RulapaughJapanStephen Shaw UNQUALIFIED
Stacey F DilliardRussiaElwin Sharvill NEW
Salvatore B PaprockiFranceStephen Shaw UNQUALIFIED
Antonio X OldroydRussiaIoni Bowcher NEGOTIATION
Aika A FigeroaSpainXuxue Feng NEGOTIATION
Deepesh N AmigonGermanyXuxue Feng NEGOTIATION
Ivar S ShinkoArgentinaElwin Sharvill PROPOSAL
Alejandro F CampainGermanyIoni Bowcher UNQUALIFIED
Alejandro F VenereJapanAnna Fali UNQUALIFIED
Costa O MacleadBrazilAnna Fali NEW
Jennifer I RutaArgentinaStephen Shaw RENEWAL
Kadeem E AlbaresAustraliaBernardo Dominic UNQUALIFIED
Isabel K ChuiFranceElwin Sharvill UNQUALIFIED
Ashley D StensethBrazilAmy Elsner NEW
Maria V SlusarskiItalyXuxue Feng UNQUALIFIED
Aditya F PerinAustraliaIvan Magalhaes UNQUALIFIED
Leja O BowleyJapanAsiya Javayant RENEWAL
Aika X RoysterArgentinaIvan Magalhaes PROPOSAL
Kaitlin O PoquetteIndiaIvan Magalhaes QUALIFIED
Francesco D AmigonGermanyAsiya Javayant PROPOSAL
Ivar C PerinBrazilXuxue Feng NEW
Juan F AmigonFranceBernardo Dominic QUALIFIED
Ashley A RulapaughGermanyAmy Elsner NEW
Mujtaba U KolmetzCanadaOnyama Limba RENEWAL
Clifford C ShinkoItalyBernardo Dominic PROPOSAL
Maria W PerinUnited KingdomIvan Magalhaes NEW
Wickens K ButtIndiaAmy Elsner PROPOSAL
James N KolmetzBrazilAsiya Javayant RENEWAL
Arvin U StensethArgentinaIoni Bowcher NEGOTIATION
Munro P MaletIndiaOnyama Limba PROPOSAL
Salvatore T CaudySpainXuxue Feng RENEWAL
Faith T GarufiAustraliaOnyama Limba NEGOTIATION
Claire P WaycottJapanElwin Sharvill PROPOSAL
Arvin D RimFranceOnyama Limba QUALIFIED
Smith E SlusarskiRussiaBernardo Dominic PROPOSAL
Ricardo I CaldareraAustraliaElwin Sharvill UNQUALIFIED
Tony W GlickUnited KingdomIvan Magalhaes PROPOSAL
Salvatore J BologniaArgentinaStephen Shaw NEGOTIATION
Johnson N GarufiCanadaElwin Sharvill UNQUALIFIED
Octavia A KuskoBrazilOnyama Limba UNQUALIFIED
Cody R RulapaughAustraliaXuxue Feng PROPOSAL
Mayumi O DarakjyAustraliaAnna Fali PROPOSAL
Mayumi O ChuiIndiaElwin Sharvill NEW
Munro L NickaItalyIoni Bowcher NEW
Smith I IturbideFranceElwin Sharvill UNQUALIFIED
Francesco Y MaletAustraliaAnna Fali UNQUALIFIED
Wickens J FollerFranceElwin Sharvill NEW
Deepesh W ChuiIndiaStephen Shaw UNQUALIFIED
Ricardo W VocelkaUnited KingdomBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Isabel F DilliardUnited KingdomAsiya Javayant RENEWAL
Francesco B WaycottJapanBernardo Dominic QUALIFIED
Ricardo Q DoeRussiaOnyama Limba NEW
Morrow J AlbaresJapanStephen Shaw UNQUALIFIED
Faith D MaletCanadaStephen Shaw NEW
Isabel L TollnerBrazilIoni Bowcher RENEWAL
Izzy J InouyeArgentinaAmy Elsner RENEWAL
Antonio G AmigonFranceAnna Fali NEGOTIATION
Misaki L AlbaresJapanAsiya Javayant RENEWAL
Ricardo G AmigonAustraliaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja W OstroskyRussia2024-05-19Truhlar And Truhlar Attys UNQUALIFIED91Amy Elsner
1001Izzy U CampainUnited Kingdom2024-05-30Rousseaux, Michael Esq UNQUALIFIED26Elwin Sharvill
1002Jeanfrancois E DilliardItaly2024-05-31Benton, John B Jr QUALIFIED37Bernardo Dominic
1003David W RulapaughArgentina2024-05-07Feiner Bros UNQUALIFIED2Stephen Shaw
1004Nicolas X InouyeJapan2024-05-21Truhlar And Truhlar Attys NEGOTIATION50Ivan Magalhaes
1005David G CampainUnited Kingdom2024-05-09Rangoni Of Florence RENEWAL19Amy Elsner
1006Claire V FollerJapan2024-05-12Truhlar And Truhlar Attys RENEWAL79Amy Elsner
1007Francesco S TollnerCanada2024-05-14Chemel, James L Cpa QUALIFIED92Amy Elsner
1008Munro Z VenereIndia2024-05-22Truhlar And Truhlar Attys PROPOSAL57Onyama Limba
1009Wickens R PerinUnited Kingdom2024-05-27Printing Dimensions RENEWAL5Asiya Javayant
1010Jones I NestleArgentina2024-05-23Chapman, Ross E Esq PROPOSAL81Ivan Magalhaes
1011Wickens B ShinkoItaly2024-05-23Feltz Printing Service PROPOSAL72Ivan Magalhaes
1012Rodrigues W DoeIndia2024-05-28Benton, John B Jr UNQUALIFIED89Xuxue Feng
1013Darci K StensethItaly2024-05-24Chapman, Ross E Esq NEW32Ivan Magalhaes
1014Adams G AmigonSpain2024-05-05Benton, John B Jr PROPOSAL51Xuxue Feng
1015Arvin W StockhamCanada2024-05-14Chapman, Ross E Esq RENEWAL63Amy Elsner
1016Silvio E MaletArgentina2024-05-11Benton, John B Jr PROPOSAL61Stephen Shaw
1017James Z DarakjyArgentina2024-05-15Morlong Associates NEW13Onyama Limba
1018Faith E FigeroaRussia2024-05-16Buckley Miller Wright QUALIFIED59Anna Fali
1019Leon Z CampainFrance2024-05-23Feltz Printing Service UNQUALIFIED93Elwin Sharvill
1020Sinclair Y WhobreyAustralia2024-05-20Dorl, James J Esq PROPOSAL61Ivan Magalhaes
1021Morrow H RimCanada2024-05-10Buckley Miller Wright RENEWAL86Elwin Sharvill
1022Morrow S FerenczRussia2024-05-02Rangoni Of Florence NEW20Asiya Javayant
1023Leja K RoysterAustralia2024-05-18Feltz Printing Service RENEWAL64Amy Elsner
1024Maisha W RutaAustralia2024-05-14Dorl, James J Esq NEW15Amy Elsner
1025Adams E WieserItaly2024-05-15Printing Dimensions NEGOTIATION86Xuxue Feng
1026Jones Z RimBrazil2024-05-18Morlong Associates NEW91Elwin Sharvill
1027Morrow E SlusarskiBrazil2024-05-21Feiner Bros PROPOSAL6Stephen Shaw
1028Aditya D VenereBrazil2024-05-13Benton, John B Jr RENEWAL85Bernardo Dominic
1029Jones I AlbaresGermany2024-05-09Printing Dimensions UNQUALIFIED10Asiya Javayant
1030Juan S StockhamItaly2024-05-27Morlong Associates PROPOSAL96Amy Elsner
1031Stacey K PerinSpain2024-05-23Truhlar And Truhlar Attys UNQUALIFIED36Bernardo Dominic
1032Mayumi Y CaudyIndia2024-05-04King, Christopher A Esq PROPOSAL73Bernardo Dominic
1033Leja F SlusarskiJapan2024-05-15Morlong Associates UNQUALIFIED55Ivan Magalhaes
1034Aruna R VenereItaly2024-05-31Truhlar And Truhlar Attys NEGOTIATION6Xuxue Feng
1035Maria T PaprockiItaly2024-05-03Truhlar And Truhlar Attys PROPOSAL2Asiya Javayant
1036Francesco Q PaprockiUnited Kingdom2024-05-18Chapman, Ross E Esq NEGOTIATION38Ioni Bowcher
1037Misaki L SchemmerRussia2024-05-19Benton, John B Jr NEW11Anna Fali
1038Alejandro Z CaldareraCanada2024-05-05Printing Dimensions PROPOSAL42Ioni Bowcher
1039Antonio V BologniaGermany2024-05-20Chanay, Jeffrey A Esq RENEWAL60Ioni Bowcher
1040Isabel D StockhamItaly2024-05-13Chapman, Ross E Esq RENEWAL63Ioni Bowcher
1041Maisha Q SchemmerArgentina2024-05-14Benton, John B Jr QUALIFIED43Bernardo Dominic
1042Aditya B FlosiIndia2024-05-05Morlong Associates UNQUALIFIED38Elwin Sharvill
1043Leja H PaprockiBrazil2024-05-05Feiner Bros UNQUALIFIED4Ioni Bowcher
1044Cody O GlickItaly2024-05-17Feltz Printing Service UNQUALIFIED82Amy Elsner
1045Maisha H VenereGermany2024-05-12Buckley Miller Wright QUALIFIED88Anna Fali
1046Misaki C KolmetzArgentina2024-05-12Benton, John B Jr QUALIFIED13Amy Elsner
1047Maisha H DilliardIndia2024-05-26Feiner Bros UNQUALIFIED92Stephen Shaw
1048Darci G MacleadArgentina2024-05-23Chemel, James L Cpa PROPOSAL70Asiya Javayant
1049Maisha V PerinSpain2024-05-16Rousseaux, Michael Esq NEW72Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
James D WieserJapanAsiya Javayant NEW
Jefferson T OldroydBrazilAsiya Javayant QUALIFIED
Arvin H InouyeArgentinaStephen Shaw UNQUALIFIED
Kadeem D RimItalyBernardo Dominic PROPOSAL
Kaitlin E WieserRussiaAnna Fali NEW
Antonio X MorascaAustraliaElwin Sharvill NEW
Deepesh V GauchoFranceAnna Fali NEW
Jones M OldroydGermanyAsiya Javayant UNQUALIFIED
Salvatore M StockhamGermanyElwin Sharvill UNQUALIFIED
Francesco R KuskoIndiaStephen Shaw QUALIFIED
Kaitlin G PaprockiArgentinaIvan Magalhaes PROPOSAL
Leja P NickaArgentinaElwin Sharvill PROPOSAL
James N WieserFranceIoni Bowcher NEGOTIATION
Leja Z WhobreyAustraliaAsiya Javayant QUALIFIED
Costa C ChuiArgentinaIoni Bowcher UNQUALIFIED
Alejandro D StensethArgentinaXuxue Feng NEGOTIATION
Johnson I DilliardUnited KingdomAmy Elsner PROPOSAL
Alejandro B ShinkoItalyIvan Magalhaes NEW
Jennifer J InouyeIndiaOnyama Limba QUALIFIED
Francesco S FigeroaJapanAnna Fali RENEWAL
James W MarrierGermanyOnyama Limba QUALIFIED
Greenwood S GlickArgentinaAsiya Javayant UNQUALIFIED
Jennifer E BriddickGermanyAmy Elsner NEGOTIATION
Salvatore J ButtItalyIvan Magalhaes PROPOSAL
Aruna G FigeroaAustraliaStephen Shaw RENEWAL
Jefferson X CaudyJapanIvan Magalhaes NEW
Aruna S ShinkoUnited KingdomAsiya Javayant NEGOTIATION
Cody I OldroydBrazilAnna Fali UNQUALIFIED
Clifford Q FigeroaIndiaAsiya Javayant UNQUALIFIED
Emily F GlickItalyIvan Magalhaes RENEWAL
Adams G OldroydAustraliaStephen Shaw NEW
Stacey M FerenczAustraliaXuxue Feng NEGOTIATION
Faith A FerenczBrazilOnyama Limba PROPOSAL
Chavez Q InouyeJapanAnna Fali RENEWAL
Ivar I FerenczSpainAsiya Javayant UNQUALIFIED
Izzy X MorascaSpainIoni Bowcher UNQUALIFIED
Sinclair K GauchoArgentinaAsiya Javayant UNQUALIFIED
Jennifer L WaycottItalyAmy Elsner UNQUALIFIED
Leon A DoeUnited KingdomStephen Shaw QUALIFIED
Ricardo S CampainIndiaIvan Magalhaes UNQUALIFIED
Nicolas F DilliardItalyOnyama Limba NEGOTIATION
Deepesh B FollerArgentinaStephen Shaw RENEWAL
Wickens B SchemmerJapanElwin Sharvill NEGOTIATION
Darci H AlbaresCanadaAnna Fali QUALIFIED
Clifford Q CaudyAustraliaStephen Shaw UNQUALIFIED
Alejandro P NickaSpainElwin Sharvill PROPOSAL
Cody C RutaBrazilOnyama Limba RENEWAL
Tony V OldroydGermanyAmy Elsner UNQUALIFIED
Mujtaba R BowleyIndiaAsiya Javayant RENEWAL
Cody F ChuiArgentinaBernardo Dominic QUALIFIED
Frozen Columns
Name
Claire G Oldroyd
Isabel U Rulapaugh
Claire W Saylors
Darci K Foller
Faith B Doe
Mujtaba L Inouye
Salvatore H Slusarski
Jeanfrancois G Campain
Leon W Shinko
James H Ferencz
Aditya O Caldarera
Maria S Rim
Isabel Q Waycott
Claire A Ferencz
Mujtaba A Chui
Aditya O Gillian
Nicolas U Butt
Salvatore G Amigon
Faith S Amigon
Wickens T Stockham
Kaitlin Q Iturbide
Aditya U Royster
Murillo Z Stenseth
Claire W Poquette
Maisha R Stockham
Faith E Gaucho
Jeanfrancois X Dilliard
Darci Z Schemmer
Arvin R Figeroa
Juan J Inouye
Johnson I Kolmetz
Clifford W Maclead
Isabel V Caudy
Aika Y Darakjy
Costa K Kolmetz
Octavia U Shinko
Darci A Nicka
Julie B Stenseth
Deepesh S Oldroyd
Mujtaba Q Kusko
Izzy X Foller
Aditya O Glick
Kadeem T Chui
Johnson A Malet
Adams O Rulapaugh
Smith R Briddick
Aditya E Wieser
Aditya M Slusarski
Jeanfrancois M Royster
Ivar C Caldarera
IdCountryDate
1000Spain2024-05-06
1001Brazil2024-05-18
1002Russia2024-05-26
1003Canada2024-05-29
1004Spain2024-05-31
1005Argentina2024-05-05
1006Australia2024-05-03
1007France2024-05-21
1008France2024-05-26
1009Germany2024-05-24
1010Spain2024-05-19
1011Italy2024-05-21
1012Australia2024-05-07
1013India2024-05-18
1014Germany2024-05-17
1015Argentina2024-05-09
1016Argentina2024-05-24
1017Argentina2024-05-18
1018Japan2024-05-04
1019Argentina2024-05-03
1020Brazil2024-05-03
1021Australia2024-05-26
1022India2024-05-24
1023Australia2024-05-20
1024India2024-05-27
1025Italy2024-05-06
1026Australia2024-05-30
1027Germany2024-05-29
1028United Kingdom2024-05-22
1029United Kingdom2024-05-30
1030Brazil2024-05-08
1031Japan2024-05-30
1032Canada2024-05-05
1033Canada2024-05-17
1034Australia2024-05-21
1035Japan2024-05-30
1036Canada2024-05-13
1037France2024-05-27
1038Argentina2024-05-29
1039Australia2024-05-25
1040Japan2024-05-31
1041Italy2024-05-09
1042Spain2024-05-06
1043Russia2024-05-13
1044Australia2024-05-26
1045United Kingdom2024-05-18
1046France2024-05-29
1047United Kingdom2024-05-31
1048Brazil2024-05-31
1049Brazil2024-05-13

On-Demand Data

NameIdCountryDate
Clifford I Figeroa1000Spain2024-05-26
James F Bowley1001Russia2024-05-20
Deepesh Q Gaucho1002Spain2024-05-28
Julie Y Dilliard1003Russia2024-05-10
Arvin N Tollner1004Brazil2024-05-28
Aruna X Whobrey1005Germany2024-05-03
Murillo J Saylors1006Argentina2024-05-21
Murillo K Vocelka1007Argentina2024-05-13
Ricardo M Venere1008Italy2024-05-25
Aditya D Oldroyd1009Canada2024-05-27
Deepesh L Gillian1010Japan2024-05-16
Antonio M Kusko1011Argentina2024-05-27
Antonio G Kolmetz1012India2024-05-04
Izzy D Marrier1013Germany2024-05-24
Jeanfrancois M Tollner1014India2024-05-24
Greenwood S Ostrosky1015Japan2024-05-11
Leon W Glick1016Italy2024-05-09
Clifford A Perin1017Australia2024-05-31
Aruna T Chui1018Japan2024-05-04
Jennifer R Oldroyd1019India2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio C ButtArgentinaIoni Bowcher RENEWAL
Costa A WhobreyArgentinaAmy Elsner RENEWAL
Emily K GlickRussiaStephen Shaw NEGOTIATION
Stacey X WhobreyItalyAmy Elsner NEGOTIATION
Jennifer Y GarufiFranceIvan Magalhaes QUALIFIED
Arvin G BowleyFranceOnyama Limba NEW
Silvio Q SchemmerItalyBernardo Dominic UNQUALIFIED
Munro K CaldareraJapanOnyama Limba NEGOTIATION
Octavia L GarufiIndiaStephen Shaw UNQUALIFIED
Faith H NestleUnited KingdomXuxue Feng NEGOTIATION
Silvio U StockhamCanadaXuxue Feng RENEWAL
James C InouyeRussiaIvan Magalhaes NEW
Darci G GlickFranceStephen Shaw UNQUALIFIED
Adams X MorascaBrazilAnna Fali QUALIFIED
Munro Z PaprockiIndiaAnna Fali PROPOSAL
Juan R MacleadRussiaOnyama Limba UNQUALIFIED
Darci J BologniaAustraliaIoni Bowcher QUALIFIED
Mujtaba T GauchoFranceIoni Bowcher NEW
Emily R DarakjyRussiaIoni Bowcher UNQUALIFIED
Emily S DarakjyJapanAmy Elsner QUALIFIED
Faith I SlusarskiFranceAmy Elsner RENEWAL
Julie H InouyeFranceIoni Bowcher QUALIFIED
Mujtaba F KolmetzAustraliaAmy Elsner RENEWAL
Izzy U SaylorsCanadaIoni Bowcher QUALIFIED
Adams K DarakjyBrazilAsiya Javayant RENEWAL
Clifford H StockhamItalyXuxue Feng NEGOTIATION
Claire N TollnerJapanXuxue Feng RENEWAL
Octavia L PerinItalyStephen Shaw UNQUALIFIED
Julie R FerenczFranceAnna Fali QUALIFIED
Stacey J FlosiBrazilElwin Sharvill NEW
Isabel D DilliardFranceBernardo Dominic NEW
Morrow R SlusarskiJapanBernardo Dominic NEW
Faith G FigeroaAustraliaAsiya Javayant UNQUALIFIED
Isabel T AmigonSpainAmy Elsner NEGOTIATION
Mayumi M TollnerSpainElwin Sharvill NEW
Maria P AmigonCanadaXuxue Feng NEGOTIATION
Ashley Q BologniaItalyXuxue Feng NEGOTIATION
Mujtaba Z DilliardRussiaBernardo Dominic QUALIFIED
Alejandro R BowleyJapanIvan Magalhaes QUALIFIED
Adams L MaletUnited KingdomIoni Bowcher 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>