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
Octavia E WieserUnited KingdomStephen Shaw RENEWAL
Darci U FerenczItalyStephen Shaw UNQUALIFIED
Aruna P DoeBrazilIoni Bowcher RENEWAL
Clifford U PerinIndiaAnna Fali PROPOSAL
Isabel P IturbideCanadaAnna Fali NEGOTIATION
Sinclair X InouyeGermanyXuxue Feng QUALIFIED
Jeanfrancois H SaylorsGermanyAsiya Javayant RENEWAL
Julie U OstroskyUnited KingdomStephen Shaw PROPOSAL
Isabel G MorascaItalyIvan Magalhaes UNQUALIFIED
Misaki E MacleadIndiaIvan Magalhaes RENEWAL
Antonio C StockhamGermanyXuxue Feng RENEWAL
Jeanfrancois Z OstroskySpainIoni Bowcher NEW
Maria B RulapaughArgentinaXuxue Feng NEW
Claire A MarrierGermanyAmy Elsner UNQUALIFIED
Alejandro M MorascaGermanyElwin Sharvill NEW
Aika N PerinArgentinaAmy Elsner NEW
Jennifer R DilliardSpainXuxue Feng NEW
Aika S PoquetteJapanOnyama Limba RENEWAL
Jefferson U PoquetteItalyOnyama Limba NEW
Faith W DoeBrazilStephen Shaw PROPOSAL
Emily G FollerIndiaXuxue Feng RENEWAL
Murillo D IturbideRussiaElwin Sharvill NEGOTIATION
Octavia D KuskoItalyAsiya Javayant NEW
Nicolas O SchemmerAustraliaIvan Magalhaes PROPOSAL
David J TollnerAustraliaIoni Bowcher QUALIFIED
Leja M DilliardItalyIoni Bowcher QUALIFIED
Adams H ButtUnited KingdomBernardo Dominic NEW
Chavez S MacleadCanadaAmy Elsner RENEWAL
Greenwood O GillianArgentinaXuxue Feng QUALIFIED
Clifford O BowleyJapanElwin Sharvill NEGOTIATION
David N SlusarskiGermanyElwin Sharvill QUALIFIED
Mujtaba X ShinkoSpainAsiya Javayant NEGOTIATION
Morrow H MaletJapanAnna Fali NEW
Adams Y InouyeCanadaAnna Fali UNQUALIFIED
Kaitlin Z WhobreyArgentinaIvan Magalhaes UNQUALIFIED
Darci D FigeroaItalyElwin Sharvill RENEWAL
Maria W RimGermanyOnyama Limba RENEWAL
Johnson F WieserBrazilAsiya Javayant QUALIFIED
Salvatore S IturbideGermanyAsiya Javayant PROPOSAL
Misaki Z DarakjyCanadaIoni Bowcher PROPOSAL
Smith Q StensethAustraliaAsiya Javayant UNQUALIFIED
James Q MorascaUnited KingdomOnyama Limba UNQUALIFIED
Deepesh W StensethGermanyIvan Magalhaes NEW
Smith S SaylorsItalyOnyama Limba PROPOSAL
Maisha Z OstroskyCanadaAnna Fali PROPOSAL
Tony T ButtAustraliaIvan Magalhaes PROPOSAL
Morrow A VenereItalyBernardo Dominic PROPOSAL
Alejandro J DilliardBrazilXuxue Feng UNQUALIFIED
Chavez W GlickArgentinaIoni Bowcher UNQUALIFIED
Nicolas G ButtBrazilStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Smith C WaycottIndiaIoni Bowcher UNQUALIFIED
Murillo I ChuiFranceStephen Shaw NEGOTIATION
Mujtaba K BowleyArgentinaIvan Magalhaes UNQUALIFIED
Leon K StockhamJapanXuxue Feng RENEWAL
Tony O StockhamAustraliaIvan Magalhaes QUALIFIED
Clifford T MacleadRussiaAmy Elsner UNQUALIFIED
Antonio Z FigeroaUnited KingdomElwin Sharvill NEGOTIATION
Jefferson G FigeroaArgentinaAnna Fali NEW
Costa S SlusarskiFranceOnyama Limba NEW
Wickens P PaprockiCanadaBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood C VocelkaSpain2024-06-10Printing Dimensions NEGOTIATION40Ivan Magalhaes
1001Chavez Y InouyeArgentina2024-05-26Morlong Associates NEW76Onyama Limba
1002Jones N KolmetzItaly2024-06-11Dorl, James J Esq UNQUALIFIED80Amy Elsner
1003Arvin N PerinIndia2024-05-27Truhlar And Truhlar Attys NEGOTIATION45Xuxue Feng
1004Kadeem E SlusarskiArgentina2024-06-18Feiner Bros QUALIFIED49Ioni Bowcher
1005Julie A VenereIndia2024-06-07Feltz Printing Service RENEWAL65Asiya Javayant
1006Adams O SaylorsFrance2024-05-29Buckley Miller Wright NEGOTIATION33Bernardo Dominic
1007Isabel B WaycottJapan2024-06-12Benton, John B Jr PROPOSAL12Ivan Magalhaes
1008Stacey H RimArgentina2024-06-02Chanay, Jeffrey A Esq RENEWAL5Onyama Limba
1009Jennifer J BowleySpain2024-06-14Benton, John B Jr PROPOSAL39Asiya Javayant
1010Silvio P InouyeItaly2024-06-08Chemel, James L Cpa NEGOTIATION88Amy Elsner
1011Adams Q FollerUnited Kingdom2024-06-01Rangoni Of Florence RENEWAL79Elwin Sharvill
1012Maria B OstroskyFrance2024-06-10Chanay, Jeffrey A Esq QUALIFIED62Xuxue Feng
1013Munro K StensethJapan2024-06-14Chapman, Ross E Esq UNQUALIFIED90Anna Fali
1014Jeanfrancois E GarufiBrazil2024-06-05Feltz Printing Service UNQUALIFIED65Ioni Bowcher
1015Murillo O ChuiIndia2024-06-09King, Christopher A Esq UNQUALIFIED21Anna Fali
1016Leon L SergiIndia2024-05-27Chanay, Jeffrey A Esq RENEWAL98Asiya Javayant
1017Morrow Z KuskoSpain2024-06-11Truhlar And Truhlar Attys NEW28Ioni Bowcher
1018Smith V FollerUnited Kingdom2024-06-18Truhlar And Truhlar Attys NEW3Bernardo Dominic
1019Leja N MacleadItaly2024-06-01Feltz Printing Service PROPOSAL61Amy Elsner
1020Kaitlin Q SaylorsGermany2024-05-28Rangoni Of Florence NEW13Bernardo Dominic
1021Leja Z FollerAustralia2024-05-23Printing Dimensions UNQUALIFIED8Ivan Magalhaes
1022Johnson L FollerCanada2024-06-04Morlong Associates NEGOTIATION10Ivan Magalhaes
1023Juan P WaycottGermany2024-05-22Commercial Press NEW85Onyama Limba
1024Nicolas Y GarufiItaly2024-06-06King, Christopher A Esq RENEWAL81Elwin Sharvill
1025Maisha H IturbideAustralia2024-05-22Commercial Press QUALIFIED27Ivan Magalhaes
1026Aika I RimArgentina2024-06-08Buckley Miller Wright NEGOTIATION2Stephen Shaw
1027Aika D ButtUnited Kingdom2024-06-11Benton, John B Jr NEW59Amy Elsner
1028Deepesh S CaldareraBrazil2024-06-03Truhlar And Truhlar Attys PROPOSAL52Asiya Javayant
1029Jefferson H RimUnited Kingdom2024-06-12Commercial Press NEW86Elwin Sharvill
1030Cody N FlosiAustralia2024-05-25Commercial Press PROPOSAL50Anna Fali
1031Smith J ShinkoRussia2024-05-23Printing Dimensions PROPOSAL40Amy Elsner
1032Alejandro N BriddickCanada2024-05-27Feiner Bros NEGOTIATION36Amy Elsner
1033Emily D CampainSpain2024-05-21Rangoni Of Florence RENEWAL91Bernardo Dominic
1034Antonio Y FerenczItaly2024-05-21Feltz Printing Service RENEWAL29Asiya Javayant
1035Octavia S TollnerSpain2024-06-01Commercial Press UNQUALIFIED89Onyama Limba
1036Munro V MaletSpain2024-05-30Rousseaux, Michael Esq NEGOTIATION66Asiya Javayant
1037Morrow O OstroskySpain2024-06-17Feltz Printing Service QUALIFIED64Ioni Bowcher
1038Adams D StockhamJapan2024-05-31King, Christopher A Esq RENEWAL18Stephen Shaw
1039Ricardo P RimFrance2024-05-25Chemel, James L Cpa NEW55Ioni Bowcher
1040Arvin U RutaAustralia2024-05-30Buckley Miller Wright RENEWAL36Stephen Shaw
1041Francesco Z WhobreyFrance2024-06-02King, Christopher A Esq NEW56Bernardo Dominic
1042Leon P DilliardIndia2024-06-06King, Christopher A Esq NEW83Ioni Bowcher
1043Aika F PaprockiGermany2024-05-29Chanay, Jeffrey A Esq NEW52Elwin Sharvill
1044Ashley C StockhamUnited Kingdom2024-06-01Morlong Associates NEGOTIATION21Xuxue Feng
1045Stacey T StockhamAustralia2024-06-09Truhlar And Truhlar Attys UNQUALIFIED90Asiya Javayant
1046Smith M MaletIndia2024-06-08Dorl, James J Esq RENEWAL9Asiya Javayant
1047Antonio X ChuiUnited Kingdom2024-06-16Buckley Miller Wright NEW69Ioni Bowcher
1048Ricardo E FigeroaItaly2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED34Onyama Limba
1049James T DarakjyBrazil2024-06-12Commercial Press PROPOSAL14Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Leja E NestleFranceAnna Fali RENEWAL
Jones T VocelkaAustraliaElwin Sharvill UNQUALIFIED
Greenwood N StensethCanadaAsiya Javayant PROPOSAL
Alejandro C VenereJapanXuxue Feng PROPOSAL
Deepesh P DilliardAustraliaIvan Magalhaes NEGOTIATION
Stacey F InouyeJapanAnna Fali NEGOTIATION
Aruna U StockhamBrazilXuxue Feng PROPOSAL
Salvatore L DoeJapanStephen Shaw NEW
Deepesh I WieserCanadaStephen Shaw RENEWAL
Cody O MarrierRussiaStephen Shaw PROPOSAL
Ricardo J GlickItalyAnna Fali PROPOSAL
Chavez U PerinBrazilStephen Shaw PROPOSAL
Aika D IturbideJapanIoni Bowcher QUALIFIED
Costa J ButtBrazilBernardo Dominic UNQUALIFIED
Smith P RoysterGermanyStephen Shaw PROPOSAL
Greenwood D WieserCanadaIoni Bowcher NEGOTIATION
Alejandro L ShinkoRussiaAmy Elsner NEW
Mujtaba A GarufiBrazilStephen Shaw NEGOTIATION
Ricardo D GarufiIndiaAnna Fali NEW
Misaki G InouyeGermanyElwin Sharvill PROPOSAL
Francesco Z MorascaGermanyAmy Elsner RENEWAL
Rodrigues G GlickIndiaElwin Sharvill QUALIFIED
Izzy N FollerRussiaElwin Sharvill PROPOSAL
Sinclair I WieserRussiaAmy Elsner QUALIFIED
David T InouyeBrazilIvan Magalhaes PROPOSAL
Misaki Y OldroydArgentinaStephen Shaw NEW
Cody T RoysterArgentinaBernardo Dominic QUALIFIED
Sinclair I CaudyUnited KingdomAmy Elsner QUALIFIED
Rodrigues Q NickaSpainElwin Sharvill QUALIFIED
Wickens T VocelkaAustraliaIoni Bowcher UNQUALIFIED
Mujtaba Q SlusarskiRussiaAsiya Javayant QUALIFIED
Ricardo Y SlusarskiRussiaIvan Magalhaes RENEWAL
Jeanfrancois S SlusarskiSpainAnna Fali RENEWAL
Munro R NestleIndiaXuxue Feng QUALIFIED
Ricardo A DarakjyGermanyAnna Fali NEGOTIATION
Mujtaba V ButtIndiaStephen Shaw UNQUALIFIED
Nicolas A OldroydGermanyIoni Bowcher QUALIFIED
Chavez F FerenczSpainElwin Sharvill UNQUALIFIED
Emily J PaprockiItalyElwin Sharvill UNQUALIFIED
Ricardo H AmigonGermanyIoni Bowcher UNQUALIFIED
Morrow Y StockhamGermanyIvan Magalhaes NEGOTIATION
Smith C SchemmerFranceXuxue Feng PROPOSAL
Aika Y WaycottIndiaOnyama Limba NEGOTIATION
Johnson B MaletRussiaXuxue Feng QUALIFIED
Leja S MarrierCanadaAnna Fali QUALIFIED
Claire S SlusarskiCanadaAnna Fali PROPOSAL
Julie Y TollnerRussiaIoni Bowcher QUALIFIED
Arvin Q SaylorsCanadaIoni Bowcher PROPOSAL
Francesco T BriddickItalyOnyama Limba RENEWAL
James R AlbaresAustraliaIvan Magalhaes RENEWAL
Frozen Columns
Name
Octavia Z Flosi
Aika I Morasca
Octavia U Flosi
Jefferson C Poquette
Greenwood R Maclead
David E Briddick
Costa P Saylors
Octavia X Glick
Costa B Briddick
Tony Q Poquette
Costa R Gillian
Maisha R Nestle
Aditya G Vocelka
Munro X Wieser
Ricardo N Caudy
Kadeem A Paprocki
Cody Q Schemmer
Arvin Y Oldroyd
Tony E Oldroyd
Smith I Vocelka
Chavez F Ostrosky
Juan L Venere
Isabel I Darakjy
Costa Z Poquette
Aika D Saylors
Smith N Nestle
James I Doe
James U Chui
Johnson F Venere
Murillo G Dilliard
Darci V Saylors
Octavia J Briddick
Mayumi C Doe
Faith W Nestle
Leon T Darakjy
Antonio F Maclead
Johnson C Marrier
Rodrigues L Albares
Smith T Ostrosky
Stacey D Campain
Salvatore H Gillian
David P Ruta
Isabel X Malet
Ivar Q Rim
Morrow N Paprocki
Wickens B Tollner
Maria Y Schemmer
Kadeem L Poquette
Isabel C Vocelka
Jeanfrancois U Bowley
IdCountryDate
1000Italy2024-05-27
1001India2024-06-06
1002Italy2024-05-30
1003Germany2024-05-25
1004India2024-06-16
1005Brazil2024-06-14
1006Canada2024-06-10
1007Brazil2024-05-24
1008United Kingdom2024-05-23
1009France2024-06-03
1010Argentina2024-06-06
1011Spain2024-06-07
1012United Kingdom2024-05-31
1013India2024-06-15
1014Japan2024-06-16
1015India2024-05-24
1016India2024-06-03
1017Russia2024-05-29
1018Canada2024-06-10
1019United Kingdom2024-06-17
1020Japan2024-06-11
1021United Kingdom2024-06-01
1022Australia2024-06-01
1023Canada2024-05-24
1024Canada2024-05-24
1025Russia2024-06-04
1026United Kingdom2024-06-15
1027France2024-06-03
1028Australia2024-05-24
1029United Kingdom2024-05-28
1030Brazil2024-06-14
1031Italy2024-05-22
1032Argentina2024-05-25
1033India2024-06-04
1034Germany2024-05-28
1035Brazil2024-06-02
1036Spain2024-06-18
1037Germany2024-06-17
1038Germany2024-05-30
1039Brazil2024-06-01
1040Spain2024-06-14
1041Japan2024-06-09
1042United Kingdom2024-06-08
1043Brazil2024-05-25
1044Japan2024-06-06
1045Australia2024-06-10
1046Japan2024-06-18
1047Australia2024-05-30
1048Italy2024-06-09
1049Brazil2024-06-05

On-Demand Data

NameIdCountryDate
Emily K Inouye1000Russia2024-06-10
Jones I Oldroyd1001Russia2024-06-13
Arvin J Malet1002Australia2024-05-26
Ricardo Z Albares1003Canada2024-06-17
Wickens Y Oldroyd1004Italy2024-06-05
David H Briddick1005Australia2024-05-23
Clifford U Gaucho1006Japan2024-06-04
Julie L Venere1007Japan2024-05-22
Alejandro S Perin1008Italy2024-06-02
Aruna E Vocelka1009Spain2024-05-20
Rodrigues J Paprocki1010Canada2024-05-27
Rodrigues N Foller1011Italy2024-06-08
Mayumi E Kolmetz1012United Kingdom2024-06-10
Rodrigues K Amigon1013Brazil2024-05-27
Darci M Butt1014Brazil2024-06-13
David N Tollner1015United Kingdom2024-05-20
Aditya L Maclead1016Russia2024-06-09
Wickens C Waycott1017Japan2024-06-04
Ricardo P Waycott1018United Kingdom2024-06-07
Salvatore X Inouye1019Brazil2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey X KuskoIndiaStephen Shaw NEGOTIATION
Silvio Q RimIndiaAmy Elsner PROPOSAL
Rodrigues L FerenczAustraliaXuxue Feng RENEWAL
Wickens U StensethBrazilOnyama Limba UNQUALIFIED
Maisha J VenereSpainAsiya Javayant NEW
Francesco Q GlickUnited KingdomOnyama Limba NEW
Jefferson K CaldareraItalyIoni Bowcher UNQUALIFIED
Aika A StockhamArgentinaAsiya Javayant PROPOSAL
Darci V MacleadItalyBernardo Dominic NEGOTIATION
Francesco J AmigonArgentinaAmy Elsner RENEWAL
Izzy R DoeItalyElwin Sharvill QUALIFIED
Francesco G FigeroaFranceXuxue Feng RENEWAL
Nicolas G BowleySpainElwin Sharvill QUALIFIED
Tony P RimFranceOnyama Limba UNQUALIFIED
Morrow E WaycottArgentinaElwin Sharvill NEGOTIATION
Misaki U SergiAustraliaAnna Fali RENEWAL
Sinclair V SchemmerBrazilElwin Sharvill NEW
Darci N WaycottFranceStephen Shaw UNQUALIFIED
Isabel E MarrierItalyAmy Elsner RENEWAL
Chavez Q DoeArgentinaBernardo Dominic RENEWAL
Jones Y FerenczSpainIvan Magalhaes UNQUALIFIED
Tony I AmigonArgentinaElwin Sharvill PROPOSAL
Clifford C SlusarskiItalyXuxue Feng NEGOTIATION
Octavia Y WieserIndiaAnna Fali UNQUALIFIED
Aruna G KuskoIndiaBernardo Dominic PROPOSAL
Aditya E MorascaSpainBernardo Dominic RENEWAL
Ashley E RulapaughAustraliaStephen Shaw QUALIFIED
Alejandro A FigeroaGermanyStephen Shaw RENEWAL
Nicolas B FlosiCanadaAnna Fali UNQUALIFIED
Maria A TollnerIndiaAmy Elsner NEGOTIATION
Aruna W TollnerJapanXuxue Feng NEGOTIATION
Aika M ShinkoItalyXuxue Feng NEGOTIATION
Nicolas L CampainGermanyIvan Magalhaes NEW
Maisha Z BriddickArgentinaStephen Shaw UNQUALIFIED
Jones U VenereSpainAnna Fali NEGOTIATION
Tony F KuskoItalyAmy Elsner RENEWAL
David O StensethIndiaBernardo Dominic RENEWAL
Leon R FigeroaUnited KingdomBernardo Dominic NEW
Jefferson B StensethJapanAsiya Javayant NEW
Claire V MorascaRussiaOnyama Limba QUALIFIED

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