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
Costa M GarufiCanadaAnna Fali PROPOSAL
Adams G StockhamGermanyAnna Fali NEW
Kaitlin B SergiUnited KingdomOnyama Limba PROPOSAL
Nicolas L MaletIndiaStephen Shaw NEGOTIATION
Darci V RulapaughAustraliaAsiya Javayant PROPOSAL
Faith H MarrierRussiaAmy Elsner UNQUALIFIED
Stacey F AlbaresAustraliaAsiya Javayant QUALIFIED
Johnson F InouyeJapanAnna Fali PROPOSAL
Izzy N SchemmerFranceAmy Elsner QUALIFIED
David F VenereUnited KingdomIvan Magalhaes RENEWAL
Kaitlin E AlbaresGermanyOnyama Limba NEGOTIATION
Misaki S ShinkoGermanyIoni Bowcher QUALIFIED
Mayumi P NestleJapanAmy Elsner NEW
Darci R FigeroaUnited KingdomStephen Shaw NEGOTIATION
Smith R OldroydItalyAsiya Javayant NEGOTIATION
Mujtaba A OldroydUnited KingdomBernardo Dominic RENEWAL
Leon I BriddickGermanyOnyama Limba QUALIFIED
Aika S SaylorsGermanyBernardo Dominic NEGOTIATION
David U DoeCanadaIvan Magalhaes NEW
Darci K DilliardIndiaIvan Magalhaes UNQUALIFIED
Jefferson J FollerFranceElwin Sharvill NEGOTIATION
Costa R AmigonUnited KingdomAnna Fali QUALIFIED
Leja K InouyeArgentinaOnyama Limba RENEWAL
Tony F BriddickIndiaOnyama Limba RENEWAL
David Y SergiCanadaAmy Elsner PROPOSAL
Ricardo I StensethFranceBernardo Dominic NEGOTIATION
Sinclair L TollnerFranceOnyama Limba NEW
Stacey W StockhamSpainIoni Bowcher QUALIFIED
Sinclair A CaldareraUnited KingdomStephen Shaw QUALIFIED
Antonio N MorascaBrazilBernardo Dominic PROPOSAL
Wickens Z KuskoRussiaAmy Elsner UNQUALIFIED
Arvin Q BriddickGermanyElwin Sharvill NEW
Aika F GarufiArgentinaBernardo Dominic QUALIFIED
James T MarrierUnited KingdomAnna Fali QUALIFIED
Jones V RoysterUnited KingdomStephen Shaw PROPOSAL
Jones X GlickFranceBernardo Dominic PROPOSAL
Kadeem P WhobreyArgentinaStephen Shaw NEGOTIATION
Rodrigues B ShinkoBrazilIvan Magalhaes UNQUALIFIED
Smith U DarakjyUnited KingdomBernardo Dominic RENEWAL
Jones D OldroydAustraliaAnna Fali UNQUALIFIED
Adams K FerenczFranceStephen Shaw QUALIFIED
Mayumi N IturbideSpainIvan Magalhaes RENEWAL
Smith B VenereGermanyStephen Shaw RENEWAL
Greenwood E PerinArgentinaXuxue Feng NEW
Jennifer A WaycottItalyAmy Elsner QUALIFIED
Antonio V GillianCanadaIvan Magalhaes UNQUALIFIED
Deepesh B FlosiGermanyAmy Elsner PROPOSAL
Julie J GauchoSpainOnyama Limba PROPOSAL
Johnson R WaycottUnited KingdomAsiya Javayant NEW
Greenwood L IturbideRussiaIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Nicolas U CaudyArgentinaAnna Fali NEW
Arvin U ButtRussiaAnna Fali NEW
Leon C MarrierFranceIoni Bowcher NEW
Leon K FlosiGermanyAsiya Javayant NEW
Leon P VenereSpainXuxue Feng NEW
Murillo A ChuiJapanStephen Shaw QUALIFIED
Julie G OldroydCanadaIoni Bowcher UNQUALIFIED
Jennifer I RoysterItalyAnna Fali PROPOSAL
Juan O StockhamGermanyAsiya Javayant NEGOTIATION
Sinclair R RimJapanOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody Q FlosiSpain2024-06-10King, Christopher A Esq NEGOTIATION36Ioni Bowcher
1001Leon M RimCanada2024-06-10Commercial Press QUALIFIED83Stephen Shaw
1002Alejandro X RoysterUnited Kingdom2024-05-28Chemel, James L Cpa NEGOTIATION77Anna Fali
1003Arvin V DoeIndia2024-06-02Commercial Press RENEWAL49Amy Elsner
1004Faith Y SchemmerAustralia2024-05-30Benton, John B Jr RENEWAL27Amy Elsner
1005Morrow I FigeroaIndia2024-06-22Buckley Miller Wright QUALIFIED95Elwin Sharvill
1006Nicolas T StockhamJapan2024-06-15Chanay, Jeffrey A Esq NEW9Xuxue Feng
1007Mujtaba V ShinkoItaly2024-06-21Chemel, James L Cpa NEGOTIATION39Stephen Shaw
1008Wickens N RutaRussia2024-06-16Rangoni Of Florence RENEWAL4Stephen Shaw
1009Emily D CaldareraAustralia2024-06-03Chemel, James L Cpa RENEWAL31Xuxue Feng
1010James R CaldareraRussia2024-06-10Dorl, James J Esq RENEWAL87Amy Elsner
1011Munro M RimArgentina2024-05-29Chemel, James L Cpa NEW52Ioni Bowcher
1012Misaki I FollerItaly2024-06-02Chemel, James L Cpa UNQUALIFIED44Amy Elsner
1013Clifford J SaylorsRussia2024-05-31King, Christopher A Esq NEW42Ivan Magalhaes
1014Octavia S NestleBrazil2024-06-14Chapman, Ross E Esq UNQUALIFIED56Elwin Sharvill
1015Sinclair V WhobreyCanada2024-05-27Chanay, Jeffrey A Esq QUALIFIED75Anna Fali
1016Leja Y MarrierRussia2024-06-06Printing Dimensions NEGOTIATION33Elwin Sharvill
1017Stacey I AmigonJapan2024-06-12Commercial Press NEW94Stephen Shaw
1018Wickens I ButtRussia2024-06-14Chemel, James L Cpa RENEWAL49Amy Elsner
1019Julie F DilliardRussia2024-05-28Commercial Press RENEWAL17Bernardo Dominic
1020Salvatore P GillianFrance2024-06-16Commercial Press NEW10Anna Fali
1021Jefferson L StensethUnited Kingdom2024-05-31Morlong Associates RENEWAL69Anna Fali
1022Deepesh Y CaldareraGermany2024-06-06King, Christopher A Esq PROPOSAL28Amy Elsner
1023Maria Y VocelkaIndia2024-06-13King, Christopher A Esq UNQUALIFIED48Xuxue Feng
1024Alejandro R CaudyUnited Kingdom2024-05-26Printing Dimensions NEW87Onyama Limba
1025Arvin E MarrierSpain2024-06-22Buckley Miller Wright PROPOSAL63Stephen Shaw
1026Salvatore L RimAustralia2024-05-27Chemel, James L Cpa NEW56Ivan Magalhaes
1027Deepesh S SergiGermany2024-06-04Printing Dimensions RENEWAL0Ioni Bowcher
1028Alejandro B VocelkaCanada2024-05-27Feiner Bros NEGOTIATION48Elwin Sharvill
1029Darci G KolmetzGermany2024-06-24Chanay, Jeffrey A Esq NEGOTIATION83Elwin Sharvill
1030Salvatore G BowleyIndia2024-06-21Chemel, James L Cpa QUALIFIED99Stephen Shaw
1031Mujtaba D DarakjyIndia2024-05-28King, Christopher A Esq PROPOSAL5Bernardo Dominic
1032Aruna V DarakjyCanada2024-06-23Commercial Press RENEWAL66Onyama Limba
1033Cody U SaylorsAustralia2024-06-23Truhlar And Truhlar Attys UNQUALIFIED40Onyama Limba
1034Isabel R MarrierSpain2024-06-16Morlong Associates NEGOTIATION60Onyama Limba
1035Kaitlin T RoysterUnited Kingdom2024-06-15Dorl, James J Esq NEGOTIATION8Ivan Magalhaes
1036Aika V MarrierFrance2024-05-27Truhlar And Truhlar Attys PROPOSAL16Bernardo Dominic
1037Clifford L ButtGermany2024-06-24Rousseaux, Michael Esq NEGOTIATION19Amy Elsner
1038Kaitlin C DoeBrazil2024-06-21King, Christopher A Esq RENEWAL50Amy Elsner
1039Maria E CaldareraGermany2024-06-21Chemel, James L Cpa UNQUALIFIED41Stephen Shaw
1040Silvio X MarrierArgentina2024-06-10Buckley Miller Wright NEW88Asiya Javayant
1041Greenwood T OldroydAustralia2024-05-31Printing Dimensions QUALIFIED3Ivan Magalhaes
1042David I ShinkoIndia2024-06-12Rangoni Of Florence NEGOTIATION77Asiya Javayant
1043Deepesh J TollnerBrazil2024-06-16Rousseaux, Michael Esq RENEWAL7Bernardo Dominic
1044Silvio Q MaletJapan2024-06-01Rousseaux, Michael Esq RENEWAL92Elwin Sharvill
1045Arvin N RutaCanada2024-06-16Dorl, James J Esq QUALIFIED62Ivan Magalhaes
1046Salvatore X InouyeItaly2024-06-08King, Christopher A Esq RENEWAL72Bernardo Dominic
1047Kadeem B WaycottFrance2024-06-02Dorl, James J Esq NEW65Stephen Shaw
1048Tony V InouyeCanada2024-06-03Printing Dimensions RENEWAL48Xuxue Feng
1049Aditya A VocelkaCanada2024-06-19Benton, John B Jr PROPOSAL29Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Jennifer I RimCanadaElwin Sharvill NEGOTIATION
Salvatore U CaudyAustraliaOnyama Limba UNQUALIFIED
Cody X SaylorsGermanyIvan Magalhaes NEGOTIATION
Aika A MaletRussiaAnna Fali NEW
Mayumi J CaudyBrazilIoni Bowcher NEW
Octavia T RimBrazilBernardo Dominic PROPOSAL
Kaitlin V ButtGermanyIvan Magalhaes UNQUALIFIED
Murillo H DoeIndiaIvan Magalhaes PROPOSAL
Clifford S NickaCanadaAnna Fali NEGOTIATION
Leon I PoquetteSpainOnyama Limba NEGOTIATION
Smith E StensethIndiaStephen Shaw RENEWAL
Alejandro X KolmetzArgentinaIoni Bowcher NEGOTIATION
Munro P NestleAustraliaAnna Fali NEGOTIATION
Aruna J SaylorsGermanyXuxue Feng NEGOTIATION
Clifford S NestleArgentinaStephen Shaw NEW
David X KuskoSpainIoni Bowcher UNQUALIFIED
Kaitlin B DarakjyAustraliaIvan Magalhaes PROPOSAL
Wickens K FlosiSpainAsiya Javayant QUALIFIED
Leja B VocelkaBrazilAnna Fali NEW
Alejandro N MacleadFranceIoni Bowcher QUALIFIED
Izzy X OldroydAustraliaBernardo Dominic QUALIFIED
Kaitlin P GarufiFranceIoni Bowcher NEGOTIATION
Kaitlin D ChuiArgentinaIoni Bowcher QUALIFIED
Deepesh U DilliardIndiaAmy Elsner UNQUALIFIED
David H InouyeRussiaStephen Shaw QUALIFIED
Jones K WaycottItalyIvan Magalhaes QUALIFIED
Mujtaba O VocelkaArgentinaIvan Magalhaes QUALIFIED
Jefferson Y CaudyAustraliaIvan Magalhaes QUALIFIED
Sinclair O CampainArgentinaOnyama Limba RENEWAL
Jennifer F OldroydUnited KingdomIvan Magalhaes PROPOSAL
Antonio O GarufiAustraliaIoni Bowcher QUALIFIED
Munro R NickaRussiaXuxue Feng UNQUALIFIED
Kadeem P AmigonJapanXuxue Feng RENEWAL
Octavia E VocelkaGermanyAsiya Javayant NEW
Murillo Z SergiUnited KingdomAsiya Javayant PROPOSAL
Costa E RulapaughArgentinaAnna Fali QUALIFIED
Salvatore E SchemmerAustraliaIoni Bowcher PROPOSAL
Clifford Y InouyeFranceAmy Elsner NEGOTIATION
Costa T GarufiIndiaOnyama Limba RENEWAL
Misaki G MaletRussiaIvan Magalhaes RENEWAL
Johnson P StensethRussiaIvan Magalhaes PROPOSAL
Greenwood C SergiItalyAmy Elsner NEGOTIATION
Julie N OstroskyFranceAsiya Javayant NEW
Nicolas C GauchoGermanyBernardo Dominic RENEWAL
Arvin M PaprockiAustraliaOnyama Limba NEW
Misaki L MacleadJapanAnna Fali PROPOSAL
Juan L IturbideIndiaBernardo Dominic UNQUALIFIED
Wickens V WaycottIndiaAnna Fali QUALIFIED
Maria X MarrierAustraliaElwin Sharvill UNQUALIFIED
Misaki F AmigonGermanyAsiya Javayant PROPOSAL
Frozen Columns
Name
Sinclair L Gillian
Deepesh D Doe
James E Bowley
Sinclair J Wieser
David H Perin
Morrow S Rim
Smith V Nicka
Leja A Campain
Murillo Q Doe
Wickens L Saylors
Jefferson R Rulapaugh
Adams M Ostrosky
Aruna C Paprocki
Kadeem B Shinko
Emily B Briddick
Kaitlin C Butt
Greenwood X Slusarski
Arvin N Ruta
Ricardo F Sergi
Kaitlin Z Rim
Arvin L Dilliard
Mayumi K Ferencz
Julie S Rulapaugh
Tony Z Shinko
Claire R Iturbide
Isabel K Kolmetz
Aditya X Gaucho
Adams M Gaucho
Kadeem C Wieser
Chavez H Albares
Faith L Chui
Leon I Ruta
Wickens X Nicka
Aika T Rulapaugh
Antonio W Poquette
Deepesh J Nestle
Arvin M Perin
Jefferson L Marrier
Maria M Glick
Morrow N Dilliard
Misaki U Whobrey
Stacey O Whobrey
Kadeem A Nicka
Wickens G Stockham
Morrow D Saylors
Arvin J Ferencz
Octavia F Paprocki
Murillo M Shinko
David P Amigon
Ivar M Foller
IdCountryDate
1000India2024-06-19
1001Spain2024-06-22
1002Japan2024-06-12
1003India2024-06-11
1004Australia2024-06-02
1005Brazil2024-06-04
1006France2024-05-29
1007Brazil2024-06-13
1008Canada2024-06-02
1009Brazil2024-06-06
1010Australia2024-06-09
1011India2024-06-12
1012Canada2024-06-04
1013France2024-06-01
1014United Kingdom2024-06-14
1015Germany2024-06-23
1016Canada2024-05-31
1017India2024-06-06
1018Japan2024-06-19
1019India2024-06-20
1020Japan2024-05-28
1021Brazil2024-06-08
1022Japan2024-06-15
1023Germany2024-06-21
1024Brazil2024-06-06
1025Australia2024-06-08
1026Australia2024-06-12
1027Argentina2024-06-13
1028United Kingdom2024-06-19
1029Germany2024-06-12
1030Russia2024-06-06
1031Canada2024-06-09
1032Australia2024-06-05
1033Canada2024-05-28
1034Argentina2024-06-13
1035Spain2024-05-31
1036Argentina2024-05-29
1037Russia2024-06-22
1038Argentina2024-06-17
1039Japan2024-05-30
1040Brazil2024-06-17
1041Canada2024-06-24
1042Japan2024-06-06
1043Canada2024-06-04
1044Australia2024-06-01
1045France2024-06-04
1046France2024-05-28
1047Japan2024-06-09
1048Russia2024-06-01
1049Australia2024-06-06

On-Demand Data

NameIdCountryDate
Aruna S Royster1000Japan2024-06-19
Jennifer Q Kolmetz1001Canada2024-06-11
Sinclair T Figeroa1002Brazil2024-06-01
Izzy T Morasca1003Australia2024-06-16
Munro Q Garufi1004France2024-06-01
Arvin J Ostrosky1005Australia2024-06-24
Octavia R Morasca1006United Kingdom2024-06-14
Emily T Nestle1007Japan2024-05-28
Costa S Waycott1008India2024-06-04
Izzy S Stockham1009Australia2024-06-19
Leja X Briddick1010Russia2024-05-28
Chavez Q Foller1011Canada2024-06-02
David R Saylors1012Spain2024-05-31
Costa F Glick1013Canada2024-05-29
Johnson V Vocelka1014India2024-06-15
Maria F Doe1015Argentina2024-06-06
Jefferson E Schemmer1016Brazil2024-06-15
Aruna B Gaucho1017India2024-06-01
Stacey S Bowley1018Japan2024-06-21
Murillo M Tollner1019United Kingdom2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa I MaletAustraliaAsiya Javayant NEW
Deepesh A NestleSpainXuxue Feng PROPOSAL
Salvatore I PoquetteBrazilXuxue Feng NEGOTIATION
Maisha J TollnerSpainIoni Bowcher NEW
Leja U WaycottArgentinaBernardo Dominic PROPOSAL
Ricardo J MaletAustraliaStephen Shaw NEGOTIATION
Aditya S KolmetzItalyIoni Bowcher QUALIFIED
Leja T MorascaArgentinaAmy Elsner RENEWAL
Sinclair E ShinkoSpainXuxue Feng RENEWAL
Mayumi B SlusarskiSpainXuxue Feng NEGOTIATION
Kaitlin P NickaAustraliaOnyama Limba PROPOSAL
Alejandro S DarakjySpainStephen Shaw QUALIFIED
Aruna M MaletItalyIoni Bowcher NEGOTIATION
Salvatore W VenereItalyIoni Bowcher PROPOSAL
Maria L GlickRussiaElwin Sharvill QUALIFIED
Jefferson A BologniaCanadaOnyama Limba QUALIFIED
Tony S TollnerGermanyAmy Elsner NEW
Ashley O RoysterUnited KingdomIoni Bowcher RENEWAL
Julie L PoquetteArgentinaIoni Bowcher PROPOSAL
Kaitlin A BologniaFranceBernardo Dominic NEGOTIATION
Francesco N BriddickGermanyStephen Shaw UNQUALIFIED
Leja G ChuiGermanyOnyama Limba NEGOTIATION
Faith C DilliardSpainOnyama Limba QUALIFIED
Rodrigues B KuskoFranceBernardo Dominic UNQUALIFIED
Kaitlin S WhobreyArgentinaAsiya Javayant UNQUALIFIED
Ivar H KuskoArgentinaAmy Elsner PROPOSAL
Antonio X FollerAustraliaStephen Shaw NEGOTIATION
Arvin A DarakjyAustraliaOnyama Limba PROPOSAL
Jennifer H StockhamGermanyOnyama Limba NEGOTIATION
Arvin I SlusarskiGermanyXuxue Feng NEW
Jennifer Q MaletArgentinaStephen Shaw RENEWAL
Julie K NestleFranceIoni Bowcher RENEWAL
Sinclair C CaudyCanadaElwin Sharvill UNQUALIFIED
Sinclair Z DoeUnited KingdomOnyama Limba NEW
Morrow H CaudyBrazilXuxue Feng UNQUALIFIED
Johnson U MaletItalyIvan Magalhaes QUALIFIED
Morrow D CaldareraFranceIvan Magalhaes UNQUALIFIED
Deepesh B KuskoItalyAmy Elsner RENEWAL
Aditya E FigeroaJapanElwin Sharvill UNQUALIFIED
Aditya O SlusarskiBrazilStephen Shaw 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>