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
Ivar P FerenczArgentinaAmy Elsner PROPOSAL
Wickens U KolmetzArgentinaOnyama Limba NEGOTIATION
Juan J SergiFranceIvan Magalhaes PROPOSAL
Faith K NickaSpainStephen Shaw RENEWAL
Misaki Z MarrierBrazilAmy Elsner NEGOTIATION
Clifford I BologniaSpainIoni Bowcher PROPOSAL
Jeanfrancois H WhobreyGermanyOnyama Limba UNQUALIFIED
Jefferson F RutaCanadaXuxue Feng NEGOTIATION
Maria V AmigonUnited KingdomIoni Bowcher UNQUALIFIED
Aditya K NickaFranceOnyama Limba NEW
Jones T CaldareraBrazilStephen Shaw NEW
Jennifer C StensethJapanAmy Elsner RENEWAL
Juan F IturbideArgentinaXuxue Feng NEW
Adams S DilliardFranceElwin Sharvill NEW
Jefferson R PoquetteAustraliaAnna Fali QUALIFIED
Ivar B MaletIndiaAsiya Javayant PROPOSAL
Jennifer P KuskoCanadaAmy Elsner QUALIFIED
Ashley M ButtItalyElwin Sharvill UNQUALIFIED
Sinclair H TollnerRussiaElwin Sharvill QUALIFIED
Leon M CaldareraRussiaOnyama Limba NEW
Ashley E RoysterItalyElwin Sharvill NEGOTIATION
Faith U RoysterBrazilAnna Fali NEW
Jefferson I BologniaIndiaAmy Elsner UNQUALIFIED
David U SergiJapanElwin Sharvill QUALIFIED
Antonio I FigeroaJapanIoni Bowcher NEGOTIATION
Juan R CaldareraAustraliaBernardo Dominic RENEWAL
Silvio P RulapaughGermanyAsiya Javayant NEGOTIATION
Wickens F RulapaughRussiaXuxue Feng RENEWAL
Costa B RulapaughAustraliaOnyama Limba QUALIFIED
Ivar C KolmetzIndiaAnna Fali NEGOTIATION
Munro X GlickGermanyStephen Shaw UNQUALIFIED
Maisha J WhobreySpainAmy Elsner PROPOSAL
Stacey Q IturbideArgentinaOnyama Limba RENEWAL
Claire Q WhobreySpainIvan Magalhaes NEW
Aika E StensethFranceAmy Elsner QUALIFIED
Jones X GarufiJapanOnyama Limba NEGOTIATION
Jeanfrancois U VenereRussiaAmy Elsner PROPOSAL
Munro I PerinJapanOnyama Limba QUALIFIED
Mayumi Q WieserAustraliaAmy Elsner PROPOSAL
Maisha D DoeSpainIvan Magalhaes PROPOSAL
David G NickaRussiaIvan Magalhaes QUALIFIED
Mujtaba S SchemmerRussiaElwin Sharvill QUALIFIED
Ivar L MaletItalyStephen Shaw RENEWAL
Costa Z CaudyCanadaIvan Magalhaes UNQUALIFIED
Isabel U BowleyJapanXuxue Feng NEGOTIATION
Misaki Y VocelkaIndiaBernardo Dominic QUALIFIED
Rodrigues Y GlickCanadaBernardo Dominic QUALIFIED
Silvio A CaudyRussiaStephen Shaw QUALIFIED
Alejandro B CampainFranceAmy Elsner PROPOSAL
Kadeem L StensethIndiaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Isabel Q PerinAustraliaBernardo Dominic NEW
Johnson A SergiRussiaIvan Magalhaes NEW
Tony N FerenczRussiaAnna Fali QUALIFIED
Ashley G IturbideAustraliaAmy Elsner RENEWAL
Silvio O ButtGermanyElwin Sharvill RENEWAL
Ashley E TollnerFranceXuxue Feng PROPOSAL
Francesco E RoysterRussiaStephen Shaw QUALIFIED
Costa V WaycottCanadaElwin Sharvill UNQUALIFIED
Claire E AmigonRussiaAmy Elsner NEW
Nicolas Y RulapaughItalyAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson B GlickItaly2024-05-07Dorl, James J Esq PROPOSAL41Xuxue Feng
1001Antonio Y BologniaUnited Kingdom2024-05-08Printing Dimensions UNQUALIFIED94Bernardo Dominic
1002Juan K SaylorsFrance2024-05-08Feltz Printing Service NEGOTIATION94Elwin Sharvill
1003Julie K GarufiGermany2024-05-06Chapman, Ross E Esq NEGOTIATION81Xuxue Feng
1004Chavez C TollnerCanada2024-05-29Buckley Miller Wright NEGOTIATION59Ioni Bowcher
1005Chavez G GlickRussia2024-05-30Rangoni Of Florence PROPOSAL85Ivan Magalhaes
1006Alejandro X OldroydBrazil2024-05-22Commercial Press PROPOSAL99Bernardo Dominic
1007Isabel C RulapaughUnited Kingdom2024-05-26Benton, John B Jr RENEWAL97Anna Fali
1008Misaki E CaudySpain2024-05-14Feiner Bros RENEWAL40Ioni Bowcher
1009Nicolas J WieserSpain2024-06-04Truhlar And Truhlar Attys PROPOSAL35Asiya Javayant
1010Leja R PaprockiCanada2024-05-10Morlong Associates PROPOSAL32Elwin Sharvill
1011Silvio E WieserUnited Kingdom2024-05-22Commercial Press QUALIFIED0Asiya Javayant
1012Emily Y FollerArgentina2024-05-23Feltz Printing Service QUALIFIED97Ioni Bowcher
1013Salvatore W BologniaAustralia2024-05-11Chemel, James L Cpa PROPOSAL3Asiya Javayant
1014Arvin K SchemmerRussia2024-05-09Rousseaux, Michael Esq PROPOSAL87Bernardo Dominic
1015Clifford A SchemmerGermany2024-05-11Dorl, James J Esq NEW95Anna Fali
1016Juan F SergiUnited Kingdom2024-05-11Dorl, James J Esq NEW12Ivan Magalhaes
1017Jones J MorascaJapan2024-05-31Truhlar And Truhlar Attys RENEWAL29Elwin Sharvill
1018Munro I VenereBrazil2024-05-12Feltz Printing Service PROPOSAL95Stephen Shaw
1019Greenwood I WieserBrazil2024-05-10Feiner Bros QUALIFIED13Stephen Shaw
1020Murillo L SaylorsJapan2024-05-15Rangoni Of Florence NEW36Asiya Javayant
1021Ivar C ChuiAustralia2024-05-16Chapman, Ross E Esq QUALIFIED67Asiya Javayant
1022Antonio A GillianCanada2024-05-17Feltz Printing Service UNQUALIFIED45Onyama Limba
1023Antonio A MorascaFrance2024-05-07Chanay, Jeffrey A Esq UNQUALIFIED72Stephen Shaw
1024Claire C DilliardCanada2024-05-11Truhlar And Truhlar Attys NEW36Ioni Bowcher
1025Greenwood F MacleadIndia2024-06-04Buckley Miller Wright UNQUALIFIED33Bernardo Dominic
1026Clifford Z KolmetzItaly2024-05-18Printing Dimensions NEW94Elwin Sharvill
1027Morrow S VenereSpain2024-05-11Dorl, James J Esq QUALIFIED40Anna Fali
1028Faith A InouyeJapan2024-05-20Benton, John B Jr NEGOTIATION1Anna Fali
1029Costa T OstroskyUnited Kingdom2024-05-21Benton, John B Jr UNQUALIFIED34Elwin Sharvill
1030Claire B GarufiCanada2024-05-29Truhlar And Truhlar Attys NEW18Onyama Limba
1031David Q NestleFrance2024-05-31Commercial Press QUALIFIED84Bernardo Dominic
1032Cody Y PoquetteJapan2024-05-20Commercial Press NEW62Onyama Limba
1033Leon E FollerJapan2024-06-01Rangoni Of Florence NEGOTIATION79Elwin Sharvill
1034Mujtaba O SaylorsJapan2024-05-19Commercial Press NEW69Anna Fali
1035Chavez M KuskoCanada2024-05-09Commercial Press UNQUALIFIED98Bernardo Dominic
1036Francesco T MarrierGermany2024-05-28Printing Dimensions RENEWAL83Stephen Shaw
1037Salvatore K DoeRussia2024-05-28Feltz Printing Service PROPOSAL4Stephen Shaw
1038Jennifer J GillianAustralia2024-05-26Benton, John B Jr NEW7Stephen Shaw
1039Maisha D StockhamAustralia2024-05-12Chemel, James L Cpa QUALIFIED42Anna Fali
1040Tony X OldroydSpain2024-05-21Dorl, James J Esq RENEWAL45Onyama Limba
1041Octavia W RutaGermany2024-05-27Dorl, James J Esq QUALIFIED15Ivan Magalhaes
1042Deepesh P StockhamCanada2024-05-06Feiner Bros RENEWAL18Stephen Shaw
1043Smith E OstroskyGermany2024-05-11Truhlar And Truhlar Attys NEGOTIATION60Asiya Javayant
1044Maisha Q AmigonRussia2024-05-21Rangoni Of Florence NEGOTIATION3Stephen Shaw
1045Sinclair N RoysterItaly2024-05-26Feltz Printing Service NEW97Stephen Shaw
1046Rodrigues I GillianSpain2024-05-24Morlong Associates NEGOTIATION61Stephen Shaw
1047Clifford U ChuiItaly2024-05-06Feltz Printing Service UNQUALIFIED83Amy Elsner
1048Alejandro R StensethUnited Kingdom2024-05-27King, Christopher A Esq RENEWAL22Bernardo Dominic
1049Jones A WhobreyItaly2024-05-08Chanay, Jeffrey A Esq PROPOSAL1Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Emily V InouyeSpainElwin Sharvill NEW
Kadeem A PoquetteCanadaAnna Fali PROPOSAL
Maria E PoquetteIndiaElwin Sharvill UNQUALIFIED
Antonio W IturbideSpainAnna Fali QUALIFIED
Ashley Z VenereUnited KingdomElwin Sharvill QUALIFIED
Ricardo Y RulapaughRussiaBernardo Dominic PROPOSAL
Juan J CaldareraGermanyBernardo Dominic UNQUALIFIED
Adams K OldroydCanadaIoni Bowcher RENEWAL
Adams Z GauchoSpainXuxue Feng RENEWAL
Octavia S NestleItalyBernardo Dominic NEGOTIATION
Costa A BologniaUnited KingdomOnyama Limba QUALIFIED
Cody S DoeCanadaBernardo Dominic NEGOTIATION
Aika P GlickAustraliaElwin Sharvill NEGOTIATION
Jeanfrancois V PoquetteCanadaAnna Fali UNQUALIFIED
Isabel B CaudyIndiaIvan Magalhaes NEGOTIATION
Stacey L DilliardBrazilIoni Bowcher NEGOTIATION
Munro J TollnerSpainAmy Elsner NEW
Salvatore G ShinkoRussiaXuxue Feng UNQUALIFIED
Mayumi T MacleadRussiaAsiya Javayant QUALIFIED
Jennifer P CaudyArgentinaElwin Sharvill PROPOSAL
Clifford N MarrierFranceAnna Fali NEGOTIATION
Deepesh C MorascaFranceBernardo Dominic PROPOSAL
Octavia Z NestleRussiaBernardo Dominic RENEWAL
Mujtaba I FollerIndiaXuxue Feng NEGOTIATION
Mayumi E MacleadIndiaAnna Fali NEW
Jefferson D PoquetteFranceXuxue Feng PROPOSAL
Isabel Z KuskoFranceBernardo Dominic UNQUALIFIED
Johnson G NestleBrazilXuxue Feng NEW
Alejandro V DilliardFranceElwin Sharvill QUALIFIED
Sinclair Z RoysterAustraliaElwin Sharvill RENEWAL
Emily J WaycottAustraliaBernardo Dominic QUALIFIED
Jones D BologniaUnited KingdomIoni Bowcher UNQUALIFIED
Morrow A WieserUnited KingdomIoni Bowcher NEGOTIATION
Jeanfrancois E GillianArgentinaBernardo Dominic NEW
Ashley H AmigonGermanyElwin Sharvill NEGOTIATION
Rodrigues M CaldareraAustraliaElwin Sharvill NEW
Ricardo T PoquetteAustraliaAmy Elsner RENEWAL
Mayumi Y GarufiUnited KingdomXuxue Feng NEGOTIATION
Octavia A OldroydBrazilAmy Elsner QUALIFIED
Kadeem R GauchoRussiaIvan Magalhaes NEW
Chavez Z AlbaresUnited KingdomAsiya Javayant PROPOSAL
Sinclair C SergiAustraliaStephen Shaw NEW
Sinclair O VocelkaFranceOnyama Limba NEW
Faith N StockhamIndiaAnna Fali UNQUALIFIED
Morrow Y IturbideJapanIoni Bowcher PROPOSAL
Claire K VenereRussiaIoni Bowcher UNQUALIFIED
Misaki B KuskoAustraliaAnna Fali QUALIFIED
Johnson V KuskoCanadaIvan Magalhaes QUALIFIED
Tony P CaudyUnited KingdomIvan Magalhaes NEW
Julie V SergiIndiaStephen Shaw QUALIFIED
Frozen Columns
Name
Costa N Foller
Costa E Campain
Antonio R Caldarera
Wickens B Butt
Aruna S Garufi
Emily A Oldroyd
Misaki U Marrier
Leja N Darakjy
Izzy U Malet
Aika K Marrier
Alejandro W Caudy
Izzy V Campain
Jefferson Q Ruta
Wickens T Maclead
Clifford Q Flosi
Chavez A Darakjy
Rodrigues I Ruta
Misaki Y Slusarski
Sinclair R Rulapaugh
Munro E Morasca
Cody T Chui
Costa X Perin
Stacey C Caudy
David S Slusarski
Aruna Q Marrier
Rodrigues T Foller
Johnson O Campain
Claire H Chui
Jennifer I Butt
David N Amigon
Arvin P Figeroa
Costa E Rim
Chavez Q Rim
David C Ferencz
Mayumi S Foller
Antonio V Kusko
Ricardo P Bolognia
Aruna X Ruta
Aruna H Stenseth
David O Tollner
Aditya A Glick
Maisha M Briddick
Darci S Stockham
Deepesh X Whobrey
Faith J Iturbide
Ricardo B Nestle
Cody C Tollner
Jefferson W Tollner
Jennifer D Caudy
Smith Q Glick
IdCountryDate
1000Russia2024-05-21
1001United Kingdom2024-05-25
1002Argentina2024-06-04
1003Russia2024-05-19
1004Argentina2024-06-01
1005Australia2024-05-14
1006United Kingdom2024-05-24
1007Spain2024-05-26
1008Japan2024-05-17
1009United Kingdom2024-05-13
1010United Kingdom2024-05-22
1011Australia2024-05-19
1012Germany2024-06-01
1013Brazil2024-05-20
1014Australia2024-06-01
1015Canada2024-05-13
1016Spain2024-06-02
1017France2024-05-12
1018Brazil2024-05-19
1019Spain2024-05-30
1020Brazil2024-05-17
1021Brazil2024-06-01
1022Japan2024-05-22
1023France2024-05-27
1024Spain2024-05-22
1025Brazil2024-05-21
1026United Kingdom2024-05-09
1027Germany2024-05-24
1028Germany2024-05-07
1029Canada2024-05-08
1030Russia2024-06-02
1031France2024-05-13
1032Australia2024-05-15
1033Australia2024-05-15
1034India2024-05-23
1035Russia2024-05-15
1036Japan2024-05-06
1037Canada2024-05-19
1038Italy2024-05-13
1039France2024-05-17
1040Italy2024-05-21
1041United Kingdom2024-05-18
1042France2024-05-14
1043Japan2024-05-30
1044Australia2024-06-04
1045Germany2024-05-30
1046India2024-05-22
1047Argentina2024-05-20
1048Germany2024-05-31
1049France2024-05-12

On-Demand Data

NameIdCountryDate
Johnson Z Poquette1000India2024-05-08
Aditya A Marrier1001Japan2024-05-18
Alejandro L Iturbide1002Argentina2024-05-30
Munro E Caudy1003Spain2024-05-17
Julie H Waycott1004France2024-05-27
Mayumi C Foller1005Brazil2024-06-03
Julie S Whobrey1006United Kingdom2024-05-21
Jennifer I Nestle1007Russia2024-06-04
Mayumi Q Chui1008Russia2024-05-16
Arvin V Poquette1009Canada2024-05-13
Faith Z Darakjy1010Spain2024-05-16
Claire L Caldarera1011Argentina2024-05-25
Mujtaba W Ferencz1012United Kingdom2024-05-19
Leon O Stockham1013Japan2024-05-08
Misaki X Flosi1014Canada2024-06-01
Murillo A Albares1015India2024-05-30
Darci L Flosi1016India2024-05-07
Claire L Sergi1017Brazil2024-05-21
Tony O Kolmetz1018India2024-05-10
Maisha W Schemmer1019Japan2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James B PerinArgentinaAmy Elsner UNQUALIFIED
Tony F ShinkoRussiaAnna Fali RENEWAL
Clifford W StensethGermanyIoni Bowcher NEGOTIATION
Julie S FigeroaIndiaAmy Elsner RENEWAL
Deepesh O CaldareraGermanyStephen Shaw UNQUALIFIED
Nicolas D ChuiSpainBernardo Dominic RENEWAL
Jefferson L StockhamItalyElwin Sharvill UNQUALIFIED
Mayumi Y SergiAustraliaAmy Elsner NEW
Mayumi K AmigonUnited KingdomAsiya Javayant NEW
Leja I TollnerArgentinaStephen Shaw PROPOSAL
Izzy I VocelkaJapanOnyama Limba RENEWAL
Alejandro S TollnerGermanyXuxue Feng UNQUALIFIED
Murillo C PerinUnited KingdomIvan Magalhaes RENEWAL
James B FerenczSpainAsiya Javayant PROPOSAL
Smith V ChuiArgentinaOnyama Limba RENEWAL
Ivar X OstroskyCanadaAsiya Javayant NEGOTIATION
Ricardo I ChuiBrazilStephen Shaw RENEWAL
Rodrigues N OstroskyJapanIvan Magalhaes RENEWAL
Deepesh R SchemmerJapanIoni Bowcher PROPOSAL
Emily A DilliardArgentinaIoni Bowcher NEGOTIATION
Mayumi P RulapaughBrazilAnna Fali NEW
Jeanfrancois C CaldareraCanadaBernardo Dominic UNQUALIFIED
Maisha D FollerIndiaXuxue Feng NEW
Costa Q DilliardBrazilIoni Bowcher RENEWAL
Johnson U ButtUnited KingdomAmy Elsner PROPOSAL
Mayumi M DilliardBrazilIvan Magalhaes QUALIFIED
Jefferson H StensethCanadaBernardo Dominic PROPOSAL
Maisha A MaletIndiaIvan Magalhaes NEW
Sinclair Z SchemmerGermanyElwin Sharvill UNQUALIFIED
Munro X RulapaughSpainIoni Bowcher UNQUALIFIED
Antonio V RutaUnited KingdomAsiya Javayant PROPOSAL
Julie A BowleyJapanIoni Bowcher NEGOTIATION
Arvin T DarakjySpainIvan Magalhaes NEW
Kaitlin D OldroydIndiaStephen Shaw UNQUALIFIED
Ricardo V WieserRussiaIvan Magalhaes NEW
Morrow K AmigonRussiaAsiya Javayant NEW
Claire K RutaFranceXuxue Feng NEW
Smith U WhobreyGermanyOnyama Limba UNQUALIFIED
Nicolas P RutaArgentinaStephen Shaw NEGOTIATION
Aruna B SaylorsItalyIoni Bowcher UNQUALIFIED

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