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
Mayumi E VocelkaFranceIoni Bowcher NEW
Misaki S GauchoIndiaIvan Magalhaes RENEWAL
Adams T RutaItalyIoni Bowcher RENEWAL
Wickens L FollerAustraliaAmy Elsner PROPOSAL
Juan P ShinkoGermanyIoni Bowcher RENEWAL
Octavia W FlosiIndiaXuxue Feng NEGOTIATION
Faith Q StockhamGermanyStephen Shaw RENEWAL
Mujtaba Y RoysterJapanAsiya Javayant NEW
Nicolas A ShinkoGermanyAnna Fali NEW
Smith V StensethBrazilAsiya Javayant QUALIFIED
Juan A ShinkoBrazilAmy Elsner NEGOTIATION
Salvatore W KolmetzGermanyAnna Fali QUALIFIED
Faith T WaycottAustraliaOnyama Limba QUALIFIED
Ivar T KuskoItalyOnyama Limba UNQUALIFIED
Antonio O DilliardArgentinaElwin Sharvill PROPOSAL
Octavia I FigeroaAustraliaAsiya Javayant PROPOSAL
Clifford H ButtIndiaElwin Sharvill UNQUALIFIED
Arvin T PaprockiSpainAsiya Javayant QUALIFIED
Chavez G RutaUnited KingdomAmy Elsner NEW
Clifford J DoeJapanElwin Sharvill NEW
Jeanfrancois Z SlusarskiJapanIvan Magalhaes RENEWAL
Isabel I NickaUnited KingdomBernardo Dominic PROPOSAL
Murillo G BowleyAustraliaBernardo Dominic UNQUALIFIED
Stacey U OstroskyAustraliaXuxue Feng UNQUALIFIED
Rodrigues A GillianRussiaOnyama Limba QUALIFIED
Francesco J ShinkoBrazilIvan Magalhaes PROPOSAL
Emily X IturbideJapanAmy Elsner QUALIFIED
Emily H KolmetzJapanStephen Shaw RENEWAL
Jennifer W OstroskyFranceBernardo Dominic NEW
Claire D MarrierJapanAmy Elsner QUALIFIED
Francesco O GlickRussiaBernardo Dominic PROPOSAL
Faith R SaylorsRussiaStephen Shaw UNQUALIFIED
Isabel D WieserRussiaElwin Sharvill PROPOSAL
Smith T MarrierJapanIvan Magalhaes NEGOTIATION
Morrow L DilliardGermanyBernardo Dominic UNQUALIFIED
Munro L IturbideRussiaBernardo Dominic QUALIFIED
Kadeem V StockhamBrazilOnyama Limba RENEWAL
Leja W SlusarskiCanadaAnna Fali QUALIFIED
Mujtaba M ButtUnited KingdomAnna Fali NEW
Jennifer O RimItalyAmy Elsner NEGOTIATION
Johnson K AmigonUnited KingdomIoni Bowcher PROPOSAL
Arvin L StensethFranceAnna Fali RENEWAL
Johnson V NestleGermanyAmy Elsner QUALIFIED
Francesco J MarrierItalyAmy Elsner QUALIFIED
Stacey A PoquetteItalyElwin Sharvill NEGOTIATION
Morrow C GillianSpainAnna Fali PROPOSAL
Greenwood A RimJapanAsiya Javayant NEW
Cody E DilliardJapanXuxue Feng PROPOSAL
Octavia R MacleadArgentinaIoni Bowcher QUALIFIED
Mujtaba B CaldareraJapanAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair T GlickIndiaIoni Bowcher NEW
Smith H CaudyJapanStephen Shaw PROPOSAL
Kaitlin J DilliardGermanyAmy Elsner QUALIFIED
Leja A OldroydUnited KingdomIoni Bowcher RENEWAL
Maria W StensethJapanElwin Sharvill QUALIFIED
Cody Q MorascaFranceElwin Sharvill RENEWAL
Costa G GauchoArgentinaAnna Fali PROPOSAL
Rodrigues O MaletIndiaOnyama Limba RENEWAL
Rodrigues R BowleyBrazilAnna Fali QUALIFIED
Wickens Q ChuiJapanAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha C StensethFrance2024-05-19Printing Dimensions QUALIFIED88Amy Elsner
1001Maisha R VenereArgentina2024-05-22Truhlar And Truhlar Attys NEGOTIATION40Anna Fali
1002Kadeem W TollnerGermany2024-06-07Rangoni Of Florence PROPOSAL66Amy Elsner
1003Leja J SlusarskiAustralia2024-05-17Rangoni Of Florence UNQUALIFIED43Stephen Shaw
1004Morrow R OstroskyArgentina2024-05-15Chanay, Jeffrey A Esq NEW43Xuxue Feng
1005Silvio N FigeroaAustralia2024-05-27Truhlar And Truhlar Attys UNQUALIFIED86Elwin Sharvill
1006Izzy M MaletSpain2024-06-05Chemel, James L Cpa QUALIFIED95Asiya Javayant
1007Maisha R FlosiFrance2024-06-02Feiner Bros QUALIFIED18Bernardo Dominic
1008James Y WieserCanada2024-05-30Feltz Printing Service QUALIFIED0Bernardo Dominic
1009Morrow K TollnerBrazil2024-05-28Commercial Press RENEWAL18Ivan Magalhaes
1010Kadeem I MaletFrance2024-05-20Rousseaux, Michael Esq PROPOSAL48Ivan Magalhaes
1011Adams R StockhamSpain2024-06-12Printing Dimensions PROPOSAL64Anna Fali
1012Silvio B KuskoJapan2024-05-19Morlong Associates NEW35Amy Elsner
1013Darci V FigeroaUnited Kingdom2024-05-22Chapman, Ross E Esq NEW63Onyama Limba
1014Costa A DoeFrance2024-06-03Feiner Bros RENEWAL83Asiya Javayant
1015Jennifer I TollnerIndia2024-05-17Rangoni Of Florence PROPOSAL14Xuxue Feng
1016Arvin W BologniaAustralia2024-06-06Feltz Printing Service NEGOTIATION10Asiya Javayant
1017Leon C ButtArgentina2024-05-29Benton, John B Jr RENEWAL65Xuxue Feng
1018Silvio N WieserCanada2024-05-26Chapman, Ross E Esq NEGOTIATION27Asiya Javayant
1019Maisha F IturbideGermany2024-06-06Rangoni Of Florence RENEWAL24Ivan Magalhaes
1020Francesco A IturbideItaly2024-05-17Truhlar And Truhlar Attys RENEWAL79Bernardo Dominic
1021Isabel H VocelkaArgentina2024-06-01Commercial Press NEW93Amy Elsner
1022Francesco B OstroskyUnited Kingdom2024-05-18Benton, John B Jr NEGOTIATION68Stephen Shaw
1023Mayumi J GlickCanada2024-05-21Chapman, Ross E Esq UNQUALIFIED44Bernardo Dominic
1024Mujtaba E FigeroaRussia2024-05-17Truhlar And Truhlar Attys PROPOSAL84Amy Elsner
1025Chavez H FigeroaArgentina2024-05-15Truhlar And Truhlar Attys QUALIFIED58Onyama Limba
1026Greenwood W FollerRussia2024-05-17Chemel, James L Cpa NEGOTIATION43Onyama Limba
1027Wickens W ButtJapan2024-05-18Feiner Bros UNQUALIFIED48Stephen Shaw
1028Jones B CaudyIndia2024-05-20Chemel, James L Cpa NEW83Amy Elsner
1029Julie N ShinkoBrazil2024-05-25Chapman, Ross E Esq PROPOSAL74Asiya Javayant
1030Clifford E OldroydIndia2024-05-16Dorl, James J Esq NEW98Elwin Sharvill
1031Jennifer C WieserFrance2024-06-02Chapman, Ross E Esq RENEWAL17Asiya Javayant
1032Leja D OstroskyCanada2024-05-24Morlong Associates NEW34Stephen Shaw
1033Johnson Y WaycottUnited Kingdom2024-06-01Printing Dimensions UNQUALIFIED34Asiya Javayant
1034Jefferson L RulapaughIndia2024-05-19Truhlar And Truhlar Attys QUALIFIED9Ioni Bowcher
1035Maisha L AmigonUnited Kingdom2024-06-06Benton, John B Jr PROPOSAL48Onyama Limba
1036Leja S ShinkoJapan2024-05-27Feltz Printing Service UNQUALIFIED12Amy Elsner
1037Octavia C AlbaresItaly2024-06-12Truhlar And Truhlar Attys QUALIFIED2Amy Elsner
1038Clifford Y FigeroaCanada2024-06-04Truhlar And Truhlar Attys UNQUALIFIED73Ioni Bowcher
1039Adams E InouyeCanada2024-06-11Chemel, James L Cpa NEW89Onyama Limba
1040Jefferson T AlbaresJapan2024-05-19Truhlar And Truhlar Attys RENEWAL83Ivan Magalhaes
1041Deepesh Z SchemmerJapan2024-06-11Chemel, James L Cpa NEW98Elwin Sharvill
1042Munro F BologniaAustralia2024-05-26King, Christopher A Esq NEW38Stephen Shaw
1043Misaki E DoeItaly2024-05-28Printing Dimensions NEGOTIATION5Anna Fali
1044Sinclair E OstroskyAustralia2024-05-16Chapman, Ross E Esq QUALIFIED18Asiya Javayant
1045Claire T GillianCanada2024-06-12Chemel, James L Cpa NEW83Anna Fali
1046Maria V GlickArgentina2024-05-31King, Christopher A Esq QUALIFIED0Amy Elsner
1047Johnson U DilliardFrance2024-06-07Commercial Press RENEWAL79Stephen Shaw
1048Kadeem C BologniaItaly2024-06-07Morlong Associates UNQUALIFIED42Ivan Magalhaes
1049Adams O SaylorsItaly2024-05-19Printing Dimensions NEGOTIATION14Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Greenwood G MaletIndiaStephen Shaw NEW
Ashley I WhobreyCanadaStephen Shaw NEGOTIATION
Mujtaba C AmigonArgentinaElwin Sharvill PROPOSAL
Ricardo A RoysterIndiaAsiya Javayant RENEWAL
Kadeem Y MaletJapanBernardo Dominic NEW
Murillo K ChuiItalyXuxue Feng RENEWAL
Maria E RimAustraliaAnna Fali QUALIFIED
Leon W GillianItalyIvan Magalhaes QUALIFIED
James W TollnerGermanyAmy Elsner RENEWAL
Jones K WieserArgentinaIoni Bowcher RENEWAL
Mujtaba L MacleadItalyOnyama Limba RENEWAL
Ashley L GarufiItalyIvan Magalhaes UNQUALIFIED
Izzy U BriddickJapanOnyama Limba PROPOSAL
Salvatore Q WaycottUnited KingdomElwin Sharvill NEGOTIATION
Costa Z StockhamArgentinaBernardo Dominic UNQUALIFIED
Costa D AlbaresCanadaBernardo Dominic QUALIFIED
Antonio Y DoeSpainXuxue Feng QUALIFIED
Smith N RutaRussiaAnna Fali QUALIFIED
Aditya E SergiSpainXuxue Feng UNQUALIFIED
Jennifer G OstroskyItalyAmy Elsner QUALIFIED
Aika I BriddickIndiaElwin Sharvill NEW
Octavia B IturbideAustraliaAsiya Javayant RENEWAL
Juan O FigeroaArgentinaXuxue Feng QUALIFIED
Silvio F InouyeArgentinaStephen Shaw PROPOSAL
Jeanfrancois P ButtFranceAsiya Javayant RENEWAL
Nicolas H WhobreyBrazilAsiya Javayant UNQUALIFIED
Kaitlin Y KolmetzUnited KingdomOnyama Limba QUALIFIED
Deepesh C DilliardIndiaIoni Bowcher NEW
Salvatore O IturbideCanadaAmy Elsner RENEWAL
Silvio D WieserAustraliaIoni Bowcher NEW
Juan A FlosiArgentinaBernardo Dominic RENEWAL
Darci Y StockhamFranceXuxue Feng QUALIFIED
Alejandro K MacleadUnited KingdomAnna Fali RENEWAL
Deepesh G GarufiIndiaBernardo Dominic NEW
Faith F RoysterFranceOnyama Limba PROPOSAL
Morrow E BowleyCanadaBernardo Dominic NEGOTIATION
Mujtaba Z CaldareraUnited KingdomXuxue Feng PROPOSAL
Julie M RutaCanadaElwin Sharvill RENEWAL
Wickens Q RimUnited KingdomAsiya Javayant NEGOTIATION
Tony U SlusarskiIndiaAnna Fali RENEWAL
Rodrigues N TollnerItalyIvan Magalhaes QUALIFIED
Leja F AmigonItalyBernardo Dominic QUALIFIED
Adams I MarrierFranceAmy Elsner QUALIFIED
Leja J RoysterArgentinaElwin Sharvill QUALIFIED
Aditya G PerinAustraliaStephen Shaw PROPOSAL
Stacey Y BowleyJapanBernardo Dominic QUALIFIED
Rodrigues T CampainSpainAmy Elsner NEW
Aruna R MorascaBrazilBernardo Dominic RENEWAL
Jennifer W GauchoUnited KingdomBernardo Dominic QUALIFIED
Kaitlin Z TollnerFranceAmy Elsner NEW
Frozen Columns
Name
Silvio W Schemmer
Smith A Butt
Jeanfrancois J Wieser
Antonio C Inouye
Jeanfrancois D Ostrosky
Jeanfrancois J Sergi
Nicolas X Flosi
Octavia K Saylors
Jones H Foller
Emily G Stockham
Deepesh J Caudy
Jones Q Foller
Tony P Iturbide
Claire K Saylors
Claire A Morasca
Alejandro F Darakjy
James W Chui
Silvio R Chui
Arvin M Nicka
Jeanfrancois I Ruta
Ivar Q Venere
Kaitlin P Maclead
Sinclair W Chui
Greenwood B Foller
Johnson L Nestle
Nicolas J Kusko
Cody N Caudy
Aika T Venere
Isabel K Perin
Jennifer Q Paprocki
Stacey Z Tollner
Greenwood L Saylors
Murillo H Schemmer
Mujtaba H Kusko
Claire W Butt
Julie V Stenseth
Leon P Venere
Maria B Nicka
Deepesh H Nicka
Nicolas G Sergi
Aditya O Stenseth
Wickens G Flosi
Mayumi N Ruta
Smith V Dilliard
Aruna K Slusarski
Wickens E Chui
Maisha J Schemmer
Cody N Foller
Salvatore O Poquette
Juan A Maclead
IdCountryDate
1000India2024-06-13
1001France2024-06-08
1002Brazil2024-05-16
1003Canada2024-06-10
1004Canada2024-05-21
1005Spain2024-05-18
1006Japan2024-05-19
1007Brazil2024-05-22
1008France2024-05-24
1009Russia2024-05-22
1010India2024-05-19
1011United Kingdom2024-06-06
1012Italy2024-05-16
1013Italy2024-06-03
1014Germany2024-06-12
1015Italy2024-05-27
1016Russia2024-05-31
1017Japan2024-06-13
1018Germany2024-06-02
1019Spain2024-06-02
1020Argentina2024-06-02
1021Germany2024-05-25
1022India2024-05-29
1023Australia2024-05-17
1024India2024-05-28
1025United Kingdom2024-06-03
1026Brazil2024-05-24
1027United Kingdom2024-05-25
1028Argentina2024-06-07
1029Japan2024-05-29
1030Spain2024-05-17
1031Brazil2024-06-13
1032Canada2024-05-28
1033United Kingdom2024-05-27
1034Russia2024-06-09
1035Russia2024-06-11
1036United Kingdom2024-06-04
1037Germany2024-05-25
1038Brazil2024-05-28
1039Japan2024-05-17
1040United Kingdom2024-06-10
1041Germany2024-05-30
1042Germany2024-06-11
1043Brazil2024-06-07
1044Spain2024-05-28
1045Brazil2024-06-09
1046Japan2024-06-06
1047Canada2024-05-22
1048Brazil2024-05-29
1049Japan2024-06-07

On-Demand Data

NameIdCountryDate
David S Saylors1000Canada2024-05-21
Clifford P Rulapaugh1001Australia2024-05-20
Arvin Q Morasca1002Russia2024-06-05
Leja F Ferencz1003Japan2024-06-09
Cody Y Marrier1004Canada2024-06-03
Ivar F Iturbide1005India2024-06-11
Antonio J Ostrosky1006Spain2024-05-21
Ashley J Venere1007United Kingdom2024-05-31
Cody D Poquette1008Australia2024-05-20
Aika H Marrier1009Canada2024-06-07
Adams T Inouye1010Australia2024-05-24
Deepesh L Nicka1011Australia2024-06-02
Faith R Inouye1012Spain2024-05-27
Julie X Figeroa1013France2024-05-23
Misaki Z Malet1014Germany2024-06-05
Silvio E Poquette1015Italy2024-05-28
Johnson E Caudy1016Brazil2024-05-24
Misaki N Doe1017United Kingdom2024-05-28
Ricardo Q Kusko1018France2024-06-09
Mujtaba D Marrier1019France2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez J PerinBrazilIoni Bowcher UNQUALIFIED
Aika L NestleSpainBernardo Dominic RENEWAL
Deepesh W StensethItalyOnyama Limba NEGOTIATION
Aditya G BologniaAustraliaIoni Bowcher QUALIFIED
Mayumi C OldroydJapanStephen Shaw QUALIFIED
Francesco W FlosiFranceOnyama Limba NEW
Ivar Y OldroydFranceIvan Magalhaes NEGOTIATION
Deepesh Y MaletArgentinaAsiya Javayant NEW
Jennifer T MaletFranceIoni Bowcher RENEWAL
Octavia W GillianRussiaBernardo Dominic NEGOTIATION
Munro G GauchoUnited KingdomXuxue Feng NEGOTIATION
Silvio X OstroskyCanadaAmy Elsner UNQUALIFIED
Kaitlin N NickaIndiaXuxue Feng NEW
Silvio X MarrierSpainAsiya Javayant UNQUALIFIED
Ashley H AlbaresItalyIoni Bowcher PROPOSAL
Mujtaba G WaycottUnited KingdomAmy Elsner QUALIFIED
Rodrigues H MarrierSpainOnyama Limba QUALIFIED
Leja R GauchoJapanAnna Fali QUALIFIED
Cody T NestleUnited KingdomIoni Bowcher NEGOTIATION
Francesco S OstroskyBrazilStephen Shaw NEW
Faith L SchemmerFranceAsiya Javayant NEGOTIATION
Ashley S WieserItalyStephen Shaw RENEWAL
Antonio K InouyeSpainAsiya Javayant PROPOSAL
Maisha Z NestleFranceStephen Shaw QUALIFIED
Alejandro M MaletGermanyBernardo Dominic RENEWAL
Antonio K FlosiItalyAmy Elsner QUALIFIED
Darci R GillianArgentinaXuxue Feng NEGOTIATION
James Y OstroskyJapanAmy Elsner NEGOTIATION
Jefferson S WhobreyBrazilElwin Sharvill QUALIFIED
Jeanfrancois W RimSpainStephen Shaw UNQUALIFIED
Isabel B OstroskyBrazilXuxue Feng UNQUALIFIED
Silvio N DoeGermanyAmy Elsner RENEWAL
Aruna X DarakjyBrazilStephen Shaw UNQUALIFIED
Johnson C CampainJapanElwin Sharvill NEW
Leja A MorascaFranceBernardo Dominic RENEWAL
Maria A BriddickGermanyAsiya Javayant NEW
Maisha J PoquetteRussiaAnna Fali NEW
Mujtaba G ChuiJapanIoni Bowcher NEW
Clifford Z RulapaughArgentinaAsiya Javayant NEW
Kaitlin M KuskoSpainAnna Fali 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>