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
David F CampainBrazilElwin Sharvill NEW
Jefferson Z FigeroaUnited KingdomIoni Bowcher NEW
Darci V CaudyCanadaIvan Magalhaes QUALIFIED
Darci D ButtFranceXuxue Feng NEGOTIATION
Darci K SchemmerFranceXuxue Feng NEW
Jennifer I MorascaRussiaOnyama Limba PROPOSAL
Aika G FlosiIndiaAmy Elsner UNQUALIFIED
Cody B RutaGermanyStephen Shaw RENEWAL
Clifford S DilliardRussiaXuxue Feng NEGOTIATION
Faith B ShinkoItalyIoni Bowcher UNQUALIFIED
Ricardo W GauchoAustraliaIoni Bowcher QUALIFIED
Izzy H NickaGermanyAmy Elsner NEGOTIATION
Costa K FigeroaArgentinaIoni Bowcher PROPOSAL
Francesco Z TollnerRussiaElwin Sharvill RENEWAL
Munro Y SaylorsAustraliaAnna Fali UNQUALIFIED
Julie K NestleAustraliaStephen Shaw UNQUALIFIED
Isabel Y FigeroaRussiaAnna Fali NEW
Arvin K InouyeArgentinaIoni Bowcher QUALIFIED
Adams T AmigonJapanAnna Fali UNQUALIFIED
Maria W WieserAustraliaAmy Elsner QUALIFIED
Greenwood D MaletArgentinaAsiya Javayant NEGOTIATION
Sinclair A SaylorsIndiaIoni Bowcher PROPOSAL
Alejandro U FlosiArgentinaOnyama Limba UNQUALIFIED
Jefferson L KolmetzItalyAnna Fali UNQUALIFIED
Leon V IturbideIndiaAsiya Javayant RENEWAL
Misaki Q SaylorsBrazilAmy Elsner RENEWAL
Jefferson Q AmigonUnited KingdomAnna Fali NEGOTIATION
Kadeem H AmigonIndiaAnna Fali PROPOSAL
Morrow B SchemmerSpainIvan Magalhaes QUALIFIED
Ashley D SlusarskiGermanyOnyama Limba QUALIFIED
Faith Y MaletFranceElwin Sharvill NEW
Wickens L CaldareraAustraliaOnyama Limba NEGOTIATION
Clifford V BowleyBrazilAsiya Javayant NEGOTIATION
Faith U IturbideIndiaAnna Fali UNQUALIFIED
Misaki R WieserRussiaAmy Elsner RENEWAL
Darci W FollerItalyAmy Elsner NEW
Darci K ChuiBrazilBernardo Dominic NEGOTIATION
Adams J KolmetzGermanyIvan Magalhaes NEGOTIATION
Jefferson G PerinIndiaIoni Bowcher UNQUALIFIED
Julie P MaletJapanAnna Fali UNQUALIFIED
Aruna H CaldareraSpainIvan Magalhaes UNQUALIFIED
Misaki V RulapaughIndiaXuxue Feng QUALIFIED
Salvatore X CaldareraSpainIvan Magalhaes QUALIFIED
Juan G RulapaughCanadaElwin Sharvill QUALIFIED
Misaki R BologniaRussiaIvan Magalhaes NEW
Octavia Q GarufiBrazilAmy Elsner PROPOSAL
Smith N KuskoUnited KingdomAsiya Javayant NEW
Arvin F FollerArgentinaAnna Fali RENEWAL
Salvatore W VenereBrazilAmy Elsner UNQUALIFIED
Nicolas A FigeroaCanadaAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mayumi D VenereGermanyAnna Fali RENEWAL
Smith S PoquetteSpainIvan Magalhaes NEW
Ashley R CaudyUnited KingdomAsiya Javayant NEGOTIATION
Francesco X PoquetteIndiaAmy Elsner RENEWAL
Cody U AmigonAustraliaElwin Sharvill QUALIFIED
Antonio M OstroskyCanadaXuxue Feng NEGOTIATION
Stacey Q FlosiSpainElwin Sharvill NEGOTIATION
Claire R CaldareraJapanAnna Fali QUALIFIED
Maisha Z ChuiBrazilXuxue Feng NEGOTIATION
Isabel K StensethUnited KingdomIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa J ButtBrazil2024-06-02Feiner Bros QUALIFIED42Ioni Bowcher
1001Isabel Z DarakjyJapan2024-05-27Chemel, James L Cpa UNQUALIFIED74Bernardo Dominic
1002Clifford M MacleadIndia2024-06-07Chapman, Ross E Esq QUALIFIED57Onyama Limba
1003Arvin X SergiItaly2024-06-24King, Christopher A Esq NEGOTIATION97Amy Elsner
1004Wickens T PaprockiBrazil2024-06-10Printing Dimensions NEGOTIATION2Amy Elsner
1005Maisha Z KolmetzCanada2024-06-16Feltz Printing Service RENEWAL29Ivan Magalhaes
1006Mayumi R OstroskyItaly2024-06-12Rangoni Of Florence QUALIFIED73Ioni Bowcher
1007Sinclair I ChuiJapan2024-06-11Feltz Printing Service RENEWAL77Onyama Limba
1008Emily D KolmetzRussia2024-06-23Morlong Associates PROPOSAL17Bernardo Dominic
1009Faith S NestleUnited Kingdom2024-05-26Chanay, Jeffrey A Esq PROPOSAL11Ioni Bowcher
1010Deepesh K RutaIndia2024-06-07Rousseaux, Michael Esq PROPOSAL13Ivan Magalhaes
1011Francesco K WaycottJapan2024-06-20Rangoni Of Florence RENEWAL66Onyama Limba
1012Adams X BowleyCanada2024-06-06Chapman, Ross E Esq PROPOSAL7Xuxue Feng
1013Aruna Z ButtFrance2024-06-03Chapman, Ross E Esq QUALIFIED92Onyama Limba
1014Cody K SergiJapan2024-05-29Buckley Miller Wright NEW93Ioni Bowcher
1015Sinclair V MorascaJapan2024-06-23Chapman, Ross E Esq PROPOSAL46Xuxue Feng
1016Claire B AlbaresSpain2024-06-20Morlong Associates UNQUALIFIED93Asiya Javayant
1017Kadeem C SchemmerCanada2024-06-06Truhlar And Truhlar Attys NEGOTIATION89Anna Fali
1018Izzy B KuskoCanada2024-06-20Dorl, James J Esq PROPOSAL17Asiya Javayant
1019Leon I MarrierUnited Kingdom2024-06-02Chanay, Jeffrey A Esq UNQUALIFIED41Asiya Javayant
1020Salvatore O WieserArgentina2024-06-06Chapman, Ross E Esq PROPOSAL55Xuxue Feng
1021Isabel Z PerinJapan2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED28Ivan Magalhaes
1022Jeanfrancois M WieserGermany2024-06-24Benton, John B Jr UNQUALIFIED35Asiya Javayant
1023Smith B VenereGermany2024-06-11Feltz Printing Service RENEWAL74Onyama Limba
1024Clifford H NestleFrance2024-06-13Rousseaux, Michael Esq NEW33Anna Fali
1025Jeanfrancois K RutaAustralia2024-06-15Rangoni Of Florence UNQUALIFIED87Anna Fali
1026Cody Z PaprockiRussia2024-06-21Dorl, James J Esq PROPOSAL22Xuxue Feng
1027Mujtaba A WaycottArgentina2024-06-01Feltz Printing Service RENEWAL85Ioni Bowcher
1028Antonio D NickaIndia2024-06-02Chemel, James L Cpa QUALIFIED55Xuxue Feng
1029Jefferson G MarrierJapan2024-06-03Morlong Associates NEGOTIATION59Amy Elsner
1030Munro T InouyeUnited Kingdom2024-06-14King, Christopher A Esq QUALIFIED82Ivan Magalhaes
1031Stacey C PerinIndia2024-05-28Dorl, James J Esq UNQUALIFIED23Ioni Bowcher
1032Jennifer Q FerenczUnited Kingdom2024-06-06Feltz Printing Service RENEWAL44Ivan Magalhaes
1033Misaki G GauchoSpain2024-06-01Morlong Associates QUALIFIED80Bernardo Dominic
1034Costa Y RoysterAustralia2024-06-06Morlong Associates RENEWAL83Onyama Limba
1035Ashley X OstroskyRussia2024-05-26King, Christopher A Esq UNQUALIFIED62Elwin Sharvill
1036Jones N VenereJapan2024-06-04Dorl, James J Esq RENEWAL66Elwin Sharvill
1037Misaki F FollerRussia2024-06-24Feltz Printing Service RENEWAL63Ioni Bowcher
1038Cody N KuskoSpain2024-06-21Chemel, James L Cpa PROPOSAL39Ivan Magalhaes
1039Leon F ShinkoBrazil2024-06-18Commercial Press NEW12Amy Elsner
1040Darci T SchemmerRussia2024-06-01Commercial Press PROPOSAL85Ioni Bowcher
1041Cody D CampainJapan2024-06-08Rangoni Of Florence UNQUALIFIED21Xuxue Feng
1042Wickens U VenereSpain2024-06-01Chanay, Jeffrey A Esq UNQUALIFIED25Ioni Bowcher
1043Leja P GarufiAustralia2024-06-07Rangoni Of Florence NEGOTIATION33Elwin Sharvill
1044Emily E TollnerSpain2024-06-18Benton, John B Jr NEW18Onyama Limba
1045Murillo K StensethAustralia2024-05-26Printing Dimensions UNQUALIFIED21Anna Fali
1046Ricardo L MacleadAustralia2024-05-31Feltz Printing Service QUALIFIED19Elwin Sharvill
1047Leon U GauchoArgentina2024-06-21Morlong Associates PROPOSAL46Asiya Javayant
1048Salvatore F WhobreyIndia2024-05-26Benton, John B Jr UNQUALIFIED48Asiya Javayant
1049Alejandro U PoquetteArgentina2024-06-07Chapman, Ross E Esq RENEWAL71Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Izzy A CampainRussiaIvan Magalhaes NEW
Stacey L FigeroaBrazilStephen Shaw NEGOTIATION
Clifford Z RimFranceAsiya Javayant NEW
Darci J PoquetteGermanyAsiya Javayant NEW
Jennifer R SergiArgentinaOnyama Limba NEGOTIATION
Ashley Q MarrierAustraliaAnna Fali NEGOTIATION
David J KolmetzArgentinaXuxue Feng UNQUALIFIED
Clifford Y MaletAustraliaIvan Magalhaes UNQUALIFIED
Salvatore P RoysterUnited KingdomAnna Fali PROPOSAL
Octavia H PoquetteUnited KingdomStephen Shaw NEGOTIATION
Wickens W RulapaughJapanXuxue Feng NEGOTIATION
Chavez P SlusarskiItalyOnyama Limba UNQUALIFIED
Maisha B FigeroaAustraliaBernardo Dominic UNQUALIFIED
Aruna L CampainJapanIvan Magalhaes QUALIFIED
Costa D MarrierCanadaIvan Magalhaes QUALIFIED
Maria C DilliardJapanIvan Magalhaes QUALIFIED
Aditya U GlickArgentinaAnna Fali NEGOTIATION
Ashley Q MacleadRussiaIvan Magalhaes UNQUALIFIED
Arvin B AlbaresAustraliaOnyama Limba UNQUALIFIED
Aruna E ShinkoRussiaIvan Magalhaes NEGOTIATION
Adams D VenereJapanAnna Fali NEGOTIATION
Morrow G VenereItalyOnyama Limba QUALIFIED
Adams A StensethIndiaIvan Magalhaes UNQUALIFIED
Leon E DilliardFranceAmy Elsner QUALIFIED
Jennifer S AmigonUnited KingdomStephen Shaw RENEWAL
Murillo Y SlusarskiSpainStephen Shaw NEW
Darci I RutaRussiaIvan Magalhaes UNQUALIFIED
Kaitlin I RimIndiaElwin Sharvill RENEWAL
Deepesh L SchemmerBrazilBernardo Dominic QUALIFIED
Ashley B NickaJapanStephen Shaw UNQUALIFIED
Silvio O GillianBrazilAnna Fali QUALIFIED
Salvatore R PoquetteSpainOnyama Limba RENEWAL
Ivar W ButtAustraliaElwin Sharvill RENEWAL
Isabel J MarrierAustraliaStephen Shaw RENEWAL
Francesco G CampainRussiaAmy Elsner NEW
Kadeem V BologniaSpainAmy Elsner PROPOSAL
Silvio K CaudySpainXuxue Feng PROPOSAL
Mayumi B TollnerUnited KingdomAmy Elsner PROPOSAL
Chavez N MacleadIndiaBernardo Dominic QUALIFIED
Silvio D TollnerIndiaStephen Shaw RENEWAL
Isabel S FigeroaFranceElwin Sharvill NEW
Costa U CaldareraCanadaAmy Elsner PROPOSAL
Arvin G SaylorsCanadaAsiya Javayant RENEWAL
Emily T RimUnited KingdomIvan Magalhaes NEW
Smith J FigeroaItalyBernardo Dominic UNQUALIFIED
Jeanfrancois W KolmetzRussiaStephen Shaw NEW
Mujtaba D AlbaresGermanyIvan Magalhaes PROPOSAL
Mujtaba E PoquetteBrazilXuxue Feng NEGOTIATION
James V NickaGermanyElwin Sharvill NEW
Johnson U DilliardFranceIoni Bowcher RENEWAL
Frozen Columns
Name
Greenwood M Garufi
Maisha U Iturbide
Johnson I Shinko
Juan L Nicka
Adams U Iturbide
Adams C Bolognia
Ivar E Kolmetz
Jones T Briddick
Munro A Figeroa
Deepesh C Rulapaugh
Kaitlin O Wieser
Johnson H Bowley
Claire U Gillian
Greenwood S Whobrey
Francesco I Ruta
Aditya N Glick
Adams C Sergi
Salvatore K Albares
Greenwood A Briddick
Tony H Doe
Maisha C Rulapaugh
Greenwood W Foller
Greenwood E Gillian
Murillo D Kusko
Aruna C Rim
Ricardo B Gaucho
Francesco C Kusko
Johnson K Venere
Leja R Marrier
James N Gillian
Aditya F Ruta
Wickens C Chui
Izzy C Morasca
Morrow C Glick
Mayumi Y Schemmer
Clifford D Waycott
Ivar J Wieser
Faith Z Briddick
Clifford K Vocelka
Greenwood V Wieser
Munro F Dilliard
Munro Z Morasca
Greenwood W Rulapaugh
Ivar W Darakjy
Izzy W Bolognia
Octavia R Waycott
Julie C Chui
Stacey F Flosi
Aika A Wieser
Leon J Ostrosky
IdCountryDate
1000India2024-06-10
1001Japan2024-06-22
1002Russia2024-06-04
1003Germany2024-05-29
1004Argentina2024-06-17
1005Spain2024-06-23
1006Italy2024-05-30
1007United Kingdom2024-06-13
1008Japan2024-05-30
1009Russia2024-06-08
1010Japan2024-05-29
1011Italy2024-05-28
1012Argentina2024-05-31
1013Germany2024-06-18
1014Australia2024-06-18
1015Italy2024-06-23
1016Russia2024-06-02
1017Spain2024-06-09
1018Spain2024-06-14
1019Spain2024-06-03
1020Spain2024-06-09
1021United Kingdom2024-06-19
1022France2024-06-22
1023Germany2024-06-07
1024Australia2024-06-18
1025Argentina2024-06-23
1026Canada2024-06-17
1027United Kingdom2024-06-14
1028Japan2024-06-20
1029Spain2024-06-19
1030Germany2024-06-16
1031France2024-06-21
1032United Kingdom2024-06-06
1033Italy2024-06-04
1034France2024-06-04
1035Japan2024-06-05
1036Australia2024-06-07
1037Australia2024-05-30
1038Germany2024-06-08
1039Italy2024-05-31
1040Japan2024-06-03
1041India2024-05-29
1042France2024-06-01
1043Germany2024-06-14
1044Japan2024-05-28
1045Argentina2024-06-03
1046France2024-06-09
1047Australia2024-06-21
1048Canada2024-06-21
1049India2024-06-16

On-Demand Data

NameIdCountryDate
Rodrigues K Butt1000Spain2024-06-03
Ashley C Venere1001Australia2024-06-12
Leon Y Malet1002France2024-06-11
Greenwood Y Inouye1003Canada2024-06-14
Isabel B Briddick1004Argentina2024-05-30
Ashley J Shinko1005United Kingdom2024-06-09
Leja P Nestle1006United Kingdom2024-06-21
Kadeem Z Chui1007Brazil2024-06-08
Mujtaba B Waycott1008India2024-06-12
Mujtaba X Doe1009Brazil2024-06-21
Aika V Wieser1010Australia2024-05-29
Jeanfrancois G Rim1011Spain2024-05-29
Murillo N Shinko1012Russia2024-06-01
Ricardo C Flosi1013Germany2024-06-12
Chavez Y Gillian1014United Kingdom2024-06-07
Mayumi Z Stockham1015United Kingdom2024-06-14
Morrow O Caldarera1016Japan2024-06-11
David R Foller1017France2024-06-19
Stacey T Albares1018Spain2024-06-10
Rodrigues M Dilliard1019India2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem A MaletIndiaAsiya Javayant NEGOTIATION
Aruna R DoeGermanyAmy Elsner UNQUALIFIED
Jennifer K MorascaBrazilAmy Elsner QUALIFIED
Izzy D FlosiUnited KingdomXuxue Feng NEGOTIATION
Costa S NestleGermanyIvan Magalhaes PROPOSAL
Rodrigues B VocelkaGermanyAmy Elsner NEW
Clifford Y CaldareraCanadaAmy Elsner NEGOTIATION
Jennifer N SaylorsArgentinaOnyama Limba UNQUALIFIED
Francesco D VocelkaArgentinaAsiya Javayant QUALIFIED
Costa F SaylorsRussiaIvan Magalhaes NEGOTIATION
Morrow P KuskoIndiaBernardo Dominic RENEWAL
Maisha N CaldareraAustraliaXuxue Feng RENEWAL
Jennifer K MacleadGermanyBernardo Dominic UNQUALIFIED
Aruna F CampainSpainIoni Bowcher PROPOSAL
Darci D SergiBrazilAnna Fali UNQUALIFIED
Claire U FigeroaBrazilIoni Bowcher NEGOTIATION
Smith U StensethArgentinaOnyama Limba QUALIFIED
Maria D IturbideJapanXuxue Feng PROPOSAL
Adams K GillianFranceAnna Fali NEW
Jeanfrancois P MarrierBrazilIvan Magalhaes UNQUALIFIED
Arvin K BowleyIndiaAmy Elsner RENEWAL
Maria Z DarakjyBrazilAsiya Javayant RENEWAL
Octavia C GlickArgentinaAmy Elsner NEW
Misaki A OldroydItalyAsiya Javayant RENEWAL
Aditya D AlbaresUnited KingdomIoni Bowcher NEGOTIATION
Kadeem W DoeGermanyIoni Bowcher NEW
Isabel D SergiArgentinaIvan Magalhaes QUALIFIED
Wickens J DarakjyBrazilOnyama Limba RENEWAL
Costa M StensethItalyElwin Sharvill NEW
Ashley Q StensethCanadaAmy Elsner RENEWAL
Kaitlin J BologniaSpainBernardo Dominic QUALIFIED
Maisha P InouyeIndiaBernardo Dominic NEW
Julie C GlickCanadaAmy Elsner RENEWAL
Johnson V AmigonJapanIvan Magalhaes QUALIFIED
Aika L KuskoSpainIvan Magalhaes RENEWAL
James F MacleadBrazilStephen Shaw NEGOTIATION
Cody E GillianSpainBernardo Dominic PROPOSAL
Stacey F SchemmerJapanIoni Bowcher NEGOTIATION
Greenwood L DarakjyJapanIoni Bowcher RENEWAL
Morrow H DarakjyIndiaAmy Elsner NEGOTIATION

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