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
Murillo O AmigonJapanAmy Elsner NEW
Silvio L NickaGermanyStephen Shaw NEGOTIATION
Aruna J WieserCanadaIvan Magalhaes UNQUALIFIED
Nicolas M FerenczArgentinaBernardo Dominic QUALIFIED
Aditya H ChuiItalyElwin Sharvill QUALIFIED
Murillo D RutaArgentinaIvan Magalhaes NEGOTIATION
Deepesh T MaletRussiaIoni Bowcher QUALIFIED
Juan O PerinArgentinaAmy Elsner UNQUALIFIED
Johnson E FollerJapanIoni Bowcher NEW
Adams V RulapaughArgentinaOnyama Limba NEW
Nicolas P AmigonCanadaOnyama Limba NEW
Munro V VocelkaSpainStephen Shaw PROPOSAL
Misaki A ChuiBrazilOnyama Limba NEW
Juan D DarakjyFranceStephen Shaw NEW
James G SlusarskiIndiaXuxue Feng PROPOSAL
Leja C PoquetteUnited KingdomIoni Bowcher RENEWAL
Ricardo R BowleySpainIvan Magalhaes PROPOSAL
Stacey O CaudyAustraliaStephen Shaw UNQUALIFIED
Francesco Y SlusarskiSpainOnyama Limba RENEWAL
Ivar A NickaJapanElwin Sharvill RENEWAL
Faith V IturbideArgentinaAmy Elsner UNQUALIFIED
Nicolas M BologniaArgentinaElwin Sharvill PROPOSAL
Arvin N SergiGermanyAsiya Javayant QUALIFIED
Aditya K MaletItalyAsiya Javayant RENEWAL
James K MaletCanadaXuxue Feng NEW
Jefferson P FlosiArgentinaElwin Sharvill NEW
Nicolas Q SchemmerCanadaBernardo Dominic PROPOSAL
James A VenereIndiaAnna Fali NEW
David G GlickCanadaXuxue Feng PROPOSAL
Munro A StockhamRussiaStephen Shaw UNQUALIFIED
Antonio K PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Clifford L SergiBrazilOnyama Limba QUALIFIED
Maria B StockhamGermanyStephen Shaw QUALIFIED
David S SaylorsBrazilElwin Sharvill UNQUALIFIED
Aditya H GillianIndiaXuxue Feng NEW
Greenwood N RimUnited KingdomStephen Shaw UNQUALIFIED
Rodrigues D TollnerArgentinaAmy Elsner NEW
Jones U StockhamJapanStephen Shaw RENEWAL
Ricardo U PerinRussiaIvan Magalhaes QUALIFIED
Tony Y OldroydRussiaStephen Shaw QUALIFIED
Ricardo O WhobreyArgentinaIoni Bowcher UNQUALIFIED
Leon N AmigonFranceElwin Sharvill UNQUALIFIED
Stacey Y MaletFranceAsiya Javayant NEW
Johnson N DilliardJapanAmy Elsner QUALIFIED
Greenwood L SaylorsAustraliaAsiya Javayant NEW
Smith V WieserBrazilAnna Fali PROPOSAL
Maria M DoeAustraliaXuxue Feng NEGOTIATION
Jefferson R KolmetzIndiaStephen Shaw PROPOSAL
Izzy F GarufiCanadaAmy Elsner UNQUALIFIED
Darci F NickaBrazilAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin W FigeroaSpainIoni Bowcher NEGOTIATION
Kaitlin G MaletArgentinaStephen Shaw PROPOSAL
Octavia J WhobreyAustraliaAnna Fali NEW
Antonio P CaudyArgentinaXuxue Feng UNQUALIFIED
Aditya R StensethUnited KingdomOnyama Limba NEW
Aika W PerinAustraliaOnyama Limba NEGOTIATION
Ricardo D NestleUnited KingdomElwin Sharvill NEW
Darci V MorascaBrazilXuxue Feng PROPOSAL
Sinclair H FollerAustraliaXuxue Feng UNQUALIFIED
Silvio D MarrierIndiaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha D ButtCanada2024-06-03Chemel, James L Cpa QUALIFIED25Asiya Javayant
1001Francesco V DilliardCanada2024-05-31Rangoni Of Florence NEW36Xuxue Feng
1002Arvin O MaletBrazil2024-06-05Chemel, James L Cpa QUALIFIED78Amy Elsner
1003Kaitlin S MaletAustralia2024-06-15Chanay, Jeffrey A Esq NEGOTIATION42Anna Fali
1004Leon C RutaSpain2024-06-04Truhlar And Truhlar Attys NEW55Ioni Bowcher
1005Aruna T TollnerItaly2024-05-30Dorl, James J Esq RENEWAL81Ioni Bowcher
1006Deepesh T ShinkoItaly2024-06-09Rangoni Of Florence NEGOTIATION39Bernardo Dominic
1007Silvio D GillianJapan2024-06-08Morlong Associates QUALIFIED6Ivan Magalhaes
1008Deepesh G WieserRussia2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED9Anna Fali
1009Aruna M KuskoCanada2024-05-24Rousseaux, Michael Esq QUALIFIED54Onyama Limba
1010Antonio S SergiBrazil2024-05-25Chanay, Jeffrey A Esq QUALIFIED84Onyama Limba
1011Aditya H CaldareraRussia2024-06-09Chemel, James L Cpa QUALIFIED76Onyama Limba
1012Johnson A FlosiFrance2024-06-20Morlong Associates RENEWAL24Elwin Sharvill
1013Adams D RutaIndia2024-05-29Morlong Associates NEW19Amy Elsner
1014Johnson G SaylorsItaly2024-05-27Feltz Printing Service UNQUALIFIED24Ioni Bowcher
1015Ashley M MaletCanada2024-06-01Chanay, Jeffrey A Esq NEW59Bernardo Dominic
1016Emily E WieserAustralia2024-06-19Truhlar And Truhlar Attys QUALIFIED4Stephen Shaw
1017Aditya N IturbideJapan2024-06-04Commercial Press UNQUALIFIED76Asiya Javayant
1018James J DarakjySpain2024-06-08Rangoni Of Florence PROPOSAL93Onyama Limba
1019Mujtaba H NestleItaly2024-05-26Morlong Associates NEW14Anna Fali
1020Smith N ShinkoJapan2024-06-20Chemel, James L Cpa RENEWAL91Stephen Shaw
1021Smith J BriddickGermany2024-06-02Chapman, Ross E Esq NEGOTIATION65Amy Elsner
1022Mujtaba Q GlickJapan2024-05-26Morlong Associates RENEWAL61Anna Fali
1023Kadeem I ShinkoBrazil2024-05-29Morlong Associates NEGOTIATION20Amy Elsner
1024Arvin O MarrierSpain2024-06-12Buckley Miller Wright PROPOSAL84Elwin Sharvill
1025Kaitlin I KuskoItaly2024-06-21Chapman, Ross E Esq QUALIFIED63Anna Fali
1026Kaitlin K OstroskyIndia2024-06-19Buckley Miller Wright NEGOTIATION42Anna Fali
1027Munro E ButtJapan2024-05-27Feiner Bros PROPOSAL37Asiya Javayant
1028Aika S TollnerUnited Kingdom2024-06-12Buckley Miller Wright QUALIFIED83Asiya Javayant
1029James S SchemmerIndia2024-06-13Truhlar And Truhlar Attys NEGOTIATION74Onyama Limba
1030Johnson S OstroskyAustralia2024-05-25Benton, John B Jr NEGOTIATION60Elwin Sharvill
1031Clifford C NestleIndia2024-06-01Chapman, Ross E Esq NEGOTIATION79Onyama Limba
1032Isabel P WaycottJapan2024-06-16Chapman, Ross E Esq PROPOSAL85Ioni Bowcher
1033Kaitlin Z StensethJapan2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED27Asiya Javayant
1034Costa I CampainIndia2024-05-25Chapman, Ross E Esq QUALIFIED47Amy Elsner
1035Tony M DoeArgentina2024-06-20Rangoni Of Florence NEW93Stephen Shaw
1036Mujtaba N MaletIndia2024-05-24Benton, John B Jr PROPOSAL35Anna Fali
1037Morrow H StockhamBrazil2024-06-10Rousseaux, Michael Esq NEW7Onyama Limba
1038Misaki W FerenczGermany2024-06-02King, Christopher A Esq PROPOSAL54Onyama Limba
1039Wickens I VenereSpain2024-05-24Rangoni Of Florence RENEWAL7Bernardo Dominic
1040Isabel C VenereBrazil2024-06-08Rousseaux, Michael Esq PROPOSAL90Bernardo Dominic
1041Leon E StockhamIndia2024-06-06Chemel, James L Cpa RENEWAL34Anna Fali
1042Cody O FollerGermany2024-06-15Buckley Miller Wright QUALIFIED57Asiya Javayant
1043Silvio U MacleadSpain2024-06-05Rousseaux, Michael Esq RENEWAL71Xuxue Feng
1044Leon S MaletGermany2024-06-02Chapman, Ross E Esq PROPOSAL67Elwin Sharvill
1045Kadeem Z StensethArgentina2024-05-25Chemel, James L Cpa UNQUALIFIED25Xuxue Feng
1046Ivar O StockhamItaly2024-06-20Feiner Bros NEW71Bernardo Dominic
1047Johnson R RoysterJapan2024-06-15Chanay, Jeffrey A Esq QUALIFIED33Xuxue Feng
1048Deepesh J KuskoJapan2024-06-12Chapman, Ross E Esq QUALIFIED11Bernardo Dominic
1049James E WieserSpain2024-06-03Rousseaux, Michael Esq NEGOTIATION77Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues O InouyeCanadaIvan Magalhaes NEGOTIATION
Francesco O RoysterFranceIoni Bowcher PROPOSAL
Mujtaba W SergiBrazilIvan Magalhaes UNQUALIFIED
Francesco V NickaArgentinaStephen Shaw RENEWAL
Salvatore D GauchoBrazilAnna Fali QUALIFIED
Darci Z CaldareraCanadaOnyama Limba UNQUALIFIED
Deepesh S BowleySpainAmy Elsner UNQUALIFIED
Jennifer U BowleyFranceBernardo Dominic UNQUALIFIED
Ricardo Y AlbaresJapanOnyama Limba NEW
Clifford B PaprockiFranceStephen Shaw NEW
Silvio E OldroydFranceAmy Elsner QUALIFIED
Aditya S FigeroaSpainIvan Magalhaes NEGOTIATION
Rodrigues D PoquetteCanadaIvan Magalhaes NEW
Kadeem M BowleySpainIvan Magalhaes UNQUALIFIED
Claire A BowleyGermanyStephen Shaw PROPOSAL
Jeanfrancois R MorascaCanadaIvan Magalhaes NEW
Mujtaba F FlosiGermanyAmy Elsner NEGOTIATION
Kadeem B GauchoAustraliaAsiya Javayant PROPOSAL
Morrow F FollerRussiaElwin Sharvill UNQUALIFIED
Leja A ShinkoBrazilIoni Bowcher RENEWAL
Ricardo E OstroskyUnited KingdomOnyama Limba RENEWAL
Jones E InouyeJapanElwin Sharvill NEW
Smith I SaylorsSpainIoni Bowcher NEW
Adams U GillianCanadaOnyama Limba PROPOSAL
Rodrigues Q SlusarskiAustraliaStephen Shaw QUALIFIED
Sinclair A RutaGermanyBernardo Dominic RENEWAL
Aika V MaletBrazilBernardo Dominic PROPOSAL
Murillo T RulapaughArgentinaAmy Elsner QUALIFIED
Emily Y BriddickSpainStephen Shaw RENEWAL
Tony Z TollnerArgentinaIoni Bowcher UNQUALIFIED
Maria C FollerGermanyBernardo Dominic NEGOTIATION
Emily Z BowleyJapanIvan Magalhaes UNQUALIFIED
Arvin U AlbaresCanadaBernardo Dominic PROPOSAL
Nicolas K SchemmerCanadaIoni Bowcher RENEWAL
Cody D RulapaughSpainAmy Elsner UNQUALIFIED
Adams W BriddickRussiaIvan Magalhaes NEW
Faith W DilliardUnited KingdomOnyama Limba NEW
Aruna P KuskoArgentinaIoni Bowcher QUALIFIED
Isabel O CampainCanadaAsiya Javayant PROPOSAL
James H PoquetteAustraliaXuxue Feng RENEWAL
Chavez Y GlickCanadaBernardo Dominic NEW
Tony V CampainAustraliaStephen Shaw NEW
Jeanfrancois G FerenczRussiaElwin Sharvill QUALIFIED
Mayumi U IturbideGermanyOnyama Limba QUALIFIED
Greenwood R GarufiBrazilStephen Shaw PROPOSAL
Nicolas O GauchoUnited KingdomAnna Fali NEW
Claire D KolmetzIndiaIvan Magalhaes PROPOSAL
Mayumi A KolmetzBrazilXuxue Feng PROPOSAL
Chavez R VenereAustraliaAsiya Javayant NEGOTIATION
Misaki M KuskoUnited KingdomElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Ricardo R Glick
Salvatore R Flosi
Smith O Maclead
Kaitlin X Stockham
Morrow F Ostrosky
James N Tollner
Rodrigues Z Paprocki
Jefferson M Figeroa
Jennifer Y Amigon
Kaitlin E Rim
Mujtaba N Nicka
Rodrigues B Caudy
Faith C Royster
Murillo T Butt
Cody A Ostrosky
Juan S Slusarski
Jefferson J Ferencz
Darci A Stockham
Ashley L Campain
Kadeem G Doe
Tony Y Caudy
Leon C Amigon
Rodrigues F Doe
Leon I Bowley
Jeanfrancois G Iturbide
Nicolas I Shinko
Wickens H Kolmetz
Isabel L Amigon
Jeanfrancois A Whobrey
Jefferson M Doe
Ashley J Wieser
Sinclair G Marrier
Jones V Malet
Isabel J Maclead
Chavez C Malet
Tony T Paprocki
Juan U Oldroyd
Aika S Foller
Juan B Shinko
Cody A Nicka
Alejandro K Campain
Leon V Amigon
Aditya O Venere
Aditya X Whobrey
Cody B Caldarera
Kaitlin I Stockham
Salvatore O Whobrey
Izzy A Poquette
Kaitlin A Malet
Stacey T Poquette
IdCountryDate
1000Russia2024-06-21
1001Russia2024-06-03
1002India2024-05-31
1003Brazil2024-05-27
1004India2024-06-07
1005Brazil2024-05-26
1006Australia2024-05-27
1007Germany2024-06-15
1008India2024-05-30
1009Japan2024-06-17
1010Spain2024-06-16
1011Russia2024-06-16
1012France2024-06-11
1013Australia2024-06-14
1014Russia2024-05-24
1015Russia2024-06-04
1016Argentina2024-06-21
1017Germany2024-06-05
1018Japan2024-05-28
1019Argentina2024-06-15
1020Spain2024-05-28
1021France2024-06-14
1022Argentina2024-06-13
1023Canada2024-06-14
1024Japan2024-05-27
1025Japan2024-06-11
1026France2024-06-21
1027France2024-06-03
1028France2024-06-12
1029Brazil2024-06-11
1030Spain2024-06-16
1031Italy2024-06-11
1032Japan2024-06-08
1033India2024-06-10
1034Canada2024-06-07
1035Spain2024-06-15
1036France2024-06-05
1037Germany2024-05-28
1038Canada2024-05-28
1039France2024-06-03
1040Japan2024-06-07
1041Russia2024-06-19
1042India2024-06-02
1043Italy2024-06-09
1044Germany2024-05-25
1045France2024-06-14
1046Argentina2024-06-18
1047Russia2024-06-04
1048Japan2024-06-21
1049United Kingdom2024-06-08

On-Demand Data

NameIdCountryDate
Nicolas V Maclead1000United Kingdom2024-06-02
Morrow C Dilliard1001Russia2024-06-12
Jefferson P Shinko1002India2024-06-21
Claire L Campain1003Argentina2024-06-14
Mujtaba J Briddick1004India2024-06-22
Mujtaba H Wieser1005Brazil2024-05-30
Chavez M Garufi1006Brazil2024-06-21
Alejandro B Paprocki1007Japan2024-06-03
Sinclair Q Inouye1008Australia2024-06-07
Rodrigues B Iturbide1009Japan2024-06-12
Claire D Bolognia1010Italy2024-06-16
Stacey S Caldarera1011France2024-06-17
Arvin I Albares1012France2024-06-16
Stacey C Poquette1013Russia2024-06-15
Kadeem H Whobrey1014France2024-06-04
Sinclair W Iturbide1015Canada2024-05-27
Aika E Royster1016Australia2024-06-01
Octavia E Chui1017France2024-05-30
Claire J Kusko1018Argentina2024-06-07
Deepesh U Ferencz1019Germany2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio M CampainItalyElwin Sharvill NEGOTIATION
Kadeem E PaprockiItalyXuxue Feng RENEWAL
Juan Y BowleyArgentinaBernardo Dominic UNQUALIFIED
Salvatore F ShinkoSpainAsiya Javayant NEW
Mujtaba W CaudyIndiaOnyama Limba QUALIFIED
Maisha X BriddickCanadaBernardo Dominic UNQUALIFIED
Adams X GarufiJapanIvan Magalhaes NEW
Jones Q WieserFranceXuxue Feng PROPOSAL
Misaki B IturbideRussiaBernardo Dominic PROPOSAL
Antonio R KolmetzIndiaIvan Magalhaes NEW
Mujtaba G StockhamItalyElwin Sharvill UNQUALIFIED
Greenwood W BowleyRussiaBernardo Dominic NEGOTIATION
Julie J DarakjyIndiaBernardo Dominic NEGOTIATION
Misaki N RutaGermanyAmy Elsner NEGOTIATION
Silvio U BriddickItalyOnyama Limba PROPOSAL
Salvatore F GlickAustraliaAnna Fali UNQUALIFIED
Francesco M SergiSpainIoni Bowcher QUALIFIED
Misaki V GauchoSpainXuxue Feng QUALIFIED
Aditya W MarrierCanadaAmy Elsner PROPOSAL
Munro F FerenczGermanyAsiya Javayant NEW
Munro U IturbideBrazilOnyama Limba PROPOSAL
Isabel Y BologniaCanadaXuxue Feng QUALIFIED
Morrow N MacleadItalyOnyama Limba NEGOTIATION
Aruna U GillianFranceAnna Fali NEW
Aruna S KuskoJapanAmy Elsner NEW
Greenwood B GauchoSpainBernardo Dominic QUALIFIED
Octavia D TollnerUnited KingdomElwin Sharvill UNQUALIFIED
James V OldroydGermanyAnna Fali NEGOTIATION
Ricardo W ButtArgentinaAmy Elsner PROPOSAL
Greenwood P RutaIndiaStephen Shaw NEW
Juan C IturbideItalyAmy Elsner NEW
Smith K SlusarskiBrazilAnna Fali RENEWAL
Octavia X BriddickSpainAmy Elsner UNQUALIFIED
Kaitlin W AlbaresAustraliaAsiya Javayant NEW
David D SaylorsJapanElwin Sharvill RENEWAL
Francesco F GauchoJapanElwin Sharvill NEGOTIATION
Costa E InouyeAustraliaAmy Elsner PROPOSAL
James V RulapaughItalyAnna Fali PROPOSAL
Maria E BologniaCanadaIvan Magalhaes PROPOSAL
Munro N BologniaGermanyBernardo Dominic 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>