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
Greenwood X RulapaughAustraliaIoni Bowcher NEGOTIATION
Francesco D RimAustraliaAnna Fali RENEWAL
Johnson Q IturbideBrazilXuxue Feng NEW
Jeanfrancois Z RulapaughItalyElwin Sharvill PROPOSAL
Mayumi E PaprockiSpainIvan Magalhaes RENEWAL
Stacey G DilliardIndiaAmy Elsner RENEWAL
Morrow S RulapaughIndiaStephen Shaw UNQUALIFIED
Ricardo F NickaIndiaIoni Bowcher QUALIFIED
Antonio F MaletFranceAnna Fali UNQUALIFIED
Misaki Z GauchoJapanOnyama Limba QUALIFIED
Mayumi S KolmetzUnited KingdomStephen Shaw UNQUALIFIED
Francesco N MorascaGermanyIoni Bowcher NEW
Clifford A KolmetzItalyElwin Sharvill QUALIFIED
Julie Y MarrierAustraliaBernardo Dominic RENEWAL
Izzy B PaprockiJapanAnna Fali RENEWAL
Munro Q FlosiIndiaAnna Fali PROPOSAL
Sinclair W AlbaresBrazilBernardo Dominic RENEWAL
Silvio Y RoysterAustraliaAmy Elsner PROPOSAL
Kaitlin T MacleadGermanyBernardo Dominic QUALIFIED
Emily O GarufiBrazilAmy Elsner QUALIFIED
Clifford Y WieserIndiaElwin Sharvill UNQUALIFIED
Morrow R SaylorsItalyAmy Elsner PROPOSAL
Ivar O ShinkoIndiaOnyama Limba NEGOTIATION
David A FlosiAustraliaAmy Elsner RENEWAL
Clifford M ChuiArgentinaBernardo Dominic NEW
Leja F CampainGermanyElwin Sharvill UNQUALIFIED
Emily D MorascaJapanIoni Bowcher UNQUALIFIED
Ricardo N AmigonIndiaAsiya Javayant QUALIFIED
Adams R FlosiAustraliaStephen Shaw NEW
Claire V NestleRussiaAnna Fali QUALIFIED
Emily I VenereBrazilAnna Fali NEGOTIATION
Johnson O CampainJapanOnyama Limba NEW
Mayumi V SlusarskiIndiaElwin Sharvill UNQUALIFIED
Aika V BowleyItalyAmy Elsner RENEWAL
Maria I CaudyGermanyBernardo Dominic NEW
Nicolas P FigeroaGermanyIvan Magalhaes QUALIFIED
Wickens W KolmetzUnited KingdomIoni Bowcher RENEWAL
Arvin O OldroydUnited KingdomIvan Magalhaes UNQUALIFIED
Jeanfrancois Z PaprockiFranceBernardo Dominic UNQUALIFIED
Maisha F VocelkaIndiaAsiya Javayant NEW
Arvin Q StockhamCanadaBernardo Dominic NEW
Aika C AlbaresAustraliaOnyama Limba QUALIFIED
Silvio O StensethAustraliaBernardo Dominic QUALIFIED
Kaitlin D GarufiFranceAsiya Javayant NEGOTIATION
Rodrigues P TollnerUnited KingdomAsiya Javayant QUALIFIED
Maria G VocelkaItalyOnyama Limba NEGOTIATION
Jones V KolmetzFranceAsiya Javayant QUALIFIED
Smith I SaylorsGermanyElwin Sharvill NEGOTIATION
Maisha M FlosiUnited KingdomBernardo Dominic RENEWAL
Salvatore S ButtSpainStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja T GillianAustraliaAsiya Javayant QUALIFIED
Misaki S PoquetteCanadaAmy Elsner NEW
Ivar D InouyeUnited KingdomAmy Elsner NEW
Octavia N AmigonCanadaAnna Fali NEGOTIATION
Maria R FollerCanadaStephen Shaw UNQUALIFIED
Maisha N FlosiUnited KingdomStephen Shaw PROPOSAL
David A SergiArgentinaOnyama Limba UNQUALIFIED
Mayumi F ShinkoAustraliaIoni Bowcher UNQUALIFIED
James Y NickaCanadaAnna Fali NEGOTIATION
Silvio H PoquetteUnited KingdomElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem I DarakjyArgentina2024-06-10Printing Dimensions UNQUALIFIED30Xuxue Feng
1001Octavia S BowleyRussia2024-06-14Commercial Press PROPOSAL85Elwin Sharvill
1002Juan O BriddickSpain2024-06-03Benton, John B Jr PROPOSAL86Amy Elsner
1003Aruna M GillianIndia2024-05-28Buckley Miller Wright NEW63Xuxue Feng
1004Mujtaba S BowleyRussia2024-06-20Rousseaux, Michael Esq QUALIFIED15Anna Fali
1005Aditya I PoquetteFrance2024-06-17Feiner Bros NEW33Anna Fali
1006Maria P IturbideFrance2024-05-28Chemel, James L Cpa QUALIFIED49Ioni Bowcher
1007Morrow U NestleIndia2024-06-15King, Christopher A Esq UNQUALIFIED45Amy Elsner
1008Arvin O NickaArgentina2024-06-10Benton, John B Jr RENEWAL48Asiya Javayant
1009Jefferson G DoeSpain2024-06-01Buckley Miller Wright NEW24Stephen Shaw
1010Munro C PoquetteAustralia2024-06-14Printing Dimensions NEW25Elwin Sharvill
1011Alejandro Q RoysterAustralia2024-06-12Buckley Miller Wright NEGOTIATION31Onyama Limba
1012Ricardo J BowleySpain2024-05-24Chapman, Ross E Esq PROPOSAL53Ioni Bowcher
1013Kadeem L GauchoCanada2024-06-01Truhlar And Truhlar Attys UNQUALIFIED16Elwin Sharvill
1014Leja O DilliardArgentina2024-05-27Morlong Associates PROPOSAL89Stephen Shaw
1015Murillo I PoquetteRussia2024-05-26Rangoni Of Florence NEW65Xuxue Feng
1016Mayumi W MaletSpain2024-06-22Rangoni Of Florence UNQUALIFIED93Onyama Limba
1017Johnson O RoysterGermany2024-05-31Printing Dimensions NEGOTIATION63Bernardo Dominic
1018Greenwood E AmigonFrance2024-06-07Commercial Press RENEWAL36Bernardo Dominic
1019Ashley D KuskoJapan2024-06-19Buckley Miller Wright NEGOTIATION31Anna Fali
1020Claire Y MarrierGermany2024-06-17Truhlar And Truhlar Attys UNQUALIFIED77Xuxue Feng
1021Faith O GauchoFrance2024-06-14Rousseaux, Michael Esq NEGOTIATION68Amy Elsner
1022Darci D VocelkaFrance2024-06-13Morlong Associates NEW74Bernardo Dominic
1023Jones R SaylorsSpain2024-06-08Truhlar And Truhlar Attys QUALIFIED26Asiya Javayant
1024Faith F BologniaRussia2024-06-22Chemel, James L Cpa RENEWAL21Ioni Bowcher
1025Darci I GillianRussia2024-06-02Feiner Bros NEW7Xuxue Feng
1026James Q FlosiBrazil2024-06-14Feiner Bros NEGOTIATION38Ivan Magalhaes
1027Smith O MarrierCanada2024-06-05Chapman, Ross E Esq NEW43Elwin Sharvill
1028Mujtaba A BowleyUnited Kingdom2024-06-22Rangoni Of Florence PROPOSAL30Asiya Javayant
1029Salvatore X ButtAustralia2024-05-30Chanay, Jeffrey A Esq NEW81Stephen Shaw
1030Salvatore N CaldareraUnited Kingdom2024-06-03Rangoni Of Florence NEW46Elwin Sharvill
1031Mujtaba O SchemmerArgentina2024-05-30Printing Dimensions NEW33Xuxue Feng
1032Maria U RulapaughFrance2024-06-03King, Christopher A Esq NEGOTIATION78Bernardo Dominic
1033Stacey E RulapaughBrazil2024-06-13Rangoni Of Florence NEGOTIATION42Asiya Javayant
1034Julie B IturbideUnited Kingdom2024-06-13Benton, John B Jr QUALIFIED16Stephen Shaw
1035Sinclair D GauchoArgentina2024-06-06Chapman, Ross E Esq NEW24Anna Fali
1036Mayumi U OstroskyRussia2024-06-03Feiner Bros NEW82Bernardo Dominic
1037Costa Y GillianArgentina2024-06-04Chanay, Jeffrey A Esq QUALIFIED96Ivan Magalhaes
1038Nicolas D MacleadBrazil2024-06-11Feiner Bros NEGOTIATION58Anna Fali
1039Maisha Q GarufiItaly2024-05-30King, Christopher A Esq QUALIFIED97Bernardo Dominic
1040Francesco L InouyeAustralia2024-06-11Feltz Printing Service RENEWAL65Anna Fali
1041Morrow L GlickArgentina2024-06-16Commercial Press NEW13Ioni Bowcher
1042Kaitlin R WieserGermany2024-06-19Rangoni Of Florence NEW43Bernardo Dominic
1043Stacey G DarakjyUnited Kingdom2024-06-18Morlong Associates RENEWAL60Anna Fali
1044Francesco Y CaudyCanada2024-06-20Commercial Press NEGOTIATION88Bernardo Dominic
1045Juan N RoysterCanada2024-06-14Chemel, James L Cpa QUALIFIED10Ivan Magalhaes
1046Leon S MaletAustralia2024-05-24Benton, John B Jr RENEWAL8Bernardo Dominic
1047Jeanfrancois W FollerAustralia2024-06-03Truhlar And Truhlar Attys UNQUALIFIED9Onyama Limba
1048Nicolas Z StockhamItaly2024-06-07Rousseaux, Michael Esq NEW72Bernardo Dominic
1049Johnson Z RoysterArgentina2024-06-09Truhlar And Truhlar Attys NEW2Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Maria L RoysterJapanStephen Shaw NEGOTIATION
Costa V OldroydArgentinaXuxue Feng QUALIFIED
Deepesh H StensethArgentinaBernardo Dominic NEGOTIATION
Stacey R NestleFranceIoni Bowcher RENEWAL
Wickens J RoysterUnited KingdomAsiya Javayant QUALIFIED
Aditya I GlickCanadaIoni Bowcher UNQUALIFIED
Adams Z MaletRussiaElwin Sharvill PROPOSAL
Maisha P SlusarskiAustraliaAmy Elsner NEGOTIATION
Francesco F DoeAustraliaBernardo Dominic PROPOSAL
Rodrigues R KolmetzSpainIoni Bowcher NEGOTIATION
James P CaldareraFranceIoni Bowcher PROPOSAL
Murillo J RimAustraliaStephen Shaw NEW
Kaitlin X DilliardIndiaXuxue Feng RENEWAL
Cody N SlusarskiArgentinaBernardo Dominic UNQUALIFIED
Nicolas Z RimIndiaBernardo Dominic UNQUALIFIED
Silvio M PoquetteArgentinaAnna Fali QUALIFIED
Arvin Q WaycottFranceAnna Fali NEGOTIATION
Isabel D NickaAustraliaIoni Bowcher QUALIFIED
Clifford E WieserSpainAnna Fali NEW
Arvin D NickaCanadaXuxue Feng NEW
Juan M PaprockiBrazilStephen Shaw RENEWAL
Jennifer F CaldareraRussiaIvan Magalhaes UNQUALIFIED
Aditya T SchemmerCanadaElwin Sharvill PROPOSAL
Antonio S RutaCanadaElwin Sharvill UNQUALIFIED
Jones X GarufiAustraliaAnna Fali UNQUALIFIED
Jeanfrancois Y MaletArgentinaAmy Elsner UNQUALIFIED
Salvatore C GillianIndiaIoni Bowcher NEGOTIATION
Alejandro Y MacleadGermanyElwin Sharvill UNQUALIFIED
Wickens F SlusarskiIndiaElwin Sharvill RENEWAL
Jeanfrancois Y StensethRussiaStephen Shaw UNQUALIFIED
Cody V BologniaAustraliaIoni Bowcher QUALIFIED
Mujtaba V IturbideAustraliaAmy Elsner PROPOSAL
Morrow E NickaRussiaBernardo Dominic QUALIFIED
Cody X RimCanadaBernardo Dominic RENEWAL
Rodrigues C SlusarskiArgentinaAsiya Javayant PROPOSAL
Darci X PoquetteFranceElwin Sharvill UNQUALIFIED
Leja C AmigonGermanyStephen Shaw NEGOTIATION
Francesco F WaycottRussiaBernardo Dominic NEW
Silvio I MaletGermanyXuxue Feng RENEWAL
Chavez H WieserArgentinaAnna Fali RENEWAL
Greenwood W RoysterAustraliaAmy Elsner NEW
Nicolas N FerenczUnited KingdomBernardo Dominic UNQUALIFIED
Alejandro J AmigonFranceBernardo Dominic RENEWAL
Maisha V SergiUnited KingdomAnna Fali NEW
Jefferson C ButtBrazilElwin Sharvill NEGOTIATION
Jefferson M RulapaughBrazilXuxue Feng QUALIFIED
Smith J MarrierBrazilElwin Sharvill UNQUALIFIED
Leon O BriddickUnited KingdomIvan Magalhaes NEW
Sinclair S AlbaresIndiaAsiya Javayant RENEWAL
Tony V AmigonFranceElwin Sharvill PROPOSAL
Frozen Columns
Name
Antonio S Paprocki
Costa X Poquette
Claire M Tollner
Jefferson J Rulapaugh
Johnson T Butt
Juan M Schemmer
Murillo P Nicka
David V Doe
Silvio C Glick
James A Rulapaugh
Smith N Perin
Tony J Garufi
Morrow R Albares
Emily N Perin
Darci H Chui
Aika G Malet
Aika F Shinko
Arvin Q Wieser
Greenwood V Sergi
Faith I Morasca
Kadeem O Butt
Nicolas A Marrier
Aditya P Tollner
Ricardo V Rulapaugh
Costa R Perin
Leja R Kusko
Jefferson L Campain
Jeanfrancois Y Bowley
Jefferson M Saylors
Morrow J Dilliard
Ashley D Campain
Emily T Wieser
Murillo K Inouye
Kadeem Z Chui
Ashley M Figeroa
Claire M Maclead
Leja L Campain
Darci L Waycott
James M Foller
Darci Z Caldarera
Izzy M Gaucho
Claire O Glick
Emily R Gaucho
Cody O Kusko
James K Figeroa
Maria G Rulapaugh
Kaitlin V Nicka
Emily I Bolognia
Kaitlin X Dilliard
Clifford R Caldarera
IdCountryDate
1000Japan2024-06-13
1001Australia2024-05-26
1002Brazil2024-05-27
1003Brazil2024-05-30
1004Brazil2024-05-24
1005Japan2024-06-11
1006Italy2024-05-25
1007France2024-06-05
1008Brazil2024-05-28
1009Australia2024-06-21
1010Italy2024-06-20
1011Brazil2024-06-18
1012Australia2024-06-01
1013Brazil2024-05-30
1014Russia2024-06-15
1015Japan2024-06-05
1016France2024-06-19
1017Germany2024-06-21
1018France2024-06-11
1019Germany2024-06-10
1020Argentina2024-06-14
1021Germany2024-06-09
1022Argentina2024-06-03
1023Spain2024-05-30
1024Japan2024-05-30
1025Spain2024-06-17
1026United Kingdom2024-05-27
1027Canada2024-05-25
1028Germany2024-06-08
1029Argentina2024-06-07
1030Brazil2024-06-15
1031France2024-06-12
1032Australia2024-06-10
1033France2024-06-02
1034Canada2024-06-12
1035Canada2024-06-13
1036Brazil2024-05-28
1037Argentina2024-06-11
1038Russia2024-05-24
1039India2024-06-21
1040Italy2024-05-27
1041United Kingdom2024-06-10
1042Brazil2024-06-08
1043Canada2024-06-09
1044France2024-06-10
1045Spain2024-06-18
1046Argentina2024-06-22
1047France2024-06-04
1048Canada2024-06-08
1049Russia2024-06-22

On-Demand Data

NameIdCountryDate
Wickens X Slusarski1000India2024-06-07
Murillo Z Venere1001Brazil2024-06-02
Rodrigues P Inouye1002Australia2024-05-29
Munro P Gaucho1003Russia2024-05-25
Tony G Maclead1004Italy2024-06-21
Wickens P Caudy1005Spain2024-06-03
Jeanfrancois L Morasca1006Australia2024-06-06
Ashley C Whobrey1007Argentina2024-06-05
Jones F Briddick1008Brazil2024-05-25
Antonio R Flosi1009Australia2024-06-10
Nicolas B Nicka1010United Kingdom2024-06-06
Silvio Q Chui1011United Kingdom2024-06-10
Jennifer P Waycott1012Germany2024-06-05
Arvin Z Foller1013United Kingdom2024-05-28
Ricardo Y Oldroyd1014Australia2024-05-25
Clifford G Venere1015Russia2024-06-08
Morrow P Iturbide1016India2024-06-03
Adams P Iturbide1017Argentina2024-06-19
Munro Q Ferencz1018United Kingdom2024-05-25
Munro Z Waycott1019France2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia C MaletBrazilStephen Shaw RENEWAL
Ricardo L OldroydBrazilIvan Magalhaes NEW
Jennifer N BologniaArgentinaAnna Fali RENEWAL
Claire R MarrierCanadaAnna Fali QUALIFIED
Jeanfrancois Y ShinkoIndiaAsiya Javayant UNQUALIFIED
Faith D SchemmerUnited KingdomAsiya Javayant NEGOTIATION
Jennifer N FerenczItalyElwin Sharvill PROPOSAL
Jennifer T RimUnited KingdomBernardo Dominic QUALIFIED
Arvin F RulapaughItalyAmy Elsner PROPOSAL
Murillo V GarufiArgentinaAsiya Javayant UNQUALIFIED
Antonio J AlbaresGermanyElwin Sharvill PROPOSAL
Smith Z KuskoIndiaAmy Elsner RENEWAL
Wickens P RulapaughUnited KingdomXuxue Feng NEW
Clifford J StensethUnited KingdomBernardo Dominic PROPOSAL
Tony G GarufiUnited KingdomElwin Sharvill PROPOSAL
Maisha M TollnerFranceAnna Fali PROPOSAL
Ricardo W MacleadArgentinaIoni Bowcher PROPOSAL
Cody D FigeroaUnited KingdomBernardo Dominic UNQUALIFIED
Izzy S VocelkaRussiaAsiya Javayant NEW
Aika L RulapaughJapanIoni Bowcher QUALIFIED
Leon N RulapaughGermanyIvan Magalhaes PROPOSAL
Aditya N CampainArgentinaIvan Magalhaes NEW
Octavia H OstroskyBrazilStephen Shaw RENEWAL
Arvin P PoquetteAustraliaOnyama Limba NEGOTIATION
Maisha C RulapaughItalyBernardo Dominic PROPOSAL
Clifford I StockhamArgentinaBernardo Dominic PROPOSAL
Deepesh X DoeJapanIvan Magalhaes UNQUALIFIED
Jones Q FigeroaJapanIoni Bowcher NEGOTIATION
Arvin Z SaylorsJapanAnna Fali RENEWAL
Costa W OstroskyGermanyIvan Magalhaes QUALIFIED
Costa O ShinkoRussiaXuxue Feng NEW
Leja N OstroskyRussiaBernardo Dominic UNQUALIFIED
Mayumi C VocelkaJapanElwin Sharvill PROPOSAL
Jeanfrancois E PerinIndiaAnna Fali PROPOSAL
Deepesh Z ShinkoRussiaBernardo Dominic UNQUALIFIED
Darci X GauchoArgentinaAsiya Javayant NEGOTIATION
Chavez U MaletAustraliaAmy Elsner RENEWAL
Faith D MaletJapanElwin Sharvill NEW
Jeanfrancois G CampainBrazilXuxue Feng RENEWAL
Antonio Q BologniaBrazilOnyama Limba RENEWAL

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