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
Misaki V MacleadArgentinaOnyama Limba PROPOSAL
Clifford O StensethSpainOnyama Limba QUALIFIED
Greenwood T WieserGermanyStephen Shaw QUALIFIED
Aika D DoeIndiaAsiya Javayant UNQUALIFIED
Sinclair O GillianRussiaXuxue Feng RENEWAL
Rodrigues Q AlbaresBrazilBernardo Dominic NEW
Misaki R GlickUnited KingdomOnyama Limba QUALIFIED
Emily M MaletSpainOnyama Limba RENEWAL
Izzy J SlusarskiBrazilXuxue Feng NEW
Silvio S KuskoIndiaBernardo Dominic PROPOSAL
Salvatore J StensethItalyAsiya Javayant UNQUALIFIED
Izzy O SchemmerBrazilBernardo Dominic RENEWAL
Smith V PoquetteAustraliaXuxue Feng QUALIFIED
Murillo E FlosiAustraliaXuxue Feng QUALIFIED
Sinclair R PaprockiJapanIoni Bowcher QUALIFIED
Silvio U AlbaresUnited KingdomIoni Bowcher PROPOSAL
Maria G CaldareraGermanyAmy Elsner PROPOSAL
Faith R GauchoIndiaElwin Sharvill NEGOTIATION
Cody W SchemmerSpainElwin Sharvill QUALIFIED
Johnson Q WieserCanadaXuxue Feng QUALIFIED
Silvio X PaprockiAustraliaIoni Bowcher RENEWAL
Kadeem A KuskoFranceOnyama Limba PROPOSAL
Morrow M IturbideBrazilAsiya Javayant NEGOTIATION
Alejandro T ShinkoGermanyOnyama Limba NEGOTIATION
Aditya A VenereUnited KingdomXuxue Feng NEW
Juan P NickaAustraliaElwin Sharvill PROPOSAL
Emily U DoeFranceOnyama Limba UNQUALIFIED
Alejandro G WieserBrazilAnna Fali RENEWAL
Mujtaba N StockhamIndiaOnyama Limba UNQUALIFIED
Maria W GlickAustraliaStephen Shaw RENEWAL
Arvin T FigeroaArgentinaStephen Shaw QUALIFIED
Octavia J RimFranceStephen Shaw UNQUALIFIED
Jeanfrancois R SaylorsFranceIoni Bowcher UNQUALIFIED
Jefferson D BriddickSpainXuxue Feng NEW
Kaitlin T BriddickBrazilIvan Magalhaes PROPOSAL
Misaki F RimCanadaAsiya Javayant NEW
Leon M AmigonIndiaBernardo Dominic NEGOTIATION
Morrow Q RulapaughAustraliaIvan Magalhaes NEW
Arvin K RutaItalyIoni Bowcher NEW
Ricardo G FerenczSpainXuxue Feng RENEWAL
Isabel M CaudyJapanAsiya Javayant QUALIFIED
Ashley X SergiIndiaAsiya Javayant NEGOTIATION
Misaki B DilliardGermanyAsiya Javayant PROPOSAL
Antonio B WieserFranceStephen Shaw QUALIFIED
Murillo R CampainUnited KingdomElwin Sharvill PROPOSAL
Deepesh Q TollnerIndiaStephen Shaw NEW
James S GarufiAustraliaBernardo Dominic RENEWAL
Greenwood U BowleyJapanElwin Sharvill NEW
Tony U PerinSpainIoni Bowcher UNQUALIFIED
Jennifer Z TollnerJapanStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Ashley Q OstroskyIndiaIoni Bowcher QUALIFIED
Maisha P MaletJapanOnyama Limba QUALIFIED
Ivar W MorascaBrazilXuxue Feng RENEWAL
Antonio S ChuiItalyXuxue Feng UNQUALIFIED
Maria J SlusarskiSpainIoni Bowcher RENEWAL
Rodrigues S MaletRussiaBernardo Dominic RENEWAL
Leja K MorascaAustraliaBernardo Dominic QUALIFIED
Greenwood R MorascaJapanAmy Elsner NEGOTIATION
Jeanfrancois M FlosiRussiaElwin Sharvill PROPOSAL
Wickens B CampainArgentinaXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley N KuskoCanada2025-07-31Printing Dimensions PROPOSAL86Ioni Bowcher
1001Maisha L FollerFrance2025-07-28Feltz Printing Service PROPOSAL28Ioni Bowcher
1002Darci W BowleyRussia2025-08-17Printing Dimensions NEW83Onyama Limba
1003Claire M CaldareraUnited Kingdom2025-08-09Buckley Miller Wright QUALIFIED36Ioni Bowcher
1004Maria R FerenczItaly2025-08-07Rousseaux, Michael Esq RENEWAL9Xuxue Feng
1005Stacey J MaletAustralia2025-08-12Morlong Associates NEW31Ioni Bowcher
1006Julie C NickaGermany2025-08-12Dorl, James J Esq UNQUALIFIED83Asiya Javayant
1007Sinclair A WhobreyJapan2025-08-07King, Christopher A Esq QUALIFIED37Amy Elsner
1008Wickens B WhobreySpain2025-08-18Buckley Miller Wright NEGOTIATION61Elwin Sharvill
1009Silvio E MaletAustralia2025-07-27Commercial Press UNQUALIFIED28Xuxue Feng
1010Ashley J FlosiRussia2025-08-18Rousseaux, Michael Esq NEW44Anna Fali
1011Ivar R WhobreyRussia2025-08-08Dorl, James J Esq NEGOTIATION7Bernardo Dominic
1012Ashley N DarakjyRussia2025-08-23Rangoni Of Florence UNQUALIFIED25Onyama Limba
1013Tony U RimCanada2025-08-18Feltz Printing Service RENEWAL45Ivan Magalhaes
1014Johnson N VenereBrazil2025-08-11Benton, John B Jr PROPOSAL54Stephen Shaw
1015Jennifer G FerenczAustralia2025-08-22Rousseaux, Michael Esq NEW86Anna Fali
1016Aruna F GarufiIndia2025-08-10Printing Dimensions UNQUALIFIED99Bernardo Dominic
1017Faith T NestleAustralia2025-08-08Feiner Bros PROPOSAL47Amy Elsner
1018Clifford U CaldareraJapan2025-08-07Rousseaux, Michael Esq UNQUALIFIED29Ioni Bowcher
1019Leja F KuskoBrazil2025-08-09Feltz Printing Service RENEWAL6Stephen Shaw
1020Ivar H ShinkoUnited Kingdom2025-08-06Morlong Associates RENEWAL72Ivan Magalhaes
1021Tony Q RutaCanada2025-07-26Truhlar And Truhlar Attys NEGOTIATION65Elwin Sharvill
1022Sinclair O CaudyItaly2025-08-12Buckley Miller Wright NEW14Anna Fali
1023Emily M NickaJapan2025-07-28King, Christopher A Esq RENEWAL44Stephen Shaw
1024Julie B TollnerJapan2025-08-08Benton, John B Jr QUALIFIED37Amy Elsner
1025Chavez E GarufiJapan2025-08-02Printing Dimensions NEW34Onyama Limba
1026Maria R AmigonGermany2025-08-22Rangoni Of Florence RENEWAL13Amy Elsner
1027Aika I PoquetteFrance2025-07-30Commercial Press UNQUALIFIED59Asiya Javayant
1028Faith I ShinkoArgentina2025-08-15King, Christopher A Esq PROPOSAL76Asiya Javayant
1029Jeanfrancois H BowleyFrance2025-08-14Printing Dimensions NEGOTIATION58Asiya Javayant
1030Mujtaba Y StensethGermany2025-08-04Buckley Miller Wright UNQUALIFIED66Anna Fali
1031Greenwood C WhobreyAustralia2025-08-01Dorl, James J Esq QUALIFIED30Amy Elsner
1032James E CampainCanada2025-07-27Chanay, Jeffrey A Esq QUALIFIED46Anna Fali
1033Nicolas Q BologniaRussia2025-08-16Chemel, James L Cpa NEW90Asiya Javayant
1034Francesco D SaylorsArgentina2025-08-23Benton, John B Jr RENEWAL5Xuxue Feng
1035Arvin J AmigonItaly2025-07-28Chanay, Jeffrey A Esq UNQUALIFIED44Ivan Magalhaes
1036Leja K FigeroaIndia2025-08-13Printing Dimensions NEW67Elwin Sharvill
1037Adams P MarrierJapan2025-08-04Chapman, Ross E Esq UNQUALIFIED98Elwin Sharvill
1038Octavia W NestleArgentina2025-08-23Commercial Press UNQUALIFIED5Onyama Limba
1039Aditya V MorascaIndia2025-08-01Dorl, James J Esq UNQUALIFIED81Onyama Limba
1040Octavia H FerenczAustralia2025-08-23Benton, John B Jr NEW37Asiya Javayant
1041Misaki U RulapaughArgentina2025-08-23Commercial Press NEW81Stephen Shaw
1042Ricardo P GauchoGermany2025-08-08Commercial Press NEGOTIATION23Anna Fali
1043Darci N FigeroaAustralia2025-07-29Buckley Miller Wright RENEWAL61Ivan Magalhaes
1044Aika R OldroydCanada2025-08-08Chapman, Ross E Esq PROPOSAL69Stephen Shaw
1045Ricardo T GauchoBrazil2025-08-23Rousseaux, Michael Esq NEW64Onyama Limba
1046Stacey E MacleadUnited Kingdom2025-08-21King, Christopher A Esq RENEWAL54Anna Fali
1047Octavia F RoysterArgentina2025-08-09Morlong Associates UNQUALIFIED13Elwin Sharvill
1048Aruna X IturbideAustralia2025-08-03King, Christopher A Esq UNQUALIFIED38Bernardo Dominic
1049Munro D MarrierFrance2025-07-31Rangoni Of Florence NEW50Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Tony J NestleItalyAnna Fali RENEWAL
Tony I BriddickItalyAmy Elsner RENEWAL
Julie Z NestleSpainElwin Sharvill NEW
Stacey L RutaCanadaIvan Magalhaes UNQUALIFIED
Deepesh Q RimBrazilIvan Magalhaes NEW
Julie H VenereBrazilOnyama Limba QUALIFIED
Kaitlin G FollerArgentinaIoni Bowcher NEW
Arvin F FlosiItalyIvan Magalhaes NEGOTIATION
Nicolas E TollnerArgentinaIvan Magalhaes UNQUALIFIED
Mayumi L DoeAustraliaXuxue Feng UNQUALIFIED
Jeanfrancois B AlbaresBrazilStephen Shaw RENEWAL
Ivar Z DilliardRussiaAnna Fali NEW
Chavez Q SchemmerGermanyStephen Shaw RENEWAL
Mujtaba C SlusarskiRussiaOnyama Limba QUALIFIED
Adams K MacleadAustraliaIoni Bowcher NEW
Octavia N InouyeFranceXuxue Feng NEW
Kadeem Q PoquetteIndiaIoni Bowcher RENEWAL
Leon C WaycottGermanyAnna Fali RENEWAL
Izzy F GillianJapanAnna Fali QUALIFIED
Ricardo C RoysterIndiaAmy Elsner QUALIFIED
Aditya M ButtRussiaStephen Shaw NEW
Wickens P WieserAustraliaXuxue Feng UNQUALIFIED
Jeanfrancois F DilliardAustraliaElwin Sharvill QUALIFIED
Wickens Y GlickBrazilBernardo Dominic QUALIFIED
Juan A PoquetteIndiaBernardo Dominic PROPOSAL
Adams L GauchoSpainXuxue Feng NEW
Adams B OldroydArgentinaOnyama Limba NEW
Emily B ShinkoArgentinaAsiya Javayant NEW
Deepesh L DoeFranceIoni Bowcher NEW
Mujtaba H StockhamGermanyStephen Shaw QUALIFIED
Chavez S StensethJapanElwin Sharvill NEGOTIATION
Munro H WieserBrazilXuxue Feng QUALIFIED
Darci V KolmetzAustraliaIvan Magalhaes RENEWAL
Kaitlin T FlosiRussiaXuxue Feng PROPOSAL
Emily A VocelkaAustraliaAmy Elsner PROPOSAL
Mayumi O RimRussiaBernardo Dominic QUALIFIED
Mujtaba L RulapaughJapanStephen Shaw NEGOTIATION
Smith J FlosiCanadaBernardo Dominic NEGOTIATION
Emily J ButtCanadaAnna Fali RENEWAL
James Q RulapaughCanadaAnna Fali RENEWAL
Aika R FigeroaItalyElwin Sharvill PROPOSAL
Izzy G CaudyJapanElwin Sharvill PROPOSAL
Leja O GlickSpainAmy Elsner PROPOSAL
Aruna Q BologniaSpainIoni Bowcher NEW
Jefferson K RutaCanadaStephen Shaw QUALIFIED
Greenwood L BologniaRussiaIvan Magalhaes NEW
Aruna S NickaUnited KingdomElwin Sharvill PROPOSAL
Octavia H AlbaresAustraliaXuxue Feng NEW
Izzy Q FlosiFranceOnyama Limba UNQUALIFIED
Jennifer Z ChuiCanadaElwin Sharvill PROPOSAL
Frozen Columns
Name
Aditya N Royster
Misaki V Waycott
Kaitlin P Ferencz
Cody S Doe
Nicolas V Amigon
Rodrigues D Oldroyd
Mujtaba C Stenseth
Wickens T Bolognia
Sinclair C Garufi
Sinclair L Gaucho
Ashley B Whobrey
Johnson V Marrier
Salvatore U Gaucho
Octavia R Darakjy
Juan O Foller
Francesco E Whobrey
Ricardo J Malet
Arvin R Stenseth
Leja Q Iturbide
Kaitlin J Bolognia
Silvio L Ruta
Munro B Caldarera
Claire M Rim
Jefferson X Glick
Clifford D Poquette
Stacey H Briddick
Juan Z Foller
Mujtaba P Rulapaugh
Sinclair Y Rim
Jones C Sergi
Costa O Doe
Jennifer X Gillian
Munro T Dilliard
Juan G Nicka
Deepesh R Darakjy
Jennifer H Marrier
Mujtaba T Foller
Kaitlin J Maclead
David A Gillian
Jones K Gillian
Octavia C Campain
Leon K Ruta
Aika X Glick
James C Caldarera
Alejandro B Albares
Costa C Foller
Maisha U Poquette
Aditya J Venere
Chavez V Waycott
Chavez X Doe
IdCountryDate
1000France2025-08-10
1001France2025-07-26
1002India2025-08-15
1003France2025-08-19
1004Japan2025-08-19
1005France2025-08-12
1006France2025-07-29
1007Brazil2025-08-17
1008Germany2025-08-17
1009Japan2025-08-16
1010Russia2025-08-02
1011Australia2025-08-11
1012India2025-08-02
1013Russia2025-08-04
1014United Kingdom2025-08-05
1015Italy2025-08-23
1016Canada2025-08-13
1017Spain2025-07-29
1018Spain2025-07-25
1019United Kingdom2025-08-13
1020United Kingdom2025-08-06
1021Japan2025-08-13
1022Argentina2025-07-26
1023Japan2025-07-27
1024Japan2025-08-11
1025Germany2025-07-29
1026Argentina2025-07-28
1027Italy2025-08-14
1028Argentina2025-07-25
1029Germany2025-08-23
1030Argentina2025-08-23
1031United Kingdom2025-08-03
1032Australia2025-08-13
1033India2025-07-30
1034Brazil2025-08-20
1035United Kingdom2025-08-09
1036Japan2025-08-05
1037Japan2025-08-08
1038Russia2025-08-22
1039Brazil2025-08-13
1040France2025-08-06
1041Italy2025-08-14
1042Russia2025-08-13
1043Japan2025-08-06
1044Australia2025-08-07
1045Spain2025-08-20
1046United Kingdom2025-08-02
1047Canada2025-08-01
1048France2025-08-14
1049Italy2025-08-18

On-Demand Data

NameIdCountryDate
Smith P Schemmer1000Argentina2025-08-14
Johnson C Slusarski1001Canada2025-08-06
Jefferson O Dilliard1002Germany2025-07-25
Rodrigues K Gaucho1003Brazil2025-08-08
Octavia M Amigon1004Russia2025-08-03
Claire N Tollner1005Japan2025-08-20
Aika E Iturbide1006France2025-08-13
Juan F Doe1007Spain2025-08-22
Maisha E Stockham1008United Kingdom2025-08-12
Maria N Gillian1009Spain2025-08-02
James F Butt1010Spain2025-07-30
Kaitlin U Flosi1011Canada2025-07-27
Clifford P Garufi1012Canada2025-08-01
Isabel S Royster1013Italy2025-08-20
Isabel S Nicka1014Germany2025-08-09
Sinclair I Iturbide1015Brazil2025-07-27
Jones H Dilliard1016France2025-08-14
Jones H Bowley1017Argentina2025-08-06
Antonio G Glick1018Brazil2025-08-10
Kaitlin V Ostrosky1019Japan2025-08-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel Z DarakjyBrazilXuxue Feng NEW
Deepesh C WhobreyAustraliaStephen Shaw RENEWAL
Smith X KolmetzCanadaAnna Fali QUALIFIED
Munro I AlbaresAustraliaIoni Bowcher PROPOSAL
Johnson W BowleySpainIvan Magalhaes PROPOSAL
Jeanfrancois N FigeroaArgentinaOnyama Limba NEGOTIATION
Francesco N AlbaresRussiaAsiya Javayant NEGOTIATION
Izzy F SaylorsCanadaStephen Shaw RENEWAL
Munro I SergiRussiaIvan Magalhaes QUALIFIED
Chavez G GauchoBrazilAnna Fali NEGOTIATION
Greenwood Y BowleyCanadaIoni Bowcher RENEWAL
James I CampainBrazilAnna Fali NEGOTIATION
Murillo C BowleyBrazilStephen Shaw RENEWAL
Faith Z KuskoAustraliaAmy Elsner PROPOSAL
Deepesh G AmigonFranceElwin Sharvill RENEWAL
Wickens N FerenczJapanElwin Sharvill NEW
Kadeem K WaycottItalyIoni Bowcher PROPOSAL
Isabel L VenereCanadaAsiya Javayant NEW
Jeanfrancois Q IturbideBrazilBernardo Dominic NEGOTIATION
Clifford Q TollnerRussiaElwin Sharvill NEW
Maisha L NickaJapanIvan Magalhaes RENEWAL
Antonio I RimBrazilStephen Shaw PROPOSAL
Rodrigues W RulapaughBrazilAnna Fali NEW
Izzy W KolmetzGermanyAnna Fali NEW
Jeanfrancois H PoquetteFranceAnna Fali QUALIFIED
Misaki I IturbideItalyAmy Elsner QUALIFIED
Aika Z OstroskyCanadaOnyama Limba NEW
Aika E KolmetzItalyElwin Sharvill UNQUALIFIED
Stacey S GarufiIndiaElwin Sharvill PROPOSAL
Misaki T SaylorsCanadaStephen Shaw UNQUALIFIED
Sinclair K MacleadUnited KingdomIvan Magalhaes QUALIFIED
Ricardo F KuskoItalyIvan Magalhaes RENEWAL
Kadeem C CaudyRussiaAnna Fali RENEWAL
Mayumi B BowleyUnited KingdomIvan Magalhaes QUALIFIED
Kaitlin E BriddickGermanyAnna Fali PROPOSAL
Jennifer T PoquetteSpainElwin Sharvill QUALIFIED
Mujtaba M DarakjyJapanBernardo Dominic NEW
Aruna R MacleadBrazilIvan Magalhaes RENEWAL
Costa G FlosiArgentinaStephen Shaw NEGOTIATION
Clifford N DarakjyUnited KingdomElwin Sharvill NEW

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