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 F RutaRussiaAnna Fali QUALIFIED
Leja V WhobreyAustraliaIvan Magalhaes RENEWAL
Claire L PoquetteGermanyAmy Elsner QUALIFIED
Smith M CaudyCanadaXuxue Feng UNQUALIFIED
Antonio P GauchoCanadaAsiya Javayant RENEWAL
Jones M WhobreyAustraliaIvan Magalhaes QUALIFIED
Cody J ShinkoSpainOnyama Limba RENEWAL
Antonio D MarrierJapanAnna Fali QUALIFIED
Kaitlin Y NickaBrazilIvan Magalhaes UNQUALIFIED
Nicolas J GauchoJapanOnyama Limba QUALIFIED
Chavez I AlbaresSpainStephen Shaw QUALIFIED
Maisha U ShinkoGermanyAnna Fali UNQUALIFIED
Ivar P StensethUnited KingdomStephen Shaw RENEWAL
Aditya O ChuiUnited KingdomIvan Magalhaes NEGOTIATION
Isabel H RimUnited KingdomStephen Shaw UNQUALIFIED
Murillo V FlosiSpainBernardo Dominic NEGOTIATION
Leja L BriddickAustraliaAsiya Javayant PROPOSAL
David Z RoysterJapanAnna Fali PROPOSAL
Rodrigues R ButtJapanXuxue Feng NEGOTIATION
Munro B VenereJapanBernardo Dominic PROPOSAL
Maria U FlosiCanadaAnna Fali PROPOSAL
Antonio H WaycottRussiaStephen Shaw PROPOSAL
Octavia J GarufiRussiaAmy Elsner PROPOSAL
Francesco Z BowleyIndiaXuxue Feng NEW
Ivar Z WieserItalyAmy Elsner UNQUALIFIED
Sinclair Z AlbaresGermanyXuxue Feng PROPOSAL
Izzy N WhobreySpainElwin Sharvill UNQUALIFIED
Ashley U MaletArgentinaXuxue Feng NEW
Ashley D InouyeGermanyBernardo Dominic UNQUALIFIED
Munro J DoeRussiaAnna Fali NEW
Johnson C CampainUnited KingdomStephen Shaw QUALIFIED
Rodrigues S StensethSpainAmy Elsner NEGOTIATION
Costa S FollerAustraliaOnyama Limba NEW
Rodrigues I CampainUnited KingdomIoni Bowcher UNQUALIFIED
Ivar B CaudyBrazilElwin Sharvill PROPOSAL
Maria V FerenczSpainStephen Shaw NEGOTIATION
Chavez O OldroydGermanyOnyama Limba NEW
Jennifer N WieserRussiaElwin Sharvill QUALIFIED
Ivar M ShinkoRussiaIvan Magalhaes QUALIFIED
Misaki W StockhamIndiaStephen Shaw PROPOSAL
Tony H StockhamUnited KingdomAsiya Javayant PROPOSAL
Rodrigues O BologniaCanadaAmy Elsner PROPOSAL
Tony M StockhamIndiaIvan Magalhaes NEW
David M FlosiCanadaAmy Elsner QUALIFIED
Chavez P NestleAustraliaStephen Shaw UNQUALIFIED
Darci A RulapaughArgentinaAnna Fali PROPOSAL
Aditya G GlickJapanIvan Magalhaes PROPOSAL
Juan L ShinkoRussiaXuxue Feng PROPOSAL
Tony R RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Kadeem N ChuiAustraliaAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Morrow W BowleyRussiaElwin Sharvill NEGOTIATION
Jefferson L DoeCanadaAsiya Javayant UNQUALIFIED
Leon W StockhamAustraliaAmy Elsner QUALIFIED
James E BowleyGermanyAmy Elsner NEGOTIATION
Izzy H DarakjyAustraliaIvan Magalhaes UNQUALIFIED
Emily O DoeRussiaIoni Bowcher PROPOSAL
Smith K FollerAustraliaOnyama Limba NEW
Izzy M PoquetteJapanAsiya Javayant QUALIFIED
Rodrigues B KolmetzUnited KingdomAsiya Javayant NEGOTIATION
Silvio R GauchoArgentinaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan H PoquetteRussia2024-06-06Rousseaux, Michael Esq UNQUALIFIED92Ivan Magalhaes
1001Aruna P MaletItaly2024-05-30Morlong Associates RENEWAL31Ivan Magalhaes
1002Arvin D WaycottCanada2024-06-13Buckley Miller Wright UNQUALIFIED27Onyama Limba
1003Greenwood K SlusarskiIndia2024-06-10Chapman, Ross E Esq UNQUALIFIED75Amy Elsner
1004Isabel C ButtIndia2024-05-30Dorl, James J Esq NEW67Anna Fali
1005Maisha N SergiFrance2024-06-24Commercial Press UNQUALIFIED52Elwin Sharvill
1006Cody X DoeArgentina2024-06-15Commercial Press PROPOSAL66Xuxue Feng
1007Aruna G KuskoCanada2024-06-19Truhlar And Truhlar Attys PROPOSAL16Stephen Shaw
1008Rodrigues P InouyeBrazil2024-06-13Buckley Miller Wright NEGOTIATION30Anna Fali
1009Morrow B KolmetzSpain2024-05-26Commercial Press NEGOTIATION28Asiya Javayant
1010Stacey H OldroydUnited Kingdom2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED29Stephen Shaw
1011Rodrigues M CampainGermany2024-06-23Printing Dimensions PROPOSAL55Elwin Sharvill
1012Arvin J BologniaRussia2024-06-21Commercial Press QUALIFIED2Stephen Shaw
1013Johnson I WaycottRussia2024-05-31Rousseaux, Michael Esq QUALIFIED63Onyama Limba
1014Stacey R PaprockiSpain2024-06-06King, Christopher A Esq QUALIFIED94Anna Fali
1015Murillo O NickaIndia2024-06-01Chemel, James L Cpa RENEWAL16Anna Fali
1016Aika D FollerAustralia2024-06-24Dorl, James J Esq RENEWAL73Stephen Shaw
1017Adams A FollerSpain2024-06-23King, Christopher A Esq RENEWAL78Ioni Bowcher
1018Morrow R SchemmerGermany2024-06-01Feltz Printing Service UNQUALIFIED29Amy Elsner
1019Faith P ChuiJapan2024-06-11Rousseaux, Michael Esq NEGOTIATION92Elwin Sharvill
1020Antonio W CampainFrance2024-06-20Commercial Press UNQUALIFIED86Stephen Shaw
1021Murillo A KolmetzArgentina2024-06-24King, Christopher A Esq RENEWAL64Stephen Shaw
1022Morrow G DilliardFrance2024-06-02Commercial Press UNQUALIFIED42Anna Fali
1023Sinclair L AmigonItaly2024-05-26Commercial Press QUALIFIED23Asiya Javayant
1024Sinclair J ButtAustralia2024-06-21Benton, John B Jr NEGOTIATION24Elwin Sharvill
1025Darci B WieserAustralia2024-06-02Truhlar And Truhlar Attys NEGOTIATION60Stephen Shaw
1026Leon Z NickaBrazil2024-06-08King, Christopher A Esq RENEWAL60Ioni Bowcher
1027Tony Z DarakjyArgentina2024-05-31Feiner Bros RENEWAL21Ivan Magalhaes
1028Mujtaba H FerenczRussia2024-06-23Benton, John B Jr QUALIFIED32Anna Fali
1029Emily F GauchoItaly2024-06-13Feiner Bros RENEWAL56Elwin Sharvill
1030Adams F FigeroaUnited Kingdom2024-06-19Printing Dimensions PROPOSAL49Onyama Limba
1031Emily T StensethCanada2024-05-27Truhlar And Truhlar Attys PROPOSAL2Anna Fali
1032Salvatore T PerinItaly2024-06-06Rousseaux, Michael Esq UNQUALIFIED41Anna Fali
1033Wickens G FigeroaArgentina2024-06-17Morlong Associates QUALIFIED7Onyama Limba
1034Aditya L FlosiUnited Kingdom2024-06-04Rangoni Of Florence PROPOSAL23Amy Elsner
1035Cody B OldroydIndia2024-05-30Buckley Miller Wright UNQUALIFIED36Elwin Sharvill
1036Stacey U WieserJapan2024-06-06Chanay, Jeffrey A Esq RENEWAL8Anna Fali
1037Sinclair Y PoquetteCanada2024-05-29Feltz Printing Service RENEWAL79Amy Elsner
1038Jones K RulapaughBrazil2024-06-02Commercial Press UNQUALIFIED50Bernardo Dominic
1039Julie I WaycottUnited Kingdom2024-06-23Chapman, Ross E Esq UNQUALIFIED60Stephen Shaw
1040Costa G VocelkaCanada2024-06-13King, Christopher A Esq UNQUALIFIED70Ioni Bowcher
1041Mayumi O ShinkoIndia2024-06-12Feiner Bros NEW51Anna Fali
1042David Y WaycottBrazil2024-06-16Chemel, James L Cpa NEGOTIATION37Asiya Javayant
1043Jones P MacleadBrazil2024-06-07Chemel, James L Cpa QUALIFIED52Ivan Magalhaes
1044Ashley W CaldareraGermany2024-06-02King, Christopher A Esq QUALIFIED36Xuxue Feng
1045Costa G PerinFrance2024-06-03Feiner Bros NEW13Xuxue Feng
1046Isabel A OstroskyIndia2024-06-01Commercial Press RENEWAL92Ivan Magalhaes
1047Greenwood U WhobreyArgentina2024-06-09Buckley Miller Wright UNQUALIFIED51Stephen Shaw
1048Julie K PoquetteGermany2024-05-30Chanay, Jeffrey A Esq NEGOTIATION28Elwin Sharvill
1049Leja E GillianArgentina2024-06-08Chapman, Ross E Esq NEW33Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin I TollnerBrazilAsiya Javayant NEGOTIATION
Kadeem I AlbaresSpainAnna Fali NEW
Jefferson R PaprockiIndiaOnyama Limba QUALIFIED
Juan I GauchoSpainIvan Magalhaes NEW
Stacey S AmigonAustraliaIvan Magalhaes UNQUALIFIED
Kaitlin X BologniaAustraliaAsiya Javayant NEGOTIATION
Mujtaba J RimJapanElwin Sharvill NEW
Isabel W CaldareraBrazilIvan Magalhaes NEGOTIATION
Ricardo T WhobreyItalyIoni Bowcher PROPOSAL
Mayumi I SergiGermanyElwin Sharvill NEW
Maisha Z RulapaughRussiaBernardo Dominic NEGOTIATION
Clifford K TollnerBrazilBernardo Dominic UNQUALIFIED
Adams Y StockhamUnited KingdomIvan Magalhaes NEGOTIATION
Maisha H StensethItalyIoni Bowcher QUALIFIED
Maria Y OldroydSpainIvan Magalhaes UNQUALIFIED
Antonio R AlbaresArgentinaStephen Shaw NEGOTIATION
Francesco Z BriddickGermanyStephen Shaw RENEWAL
Isabel H SlusarskiBrazilXuxue Feng RENEWAL
Sinclair G FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Deepesh I MaletAustraliaElwin Sharvill RENEWAL
Jennifer O KuskoJapanAsiya Javayant UNQUALIFIED
Izzy I GarufiJapanElwin Sharvill UNQUALIFIED
Mayumi I StensethAustraliaAnna Fali UNQUALIFIED
Aruna D SaylorsItalyXuxue Feng NEW
Emily R CaldareraSpainAmy Elsner RENEWAL
Leon J FerenczBrazilAmy Elsner QUALIFIED
Alejandro B RimAustraliaAmy Elsner RENEWAL
Jennifer B VenereSpainXuxue Feng RENEWAL
Emily B DoeJapanStephen Shaw UNQUALIFIED
Stacey O StockhamUnited KingdomOnyama Limba UNQUALIFIED
Jeanfrancois X WaycottIndiaBernardo Dominic NEW
Arvin R GauchoRussiaAsiya Javayant RENEWAL
Silvio W FigeroaGermanyOnyama Limba PROPOSAL
James K AmigonItalyAsiya Javayant NEGOTIATION
Rodrigues R GarufiBrazilAsiya Javayant QUALIFIED
Ashley B RoysterCanadaStephen Shaw PROPOSAL
Aditya F WieserFranceElwin Sharvill QUALIFIED
Alejandro N BowleyAustraliaIvan Magalhaes RENEWAL
Claire Q ShinkoGermanyAmy Elsner NEW
Aruna D BowleyBrazilElwin Sharvill NEW
Stacey N OstroskyGermanyIvan Magalhaes UNQUALIFIED
Kadeem M CaudyCanadaStephen Shaw PROPOSAL
David O BowleyRussiaAsiya Javayant PROPOSAL
Emily R RimAustraliaBernardo Dominic PROPOSAL
Rodrigues W PaprockiRussiaStephen Shaw PROPOSAL
Tony W WieserArgentinaOnyama Limba RENEWAL
Leon M GauchoJapanIoni Bowcher QUALIFIED
Izzy S GlickArgentinaIoni Bowcher UNQUALIFIED
Emily S WaycottRussiaAsiya Javayant NEGOTIATION
Adams B CampainUnited KingdomStephen Shaw RENEWAL
Frozen Columns
Name
Nicolas P Stenseth
Jennifer Z Malet
Chavez K Ostrosky
Kadeem A Shinko
Kaitlin K Caudy
Jennifer T Shinko
Tony O Rim
Misaki G Gillian
Wickens U Rulapaugh
Ivar N Nicka
Jones R Marrier
Costa Y Ferencz
Juan C Bowley
Aruna Y Campain
Claire A Caudy
Leja S Shinko
Jeanfrancois G Butt
Deepesh E Figeroa
Emily H Nestle
Octavia H Oldroyd
Costa N Gillian
James R Rulapaugh
Greenwood F Gillian
Emily X Ferencz
Ashley O Gaucho
Ricardo L Saylors
Ricardo V Caldarera
Ivar Y Campain
Emily A Chui
James Z Maclead
Mujtaba I Stenseth
Jeanfrancois B Gaucho
Maria X Maclead
Sinclair V Ferencz
Wickens U Rim
Silvio B Rim
Aruna C Iturbide
Rodrigues B Garufi
Murillo A Stockham
Tony G Bolognia
Mayumi C Rulapaugh
Mayumi M Flosi
Aditya Q Stenseth
Francesco I Dilliard
Kaitlin B Ferencz
Clifford A Morasca
Jefferson K Kusko
Claire Q Figeroa
Faith H Maclead
Clifford X Butt
IdCountryDate
1000Italy2024-06-01
1001United Kingdom2024-06-04
1002Brazil2024-06-09
1003Italy2024-06-11
1004Canada2024-06-09
1005Italy2024-06-10
1006Canada2024-06-21
1007Russia2024-06-18
1008Russia2024-05-29
1009Argentina2024-06-17
1010Australia2024-06-07
1011Argentina2024-06-05
1012Russia2024-06-05
1013Italy2024-06-17
1014United Kingdom2024-06-23
1015France2024-06-16
1016Argentina2024-06-03
1017Russia2024-05-26
1018Brazil2024-05-31
1019Japan2024-05-28
1020Spain2024-06-07
1021Canada2024-06-15
1022Russia2024-06-15
1023Argentina2024-06-08
1024Argentina2024-06-15
1025France2024-05-26
1026Brazil2024-05-27
1027Spain2024-06-04
1028Germany2024-06-07
1029Italy2024-06-19
1030Australia2024-05-29
1031Canada2024-06-05
1032Italy2024-05-26
1033Russia2024-06-11
1034Japan2024-05-27
1035Argentina2024-05-26
1036Brazil2024-06-14
1037United Kingdom2024-05-26
1038Russia2024-06-19
1039Germany2024-06-22
1040India2024-06-13
1041Brazil2024-05-28
1042Australia2024-06-07
1043France2024-05-31
1044Germany2024-06-04
1045United Kingdom2024-06-11
1046United Kingdom2024-05-31
1047Spain2024-06-20
1048India2024-05-27
1049India2024-06-06

On-Demand Data

NameIdCountryDate
Octavia E Poquette1000Argentina2024-06-14
Ashley C Sergi1001Brazil2024-06-06
Alejandro L Kusko1002United Kingdom2024-06-08
Jeanfrancois M Stenseth1003United Kingdom2024-05-28
Tony K Royster1004Spain2024-06-23
Rodrigues T Wieser1005Russia2024-06-18
Aika U Gillian1006Italy2024-06-09
Emily C Foller1007France2024-06-10
Stacey C Ferencz1008Canada2024-06-20
Jeanfrancois I Poquette1009Italy2024-06-18
Izzy A Briddick1010United Kingdom2024-06-07
Darci D Ruta1011France2024-06-11
Costa N Gillian1012United Kingdom2024-06-08
Maisha K Campain1013Japan2024-06-09
Mayumi B Caudy1014Argentina2024-06-04
Adams J Venere1015United Kingdom2024-06-05
Greenwood J Morasca1016Argentina2024-06-05
Francesco J Nicka1017United Kingdom2024-06-22
Isabel I Rim1018Japan2024-05-26
Isabel Z Iturbide1019Australia2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy C SaylorsRussiaElwin Sharvill RENEWAL
Julie V RimCanadaBernardo Dominic NEW
Misaki U PoquetteRussiaOnyama Limba QUALIFIED
Aika H StockhamJapanIvan Magalhaes PROPOSAL
Izzy O SchemmerCanadaIoni Bowcher QUALIFIED
Jennifer L KolmetzGermanyOnyama Limba QUALIFIED
Rodrigues L PerinFranceAnna Fali PROPOSAL
Aika C NestleGermanyAsiya Javayant RENEWAL
Kadeem G MaletJapanXuxue Feng PROPOSAL
Leon D NestleRussiaAsiya Javayant RENEWAL
Murillo W WaycottAustraliaElwin Sharvill PROPOSAL
Aika Q NestleItalyAsiya Javayant PROPOSAL
David W MorascaRussiaAnna Fali RENEWAL
Leja Z VocelkaRussiaElwin Sharvill NEW
Murillo R FlosiCanadaAmy Elsner NEW
Kadeem Z PoquetteCanadaOnyama Limba NEGOTIATION
Misaki O StensethArgentinaAsiya Javayant NEGOTIATION
Misaki C FlosiArgentinaIoni Bowcher NEW
Salvatore Z TollnerJapanElwin Sharvill RENEWAL
Arvin K RutaBrazilXuxue Feng NEGOTIATION
Jennifer P BowleyAustraliaElwin Sharvill NEGOTIATION
Francesco L KuskoCanadaIvan Magalhaes PROPOSAL
Kadeem O RoysterJapanAnna Fali NEGOTIATION
James T FlosiFranceXuxue Feng QUALIFIED
Maria E PaprockiUnited KingdomAmy Elsner NEGOTIATION
Octavia N WieserJapanAsiya Javayant UNQUALIFIED
Deepesh R DarakjyJapanXuxue Feng RENEWAL
Sinclair E AmigonBrazilXuxue Feng RENEWAL
Mayumi P RutaIndiaXuxue Feng RENEWAL
Smith D BriddickAustraliaElwin Sharvill RENEWAL
Munro K GlickCanadaAsiya Javayant PROPOSAL
Juan J FollerRussiaXuxue Feng NEW
James S DarakjyJapanAmy Elsner RENEWAL
Morrow U CaudyItalyXuxue Feng QUALIFIED
Sinclair I VocelkaBrazilIoni Bowcher UNQUALIFIED
Maisha I GillianItalyIvan Magalhaes UNQUALIFIED
Juan O SaylorsRussiaIoni Bowcher QUALIFIED
Jefferson P SergiCanadaElwin Sharvill UNQUALIFIED
Darci N IturbideUnited KingdomXuxue Feng PROPOSAL
Tony S InouyeUnited KingdomIoni Bowcher PROPOSAL

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