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
Nicolas U RulapaughRussiaBernardo Dominic NEGOTIATION
Wickens Q CampainFranceElwin Sharvill RENEWAL
Johnson T PaprockiFranceIvan Magalhaes NEW
Silvio H TollnerFranceAsiya Javayant QUALIFIED
Kadeem V GillianGermanyAsiya Javayant RENEWAL
Tony H PoquetteFranceIoni Bowcher UNQUALIFIED
Salvatore H RoysterFranceIoni Bowcher UNQUALIFIED
Mayumi W AlbaresIndiaStephen Shaw NEW
Kaitlin P GillianAustraliaStephen Shaw QUALIFIED
Aika B SaylorsItalyStephen Shaw UNQUALIFIED
Emily A FollerItalyIoni Bowcher RENEWAL
Izzy R ChuiBrazilXuxue Feng PROPOSAL
Rodrigues D FlosiGermanyOnyama Limba UNQUALIFIED
Aditya O RutaSpainAmy Elsner QUALIFIED
Isabel X RutaSpainIvan Magalhaes PROPOSAL
Wickens M AlbaresUnited KingdomAmy Elsner RENEWAL
Rodrigues Z KuskoJapanAmy Elsner RENEWAL
Munro K InouyeBrazilStephen Shaw UNQUALIFIED
Adams M DoeAustraliaAnna Fali NEW
Ashley B AlbaresFranceIvan Magalhaes NEW
Munro V WaycottIndiaIvan Magalhaes NEGOTIATION
Deepesh K GlickJapanOnyama Limba QUALIFIED
Claire Q MaletRussiaIoni Bowcher PROPOSAL
Maisha G SchemmerFranceXuxue Feng NEW
Tony U KolmetzAustraliaAmy Elsner QUALIFIED
Mayumi S WhobreyCanadaAmy Elsner NEGOTIATION
Murillo L CampainSpainIoni Bowcher RENEWAL
Rodrigues X GauchoBrazilIoni Bowcher NEW
Octavia H GauchoRussiaAnna Fali PROPOSAL
Salvatore B AlbaresJapanAsiya Javayant QUALIFIED
Jeanfrancois A SlusarskiIndiaIoni Bowcher NEGOTIATION
Adams C MarrierRussiaIoni Bowcher NEW
Ivar A FollerBrazilElwin Sharvill RENEWAL
Stacey O MacleadFranceAnna Fali QUALIFIED
Jefferson X OstroskyJapanIoni Bowcher NEGOTIATION
Ashley L VocelkaUnited KingdomElwin Sharvill NEGOTIATION
Salvatore B PoquetteBrazilAsiya Javayant RENEWAL
Maria C OldroydRussiaAnna Fali UNQUALIFIED
Kadeem C VocelkaFranceIvan Magalhaes UNQUALIFIED
Octavia J RoysterUnited KingdomAmy Elsner PROPOSAL
Aruna S RulapaughJapanOnyama Limba RENEWAL
Isabel L ShinkoArgentinaXuxue Feng PROPOSAL
Alejandro R CaudySpainStephen Shaw PROPOSAL
Maria M CaudyArgentinaAsiya Javayant RENEWAL
Munro L VocelkaArgentinaIvan Magalhaes RENEWAL
Darci F CampainCanadaAnna Fali RENEWAL
Ricardo F GlickGermanyBernardo Dominic NEW
Nicolas N FollerBrazilStephen Shaw PROPOSAL
Cody Y BriddickAustraliaBernardo Dominic NEGOTIATION
Tony W MaletAustraliaAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan A WhobreyArgentinaIvan Magalhaes RENEWAL
David U RimBrazilIvan Magalhaes NEGOTIATION
Leon Z FollerUnited KingdomIvan Magalhaes UNQUALIFIED
Rodrigues R SchemmerRussiaStephen Shaw NEGOTIATION
Ricardo P ChuiIndiaBernardo Dominic NEW
Tony P WaycottFranceXuxue Feng NEW
Sinclair Z PaprockiIndiaIvan Magalhaes QUALIFIED
Johnson T ChuiCanadaAsiya Javayant PROPOSAL
Greenwood J StensethIndiaElwin Sharvill NEGOTIATION
Ashley M OldroydFranceAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood J ChuiCanada2024-06-13Benton, John B Jr QUALIFIED97Stephen Shaw
1001James M GillianRussia2024-06-14Rangoni Of Florence UNQUALIFIED7Xuxue Feng
1002Ivar Q DarakjyRussia2024-06-07Dorl, James J Esq QUALIFIED67Elwin Sharvill
1003David R TollnerItaly2024-05-28Buckley Miller Wright UNQUALIFIED33Amy Elsner
1004Costa J StensethFrance2024-05-28Chapman, Ross E Esq NEGOTIATION4Amy Elsner
1005Isabel E SaylorsSpain2024-05-25Rangoni Of Florence QUALIFIED14Amy Elsner
1006Rodrigues H FollerBrazil2024-06-20Rangoni Of Florence NEGOTIATION78Onyama Limba
1007Wickens V RoysterGermany2024-06-17Commercial Press QUALIFIED25Bernardo Dominic
1008Emily H BowleyAustralia2024-05-26Rangoni Of Florence QUALIFIED25Bernardo Dominic
1009Munro I OstroskyIndia2024-05-25Rousseaux, Michael Esq UNQUALIFIED28Stephen Shaw
1010Kadeem B SergiGermany2024-05-24Rangoni Of Florence NEGOTIATION82Anna Fali
1011Faith V IturbideGermany2024-06-20Printing Dimensions PROPOSAL12Ioni Bowcher
1012Morrow U SergiRussia2024-06-14King, Christopher A Esq UNQUALIFIED40Stephen Shaw
1013Antonio S ButtUnited Kingdom2024-06-19Feltz Printing Service NEGOTIATION61Ivan Magalhaes
1014Salvatore W TollnerBrazil2024-06-13Dorl, James J Esq QUALIFIED73Elwin Sharvill
1015Julie K StensethRussia2024-05-27Truhlar And Truhlar Attys PROPOSAL3Bernardo Dominic
1016Jeanfrancois N AlbaresArgentina2024-05-26Printing Dimensions UNQUALIFIED57Amy Elsner
1017Ashley E AmigonSpain2024-05-24Chanay, Jeffrey A Esq PROPOSAL59Ioni Bowcher
1018Cody O RutaIndia2024-05-31Benton, John B Jr RENEWAL56Ivan Magalhaes
1019Isabel O BowleyIndia2024-06-12King, Christopher A Esq NEGOTIATION13Xuxue Feng
1020Sinclair K DarakjyAustralia2024-06-17Feltz Printing Service NEGOTIATION75Onyama Limba
1021James G VocelkaItaly2024-06-01Benton, John B Jr UNQUALIFIED78Ioni Bowcher
1022Salvatore V BologniaSpain2024-05-25Feltz Printing Service QUALIFIED35Onyama Limba
1023Faith S SergiArgentina2024-06-19Buckley Miller Wright RENEWAL9Ioni Bowcher
1024Ricardo R RutaBrazil2024-06-18Morlong Associates NEW14Amy Elsner
1025Stacey C GillianSpain2024-06-15Chanay, Jeffrey A Esq RENEWAL45Ioni Bowcher
1026Jennifer O MacleadFrance2024-06-10Chemel, James L Cpa UNQUALIFIED73Anna Fali
1027Julie F KolmetzIndia2024-06-11Commercial Press QUALIFIED83Ioni Bowcher
1028Morrow L WhobreyRussia2024-06-09Buckley Miller Wright NEW32Amy Elsner
1029Maisha W VocelkaIndia2024-06-10Chapman, Ross E Esq QUALIFIED11Anna Fali
1030Deepesh B FigeroaCanada2024-05-31Chapman, Ross E Esq QUALIFIED8Bernardo Dominic
1031Aditya J KolmetzGermany2024-06-16Truhlar And Truhlar Attys QUALIFIED67Xuxue Feng
1032Isabel U RoysterIndia2024-06-12Buckley Miller Wright UNQUALIFIED65Bernardo Dominic
1033Clifford I NestleBrazil2024-06-08King, Christopher A Esq RENEWAL94Onyama Limba
1034Faith E CaudyJapan2024-06-11Chapman, Ross E Esq RENEWAL46Bernardo Dominic
1035Stacey U OstroskyGermany2024-06-11Benton, John B Jr QUALIFIED79Bernardo Dominic
1036Antonio L FerenczSpain2024-06-08Feltz Printing Service UNQUALIFIED80Elwin Sharvill
1037Julie T RimRussia2024-05-26Morlong Associates RENEWAL40Xuxue Feng
1038Murillo L AmigonGermany2024-06-10Rousseaux, Michael Esq UNQUALIFIED79Amy Elsner
1039Silvio Z WhobreyItaly2024-06-17Printing Dimensions NEW53Asiya Javayant
1040Morrow I SchemmerSpain2024-05-25Morlong Associates RENEWAL0Anna Fali
1041Mayumi R MacleadFrance2024-06-18Morlong Associates QUALIFIED75Anna Fali
1042James B DilliardGermany2024-06-06Printing Dimensions QUALIFIED75Bernardo Dominic
1043Silvio X CaldareraCanada2024-06-15Chapman, Ross E Esq UNQUALIFIED79Xuxue Feng
1044Aruna W DarakjyBrazil2024-06-14Buckley Miller Wright PROPOSAL36Elwin Sharvill
1045Alejandro O NickaUnited Kingdom2024-05-30Morlong Associates UNQUALIFIED64Ivan Magalhaes
1046Adams Q OldroydAustralia2024-06-13Chapman, Ross E Esq NEW38Xuxue Feng
1047Jennifer R ShinkoRussia2024-06-13Chanay, Jeffrey A Esq NEW11Onyama Limba
1048Jones S ChuiIndia2024-06-08Chanay, Jeffrey A Esq RENEWAL17Onyama Limba
1049Jennifer R MorascaArgentina2024-06-11Rangoni Of Florence RENEWAL27Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Aditya N ChuiRussiaXuxue Feng NEW
Maria A DarakjyItalyAmy Elsner NEGOTIATION
Maisha K AlbaresSpainStephen Shaw UNQUALIFIED
Kaitlin W MarrierUnited KingdomIvan Magalhaes NEGOTIATION
Antonio C ButtRussiaAmy Elsner RENEWAL
Chavez J DarakjyJapanIvan Magalhaes NEW
Sinclair F PerinGermanyStephen Shaw QUALIFIED
Arvin T OstroskyRussiaAmy Elsner UNQUALIFIED
Johnson D CaudyBrazilBernardo Dominic NEGOTIATION
Wickens I IturbideRussiaAmy Elsner QUALIFIED
Kaitlin P DilliardJapanAmy Elsner RENEWAL
Mayumi V DoeBrazilBernardo Dominic PROPOSAL
Smith Y GlickSpainAmy Elsner PROPOSAL
Julie G IturbideRussiaAmy Elsner NEGOTIATION
Murillo W BowleyUnited KingdomElwin Sharvill RENEWAL
Cody Y BriddickUnited KingdomElwin Sharvill NEGOTIATION
Rodrigues Z AmigonArgentinaAnna Fali NEW
Silvio C KolmetzIndiaElwin Sharvill UNQUALIFIED
Arvin C CaudyIndiaElwin Sharvill QUALIFIED
Julie M WieserAustraliaIvan Magalhaes NEGOTIATION
Munro J InouyeRussiaIvan Magalhaes NEGOTIATION
Jones V WaycottFranceBernardo Dominic RENEWAL
Munro T RulapaughItalyAmy Elsner QUALIFIED
Costa X MacleadFranceAsiya Javayant PROPOSAL
Leja H KolmetzBrazilAsiya Javayant QUALIFIED
Misaki F WaycottCanadaElwin Sharvill NEGOTIATION
Mujtaba G GlickUnited KingdomAnna Fali PROPOSAL
Mayumi G BowleySpainAnna Fali RENEWAL
Nicolas Z GillianRussiaBernardo Dominic PROPOSAL
David J FlosiGermanyOnyama Limba NEGOTIATION
Mujtaba I StensethUnited KingdomStephen Shaw UNQUALIFIED
Emily X MaletFranceElwin Sharvill RENEWAL
Julie Q FlosiRussiaIvan Magalhaes RENEWAL
Emily N RimCanadaAsiya Javayant PROPOSAL
Ashley X StensethSpainBernardo Dominic UNQUALIFIED
David O RutaAustraliaStephen Shaw RENEWAL
Stacey J NestleUnited KingdomStephen Shaw NEW
Costa H BowleyRussiaAnna Fali UNQUALIFIED
Munro D KuskoArgentinaStephen Shaw QUALIFIED
Smith Q MorascaBrazilIvan Magalhaes NEGOTIATION
Morrow T GauchoSpainIvan Magalhaes QUALIFIED
Munro O VocelkaBrazilXuxue Feng QUALIFIED
Wickens W RutaSpainStephen Shaw PROPOSAL
Antonio M NestleCanadaAmy Elsner PROPOSAL
Ivar W GauchoSpainOnyama Limba PROPOSAL
Maisha P ChuiAustraliaIvan Magalhaes RENEWAL
Maisha H MaletRussiaAsiya Javayant PROPOSAL
Ricardo I GillianFranceAmy Elsner QUALIFIED
Jeanfrancois E SchemmerItalyAmy Elsner NEW
Misaki Y FlosiAustraliaOnyama Limba NEGOTIATION
Frozen Columns
Name
Antonio D Kolmetz
Smith Y Figeroa
Cody J Garufi
Alejandro J Butt
Emily G Kolmetz
Francesco M Albares
Rodrigues H Kusko
Costa G Amigon
Ricardo N Ruta
Mayumi N Gillian
Ivar A Paprocki
Misaki W Whobrey
Stacey I Stenseth
Smith L Kolmetz
Jeanfrancois T Morasca
Wickens D Royster
Arvin Z Doe
Jones L Butt
David E Ruta
Emily C Campain
Aditya J Glick
Darci N Butt
Jeanfrancois S Vocelka
Morrow O Waycott
Morrow C Darakjy
Morrow W Gillian
Silvio V Darakjy
Faith A Dilliard
Kaitlin V Kolmetz
Octavia S Rulapaugh
Darci E Venere
Stacey K Royster
James Y Glick
Faith N Kusko
Mayumi E Rim
Adams U Paprocki
Rodrigues O Albares
Costa X Vocelka
Jennifer W Marrier
Antonio H Amigon
Murillo K Marrier
Emily I Malet
Francesco Y Shinko
Johnson B Dilliard
Adams F Royster
Emily V Flosi
Leon M Gaucho
Jones Z Flosi
Isabel M Caudy
Maisha G Garufi
IdCountryDate
1000Australia2024-06-14
1001Germany2024-06-20
1002Japan2024-05-27
1003Brazil2024-05-25
1004India2024-06-06
1005Russia2024-06-10
1006Canada2024-05-30
1007Canada2024-05-23
1008Spain2024-05-25
1009Brazil2024-05-26
1010Russia2024-05-27
1011Australia2024-05-23
1012Germany2024-06-01
1013Brazil2024-06-19
1014Spain2024-06-02
1015Japan2024-05-26
1016Russia2024-06-06
1017France2024-05-28
1018Canada2024-06-21
1019Canada2024-06-08
1020France2024-06-09
1021United Kingdom2024-06-09
1022India2024-06-17
1023Spain2024-06-09
1024Argentina2024-05-28
1025Germany2024-06-10
1026Australia2024-05-23
1027Australia2024-06-06
1028Russia2024-06-15
1029Argentina2024-06-10
1030Brazil2024-06-12
1031United Kingdom2024-06-18
1032Canada2024-06-02
1033Germany2024-06-03
1034Brazil2024-05-23
1035Canada2024-05-24
1036Canada2024-06-12
1037France2024-06-20
1038Canada2024-06-09
1039Argentina2024-06-13
1040India2024-05-29
1041Italy2024-06-04
1042Spain2024-06-09
1043Australia2024-06-07
1044Italy2024-06-10
1045India2024-06-19
1046Germany2024-06-21
1047United Kingdom2024-05-26
1048Italy2024-05-27
1049Spain2024-06-12

On-Demand Data

NameIdCountryDate
Aruna B Paprocki1000Spain2024-05-23
Jennifer W Darakjy1001Canada2024-06-17
Greenwood A Sergi1002France2024-05-23
Darci W Figeroa1003Russia2024-05-27
Deepesh D Butt1004Australia2024-06-19
Jeanfrancois J Oldroyd1005Japan2024-06-19
Jeanfrancois C Stenseth1006United Kingdom2024-06-14
Leon W Ruta1007United Kingdom2024-06-12
Emily I Paprocki1008Japan2024-06-13
Deepesh U Briddick1009Germany2024-06-06
Aruna Y Bowley1010Spain2024-06-07
Darci J Slusarski1011Australia2024-06-17
Greenwood R Nicka1012France2024-06-15
Chavez Q Saylors1013Germany2024-05-27
Kaitlin I Whobrey1014Brazil2024-06-06
Emily Y Foller1015Spain2024-05-27
Mayumi Q Amigon1016Argentina2024-06-15
Munro I Campain1017Australia2024-06-04
Deepesh V Tollner1018India2024-06-13
Julie Y Malet1019Japan2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon A SlusarskiIndiaOnyama Limba UNQUALIFIED
Mayumi C StensethAustraliaIoni Bowcher UNQUALIFIED
Jones N PerinArgentinaIoni Bowcher RENEWAL
Greenwood P FigeroaGermanyBernardo Dominic QUALIFIED
Tony B RutaCanadaXuxue Feng PROPOSAL
Jones R AlbaresItalyElwin Sharvill PROPOSAL
Aditya X RulapaughBrazilIvan Magalhaes NEGOTIATION
Greenwood K OstroskySpainIvan Magalhaes QUALIFIED
Juan P PoquetteCanadaIvan Magalhaes QUALIFIED
Silvio Z GarufiJapanElwin Sharvill RENEWAL
Deepesh P MaletArgentinaAsiya Javayant QUALIFIED
Johnson S MaletCanadaStephen Shaw NEGOTIATION
Francesco U MaletSpainAnna Fali NEGOTIATION
Stacey T InouyeFranceOnyama Limba QUALIFIED
Adams X WaycottUnited KingdomBernardo Dominic NEW
Johnson W StensethUnited KingdomAsiya Javayant NEW
Greenwood J DilliardBrazilIoni Bowcher NEW
Salvatore Q PerinCanadaAsiya Javayant RENEWAL
Wickens P ButtJapanAsiya Javayant RENEWAL
Aika A CampainJapanBernardo Dominic PROPOSAL
Aika J RutaFranceXuxue Feng PROPOSAL
Alejandro P WieserGermanyXuxue Feng PROPOSAL
James A MarrierGermanyElwin Sharvill RENEWAL
Murillo V OstroskySpainBernardo Dominic NEW
Leon X StockhamJapanStephen Shaw PROPOSAL
Arvin C BowleyRussiaStephen Shaw UNQUALIFIED
Nicolas Y GlickBrazilAmy Elsner PROPOSAL
Adams Y FollerItalyXuxue Feng QUALIFIED
Maria O StockhamRussiaIoni Bowcher UNQUALIFIED
Octavia Q SaylorsIndiaXuxue Feng UNQUALIFIED
Tony K DilliardUnited KingdomStephen Shaw NEW
Isabel C OstroskyBrazilIoni Bowcher NEGOTIATION
Stacey N NestleBrazilAmy Elsner UNQUALIFIED
Costa B PoquetteAustraliaElwin Sharvill RENEWAL
Clifford R OstroskyAustraliaOnyama Limba PROPOSAL
Wickens Z TollnerGermanyIoni Bowcher NEW
Kadeem M VenereRussiaElwin Sharvill UNQUALIFIED
Jennifer J ChuiIndiaElwin Sharvill PROPOSAL
Claire S FlosiGermanyStephen Shaw QUALIFIED
Adams X PerinSpainAnna Fali NEW

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