Summer Sale is here 🏖️ Get 50% off with code PRSM25 Learn More

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
Bangla
Bosnian
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
Uzbek
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Blue Saga Blue
Vela Blue Vela Blue
Arya Blue Arya Blue
Bootstrap
Bootstrap Blue Light Bootstrap Blue Light
Bootstrap Purple Light Bootstrap Purple Light
Bootstrap Blue Dark Bootstrap Blue Dark
Bootstrap Purple Dark Bootstrap Purple Dark
Material Design
Material Indigo Light Material Indigo Light
Material Deep Purple Light Material Deep Purple Light
Material Indigo Dark Material Indigo Dark
Material Deep Purple Dark Material Deep Purple Dark
Material Design Compact
Material Compact Indigo Light Material Compact Indigo Light
Material Compact Deep Purple Light Material Compact Deep Purple Light
Material Compact Indigo Dark Material Compact Indigo Dark
Material Compact Deep Purple Dark Material Compact Deep Purple Dark
Legacy
Nova Light Nova Light
Nova Dark Nova Dark
Nova Colored Nova Colored
Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Jefferson X FlosiCanadaAsiya Javayant NEW
Johnson U KuskoJapanIvan Magalhaes QUALIFIED
Rodrigues E CaldareraUnited KingdomIvan Magalhaes QUALIFIED
Deepesh I GlickFranceBernardo Dominic NEGOTIATION
David N StensethRussiaOnyama Limba PROPOSAL
Leon S CaldareraIndiaAnna Fali NEGOTIATION
Kaitlin F MaletGermanyAnna Fali UNQUALIFIED
Silvio Y RimRussiaIoni Bowcher NEW
Kaitlin U AlbaresAustraliaXuxue Feng UNQUALIFIED
James G SaylorsIndiaBernardo Dominic NEW
Alejandro U ShinkoCanadaStephen Shaw RENEWAL
Arvin B DoeGermanyBernardo Dominic PROPOSAL
Jennifer L CaudySpainBernardo Dominic QUALIFIED
Aditya O BologniaAustraliaAsiya Javayant RENEWAL
Isabel T RutaCanadaAmy Elsner RENEWAL
Silvio D IturbideSpainAnna Fali RENEWAL
Mayumi Z PaprockiUnited KingdomAmy Elsner PROPOSAL
Costa R DilliardItalyAnna Fali RENEWAL
Faith A NickaRussiaOnyama Limba PROPOSAL
Darci Y OstroskyUnited KingdomAmy Elsner QUALIFIED
Ashley X WaycottArgentinaXuxue Feng UNQUALIFIED
Stacey G MaletGermanyAnna Fali NEGOTIATION
Cody R WaycottGermanyXuxue Feng PROPOSAL
Aditya A PoquetteCanadaStephen Shaw QUALIFIED
Jennifer K MaletAustraliaStephen Shaw QUALIFIED
Adams H OldroydIndiaStephen Shaw QUALIFIED
Silvio G PaprockiFranceStephen Shaw RENEWAL
Ricardo M ChuiArgentinaElwin Sharvill UNQUALIFIED
Adams D NickaIndiaIoni Bowcher RENEWAL
Chavez Z MacleadIndiaAmy Elsner NEW
Adams R ButtArgentinaElwin Sharvill RENEWAL
Costa V KuskoGermanyAmy Elsner UNQUALIFIED
Claire M GillianAustraliaAsiya Javayant UNQUALIFIED
Darci W WieserJapanXuxue Feng PROPOSAL
Smith X ButtUnited KingdomAmy Elsner QUALIFIED
Chavez Z KuskoFranceXuxue Feng NEW
Mayumi M FigeroaGermanyIoni Bowcher NEW
Kaitlin L ChuiRussiaOnyama Limba RENEWAL
Johnson P ButtIndiaAsiya Javayant RENEWAL
David O PoquetteFranceOnyama Limba QUALIFIED
Silvio O IturbideGermanyAmy Elsner PROPOSAL
Aditya N MorascaGermanyBernardo Dominic NEGOTIATION
Greenwood M CaudyUnited KingdomIoni Bowcher RENEWAL
Julie S PerinUnited KingdomAmy Elsner QUALIFIED
Morrow Q FollerCanadaAmy Elsner UNQUALIFIED
Ashley D ChuiUnited KingdomIoni Bowcher NEGOTIATION
Kadeem B NestleBrazilOnyama Limba RENEWAL
Leon X DoeSpainStephen Shaw RENEWAL
Costa D RimSpainAnna Fali PROPOSAL
Leja W PerinFranceAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Sinclair Z CampainGermanyXuxue Feng RENEWAL
Silvio O GlickAustraliaStephen Shaw QUALIFIED
Salvatore I MorascaSpainOnyama Limba RENEWAL
Kaitlin D OldroydGermanyStephen Shaw RENEWAL
Greenwood E IturbideAustraliaAnna Fali PROPOSAL
Antonio Z FlosiAustraliaIvan Magalhaes NEGOTIATION
Costa D StockhamJapanBernardo Dominic NEGOTIATION
Jeanfrancois O MarrierRussiaOnyama Limba QUALIFIED
Adams X CaldareraAustraliaStephen Shaw RENEWAL
Isabel H GarufiAustraliaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio Z GlickUnited Kingdom2025-08-13Truhlar And Truhlar Attys PROPOSAL70Stephen Shaw
1001Faith O RulapaughJapan2025-08-21Printing Dimensions NEGOTIATION51Ioni Bowcher
1002Alejandro G PoquetteBrazil2025-08-22Rangoni Of Florence NEGOTIATION8Asiya Javayant
1003Silvio R CampainRussia2025-08-26Morlong Associates NEW35Amy Elsner
1004Adams S MaletArgentina2025-08-09Dorl, James J Esq QUALIFIED97Xuxue Feng
1005Izzy Q CaldareraArgentina2025-08-18Morlong Associates NEW69Stephen Shaw
1006Rodrigues O ButtRussia2025-08-18Chanay, Jeffrey A Esq RENEWAL84Elwin Sharvill
1007Stacey N BowleyRussia2025-08-16King, Christopher A Esq RENEWAL95Onyama Limba
1008Francesco Z DilliardArgentina2025-08-24Rousseaux, Michael Esq NEW72Asiya Javayant
1009Arvin T VenereGermany2025-08-18Chapman, Ross E Esq QUALIFIED48Anna Fali
1010Morrow Y TollnerJapan2025-08-12Truhlar And Truhlar Attys NEW10Ioni Bowcher
1011Wickens A RutaFrance2025-08-01Chanay, Jeffrey A Esq UNQUALIFIED95Ivan Magalhaes
1012Alejandro W FlosiCanada2025-08-25Chapman, Ross E Esq NEW72Ivan Magalhaes
1013Ashley F MarrierUnited Kingdom2025-08-11Benton, John B Jr NEGOTIATION10Stephen Shaw
1014Chavez O RulapaughItaly2025-08-30King, Christopher A Esq RENEWAL88Amy Elsner
1015Tony W PerinItaly2025-08-13Commercial Press RENEWAL41Elwin Sharvill
1016Claire Q PerinUnited Kingdom2025-08-10King, Christopher A Esq RENEWAL40Asiya Javayant
1017Claire P ChuiItaly2025-08-03Buckley Miller Wright NEGOTIATION43Bernardo Dominic
1018Tony N ChuiGermany2025-08-19Feiner Bros NEW87Ioni Bowcher
1019Tony K FollerFrance2025-08-21Rangoni Of Florence PROPOSAL14Onyama Limba
1020Arvin T StockhamCanada2025-08-25Printing Dimensions PROPOSAL11Elwin Sharvill
1021Wickens F RutaSpain2025-08-04Morlong Associates RENEWAL21Anna Fali
1022Aruna R SergiIndia2025-08-04Printing Dimensions PROPOSAL77Asiya Javayant
1023Aika W GauchoArgentina2025-08-01Benton, John B Jr UNQUALIFIED6Anna Fali
1024Misaki T KuskoItaly2025-08-01Truhlar And Truhlar Attys PROPOSAL27Bernardo Dominic
1025Johnson S WaycottIndia2025-08-04Chemel, James L Cpa RENEWAL12Xuxue Feng
1026Greenwood P BriddickItaly2025-08-18Printing Dimensions QUALIFIED84Bernardo Dominic
1027Salvatore U PoquetteBrazil2025-08-07Chapman, Ross E Esq RENEWAL46Ioni Bowcher
1028Sinclair Z InouyeFrance2025-08-17Chemel, James L Cpa NEGOTIATION64Asiya Javayant
1029Julie S MaletIndia2025-08-16Chanay, Jeffrey A Esq RENEWAL22Stephen Shaw
1030Nicolas V DoeArgentina2025-08-27Feiner Bros QUALIFIED74Stephen Shaw
1031Jones T RimAustralia2025-08-20Chemel, James L Cpa NEW90Ioni Bowcher
1032Smith B VocelkaUnited Kingdom2025-08-20Chapman, Ross E Esq NEW23Onyama Limba
1033Nicolas T StockhamJapan2025-08-03Feltz Printing Service NEGOTIATION72Onyama Limba
1034James E OstroskyIndia2025-08-08Feiner Bros NEW27Anna Fali
1035Jones T GauchoGermany2025-08-17Rangoni Of Florence NEGOTIATION96Amy Elsner
1036David P SchemmerIndia2025-08-05Chemel, James L Cpa NEW17Ioni Bowcher
1037Johnson W GarufiItaly2025-08-27Printing Dimensions UNQUALIFIED52Ivan Magalhaes
1038Wickens G GillianBrazil2025-08-09Feltz Printing Service RENEWAL87Stephen Shaw
1039Kaitlin C MaletJapan2025-08-22Buckley Miller Wright NEW64Ivan Magalhaes
1040Jeanfrancois X FigeroaSpain2025-08-04Chapman, Ross E Esq PROPOSAL89Stephen Shaw
1041Claire H FollerIndia2025-08-13Morlong Associates PROPOSAL30Amy Elsner
1042Jeanfrancois J StockhamIndia2025-08-18Rangoni Of Florence PROPOSAL22Elwin Sharvill
1043Smith G DarakjyFrance2025-08-10Truhlar And Truhlar Attys PROPOSAL10Elwin Sharvill
1044Aditya J GillianBrazil2025-08-17Chanay, Jeffrey A Esq NEW82Asiya Javayant
1045Jennifer C PaprockiIndia2025-08-06Rangoni Of Florence NEGOTIATION10Stephen Shaw
1046Aruna O OstroskyGermany2025-08-15Chapman, Ross E Esq RENEWAL64Asiya Javayant
1047James C GarufiIndia2025-08-06Printing Dimensions NEW21Amy Elsner
1048Leon I StockhamCanada2025-08-07Chanay, Jeffrey A Esq QUALIFIED48Ivan Magalhaes
1049Clifford H PaprockiArgentina2025-08-08Rangoni Of Florence RENEWAL9Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
James Z BriddickSpainStephen Shaw QUALIFIED
Salvatore L NickaRussiaElwin Sharvill UNQUALIFIED
Sinclair G RutaRussiaAsiya Javayant NEGOTIATION
Sinclair D GillianBrazilBernardo Dominic PROPOSAL
Isabel W SergiUnited KingdomElwin Sharvill RENEWAL
Munro Y MaletBrazilOnyama Limba NEW
Adams Q CampainSpainIvan Magalhaes UNQUALIFIED
Johnson Y SchemmerItalyElwin Sharvill PROPOSAL
Jennifer D DilliardJapanIvan Magalhaes RENEWAL
Smith G SaylorsItalyAnna Fali PROPOSAL
Isabel R RulapaughRussiaAnna Fali PROPOSAL
Sinclair Q OldroydCanadaBernardo Dominic UNQUALIFIED
Sinclair Q CampainRussiaOnyama Limba NEGOTIATION
Ashley S SergiRussiaAnna Fali NEW
Costa Z ButtIndiaAmy Elsner NEGOTIATION
Faith G BowleyIndiaOnyama Limba UNQUALIFIED
Salvatore E BologniaFranceBernardo Dominic RENEWAL
Costa G VocelkaItalyXuxue Feng UNQUALIFIED
Octavia H SlusarskiUnited KingdomAsiya Javayant UNQUALIFIED
Octavia A FerenczArgentinaIvan Magalhaes PROPOSAL
Julie D RoysterGermanyBernardo Dominic RENEWAL
Claire G OldroydJapanIvan Magalhaes QUALIFIED
Maria V FigeroaFranceIvan Magalhaes UNQUALIFIED
Sinclair M VenereIndiaBernardo Dominic RENEWAL
Leon E AmigonJapanOnyama Limba RENEWAL
Chavez C MarrierIndiaXuxue Feng UNQUALIFIED
Faith N ShinkoFranceIvan Magalhaes QUALIFIED
Izzy E NickaArgentinaElwin Sharvill QUALIFIED
Juan Q MarrierBrazilIoni Bowcher RENEWAL
Greenwood Y DilliardIndiaStephen Shaw NEW
Claire X KuskoUnited KingdomAmy Elsner UNQUALIFIED
Faith G BologniaGermanyAsiya Javayant QUALIFIED
Rodrigues G GlickSpainIoni Bowcher PROPOSAL
Juan A StensethIndiaStephen Shaw RENEWAL
Faith A MarrierBrazilStephen Shaw NEGOTIATION
Mujtaba D MarrierUnited KingdomIoni Bowcher PROPOSAL
Cody P DoeAustraliaOnyama Limba NEGOTIATION
Kaitlin M IturbideFranceElwin Sharvill PROPOSAL
Julie L KolmetzIndiaIoni Bowcher NEW
Aika Z GlickArgentinaXuxue Feng RENEWAL
Juan F MarrierJapanBernardo Dominic NEGOTIATION
Jeanfrancois W MaletAustraliaAnna Fali PROPOSAL
Faith L DoeBrazilXuxue Feng NEW
Deepesh T BriddickSpainBernardo Dominic QUALIFIED
Leja F DarakjyRussiaStephen Shaw NEGOTIATION
Costa Q CaldareraBrazilStephen Shaw PROPOSAL
Alejandro M InouyeRussiaAmy Elsner NEGOTIATION
Aika D WhobreyIndiaElwin Sharvill NEW
Adams Q NickaArgentinaXuxue Feng UNQUALIFIED
Claire N MaletArgentinaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Faith D Caldarera
Mujtaba H Glick
Emily A Bolognia
Mayumi J Darakjy
Aruna T Stockham
Kadeem I Oldroyd
Ashley Z Royster
Izzy F Albares
Jefferson K Paprocki
Salvatore M Saylors
Antonio S Flosi
Izzy V Oldroyd
Darci X Bolognia
Francesco V Iturbide
Stacey E Poquette
Arvin N Butt
Julie M Perin
Costa T Sergi
Aditya K Vocelka
Murillo Q Figeroa
Aika I Perin
Aika Z Royster
Silvio E Nestle
Leja E Marrier
Leon I Foller
Aditya L Campain
Chavez D Slusarski
Arvin W Vocelka
Sinclair V Inouye
Emily D Iturbide
Johnson C Nestle
Murillo Y Darakjy
Clifford D Malet
Morrow R Tollner
Leja O Ruta
David M Royster
Emily I Malet
Alejandro T Chui
Murillo W Perin
James L Poquette
Aruna T Amigon
Emily O Butt
Leon F Flosi
Stacey G Rim
Maria B Ostrosky
Cody B Ferencz
Munro M Bolognia
Leon W Ruta
Murillo A Vocelka
Ivar N Morasca
IdCountryDate
1000Brazil2025-08-01
1001Argentina2025-08-27
1002Russia2025-08-16
1003Canada2025-08-09
1004Germany2025-08-19
1005Russia2025-08-26
1006Australia2025-08-20
1007Brazil2025-08-04
1008Russia2025-08-16
1009Canada2025-08-28
1010Spain2025-08-16
1011Italy2025-08-18
1012France2025-08-04
1013Spain2025-08-08
1014Brazil2025-08-27
1015France2025-08-21
1016Canada2025-08-17
1017Canada2025-08-24
1018Argentina2025-08-03
1019Russia2025-08-08
1020India2025-08-17
1021Spain2025-08-19
1022Argentina2025-08-21
1023Spain2025-08-30
1024Japan2025-08-09
1025France2025-08-20
1026Brazil2025-08-16
1027India2025-08-01
1028India2025-08-19
1029Italy2025-08-18
1030Spain2025-08-18
1031India2025-08-24
1032United Kingdom2025-08-05
1033United Kingdom2025-08-19
1034Spain2025-08-06
1035France2025-08-09
1036Australia2025-08-18
1037Spain2025-08-01
1038Italy2025-08-11
1039Argentina2025-08-16
1040Spain2025-08-02
1041Japan2025-08-07
1042Argentina2025-08-19
1043Canada2025-08-12
1044Japan2025-08-07
1045India2025-08-03
1046Italy2025-08-23
1047France2025-08-02
1048Germany2025-08-17
1049India2025-08-09

On-Demand Data

NameIdCountryDate
Misaki F Chui1000United Kingdom2025-08-15
Alejandro J Nestle1001Russia2025-08-01
Cody E Campain1002Italy2025-08-30
Cody I Oldroyd1003Australia2025-08-25
Maria F Royster1004Canada2025-08-04
Leon E Iturbide1005Japan2025-08-30
Clifford Z Ferencz1006Argentina2025-08-25
Stacey T Briddick1007Germany2025-08-06
Tony Y Stockham1008Japan2025-08-15
Cody D Chui1009Germany2025-08-30
Cody M Bolognia1010Germany2025-08-25
Misaki L Slusarski1011Canada2025-08-21
Mayumi K Schemmer1012Brazil2025-08-05
Jeanfrancois L Foller1013Canada2025-08-28
Maria P Chui1014Argentina2025-08-26
Claire N Perin1015Brazil2025-08-04
Emily Q Morasca1016France2025-08-01
Izzy T Ferencz1017Germany2025-08-08
Julie Y Chui1018Canada2025-08-07
Kadeem W Marrier1019Canada2025-08-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin V MorascaArgentinaElwin Sharvill NEGOTIATION
Costa L MarrierArgentinaAsiya Javayant NEW
Antonio S StensethFranceStephen Shaw NEW
Antonio Z AlbaresRussiaOnyama Limba NEW
Julie T PerinSpainXuxue Feng UNQUALIFIED
Cody Y MacleadCanadaAnna Fali PROPOSAL
Ricardo K GlickUnited KingdomAmy Elsner PROPOSAL
Octavia Q CaldareraRussiaAmy Elsner NEW
Faith C GarufiBrazilOnyama Limba NEGOTIATION
Tony E FigeroaBrazilXuxue Feng RENEWAL
David C GarufiAustraliaIoni Bowcher PROPOSAL
Leja R ShinkoRussiaBernardo Dominic NEGOTIATION
Rodrigues U MaletGermanyStephen Shaw UNQUALIFIED
Ashley G FlosiUnited KingdomIoni Bowcher RENEWAL
Jennifer Z WaycottGermanyStephen Shaw NEGOTIATION
Cody K OldroydAustraliaIoni Bowcher NEW
Darci D MaletItalyStephen Shaw RENEWAL
Juan G InouyeGermanyStephen Shaw QUALIFIED
Mujtaba O OstroskyAustraliaIvan Magalhaes PROPOSAL
Kadeem H ChuiGermanyElwin Sharvill PROPOSAL
Munro L PerinCanadaAsiya Javayant QUALIFIED
Alejandro W MaletJapanAmy Elsner RENEWAL
Kadeem G IturbideJapanOnyama Limba NEW
Wickens O ChuiBrazilStephen Shaw QUALIFIED
Octavia I MaletJapanStephen Shaw UNQUALIFIED
Smith T SlusarskiItalyAmy Elsner UNQUALIFIED
Deepesh O TollnerSpainOnyama Limba QUALIFIED
Greenwood M SergiArgentinaOnyama Limba PROPOSAL
Aruna P AmigonItalyAmy Elsner QUALIFIED
James K CaudyJapanXuxue Feng NEGOTIATION
Jefferson S DarakjyUnited KingdomIvan Magalhaes PROPOSAL
Francesco E RimItalyAnna Fali UNQUALIFIED
Aruna N AlbaresIndiaAnna Fali NEW
Tony V InouyeIndiaIvan Magalhaes PROPOSAL
Adams O RoysterArgentinaAmy Elsner NEGOTIATION
Jones H VenereGermanyElwin Sharvill NEGOTIATION
Maria W WieserCanadaAmy Elsner QUALIFIED
James A KuskoItalyBernardo Dominic QUALIFIED
Greenwood F FigeroaAustraliaXuxue Feng PROPOSAL
Maisha V GlickAustraliaAmy Elsner 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" frozenColumnsAlignment="left">
            <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>