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
Arvin G MaletFranceBernardo Dominic UNQUALIFIED
Arvin I WaycottIndiaAsiya Javayant QUALIFIED
Mujtaba I CaudyBrazilElwin Sharvill RENEWAL
Jefferson O GillianUnited KingdomXuxue Feng RENEWAL
Wickens S CampainJapanAnna Fali NEGOTIATION
Morrow W FollerBrazilElwin Sharvill NEW
Chavez S OldroydSpainIvan Magalhaes NEGOTIATION
Misaki Q KolmetzItalyAnna Fali QUALIFIED
Kaitlin Z MarrierIndiaXuxue Feng PROPOSAL
Izzy H StockhamItalyAmy Elsner PROPOSAL
Munro D NestleRussiaIvan Magalhaes PROPOSAL
James Y PerinItalyBernardo Dominic QUALIFIED
Stacey Z KuskoItalyBernardo Dominic NEW
Arvin E MaletUnited KingdomStephen Shaw NEGOTIATION
Maisha P PaprockiSpainStephen Shaw RENEWAL
Clifford B KolmetzRussiaAsiya Javayant RENEWAL
Octavia R MorascaAustraliaBernardo Dominic UNQUALIFIED
Jones R NestleIndiaStephen Shaw NEGOTIATION
David V KolmetzCanadaXuxue Feng NEGOTIATION
Isabel R BowleySpainElwin Sharvill NEW
Munro S DoeIndiaStephen Shaw UNQUALIFIED
Claire J InouyeAustraliaStephen Shaw PROPOSAL
Jefferson J ShinkoGermanyAsiya Javayant PROPOSAL
Julie P SergiBrazilOnyama Limba RENEWAL
Misaki B BriddickJapanIvan Magalhaes NEW
Leon N AmigonRussiaIoni Bowcher UNQUALIFIED
Johnson M SergiJapanStephen Shaw QUALIFIED
Darci K KuskoCanadaStephen Shaw QUALIFIED
Arvin U PerinAustraliaOnyama Limba UNQUALIFIED
Stacey X BologniaArgentinaXuxue Feng RENEWAL
Darci V WhobreyBrazilIvan Magalhaes NEGOTIATION
Mayumi X PaprockiJapanBernardo Dominic PROPOSAL
Jeanfrancois N DarakjyItalyStephen Shaw QUALIFIED
Faith A AlbaresBrazilAmy Elsner QUALIFIED
Stacey L CaldareraCanadaIoni Bowcher QUALIFIED
Adams F TollnerRussiaStephen Shaw PROPOSAL
Mayumi Y WhobreyGermanyXuxue Feng RENEWAL
Ricardo K CaudyItalyXuxue Feng NEW
Aruna D FollerFranceElwin Sharvill PROPOSAL
Silvio H OstroskyUnited KingdomAsiya Javayant NEW
James F RulapaughGermanyOnyama Limba QUALIFIED
Misaki U StockhamCanadaIvan Magalhaes QUALIFIED
Ricardo E CaldareraUnited KingdomAsiya Javayant QUALIFIED
Misaki X WaycottJapanOnyama Limba NEGOTIATION
Francesco P SlusarskiBrazilAnna Fali UNQUALIFIED
Greenwood U MacleadAustraliaAnna Fali NEGOTIATION
Jefferson L DoeGermanyXuxue Feng UNQUALIFIED
Wickens E DilliardUnited KingdomElwin Sharvill PROPOSAL
Mayumi O AmigonGermanyStephen Shaw RENEWAL
Adams A TollnerBrazilIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Stacey Y SchemmerItalyXuxue Feng PROPOSAL
Darci C VocelkaSpainAnna Fali RENEWAL
Nicolas O DoeUnited KingdomAsiya Javayant RENEWAL
Julie W FlosiAustraliaOnyama Limba RENEWAL
Kadeem D OldroydCanadaXuxue Feng QUALIFIED
Ivar D StockhamArgentinaIoni Bowcher NEW
Antonio H DilliardUnited KingdomIoni Bowcher NEGOTIATION
Nicolas Q GauchoGermanyOnyama Limba NEW
Stacey C OldroydUnited KingdomElwin Sharvill NEGOTIATION
Antonio F FlosiCanadaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore B DilliardItaly2025-10-02Commercial Press QUALIFIED68Stephen Shaw
1001Kaitlin V FigeroaBrazil2025-09-28Truhlar And Truhlar Attys PROPOSAL44Asiya Javayant
1002Smith X WaycottRussia2025-10-09Dorl, James J Esq NEW42Stephen Shaw
1003Clifford Z RoysterGermany2025-09-24Feiner Bros NEW79Ioni Bowcher
1004Cody K DoeGermany2025-09-24Chanay, Jeffrey A Esq RENEWAL76Stephen Shaw
1005Adams U IturbideGermany2025-09-25Morlong Associates RENEWAL44Ivan Magalhaes
1006Costa U FlosiAustralia2025-09-28Benton, John B Jr PROPOSAL78Amy Elsner
1007Mayumi Q ShinkoCanada2025-09-15Chanay, Jeffrey A Esq NEW10Ivan Magalhaes
1008Maria P MacleadAustralia2025-09-19Chapman, Ross E Esq UNQUALIFIED58Asiya Javayant
1009Jennifer X GauchoGermany2025-09-24Rangoni Of Florence NEGOTIATION53Elwin Sharvill
1010Kadeem M FlosiCanada2025-09-25Printing Dimensions RENEWAL53Asiya Javayant
1011Murillo L VenereAustralia2025-09-22Chapman, Ross E Esq QUALIFIED51Amy Elsner
1012Jennifer G InouyeFrance2025-09-26Chemel, James L Cpa UNQUALIFIED96Asiya Javayant
1013Deepesh R FigeroaGermany2025-10-09Chapman, Ross E Esq UNQUALIFIED1Ioni Bowcher
1014Nicolas L ChuiSpain2025-09-18Printing Dimensions NEGOTIATION74Ivan Magalhaes
1015Adams G BriddickRussia2025-09-18Truhlar And Truhlar Attys UNQUALIFIED33Anna Fali
1016Jennifer U NestleUnited Kingdom2025-09-23Rousseaux, Michael Esq NEW9Bernardo Dominic
1017Faith N MaletItaly2025-09-19Buckley Miller Wright NEW14Stephen Shaw
1018Juan Z RutaUnited Kingdom2025-10-06Buckley Miller Wright RENEWAL63Ioni Bowcher
1019Julie Y CampainBrazil2025-10-14Chapman, Ross E Esq NEGOTIATION62Bernardo Dominic
1020Murillo W SlusarskiBrazil2025-09-23Chapman, Ross E Esq NEW12Ioni Bowcher
1021David Q FerenczRussia2025-10-05Chemel, James L Cpa NEGOTIATION21Amy Elsner
1022Izzy Q AlbaresAustralia2025-10-03Chanay, Jeffrey A Esq RENEWAL33Ioni Bowcher
1023Sinclair F SaylorsCanada2025-10-09Feiner Bros NEGOTIATION74Amy Elsner
1024Mayumi T StensethBrazil2025-09-27Dorl, James J Esq PROPOSAL58Amy Elsner
1025Morrow U MorascaBrazil2025-10-07Chemel, James L Cpa RENEWAL15Anna Fali
1026Jennifer Y GarufiItaly2025-10-12Chanay, Jeffrey A Esq UNQUALIFIED45Stephen Shaw
1027Aditya V ChuiFrance2025-10-10Chapman, Ross E Esq UNQUALIFIED44Asiya Javayant
1028Ivar D AmigonCanada2025-09-29Chanay, Jeffrey A Esq PROPOSAL79Onyama Limba
1029Tony C DarakjyBrazil2025-10-13Buckley Miller Wright PROPOSAL95Ioni Bowcher
1030Faith D BriddickSpain2025-10-10King, Christopher A Esq PROPOSAL95Xuxue Feng
1031Kadeem J KolmetzCanada2025-10-12Benton, John B Jr NEGOTIATION14Asiya Javayant
1032Julie W BowleyBrazil2025-10-05Chapman, Ross E Esq UNQUALIFIED27Xuxue Feng
1033James T VocelkaRussia2025-09-15Feltz Printing Service QUALIFIED68Xuxue Feng
1034Sinclair Q WieserJapan2025-10-10Dorl, James J Esq QUALIFIED42Bernardo Dominic
1035Salvatore O DarakjyRussia2025-09-27Rousseaux, Michael Esq RENEWAL36Elwin Sharvill
1036Mujtaba H IturbideCanada2025-09-22Chemel, James L Cpa UNQUALIFIED55Asiya Javayant
1037Stacey S StensethBrazil2025-09-26Rangoni Of Florence QUALIFIED70Ioni Bowcher
1038Johnson T CaldareraCanada2025-10-13Dorl, James J Esq QUALIFIED69Bernardo Dominic
1039Maria X DarakjyFrance2025-10-14King, Christopher A Esq NEGOTIATION54Ioni Bowcher
1040Faith I CaldareraIndia2025-09-18Chapman, Ross E Esq PROPOSAL35Stephen Shaw
1041Salvatore V RimSpain2025-09-15Feiner Bros UNQUALIFIED46Onyama Limba
1042Jones I SlusarskiArgentina2025-09-16Benton, John B Jr UNQUALIFIED89Onyama Limba
1043Sinclair U CaudyArgentina2025-09-24Commercial Press RENEWAL86Bernardo Dominic
1044Johnson V FerenczSpain2025-10-09Dorl, James J Esq RENEWAL45Asiya Javayant
1045Izzy M MaletFrance2025-10-05Rousseaux, Michael Esq NEGOTIATION95Stephen Shaw
1046Francesco T RulapaughItaly2025-09-16Morlong Associates UNQUALIFIED37Amy Elsner
1047Salvatore E CampainRussia2025-09-23Printing Dimensions UNQUALIFIED60Amy Elsner
1048Juan R DilliardFrance2025-10-07Feltz Printing Service QUALIFIED37Asiya Javayant
1049Mayumi Z KuskoGermany2025-09-23Morlong Associates UNQUALIFIED82Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Emily A FerenczIndiaAsiya Javayant UNQUALIFIED
Francesco R RimJapanIoni Bowcher UNQUALIFIED
Silvio T RutaRussiaStephen Shaw PROPOSAL
Ivar G DoeRussiaStephen Shaw PROPOSAL
Antonio P KuskoFranceAsiya Javayant RENEWAL
Julie P AmigonFranceOnyama Limba RENEWAL
Salvatore U RulapaughCanadaAsiya Javayant QUALIFIED
Cody Y VenereSpainAnna Fali NEW
Claire Y CampainItalyAsiya Javayant NEW
Arvin W ButtGermanyAmy Elsner QUALIFIED
Aruna K NestleGermanyBernardo Dominic RENEWAL
Jefferson X FigeroaItalyIoni Bowcher NEGOTIATION
Silvio K BologniaGermanyStephen Shaw NEGOTIATION
Munro S ButtIndiaAnna Fali RENEWAL
Rodrigues Y NickaJapanIoni Bowcher PROPOSAL
Maria N KuskoFranceAnna Fali RENEWAL
Tony J BriddickArgentinaBernardo Dominic QUALIFIED
David F StockhamGermanyAnna Fali PROPOSAL
Faith U NickaGermanyStephen Shaw NEW
Silvio W FigeroaItalyAnna Fali PROPOSAL
Octavia S MacleadCanadaStephen Shaw PROPOSAL
Francesco A PaprockiJapanAmy Elsner PROPOSAL
Nicolas L KolmetzFranceAnna Fali NEW
Octavia I StensethAustraliaElwin Sharvill NEW
Smith O BologniaJapanAsiya Javayant RENEWAL
Morrow S ButtBrazilElwin Sharvill PROPOSAL
Cody B CaldareraCanadaIoni Bowcher NEW
Claire R NickaBrazilStephen Shaw PROPOSAL
Salvatore C StockhamUnited KingdomElwin Sharvill NEW
Leja Y SchemmerRussiaAnna Fali NEW
Octavia S SlusarskiArgentinaStephen Shaw PROPOSAL
Faith L AmigonIndiaAsiya Javayant RENEWAL
James E SchemmerUnited KingdomAnna Fali UNQUALIFIED
Tony W ShinkoGermanyIvan Magalhaes NEW
Costa V FollerIndiaAnna Fali NEGOTIATION
Deepesh N WhobreyAustraliaStephen Shaw NEW
Ivar W GillianIndiaElwin Sharvill NEGOTIATION
Alejandro N MorascaBrazilAnna Fali RENEWAL
Misaki U SaylorsGermanyBernardo Dominic RENEWAL
Antonio P BriddickCanadaAnna Fali NEW
Costa U CampainGermanyOnyama Limba NEW
Jefferson F InouyeIndiaAnna Fali PROPOSAL
Emily S KuskoCanadaStephen Shaw RENEWAL
Aruna G FlosiIndiaBernardo Dominic NEGOTIATION
Ivar S IturbideSpainElwin Sharvill PROPOSAL
Rodrigues E DilliardAustraliaOnyama Limba PROPOSAL
Ivar T IturbideIndiaStephen Shaw NEW
Greenwood T ButtItalyOnyama Limba PROPOSAL
Arvin A OldroydRussiaBernardo Dominic PROPOSAL
Aruna E SlusarskiArgentinaElwin Sharvill NEW
Frozen Columns
Name
Tony T Chui
Ivar Q Waycott
Aika V Whobrey
Johnson X Nestle
Rodrigues Y Inouye
Arvin E Vocelka
Misaki Y Maclead
Silvio E Figeroa
Kadeem W Bowley
Kaitlin Y Chui
Antonio D Chui
Morrow L Sergi
Clifford H Flosi
Mayumi Y Briddick
Kadeem G Foller
Maria J Flosi
Darci I Ostrosky
Darci L Slusarski
Jones A Stockham
Deepesh P Foller
Chavez Y Gillian
Emily X Ostrosky
Ashley B Bowley
Ricardo H Schemmer
Jefferson M Amigon
Johnson O Campain
Faith A Venere
Adams U Butt
Maria Q Slusarski
Isabel A Caldarera
Wickens X Saylors
Emily L Venere
Murillo V Maclead
Smith T Slusarski
Juan N Bolognia
Johnson Q Garufi
Smith F Gillian
Adams M Chui
Alejandro A Caldarera
Johnson K Campain
Wickens N Darakjy
Maisha Z Doe
Izzy E Nicka
Stacey G Nestle
Kadeem X Stockham
Kadeem M Saylors
Silvio E Foller
Faith R Briddick
Francesco K Vocelka
Isabel C Iturbide
IdCountryDate
1000Australia2025-09-18
1001Argentina2025-10-07
1002Argentina2025-10-12
1003France2025-09-21
1004Argentina2025-10-09
1005Argentina2025-09-28
1006France2025-10-08
1007Russia2025-09-17
1008Japan2025-10-09
1009Germany2025-09-25
1010Spain2025-09-23
1011France2025-09-28
1012Canada2025-09-28
1013Japan2025-10-04
1014Japan2025-09-25
1015Russia2025-10-13
1016United Kingdom2025-09-27
1017Japan2025-09-24
1018France2025-10-13
1019Japan2025-10-06
1020Japan2025-09-22
1021Japan2025-10-10
1022Japan2025-10-08
1023Italy2025-09-26
1024Russia2025-09-28
1025Argentina2025-09-28
1026Italy2025-10-11
1027Germany2025-10-01
1028Argentina2025-10-06
1029Canada2025-09-23
1030India2025-09-29
1031India2025-09-24
1032France2025-09-23
1033United Kingdom2025-10-08
1034Russia2025-09-25
1035Russia2025-10-07
1036Canada2025-10-06
1037Italy2025-10-13
1038Italy2025-09-19
1039Argentina2025-09-22
1040Spain2025-09-15
1041Australia2025-09-20
1042Spain2025-09-15
1043Spain2025-10-13
1044Japan2025-10-02
1045Japan2025-09-19
1046Argentina2025-10-10
1047India2025-10-07
1048Spain2025-10-07
1049Brazil2025-10-07

On-Demand Data

NameIdCountryDate
Maisha R Shinko1000Australia2025-10-08
Octavia Z Caudy1001Australia2025-10-03
Jefferson T Albares1002Germany2025-10-04
Maisha O Briddick1003Japan2025-09-27
Aruna M Sergi1004Spain2025-09-25
Chavez L Campain1005Australia2025-09-15
Aditya C Slusarski1006Japan2025-09-15
Greenwood P Ruta1007United Kingdom2025-10-10
Jennifer C Nestle1008Italy2025-10-13
Antonio M Iturbide1009Spain2025-09-29
Ashley Y Royster1010Russia2025-10-10
Isabel V Caldarera1011Spain2025-09-28
Salvatore U Marrier1012India2025-10-14
Cody Q Iturbide1013Germany2025-10-09
Mayumi I Bolognia1014Australia2025-09-19
Deepesh L Whobrey1015Argentina2025-10-01
Murillo K Poquette1016Brazil2025-10-06
Jennifer Q Nestle1017Argentina2025-09-27
James B Kusko1018Australia2025-10-02
Tony G Marrier1019Canada2025-09-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David H RimRussiaXuxue Feng RENEWAL
Kadeem P WieserGermanyOnyama Limba NEW
Ashley A VenereGermanyXuxue Feng PROPOSAL
Chavez J GlickIndiaAmy Elsner RENEWAL
Johnson F AmigonFranceIvan Magalhaes NEGOTIATION
Leja X VenereIndiaXuxue Feng QUALIFIED
Julie G VocelkaGermanyAnna Fali PROPOSAL
Antonio O ButtSpainIvan Magalhaes QUALIFIED
Costa N SchemmerArgentinaStephen Shaw PROPOSAL
Aruna L FlosiUnited KingdomAsiya Javayant QUALIFIED
Izzy L StockhamCanadaAnna Fali PROPOSAL
Salvatore T FlosiRussiaAnna Fali NEGOTIATION
Morrow K ChuiSpainAnna Fali NEW
Clifford Z ButtAustraliaOnyama Limba RENEWAL
James T BowleyGermanyBernardo Dominic QUALIFIED
Darci F MorascaSpainStephen Shaw UNQUALIFIED
Leja Q AmigonBrazilIvan Magalhaes UNQUALIFIED
Johnson Z SergiIndiaAmy Elsner QUALIFIED
Kadeem S GillianFranceIoni Bowcher NEW
Julie R StensethCanadaOnyama Limba PROPOSAL
Ivar G FollerSpainOnyama Limba RENEWAL
Deepesh D InouyeJapanXuxue Feng PROPOSAL
Ricardo T RoysterJapanAmy Elsner UNQUALIFIED
Mayumi Y PaprockiAustraliaIoni Bowcher NEW
Izzy V MorascaFranceAmy Elsner RENEWAL
David R DilliardFranceOnyama Limba PROPOSAL
Jeanfrancois Y SchemmerJapanAsiya Javayant QUALIFIED
Adams Q NickaBrazilIvan Magalhaes UNQUALIFIED
Jefferson Z VenereItalyElwin Sharvill RENEWAL
Izzy B StensethArgentinaOnyama Limba NEW
Leon D BowleyFranceBernardo Dominic PROPOSAL
Sinclair T RoysterItalyIoni Bowcher NEW
Kaitlin I PaprockiUnited KingdomAnna Fali NEGOTIATION
Kadeem W CaldareraArgentinaAmy Elsner RENEWAL
Claire K SlusarskiGermanyOnyama Limba QUALIFIED
Rodrigues C CaldareraFranceBernardo Dominic NEGOTIATION
Maria I GarufiBrazilIoni Bowcher PROPOSAL
Deepesh G RimJapanIvan Magalhaes UNQUALIFIED
Morrow D FollerCanadaXuxue Feng NEGOTIATION
Antonio Z WaycottItalyAnna Fali QUALIFIED

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