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
Ashley N NickaItalyXuxue Feng UNQUALIFIED
Ivar Q RimUnited KingdomElwin Sharvill RENEWAL
Octavia U CampainGermanyElwin Sharvill NEW
Mayumi Y KuskoJapanOnyama Limba NEW
Adams W ButtBrazilOnyama Limba PROPOSAL
Kadeem H IturbideSpainXuxue Feng NEW
Aruna Z OldroydIndiaBernardo Dominic NEW
Jefferson F MorascaRussiaXuxue Feng QUALIFIED
Maisha E VenereUnited KingdomStephen Shaw NEGOTIATION
Mujtaba T KuskoRussiaAnna Fali NEGOTIATION
Antonio D OldroydArgentinaBernardo Dominic RENEWAL
Juan I TollnerCanadaXuxue Feng RENEWAL
Cody Z BologniaSpainAnna Fali PROPOSAL
Ivar M DilliardArgentinaStephen Shaw NEGOTIATION
Alejandro L StensethJapanElwin Sharvill UNQUALIFIED
Jennifer S RulapaughRussiaStephen Shaw NEW
Julie Q NestleUnited KingdomStephen Shaw PROPOSAL
David J OstroskyBrazilOnyama Limba UNQUALIFIED
Murillo G AmigonBrazilIoni Bowcher NEGOTIATION
Cody N RulapaughAustraliaAmy Elsner RENEWAL
Costa M StockhamIndiaIoni Bowcher PROPOSAL
Murillo K IturbideBrazilIvan Magalhaes NEW
Chavez K DoeFranceStephen Shaw NEW
Kaitlin Z MaletGermanyXuxue Feng NEW
Jennifer J CampainSpainAsiya Javayant RENEWAL
Johnson L OldroydAustraliaIvan Magalhaes QUALIFIED
Munro Z RimSpainAsiya Javayant NEW
Munro A FigeroaSpainStephen Shaw NEW
Faith D FollerJapanXuxue Feng QUALIFIED
Tony O MarrierFranceXuxue Feng RENEWAL
Jeanfrancois X GillianFranceIoni Bowcher PROPOSAL
Kadeem O MarrierUnited KingdomStephen Shaw NEGOTIATION
Murillo H NestleJapanAmy Elsner NEW
Jeanfrancois M MarrierItalyIvan Magalhaes QUALIFIED
Maria C StensethItalyElwin Sharvill PROPOSAL
Antonio P CaudyAustraliaAmy Elsner QUALIFIED
Francesco U IturbideAustraliaIoni Bowcher RENEWAL
Morrow G GillianBrazilAmy Elsner NEGOTIATION
Smith M FigeroaItalyAmy Elsner NEW
Octavia M DilliardIndiaAsiya Javayant NEGOTIATION
Mayumi K VenereAustraliaStephen Shaw RENEWAL
Mayumi P CaldareraGermanyAsiya Javayant UNQUALIFIED
Ivar E PoquetteGermanyElwin Sharvill RENEWAL
Darci C SergiBrazilAnna Fali UNQUALIFIED
Stacey A SaylorsAustraliaAmy Elsner NEW
Mayumi L TollnerUnited KingdomElwin Sharvill NEW
Cody L GauchoItalyOnyama Limba PROPOSAL
Darci V StockhamCanadaAnna Fali UNQUALIFIED
Sinclair Y GillianAustraliaIoni Bowcher QUALIFIED
Isabel R DarakjyBrazilXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kadeem J FigeroaIndiaXuxue Feng PROPOSAL
Emily N BowleyAustraliaStephen Shaw NEW
Jefferson J DarakjyAustraliaAsiya Javayant RENEWAL
Alejandro L OstroskyArgentinaXuxue Feng NEGOTIATION
Darci X CaldareraSpainAnna Fali UNQUALIFIED
Aditya G RulapaughArgentinaOnyama Limba NEGOTIATION
Smith B MorascaSpainIvan Magalhaes UNQUALIFIED
Jefferson O InouyeUnited KingdomElwin Sharvill QUALIFIED
Stacey N PoquetteUnited KingdomAmy Elsner RENEWAL
Murillo W OstroskyIndiaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin P ChuiGermany2024-05-25Truhlar And Truhlar Attys RENEWAL29Elwin Sharvill
1001Faith R SlusarskiUnited Kingdom2024-05-28Truhlar And Truhlar Attys UNQUALIFIED19Bernardo Dominic
1002Claire C PerinIndia2024-06-14Commercial Press NEW71Ioni Bowcher
1003Adams S RoysterGermany2024-06-20Feiner Bros QUALIFIED34Stephen Shaw
1004Adams N IturbideAustralia2024-06-16Printing Dimensions UNQUALIFIED96Bernardo Dominic
1005Leja Z KuskoGermany2024-05-28Feltz Printing Service UNQUALIFIED17Stephen Shaw
1006Faith J KolmetzSpain2024-06-13Chanay, Jeffrey A Esq UNQUALIFIED59Ivan Magalhaes
1007Smith A StensethSpain2024-06-12King, Christopher A Esq PROPOSAL84Elwin Sharvill
1008Morrow G OldroydUnited Kingdom2024-06-19Truhlar And Truhlar Attys NEW89Ioni Bowcher
1009Aika R GillianArgentina2024-06-03Printing Dimensions NEW71Ivan Magalhaes
1010Juan I IturbideAustralia2024-06-06Commercial Press NEGOTIATION58Stephen Shaw
1011Maria B SlusarskiSpain2024-06-19King, Christopher A Esq NEGOTIATION72Asiya Javayant
1012Johnson K AmigonArgentina2024-06-13Benton, John B Jr NEGOTIATION70Xuxue Feng
1013Leon S StensethJapan2024-06-10Chanay, Jeffrey A Esq NEGOTIATION56Anna Fali
1014Jefferson R KolmetzArgentina2024-06-11Morlong Associates PROPOSAL42Amy Elsner
1015Costa Q ShinkoBrazil2024-06-22Printing Dimensions QUALIFIED13Ivan Magalhaes
1016Wickens S VenereIndia2024-06-06Dorl, James J Esq RENEWAL75Stephen Shaw
1017Greenwood M FlosiCanada2024-06-14Morlong Associates RENEWAL6Onyama Limba
1018Aruna U WieserAustralia2024-05-24Chemel, James L Cpa QUALIFIED91Stephen Shaw
1019Isabel K IturbideRussia2024-06-02Printing Dimensions QUALIFIED87Ivan Magalhaes
1020James E MacleadIndia2024-05-27Feltz Printing Service NEW15Asiya Javayant
1021Claire D IturbideArgentina2024-05-27Truhlar And Truhlar Attys NEW19Elwin Sharvill
1022James V NestleCanada2024-06-08Dorl, James J Esq NEGOTIATION9Elwin Sharvill
1023Octavia R BologniaItaly2024-05-28Printing Dimensions RENEWAL88Stephen Shaw
1024Sinclair Q SlusarskiJapan2024-05-24Benton, John B Jr NEW23Bernardo Dominic
1025Ashley F RulapaughJapan2024-06-11Chemel, James L Cpa NEW23Amy Elsner
1026Clifford L KolmetzRussia2024-05-27Buckley Miller Wright NEW28Elwin Sharvill
1027Smith V CaldareraUnited Kingdom2024-06-11King, Christopher A Esq UNQUALIFIED83Asiya Javayant
1028Greenwood G KolmetzItaly2024-06-09Chemel, James L Cpa UNQUALIFIED2Xuxue Feng
1029Adams T MaletIndia2024-06-07Morlong Associates NEW21Bernardo Dominic
1030Salvatore W SchemmerItaly2024-06-14Buckley Miller Wright QUALIFIED96Onyama Limba
1031Rodrigues G WieserBrazil2024-06-08Chanay, Jeffrey A Esq NEGOTIATION80Xuxue Feng
1032Ricardo H NickaBrazil2024-06-21Rangoni Of Florence NEGOTIATION33Xuxue Feng
1033Munro C RulapaughCanada2024-06-02Chemel, James L Cpa UNQUALIFIED74Stephen Shaw
1034Leon X SergiUnited Kingdom2024-06-17Chemel, James L Cpa RENEWAL21Stephen Shaw
1035Faith T FlosiUnited Kingdom2024-06-20Printing Dimensions QUALIFIED78Ioni Bowcher
1036Kaitlin P BowleyIndia2024-06-20Rousseaux, Michael Esq QUALIFIED75Ioni Bowcher
1037Kadeem L MorascaUnited Kingdom2024-06-16King, Christopher A Esq RENEWAL69Onyama Limba
1038Johnson S NestleRussia2024-06-02Truhlar And Truhlar Attys NEW99Anna Fali
1039Sinclair H WieserFrance2024-06-19Rangoni Of Florence UNQUALIFIED71Onyama Limba
1040Aditya T CaudyGermany2024-05-27Rousseaux, Michael Esq QUALIFIED52Ivan Magalhaes
1041Salvatore D SaylorsRussia2024-06-21Feiner Bros NEGOTIATION85Stephen Shaw
1042Aruna A RulapaughBrazil2024-06-22Printing Dimensions PROPOSAL20Xuxue Feng
1043Adams J BologniaCanada2024-06-08Benton, John B Jr UNQUALIFIED40Asiya Javayant
1044Nicolas T ShinkoItaly2024-06-13Rousseaux, Michael Esq PROPOSAL9Ivan Magalhaes
1045Isabel N CampainUnited Kingdom2024-05-27King, Christopher A Esq RENEWAL94Stephen Shaw
1046Jennifer S RulapaughGermany2024-06-15Benton, John B Jr UNQUALIFIED72Bernardo Dominic
1047Sinclair S DoeRussia2024-05-27Benton, John B Jr PROPOSAL35Ioni Bowcher
1048Leja D AmigonIndia2024-06-21Benton, John B Jr UNQUALIFIED91Stephen Shaw
1049Aika G SchemmerFrance2024-05-24King, Christopher A Esq PROPOSAL15Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Juan J PerinJapanXuxue Feng NEW
Nicolas L MacleadSpainXuxue Feng NEGOTIATION
Aruna J MacleadGermanyAsiya Javayant NEGOTIATION
Faith T KuskoGermanyAnna Fali PROPOSAL
Greenwood T PaprockiAustraliaStephen Shaw RENEWAL
Faith L BowleyBrazilAsiya Javayant RENEWAL
Izzy C FigeroaArgentinaAsiya Javayant QUALIFIED
David V FigeroaGermanyBernardo Dominic UNQUALIFIED
Aditya K SaylorsUnited KingdomStephen Shaw QUALIFIED
Stacey X PaprockiJapanAsiya Javayant UNQUALIFIED
Misaki Q DilliardArgentinaStephen Shaw NEW
Rodrigues O FerenczFranceAmy Elsner QUALIFIED
Kaitlin D NestleGermanyBernardo Dominic QUALIFIED
Jeanfrancois B RoysterItalyIvan Magalhaes NEGOTIATION
Isabel M SergiJapanXuxue Feng RENEWAL
Mayumi S ButtGermanyIvan Magalhaes PROPOSAL
Isabel I ButtUnited KingdomAsiya Javayant RENEWAL
Silvio M MorascaUnited KingdomAsiya Javayant NEGOTIATION
Misaki P NestleSpainAnna Fali PROPOSAL
Aditya K CaudyUnited KingdomXuxue Feng RENEWAL
Faith N FerenczUnited KingdomAmy Elsner RENEWAL
Faith Y CaldareraSpainAnna Fali QUALIFIED
Johnson O StockhamItalyXuxue Feng RENEWAL
David X WaycottFranceAnna Fali NEW
Darci E FigeroaIndiaAsiya Javayant NEGOTIATION
Leon V SchemmerArgentinaStephen Shaw UNQUALIFIED
Francesco U NestleRussiaAmy Elsner PROPOSAL
Chavez F VocelkaBrazilXuxue Feng RENEWAL
Salvatore T OstroskyRussiaStephen Shaw NEGOTIATION
Darci G BowleyGermanyAmy Elsner QUALIFIED
Greenwood Y OstroskySpainXuxue Feng PROPOSAL
Sinclair G DoeGermanyStephen Shaw UNQUALIFIED
Ivar N BriddickBrazilStephen Shaw NEW
Sinclair Z ChuiSpainAnna Fali NEW
Murillo B MarrierBrazilBernardo Dominic UNQUALIFIED
Wickens K ShinkoAustraliaIvan Magalhaes QUALIFIED
Ricardo I RulapaughRussiaAmy Elsner UNQUALIFIED
Morrow S StockhamFranceIoni Bowcher QUALIFIED
Isabel L StockhamRussiaStephen Shaw NEGOTIATION
Greenwood G RutaUnited KingdomOnyama Limba UNQUALIFIED
Nicolas C RulapaughAustraliaStephen Shaw UNQUALIFIED
Greenwood E DoeUnited KingdomOnyama Limba NEW
Ashley O OstroskyItalyAnna Fali QUALIFIED
Ivar B NestleFranceBernardo Dominic PROPOSAL
Kaitlin X SlusarskiBrazilAsiya Javayant NEGOTIATION
Ricardo S OstroskyIndiaAmy Elsner QUALIFIED
Claire J KolmetzGermanyIoni Bowcher PROPOSAL
Ricardo X SaylorsItalyOnyama Limba UNQUALIFIED
Johnson R SlusarskiIndiaAmy Elsner UNQUALIFIED
Misaki G StockhamSpainElwin Sharvill PROPOSAL
Frozen Columns
Name
Maria R Inouye
Adams D Kusko
Murillo L Bolognia
Munro A Campain
Darci P Poquette
David O Glick
Arvin U Whobrey
Silvio J Vocelka
Wickens W Stockham
Mujtaba J Vocelka
Faith X Royster
Juan K Ferencz
Izzy I Caldarera
Leon Y Gillian
Claire F Chui
Adams X Kolmetz
Rodrigues I Chui
Octavia E Stenseth
Kaitlin P Garufi
Aditya A Nicka
Salvatore R Dilliard
Octavia H Gaucho
Ashley F Stenseth
Jones M Kusko
Izzy Y Morasca
Misaki X Caldarera
Cody Y Dilliard
Tony M Ruta
Wickens W Chui
Ivar F Slusarski
Jennifer U Darakjy
Octavia H Inouye
Jennifer K Venere
Antonio G Tollner
Tony S Malet
Maria W Ferencz
Juan H Shinko
Emily S Slusarski
Aditya E Kusko
Greenwood X Garufi
Munro E Wieser
Leja Y Wieser
Julie P Tollner
Morrow R Saylors
Deepesh S Slusarski
Clifford K Gillian
Morrow C Iturbide
Octavia C Kolmetz
Nicolas W Chui
Emily G Flosi
IdCountryDate
1000France2024-06-17
1001Australia2024-05-26
1002Brazil2024-05-24
1003France2024-06-09
1004Japan2024-06-03
1005Germany2024-06-17
1006Germany2024-05-29
1007Argentina2024-05-27
1008Australia2024-06-09
1009France2024-06-20
1010United Kingdom2024-05-26
1011France2024-06-17
1012Italy2024-06-22
1013Russia2024-06-16
1014Russia2024-06-07
1015Spain2024-06-08
1016France2024-06-14
1017Germany2024-06-15
1018India2024-06-19
1019Australia2024-06-16
1020Russia2024-06-02
1021Canada2024-06-06
1022India2024-05-25
1023India2024-05-25
1024Australia2024-06-11
1025United Kingdom2024-06-14
1026Argentina2024-06-05
1027India2024-06-01
1028Germany2024-05-28
1029Japan2024-06-07
1030Italy2024-06-18
1031Japan2024-05-30
1032Argentina2024-05-25
1033Italy2024-06-12
1034Italy2024-05-31
1035Canada2024-06-17
1036France2024-05-28
1037Spain2024-05-30
1038Canada2024-06-13
1039France2024-06-20
1040Germany2024-06-21
1041Italy2024-05-28
1042United Kingdom2024-06-08
1043India2024-06-07
1044Argentina2024-05-31
1045India2024-05-27
1046Brazil2024-05-26
1047Brazil2024-05-29
1048Argentina2024-05-25
1049United Kingdom2024-06-02

On-Demand Data

NameIdCountryDate
Izzy D Iturbide1000Australia2024-06-01
Nicolas G Royster1001Japan2024-05-25
Chavez B Caudy1002Brazil2024-06-05
Morrow G Ruta1003France2024-06-11
Jennifer D Malet1004Russia2024-06-20
Kaitlin D Saylors1005Italy2024-06-04
Octavia M Garufi1006Argentina2024-06-19
Jones Z Sergi1007Australia2024-06-20
Johnson E Gillian1008Brazil2024-06-09
Aruna R Gillian1009Brazil2024-06-11
Jeanfrancois G Foller1010Australia2024-06-10
Jefferson T Glick1011Brazil2024-06-21
Emily L Kolmetz1012India2024-06-07
Francesco X Slusarski1013Russia2024-06-14
Aruna B Vocelka1014Germany2024-05-31
Jeanfrancois H Nicka1015Germany2024-06-17
Misaki I Ostrosky1016United Kingdom2024-06-19
Aditya F Foller1017Canada2024-06-07
Leja E Kolmetz1018Russia2024-06-16
Jones V Marrier1019Japan2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson O FigeroaJapanBernardo Dominic NEGOTIATION
Misaki J StensethRussiaStephen Shaw RENEWAL
Cody A FlosiAustraliaOnyama Limba RENEWAL
Darci F MaletJapanIoni Bowcher PROPOSAL
Wickens Z VocelkaIndiaIvan Magalhaes NEW
Maisha U ShinkoRussiaAmy Elsner QUALIFIED
Murillo A AmigonFranceStephen Shaw UNQUALIFIED
Jones P AlbaresGermanyIoni Bowcher PROPOSAL
Sinclair Z DoeUnited KingdomBernardo Dominic NEGOTIATION
Aditya N CaudySpainBernardo Dominic NEW
Isabel N WhobreyGermanyElwin Sharvill PROPOSAL
Francesco K MarrierFranceStephen Shaw NEGOTIATION
Aditya R BowleyArgentinaAnna Fali UNQUALIFIED
Octavia I CampainRussiaAsiya Javayant RENEWAL
Salvatore M SchemmerCanadaStephen Shaw PROPOSAL
Salvatore Q MacleadItalyAnna Fali RENEWAL
Chavez O RimItalyAmy Elsner UNQUALIFIED
Costa L AmigonAustraliaIoni Bowcher NEW
Misaki Q MacleadArgentinaIvan Magalhaes QUALIFIED
Ivar Z AmigonArgentinaOnyama Limba UNQUALIFIED
Arvin U NestleCanadaAsiya Javayant NEW
Kaitlin F StockhamJapanStephen Shaw PROPOSAL
Nicolas P SergiArgentinaElwin Sharvill QUALIFIED
Ricardo O DoeRussiaAnna Fali UNQUALIFIED
Wickens L InouyeRussiaXuxue Feng NEGOTIATION
Aika S SaylorsSpainElwin Sharvill NEW
Rodrigues C PaprockiGermanyOnyama Limba UNQUALIFIED
Ivar Y NickaItalyAnna Fali NEGOTIATION
Salvatore L FigeroaRussiaIvan Magalhaes QUALIFIED
Alejandro K VenereArgentinaBernardo Dominic UNQUALIFIED
Nicolas V DilliardIndiaStephen Shaw PROPOSAL
Darci P FerenczCanadaIoni Bowcher QUALIFIED
Sinclair X AlbaresIndiaXuxue Feng PROPOSAL
Jeanfrancois J ChuiAustraliaXuxue Feng PROPOSAL
Johnson J GlickAustraliaElwin Sharvill QUALIFIED
Chavez U SaylorsArgentinaStephen Shaw NEGOTIATION
Johnson O DilliardItalyXuxue Feng UNQUALIFIED
Salvatore S ChuiAustraliaStephen Shaw NEGOTIATION
Ivar W KolmetzGermanyBernardo Dominic QUALIFIED
Nicolas E ChuiCanadaXuxue Feng 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>