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
Deepesh B TollnerArgentinaOnyama Limba RENEWAL
Julie C BologniaJapanAmy Elsner NEW
Ivar N NickaJapanXuxue Feng UNQUALIFIED
Jefferson C RoysterSpainIvan Magalhaes PROPOSAL
Aditya B NestleUnited KingdomIvan Magalhaes QUALIFIED
Isabel A MorascaBrazilAsiya Javayant PROPOSAL
Smith D PaprockiItalyOnyama Limba NEW
Murillo E FigeroaAustraliaBernardo Dominic NEW
Isabel M RimGermanyBernardo Dominic PROPOSAL
Rodrigues K InouyeGermanyAsiya Javayant QUALIFIED
Silvio S SergiFranceElwin Sharvill RENEWAL
Jennifer N BowleyRussiaAsiya Javayant RENEWAL
Misaki H GillianSpainIoni Bowcher RENEWAL
Ashley H WaycottRussiaStephen Shaw RENEWAL
Silvio F OstroskyFranceXuxue Feng NEW
Octavia Z AmigonFranceAnna Fali QUALIFIED
Emily O SergiRussiaIoni Bowcher UNQUALIFIED
Adams T GauchoIndiaOnyama Limba NEW
Adams Y SchemmerItalyOnyama Limba PROPOSAL
Chavez A OstroskyItalyOnyama Limba QUALIFIED
Juan U FigeroaGermanyXuxue Feng UNQUALIFIED
Tony O SaylorsAustraliaAmy Elsner RENEWAL
Darci N StockhamGermanyAmy Elsner NEW
Jennifer G GarufiRussiaAmy Elsner PROPOSAL
James H AmigonIndiaIvan Magalhaes NEGOTIATION
Isabel P AmigonJapanBernardo Dominic NEW
Wickens U BologniaCanadaIvan Magalhaes PROPOSAL
Jeanfrancois X MarrierSpainBernardo Dominic NEGOTIATION
Rodrigues S KolmetzGermanyXuxue Feng RENEWAL
Sinclair O FollerJapanBernardo Dominic RENEWAL
Jennifer K MaletIndiaAsiya Javayant RENEWAL
Jennifer D VocelkaSpainAsiya Javayant QUALIFIED
Nicolas R ChuiAustraliaAsiya Javayant PROPOSAL
Sinclair O ButtItalyAmy Elsner NEW
Kaitlin W FerenczSpainStephen Shaw UNQUALIFIED
Mayumi M GlickUnited KingdomBernardo Dominic UNQUALIFIED
Salvatore G BriddickJapanXuxue Feng RENEWAL
Stacey K WhobreyJapanBernardo Dominic NEGOTIATION
Ashley S RoysterArgentinaStephen Shaw RENEWAL
Kadeem K IturbideSpainStephen Shaw NEW
Chavez T InouyeRussiaAnna Fali PROPOSAL
Maria O RulapaughIndiaBernardo Dominic PROPOSAL
James Z PoquetteCanadaBernardo Dominic RENEWAL
Izzy A ChuiJapanIoni Bowcher QUALIFIED
Mayumi U OldroydJapanElwin Sharvill QUALIFIED
Wickens Y RimItalyOnyama Limba PROPOSAL
Murillo H MacleadGermanyBernardo Dominic PROPOSAL
Jones R ButtSpainElwin Sharvill UNQUALIFIED
Aika W MorascaCanadaAnna Fali NEGOTIATION
Ivar N FollerSpainBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin E GarufiGermanyAsiya Javayant QUALIFIED
Ivar Y MarrierFranceElwin Sharvill NEGOTIATION
David C DoeSpainStephen Shaw NEW
James D FerenczItalyXuxue Feng NEGOTIATION
Maisha F SchemmerSpainElwin Sharvill NEGOTIATION
Clifford H ChuiAustraliaAnna Fali PROPOSAL
Alejandro X MacleadJapanIoni Bowcher PROPOSAL
Leja U PaprockiFranceXuxue Feng PROPOSAL
Ricardo M VenereJapanElwin Sharvill PROPOSAL
Chavez K MarrierIndiaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro H ShinkoUnited Kingdom2025-09-11Buckley Miller Wright PROPOSAL26Bernardo Dominic
1001Deepesh E BowleyUnited Kingdom2025-10-01Feiner Bros NEGOTIATION61Asiya Javayant
1002Jones S RulapaughSpain2025-10-01Buckley Miller Wright NEW59Elwin Sharvill
1003Arvin T FlosiFrance2025-09-13Buckley Miller Wright PROPOSAL66Stephen Shaw
1004Ashley I DoeBrazil2025-09-24Dorl, James J Esq NEGOTIATION99Elwin Sharvill
1005Antonio X VenereAustralia2025-09-18Truhlar And Truhlar Attys UNQUALIFIED10Anna Fali
1006Murillo Y RutaCanada2025-09-22Buckley Miller Wright NEGOTIATION10Anna Fali
1007Jennifer E WieserGermany2025-09-19Printing Dimensions PROPOSAL89Ioni Bowcher
1008Kaitlin R WieserCanada2025-10-04Morlong Associates PROPOSAL1Anna Fali
1009Arvin X GlickAustralia2025-09-14Commercial Press UNQUALIFIED23Ioni Bowcher
1010Mayumi N PaprockiGermany2025-10-06Chemel, James L Cpa NEGOTIATION61Elwin Sharvill
1011Ivar V PoquetteIndia2025-10-03Feiner Bros PROPOSAL50Ioni Bowcher
1012Jones R SlusarskiCanada2025-09-26Truhlar And Truhlar Attys NEW17Amy Elsner
1013Chavez A TollnerRussia2025-09-23Chemel, James L Cpa NEGOTIATION44Ioni Bowcher
1014Rodrigues I GarufiFrance2025-09-30Chapman, Ross E Esq RENEWAL83Asiya Javayant
1015Adams H CaudyRussia2025-09-29Morlong Associates NEW90Elwin Sharvill
1016Juan U DoeGermany2025-10-01Rangoni Of Florence UNQUALIFIED57Ivan Magalhaes
1017Kaitlin N GauchoUnited Kingdom2025-09-16Chanay, Jeffrey A Esq NEW20Ioni Bowcher
1018Misaki R SchemmerRussia2025-10-08Printing Dimensions QUALIFIED0Ioni Bowcher
1019Isabel Y PerinUnited Kingdom2025-09-23Feiner Bros UNQUALIFIED15Elwin Sharvill
1020Ashley Q RulapaughCanada2025-10-07Morlong Associates PROPOSAL89Anna Fali
1021Greenwood W CaldareraJapan2025-09-20Chanay, Jeffrey A Esq NEGOTIATION94Ioni Bowcher
1022Jennifer Z GauchoArgentina2025-09-18Benton, John B Jr PROPOSAL32Ioni Bowcher
1023Emily Z InouyeFrance2025-09-25Printing Dimensions RENEWAL72Asiya Javayant
1024Morrow M ChuiFrance2025-10-09Chapman, Ross E Esq QUALIFIED84Xuxue Feng
1025Darci K StockhamRussia2025-09-14Rangoni Of Florence UNQUALIFIED64Asiya Javayant
1026Wickens L RulapaughIndia2025-09-24Commercial Press RENEWAL82Xuxue Feng
1027Maria X FerenczFrance2025-09-19Commercial Press PROPOSAL73Ioni Bowcher
1028Faith I ShinkoItaly2025-10-07Morlong Associates RENEWAL31Xuxue Feng
1029Wickens S FlosiIndia2025-09-16Chemel, James L Cpa PROPOSAL10Anna Fali
1030Juan Q StensethSpain2025-09-14Feiner Bros QUALIFIED79Amy Elsner
1031Arvin E SergiBrazil2025-09-28Dorl, James J Esq UNQUALIFIED74Asiya Javayant
1032Julie V NestleAustralia2025-09-14Commercial Press NEGOTIATION27Ivan Magalhaes
1033Jefferson X WieserRussia2025-09-27Chapman, Ross E Esq UNQUALIFIED49Asiya Javayant
1034Wickens K TollnerBrazil2025-09-23Chapman, Ross E Esq PROPOSAL84Stephen Shaw
1035Silvio T StockhamUnited Kingdom2025-10-07Dorl, James J Esq NEGOTIATION2Stephen Shaw
1036Clifford X SchemmerAustralia2025-09-23Feltz Printing Service UNQUALIFIED86Amy Elsner
1037Silvio O DarakjyBrazil2025-09-20Benton, John B Jr PROPOSAL93Bernardo Dominic
1038Smith W AlbaresFrance2025-10-09King, Christopher A Esq NEGOTIATION60Elwin Sharvill
1039Kadeem D KuskoUnited Kingdom2025-10-06Buckley Miller Wright NEW51Amy Elsner
1040Isabel V WhobreyJapan2025-09-11Feltz Printing Service RENEWAL49Stephen Shaw
1041Octavia A GlickArgentina2025-10-05Chapman, Ross E Esq RENEWAL42Bernardo Dominic
1042Arvin L OldroydSpain2025-09-20Dorl, James J Esq PROPOSAL37Stephen Shaw
1043Stacey R PaprockiIndia2025-09-26Dorl, James J Esq QUALIFIED59Asiya Javayant
1044Munro W MorascaFrance2025-09-25Morlong Associates NEGOTIATION61Xuxue Feng
1045Aika T VocelkaFrance2025-09-15Feltz Printing Service QUALIFIED17Anna Fali
1046Misaki V PaprockiFrance2025-10-01Commercial Press RENEWAL9Xuxue Feng
1047Silvio I OstroskyCanada2025-09-28Morlong Associates PROPOSAL96Ivan Magalhaes
1048Antonio L GauchoFrance2025-10-03Printing Dimensions NEW66Elwin Sharvill
1049Stacey Q SchemmerAustralia2025-09-11Dorl, James J Esq QUALIFIED34Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Smith X ChuiIndiaStephen Shaw NEW
Mayumi U ChuiRussiaBernardo Dominic QUALIFIED
Emily B CaldareraGermanyIvan Magalhaes QUALIFIED
Mayumi J FigeroaFranceAnna Fali QUALIFIED
Misaki O MorascaBrazilAnna Fali NEGOTIATION
Johnson A BologniaUnited KingdomOnyama Limba PROPOSAL
Ashley D VenereCanadaAsiya Javayant PROPOSAL
Julie F InouyeRussiaElwin Sharvill UNQUALIFIED
Jennifer P DarakjyIndiaIoni Bowcher NEGOTIATION
Johnson I ShinkoFranceStephen Shaw QUALIFIED
Aruna J NickaSpainAsiya Javayant RENEWAL
Chavez S RimArgentinaXuxue Feng QUALIFIED
Isabel I OstroskyGermanyIvan Magalhaes QUALIFIED
Sinclair L RimFranceAmy Elsner QUALIFIED
Ashley K DarakjyItalyElwin Sharvill RENEWAL
Ivar L DarakjyIndiaAsiya Javayant NEGOTIATION
James Y MorascaRussiaAnna Fali RENEWAL
Arvin S NestleItalyBernardo Dominic NEW
Chavez S BowleyArgentinaAnna Fali QUALIFIED
Stacey K DilliardIndiaXuxue Feng RENEWAL
Izzy A DarakjyRussiaElwin Sharvill NEW
Sinclair X WaycottIndiaStephen Shaw UNQUALIFIED
Ricardo D CampainFranceElwin Sharvill QUALIFIED
Aika X MaletItalyBernardo Dominic RENEWAL
Nicolas N AmigonCanadaElwin Sharvill NEW
Isabel I SlusarskiGermanyIvan Magalhaes RENEWAL
James J PerinItalyAmy Elsner PROPOSAL
Johnson U MarrierAustraliaAnna Fali PROPOSAL
Costa U BologniaFranceIvan Magalhaes QUALIFIED
Aruna D GarufiAustraliaAsiya Javayant RENEWAL
Cody N MorascaAustraliaIvan Magalhaes NEGOTIATION
James M CampainArgentinaXuxue Feng RENEWAL
Nicolas S OstroskyIndiaIoni Bowcher NEW
Maisha A RoysterFranceElwin Sharvill PROPOSAL
Kaitlin Q RimSpainElwin Sharvill NEW
Francesco L GarufiGermanyIvan Magalhaes RENEWAL
Tony U MorascaUnited KingdomXuxue Feng QUALIFIED
Ivar A ChuiUnited KingdomAsiya Javayant PROPOSAL
James J NickaRussiaXuxue Feng UNQUALIFIED
Ashley S WieserIndiaStephen Shaw QUALIFIED
Mayumi M BowleyArgentinaBernardo Dominic NEGOTIATION
Kadeem C StensethItalyAsiya Javayant RENEWAL
Salvatore X TollnerAustraliaStephen Shaw RENEWAL
Alejandro Q AlbaresItalyElwin Sharvill RENEWAL
Tony X OldroydFranceAsiya Javayant UNQUALIFIED
Izzy Z PerinJapanBernardo Dominic NEW
Leon F InouyeRussiaElwin Sharvill QUALIFIED
Chavez D RoysterItalyAmy Elsner QUALIFIED
Greenwood Y AlbaresItalyXuxue Feng RENEWAL
Maisha F ChuiRussiaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Leja G Sergi
Nicolas S Marrier
Ivar G Malet
Arvin S Vocelka
Ivar Z Darakjy
Faith F Dilliard
Kadeem R Morasca
Octavia B Inouye
Kadeem L Shinko
Clifford C Nestle
Clifford K Iturbide
Munro M Gillian
Kaitlin F Flosi
Francesco N Waycott
Ivar N Dilliard
Aditya R Schemmer
Francesco M Nestle
Nicolas H Wieser
Arvin I Wieser
Ivar Y Caldarera
Smith H Venere
Claire U Butt
Greenwood G Slusarski
Jeanfrancois B Paprocki
Morrow K Vocelka
Octavia V Ostrosky
Kadeem Z Ruta
Jones P Nestle
Izzy L Ruta
Leon K Sergi
Jefferson R Stockham
Darci L Poquette
Maisha E Vocelka
Julie Q Wieser
Aditya S Glick
Kadeem Z Chui
Clifford Q Foller
Nicolas W Whobrey
Julie V Amigon
Darci E Kusko
Mujtaba G Slusarski
Maria W Oldroyd
Greenwood Q Nicka
Jefferson E Nicka
Stacey A Poquette
Morrow P Malet
Mayumi A Stockham
Octavia J Ruta
Kaitlin S Inouye
Ricardo P Campain
IdCountryDate
1000India2025-09-19
1001Argentina2025-10-05
1002Brazil2025-09-14
1003India2025-09-15
1004France2025-09-29
1005India2025-09-30
1006Germany2025-10-04
1007Argentina2025-09-25
1008Australia2025-09-14
1009France2025-09-16
1010Russia2025-09-15
1011Italy2025-09-10
1012Russia2025-09-23
1013Canada2025-09-20
1014Brazil2025-09-28
1015Russia2025-10-05
1016Canada2025-10-04
1017Canada2025-09-26
1018France2025-10-06
1019United Kingdom2025-09-30
1020United Kingdom2025-09-30
1021Russia2025-09-22
1022France2025-10-08
1023Japan2025-09-12
1024United Kingdom2025-09-20
1025United Kingdom2025-09-20
1026Canada2025-09-29
1027United Kingdom2025-09-10
1028Argentina2025-10-07
1029Italy2025-09-24
1030India2025-10-06
1031Spain2025-09-28
1032Spain2025-09-10
1033Italy2025-09-15
1034Japan2025-09-15
1035France2025-09-19
1036France2025-10-02
1037Argentina2025-10-01
1038France2025-09-22
1039Canada2025-09-17
1040Germany2025-09-25
1041Canada2025-10-01
1042Spain2025-09-20
1043Japan2025-09-11
1044Russia2025-10-05
1045Italy2025-10-02
1046Canada2025-10-04
1047Brazil2025-10-05
1048Brazil2025-09-24
1049Australia2025-09-17

On-Demand Data

NameIdCountryDate
Tony T Saylors1000Germany2025-09-29
Munro J Shinko1001Australia2025-10-02
Claire U Royster1002Spain2025-09-26
Maria F Morasca1003United Kingdom2025-09-25
Stacey F Perin1004United Kingdom2025-09-25
Smith X Oldroyd1005Germany2025-09-19
Salvatore Y Garufi1006Russia2025-10-08
Rodrigues G Whobrey1007India2025-09-22
Leja E Bolognia1008Germany2025-09-11
Munro H Foller1009Spain2025-09-21
Smith B Shinko1010Argentina2025-09-27
Maria W Darakjy1011India2025-09-26
Aika N Ruta1012Australia2025-09-12
Aditya Z Perin1013Germany2025-09-17
Emily Z Gaucho1014Australia2025-10-08
Sinclair W Perin1015Italy2025-10-08
Jefferson X Venere1016Germany2025-09-16
Costa F Vocelka1017France2025-10-09
Costa S Darakjy1018Japan2025-10-05
Munro V Caldarera1019France2025-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez Z BriddickItalyOnyama Limba NEW
Claire U TollnerItalyXuxue Feng PROPOSAL
Rodrigues G FollerArgentinaAnna Fali PROPOSAL
Ivar P FigeroaRussiaElwin Sharvill NEGOTIATION
James U FigeroaBrazilAnna Fali QUALIFIED
Greenwood Q DoeJapanStephen Shaw QUALIFIED
Aditya L GillianSpainOnyama Limba RENEWAL
Nicolas K DilliardGermanyOnyama Limba UNQUALIFIED
Darci Z MaletGermanyXuxue Feng NEGOTIATION
Adams T ShinkoUnited KingdomIoni Bowcher PROPOSAL
Silvio B AmigonSpainOnyama Limba NEGOTIATION
Jefferson I TollnerGermanyBernardo Dominic RENEWAL
Aditya Q IturbideGermanyAnna Fali NEW
Francesco T MarrierGermanyBernardo Dominic QUALIFIED
Murillo R GlickFranceIoni Bowcher UNQUALIFIED
Clifford K KolmetzJapanIvan Magalhaes RENEWAL
Greenwood V InouyeJapanOnyama Limba RENEWAL
James K TollnerCanadaStephen Shaw NEW
Nicolas J WaycottJapanAsiya Javayant PROPOSAL
Clifford Z GlickGermanyOnyama Limba PROPOSAL
Misaki Q PerinAustraliaIvan Magalhaes NEGOTIATION
Aika U GarufiSpainXuxue Feng PROPOSAL
Claire Y StensethBrazilOnyama Limba NEW
Jefferson G PerinItalyElwin Sharvill UNQUALIFIED
Ashley X DilliardJapanStephen Shaw PROPOSAL
Misaki Y GlickRussiaAnna Fali PROPOSAL
Rodrigues K CaldareraIndiaXuxue Feng NEGOTIATION
Munro V RulapaughJapanAsiya Javayant NEW
Kadeem H GillianGermanyBernardo Dominic QUALIFIED
Morrow V CaldareraItalyBernardo Dominic PROPOSAL
Jennifer V RimJapanBernardo Dominic RENEWAL
Kadeem D NickaJapanElwin Sharvill QUALIFIED
Antonio C GlickBrazilOnyama Limba QUALIFIED
Faith F ButtCanadaXuxue Feng PROPOSAL
Mayumi W WieserFranceElwin Sharvill PROPOSAL
Leja A MorascaRussiaAmy Elsner NEGOTIATION
Smith K StensethItalyOnyama Limba NEGOTIATION
Costa R FollerIndiaBernardo Dominic RENEWAL
Chavez F KuskoSpainOnyama Limba PROPOSAL
Antonio Z StockhamSpainIoni Bowcher UNQUALIFIED

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