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
Smith X PerinFranceXuxue Feng NEW
Nicolas Q MarrierAustraliaStephen Shaw PROPOSAL
Smith E BriddickAustraliaAmy Elsner NEGOTIATION
Rodrigues Z BriddickGermanyOnyama Limba RENEWAL
Aruna O GillianFranceAmy Elsner QUALIFIED
Ashley R ShinkoAustraliaStephen Shaw UNQUALIFIED
David M ShinkoBrazilAmy Elsner RENEWAL
Isabel Y NickaCanadaStephen Shaw UNQUALIFIED
James J DarakjyFranceElwin Sharvill NEW
Jennifer F PerinItalyIvan Magalhaes NEW
Jennifer Q WhobreyJapanAnna Fali NEGOTIATION
Alejandro Y NickaGermanyElwin Sharvill NEGOTIATION
Kadeem U RimSpainBernardo Dominic QUALIFIED
Clifford V BowleyIndiaIvan Magalhaes PROPOSAL
Octavia N WieserCanadaXuxue Feng PROPOSAL
Juan V InouyeItalyAsiya Javayant RENEWAL
Kaitlin O PerinBrazilElwin Sharvill QUALIFIED
Cody M WieserSpainXuxue Feng QUALIFIED
Misaki B NestleBrazilAnna Fali NEGOTIATION
Jennifer H GlickJapanAnna Fali PROPOSAL
Ricardo H GauchoFranceAmy Elsner QUALIFIED
Johnson U ChuiRussiaIvan Magalhaes RENEWAL
Izzy V SergiCanadaAsiya Javayant NEGOTIATION
Arvin E StockhamUnited KingdomOnyama Limba UNQUALIFIED
Cody A KuskoAustraliaElwin Sharvill NEW
Nicolas A InouyeRussiaBernardo Dominic PROPOSAL
James I DilliardIndiaIvan Magalhaes PROPOSAL
Octavia V MacleadItalyAsiya Javayant NEW
Julie K FollerArgentinaXuxue Feng NEW
Cody I OstroskySpainAsiya Javayant UNQUALIFIED
Izzy J StensethJapanIoni Bowcher PROPOSAL
Ricardo K TollnerGermanyAnna Fali RENEWAL
Jennifer Z DilliardAustraliaIoni Bowcher PROPOSAL
Costa Q CaudyArgentinaIoni Bowcher RENEWAL
Cody P PoquetteBrazilBernardo Dominic NEW
Juan N InouyeCanadaBernardo Dominic RENEWAL
Aika F GlickAustraliaStephen Shaw NEGOTIATION
Jones F GlickJapanIoni Bowcher PROPOSAL
Antonio K ChuiArgentinaIoni Bowcher UNQUALIFIED
Darci N ShinkoRussiaAmy Elsner PROPOSAL
Clifford L CaldareraIndiaAmy Elsner PROPOSAL
Costa U CampainIndiaIoni Bowcher UNQUALIFIED
Juan M WhobreyRussiaIoni Bowcher QUALIFIED
Salvatore K DilliardGermanyIvan Magalhaes UNQUALIFIED
Silvio L PoquetteIndiaElwin Sharvill RENEWAL
Jefferson P OldroydRussiaStephen Shaw NEGOTIATION
Faith Z GlickRussiaElwin Sharvill UNQUALIFIED
Cody N RoysterUnited KingdomAsiya Javayant UNQUALIFIED
Aditya K GauchoSpainAsiya Javayant RENEWAL
Claire R SergiItalyIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Octavia G RulapaughAustraliaAsiya Javayant PROPOSAL
Kaitlin B BologniaJapanStephen Shaw RENEWAL
Julie I SlusarskiSpainStephen Shaw PROPOSAL
David C PaprockiUnited KingdomIoni Bowcher RENEWAL
Morrow G RoysterItalyXuxue Feng UNQUALIFIED
Octavia O GarufiRussiaXuxue Feng UNQUALIFIED
Morrow S FollerJapanBernardo Dominic NEGOTIATION
Silvio U StockhamIndiaAnna Fali QUALIFIED
James A DarakjyRussiaElwin Sharvill RENEWAL
Emily X RulapaughAustraliaAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja Q TollnerSpain2024-05-27King, Christopher A Esq UNQUALIFIED73Elwin Sharvill
1001Adams R ShinkoRussia2024-05-14Chemel, James L Cpa PROPOSAL6Xuxue Feng
1002Morrow S TollnerUnited Kingdom2024-05-14Commercial Press NEGOTIATION89Amy Elsner
1003Cody A WaycottItaly2024-05-02Chanay, Jeffrey A Esq NEW77Ioni Bowcher
1004Johnson N NestleUnited Kingdom2024-05-01Truhlar And Truhlar Attys NEW0Onyama Limba
1005Jennifer V VocelkaGermany2024-05-17Rangoni Of Florence NEW83Xuxue Feng
1006Julie D StensethCanada2024-05-09Rousseaux, Michael Esq NEW78Elwin Sharvill
1007Alejandro F OstroskyBrazil2024-05-27Rousseaux, Michael Esq UNQUALIFIED9Anna Fali
1008James K ButtFrance2024-05-20Dorl, James J Esq RENEWAL56Onyama Limba
1009Munro E WhobreyUnited Kingdom2024-05-02King, Christopher A Esq UNQUALIFIED65Ivan Magalhaes
1010Kaitlin Y PaprockiJapan2024-05-06Chanay, Jeffrey A Esq UNQUALIFIED46Ioni Bowcher
1011Antonio V BowleyItaly2024-05-24Chanay, Jeffrey A Esq QUALIFIED48Onyama Limba
1012Johnson C MaletItaly2024-05-27Chapman, Ross E Esq NEGOTIATION39Stephen Shaw
1013James P NestleBrazil2024-05-23Truhlar And Truhlar Attys UNQUALIFIED18Ivan Magalhaes
1014Claire N GlickUnited Kingdom2024-05-05Chanay, Jeffrey A Esq NEGOTIATION75Bernardo Dominic
1015Costa X KolmetzRussia2024-05-22Chemel, James L Cpa PROPOSAL14Ioni Bowcher
1016Adams L NestleSpain2024-05-22Chanay, Jeffrey A Esq PROPOSAL25Ioni Bowcher
1017Morrow H PoquetteIndia2024-05-10Truhlar And Truhlar Attys NEW69Elwin Sharvill
1018Ashley E AmigonItaly2024-05-02King, Christopher A Esq QUALIFIED62Stephen Shaw
1019Smith M GauchoBrazil2024-05-16Printing Dimensions RENEWAL68Bernardo Dominic
1020Murillo W RutaRussia2024-05-12Chemel, James L Cpa PROPOSAL62Bernardo Dominic
1021Antonio H PerinCanada2024-05-17Benton, John B Jr NEGOTIATION25Ivan Magalhaes
1022Francesco U OstroskyItaly2024-05-06Buckley Miller Wright RENEWAL13Amy Elsner
1023Kaitlin K DoeRussia2024-05-05Feiner Bros PROPOSAL68Ioni Bowcher
1024Faith C DarakjyFrance2024-04-28Chapman, Ross E Esq UNQUALIFIED3Ioni Bowcher
1025David Z SaylorsCanada2024-05-02Chanay, Jeffrey A Esq NEGOTIATION27Asiya Javayant
1026Costa V DarakjyCanada2024-05-26Feiner Bros NEGOTIATION91Ivan Magalhaes
1027Jefferson S KuskoArgentina2024-05-05Truhlar And Truhlar Attys QUALIFIED57Ioni Bowcher
1028Alejandro S SaylorsIndia2024-05-09Commercial Press NEW46Onyama Limba
1029Salvatore A MaletIndia2024-05-05Chapman, Ross E Esq PROPOSAL8Amy Elsner
1030Leja O FlosiUnited Kingdom2024-05-23King, Christopher A Esq RENEWAL37Bernardo Dominic
1031Sinclair D IturbideGermany2024-05-14Feiner Bros QUALIFIED70Asiya Javayant
1032David A NestleRussia2024-04-30Printing Dimensions PROPOSAL52Anna Fali
1033Emily U SchemmerRussia2024-05-05Feltz Printing Service RENEWAL31Xuxue Feng
1034Leon I DarakjyUnited Kingdom2024-05-03King, Christopher A Esq PROPOSAL25Anna Fali
1035Octavia B MorascaArgentina2024-05-14Truhlar And Truhlar Attys NEGOTIATION12Stephen Shaw
1036Juan H CaudyRussia2024-05-13Rousseaux, Michael Esq UNQUALIFIED59Anna Fali
1037Francesco X VocelkaCanada2024-05-05Chapman, Ross E Esq UNQUALIFIED30Amy Elsner
1038Ashley U TollnerBrazil2024-05-18Feiner Bros NEW91Elwin Sharvill
1039Antonio O AmigonBrazil2024-05-09Chemel, James L Cpa NEGOTIATION19Ioni Bowcher
1040David Z MaletJapan2024-05-02Commercial Press RENEWAL18Ioni Bowcher
1041Julie G DarakjyUnited Kingdom2024-05-12Rangoni Of Florence UNQUALIFIED76Anna Fali
1042Maisha P WieserFrance2024-05-17Morlong Associates PROPOSAL66Onyama Limba
1043Isabel R MacleadUnited Kingdom2024-05-08Printing Dimensions PROPOSAL38Ivan Magalhaes
1044Silvio I PaprockiSpain2024-05-06Benton, John B Jr RENEWAL84Amy Elsner
1045Chavez K MaletArgentina2024-05-19Chanay, Jeffrey A Esq UNQUALIFIED75Xuxue Feng
1046Costa C ButtBrazil2024-05-19Chanay, Jeffrey A Esq NEGOTIATION8Ivan Magalhaes
1047Ricardo V OstroskyJapan2024-05-02King, Christopher A Esq RENEWAL12Stephen Shaw
1048Johnson F InouyeFrance2024-05-24Truhlar And Truhlar Attys QUALIFIED20Xuxue Feng
1049Faith Y ButtArgentina2024-04-28Rousseaux, Michael Esq PROPOSAL76Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Aika G MaletJapanAnna Fali UNQUALIFIED
Mayumi Q StensethGermanyElwin Sharvill PROPOSAL
Izzy J FlosiAustraliaAnna Fali PROPOSAL
Stacey O RutaCanadaAsiya Javayant PROPOSAL
Ivar W DoeCanadaIoni Bowcher RENEWAL
Mujtaba J BologniaJapanXuxue Feng NEGOTIATION
Silvio Z BowleyBrazilStephen Shaw NEW
Sinclair B GarufiGermanyIoni Bowcher NEW
Murillo X KolmetzBrazilOnyama Limba RENEWAL
Chavez Q RoysterAustraliaBernardo Dominic PROPOSAL
Murillo H MorascaGermanyStephen Shaw NEGOTIATION
Chavez M StensethBrazilAsiya Javayant NEW
Emily D NestleRussiaIoni Bowcher QUALIFIED
Chavez W MacleadAustraliaBernardo Dominic NEGOTIATION
Munro U TollnerBrazilXuxue Feng UNQUALIFIED
Leja B MaletAustraliaStephen Shaw NEGOTIATION
Deepesh Y StockhamIndiaIoni Bowcher NEGOTIATION
Johnson J GarufiAustraliaElwin Sharvill NEGOTIATION
Izzy K FollerGermanyStephen Shaw NEGOTIATION
Jefferson K FigeroaIndiaOnyama Limba UNQUALIFIED
Wickens T BriddickAustraliaAsiya Javayant RENEWAL
Murillo V RimSpainXuxue Feng NEW
Leja Y BologniaFranceIoni Bowcher PROPOSAL
Nicolas U TollnerFranceElwin Sharvill QUALIFIED
Aruna B RulapaughRussiaAmy Elsner NEGOTIATION
Deepesh N ButtRussiaElwin Sharvill NEW
Francesco V AlbaresUnited KingdomAsiya Javayant QUALIFIED
Ashley V VocelkaGermanyBernardo Dominic QUALIFIED
Chavez G PerinArgentinaStephen Shaw NEGOTIATION
Maisha W OstroskyItalyXuxue Feng QUALIFIED
Mayumi Q GarufiItalyAnna Fali NEGOTIATION
Ivar J ButtRussiaElwin Sharvill UNQUALIFIED
Izzy N TollnerFranceOnyama Limba UNQUALIFIED
Deepesh I BologniaAustraliaAsiya Javayant UNQUALIFIED
Stacey A OldroydUnited KingdomXuxue Feng RENEWAL
Murillo F SergiSpainAnna Fali QUALIFIED
Ivar C FollerGermanyAsiya Javayant QUALIFIED
Munro T AmigonJapanStephen Shaw UNQUALIFIED
Aika R PerinItalyElwin Sharvill NEW
Isabel Z MaletSpainElwin Sharvill PROPOSAL
Julie Y FerenczSpainAmy Elsner PROPOSAL
Smith Z DoeCanadaBernardo Dominic NEW
Greenwood Q KolmetzIndiaAsiya Javayant PROPOSAL
Faith Q FlosiJapanElwin Sharvill UNQUALIFIED
Kaitlin X NestleJapanStephen Shaw PROPOSAL
Cody J FigeroaIndiaIvan Magalhaes PROPOSAL
Smith S KuskoCanadaAsiya Javayant NEGOTIATION
Aika W RulapaughArgentinaXuxue Feng RENEWAL
Costa D CampainBrazilIvan Magalhaes PROPOSAL
Misaki T StensethIndiaIvan Magalhaes QUALIFIED
Frozen Columns
Name
Mayumi L Caudy
Faith A Malet
David Q Malet
Salvatore H Inouye
Maisha C Sergi
Sinclair M Rim
Johnson B Maclead
Cody X Kusko
Jones X Bolognia
Arvin L Stenseth
Octavia S Albares
Misaki R Whobrey
Mujtaba Y Nicka
Adams F Figeroa
Rodrigues G Poquette
Julie K Campain
Mayumi F Bowley
Emily X Slusarski
Antonio P Slusarski
Mayumi S Vocelka
Darci X Malet
Ricardo C Sergi
Ivar D Kolmetz
Jeanfrancois B Venere
Salvatore W Shinko
Murillo J Schemmer
Jones U Foller
Faith J Inouye
Greenwood E Malet
Aruna W Campain
Leon Z Wieser
Clifford V Paprocki
Nicolas X Inouye
Jefferson C Darakjy
Aruna L Gaucho
Chavez I Sergi
Francesco H Morasca
Chavez W Ferencz
Smith N Sergi
Maria W Saylors
Rodrigues R Figeroa
Aditya F Royster
Wickens L Whobrey
Isabel V Morasca
Wickens H Malet
Nicolas Q Waycott
Morrow W Rim
Ivar C Gaucho
Munro I Amigon
Jeanfrancois P Figeroa
IdCountryDate
1000Germany2024-05-19
1001Argentina2024-05-05
1002Australia2024-05-17
1003United Kingdom2024-05-24
1004Canada2024-05-20
1005France2024-05-13
1006United Kingdom2024-05-03
1007Italy2024-05-23
1008Argentina2024-05-04
1009Japan2024-04-29
1010Germany2024-05-14
1011Russia2024-05-15
1012Brazil2024-05-17
1013Germany2024-05-15
1014Australia2024-05-25
1015Argentina2024-05-14
1016Italy2024-05-09
1017India2024-05-19
1018Japan2024-05-04
1019France2024-05-04
1020Japan2024-05-10
1021Brazil2024-05-03
1022Spain2024-05-25
1023Argentina2024-05-13
1024Italy2024-05-19
1025Argentina2024-05-16
1026India2024-04-30
1027India2024-05-21
1028Italy2024-05-11
1029Argentina2024-04-30
1030Spain2024-05-09
1031Spain2024-05-20
1032Italy2024-05-18
1033Australia2024-04-30
1034Brazil2024-05-26
1035Russia2024-05-04
1036Argentina2024-05-24
1037Italy2024-05-16
1038India2024-05-19
1039Japan2024-04-29
1040Russia2024-05-14
1041Argentina2024-05-26
1042Italy2024-05-13
1043Germany2024-05-17
1044Italy2024-05-10
1045France2024-05-24
1046Russia2024-05-24
1047France2024-05-14
1048Japan2024-05-16
1049France2024-05-07

On-Demand Data

NameIdCountryDate
Kadeem G Bowley1000Canada2024-05-16
Tony P Amigon1001Russia2024-04-28
Aditya P Rulapaugh1002Italy2024-05-20
Tony Y Butt1003Germany2024-05-21
Ricardo G Sergi1004Australia2024-05-24
Clifford P Doe1005Brazil2024-05-26
Mayumi W Marrier1006Canada2024-05-13
Jefferson T Chui1007Brazil2024-05-16
Wickens Z Doe1008Germany2024-05-21
Ricardo A Campain1009Germany2024-05-02
Claire T Amigon1010Japan2024-05-12
Kadeem W Schemmer1011Argentina2024-05-14
Maisha D Paprocki1012Argentina2024-05-19
Tony F Ostrosky1013India2024-04-28
Arvin I Kolmetz1014France2024-05-10
Alejandro Z Marrier1015Russia2024-04-29
Tony D Gillian1016United Kingdom2024-05-06
Deepesh T Rim1017Russia2024-05-25
Aruna P Darakjy1018Italy2024-05-18
Rodrigues A Malet1019Australia2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood Q FerenczAustraliaStephen Shaw UNQUALIFIED
Maisha B DoeGermanyAsiya Javayant NEGOTIATION
Nicolas A DilliardAustraliaOnyama Limba NEGOTIATION
Cody O GillianItalyXuxue Feng RENEWAL
Jeanfrancois S PaprockiBrazilIvan Magalhaes NEGOTIATION
James T KolmetzRussiaOnyama Limba UNQUALIFIED
Faith J StensethRussiaAnna Fali PROPOSAL
Greenwood G VenereItalyStephen Shaw PROPOSAL
Salvatore D GarufiRussiaAnna Fali NEGOTIATION
Munro F FerenczGermanyIoni Bowcher NEGOTIATION
Aruna D SergiJapanAmy Elsner QUALIFIED
Deepesh U SlusarskiCanadaAsiya Javayant NEGOTIATION
Aditya W SchemmerItalyBernardo Dominic UNQUALIFIED
Silvio C OstroskyRussiaBernardo Dominic PROPOSAL
Leja E DoeSpainXuxue Feng NEGOTIATION
Ricardo N RimRussiaAmy Elsner RENEWAL
Smith D ShinkoSpainXuxue Feng QUALIFIED
Antonio H FlosiUnited KingdomXuxue Feng QUALIFIED
Octavia C FerenczRussiaIoni Bowcher UNQUALIFIED
Maria U MacleadArgentinaAnna Fali NEW
Kadeem P SchemmerSpainIoni Bowcher UNQUALIFIED
Jones K WhobreyCanadaIoni Bowcher NEGOTIATION
Mayumi N MaletGermanyXuxue Feng QUALIFIED
Clifford E SlusarskiFranceBernardo Dominic QUALIFIED
Silvio B FlosiRussiaElwin Sharvill PROPOSAL
Mujtaba X RimItalyAsiya Javayant NEW
Mujtaba Z KuskoCanadaAnna Fali RENEWAL
Maisha O GarufiJapanXuxue Feng NEGOTIATION
Deepesh E RutaBrazilIoni Bowcher RENEWAL
Jeanfrancois N FlosiAustraliaAnna Fali UNQUALIFIED
Tony Y SergiArgentinaIvan Magalhaes RENEWAL
Chavez I MorascaIndiaElwin Sharvill NEW
Nicolas X WhobreyItalyIvan Magalhaes NEGOTIATION
Kaitlin D OldroydArgentinaIoni Bowcher RENEWAL
Ashley O AlbaresIndiaXuxue Feng NEGOTIATION
Ivar R CaudySpainIvan Magalhaes PROPOSAL
Deepesh X StensethJapanBernardo Dominic PROPOSAL
Ivar W BologniaUnited KingdomElwin Sharvill RENEWAL
Claire D TollnerArgentinaXuxue Feng NEW
Juan O InouyeCanadaXuxue 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>