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
Clifford U AlbaresBrazilXuxue Feng NEGOTIATION
Octavia Z ChuiGermanyIoni Bowcher QUALIFIED
Claire O ShinkoArgentinaAnna Fali UNQUALIFIED
Greenwood M NickaGermanyAnna Fali UNQUALIFIED
Murillo V KolmetzGermanyStephen Shaw RENEWAL
Kaitlin E SergiJapanAsiya Javayant UNQUALIFIED
Greenwood T StockhamGermanyElwin Sharvill UNQUALIFIED
Isabel Y SergiCanadaBernardo Dominic RENEWAL
Rodrigues H WieserUnited KingdomBernardo Dominic NEGOTIATION
Chavez I CaudyCanadaAsiya Javayant RENEWAL
Murillo F ShinkoRussiaOnyama Limba UNQUALIFIED
Octavia I TollnerArgentinaAmy Elsner NEGOTIATION
Jefferson I BowleyBrazilAmy Elsner UNQUALIFIED
Silvio D SlusarskiArgentinaOnyama Limba RENEWAL
Munro L MorascaIndiaStephen Shaw NEGOTIATION
Darci E RutaGermanyAsiya Javayant NEW
Johnson K OstroskySpainIoni Bowcher QUALIFIED
Ivar I WaycottAustraliaOnyama Limba NEGOTIATION
Jennifer H MarrierFranceStephen Shaw NEGOTIATION
Ricardo V WaycottArgentinaIvan Magalhaes NEGOTIATION
Aika H RoysterItalyAmy Elsner NEW
Stacey K RulapaughItalyBernardo Dominic NEGOTIATION
Leon G OldroydSpainElwin Sharvill QUALIFIED
Ivar I DoeRussiaBernardo Dominic QUALIFIED
Ivar Z StockhamFranceAsiya Javayant NEW
Maria L DarakjyBrazilElwin Sharvill PROPOSAL
Arvin G AlbaresItalyAmy Elsner NEW
Kadeem A SergiIndiaAsiya Javayant PROPOSAL
Izzy K GillianFranceAnna Fali NEGOTIATION
Morrow A PoquetteCanadaXuxue Feng QUALIFIED
Antonio Q OstroskyCanadaAsiya Javayant QUALIFIED
Munro Y RutaFranceBernardo Dominic QUALIFIED
Arvin X InouyeIndiaAnna Fali PROPOSAL
Aruna R ShinkoArgentinaIvan Magalhaes PROPOSAL
Aditya Q GauchoArgentinaElwin Sharvill NEGOTIATION
Sinclair U CaudyJapanAnna Fali RENEWAL
Darci V SlusarskiRussiaXuxue Feng UNQUALIFIED
Morrow N SaylorsJapanAsiya Javayant NEW
Tony R FlosiCanadaIvan Magalhaes UNQUALIFIED
Clifford L VenereAustraliaOnyama Limba RENEWAL
Greenwood G KolmetzRussiaAsiya Javayant UNQUALIFIED
Nicolas K RoysterIndiaAmy Elsner NEGOTIATION
Faith S VenereGermanyAmy Elsner UNQUALIFIED
Aika D PerinGermanyAnna Fali RENEWAL
Cody X PoquetteSpainOnyama Limba UNQUALIFIED
Kaitlin V MarrierSpainXuxue Feng NEGOTIATION
Jennifer Z RimBrazilAsiya Javayant UNQUALIFIED
Chavez D RimRussiaXuxue Feng UNQUALIFIED
Aditya S DoeAustraliaBernardo Dominic RENEWAL
Claire Z StockhamFranceElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Deepesh J MaletAustraliaXuxue Feng NEW
Julie I TollnerGermanyElwin Sharvill NEGOTIATION
Isabel M MacleadRussiaAmy Elsner PROPOSAL
Ricardo K SlusarskiIndiaStephen Shaw NEGOTIATION
Darci U BriddickBrazilAnna Fali RENEWAL
Tony V TollnerBrazilStephen Shaw RENEWAL
Rodrigues B WhobreyArgentinaBernardo Dominic RENEWAL
Murillo M FollerCanadaStephen Shaw UNQUALIFIED
Aika Q RulapaughJapanAsiya Javayant NEGOTIATION
Alejandro E MaletJapanIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem F MarrierGermany2025-09-30Rangoni Of Florence NEW18Ivan Magalhaes
1001Claire F AmigonItaly2025-09-13Chapman, Ross E Esq NEW93Anna Fali
1002David H CaldareraSpain2025-09-27Commercial Press PROPOSAL30Ioni Bowcher
1003Octavia G RulapaughSpain2025-09-15Dorl, James J Esq NEGOTIATION75Bernardo Dominic
1004Aika K PerinFrance2025-09-27Chapman, Ross E Esq RENEWAL82Amy Elsner
1005Munro P SlusarskiGermany2025-09-24Rangoni Of Florence NEGOTIATION50Bernardo Dominic
1006Maria W RutaFrance2025-10-06King, Christopher A Esq QUALIFIED10Stephen Shaw
1007Isabel P AmigonFrance2025-10-01Feltz Printing Service UNQUALIFIED69Xuxue Feng
1008Deepesh X AlbaresIndia2025-09-20King, Christopher A Esq RENEWAL91Xuxue Feng
1009Arvin G WieserUnited Kingdom2025-09-21Feltz Printing Service NEW39Stephen Shaw
1010David A FerenczRussia2025-09-15Morlong Associates NEW55Onyama Limba
1011Emily I IturbideJapan2025-10-09Commercial Press NEW28Elwin Sharvill
1012Wickens F MarrierItaly2025-09-15Benton, John B Jr NEW42Xuxue Feng
1013Aika M GlickIndia2025-09-15Benton, John B Jr NEGOTIATION74Asiya Javayant
1014Nicolas Q RulapaughCanada2025-10-05Chemel, James L Cpa NEW0Xuxue Feng
1015Mayumi Y StockhamItaly2025-10-04Morlong Associates RENEWAL25Ivan Magalhaes
1016Rodrigues W FollerCanada2025-10-08Chapman, Ross E Esq UNQUALIFIED29Asiya Javayant
1017Alejandro P MacleadSpain2025-09-19Chanay, Jeffrey A Esq PROPOSAL52Anna Fali
1018Ivar P RulapaughArgentina2025-10-06Morlong Associates NEW81Onyama Limba
1019Kaitlin U NestleSpain2025-10-06Dorl, James J Esq PROPOSAL31Bernardo Dominic
1020Aruna G FigeroaAustralia2025-09-29Commercial Press NEGOTIATION25Elwin Sharvill
1021Deepesh K SaylorsJapan2025-09-22Printing Dimensions PROPOSAL82Xuxue Feng
1022Maisha M SergiAustralia2025-09-13Benton, John B Jr NEGOTIATION14Onyama Limba
1023Murillo N WieserBrazil2025-09-28Dorl, James J Esq NEGOTIATION22Stephen Shaw
1024Munro Z BologniaCanada2025-10-09Dorl, James J Esq UNQUALIFIED12Stephen Shaw
1025Costa F WhobreyIndia2025-09-28Commercial Press PROPOSAL11Ioni Bowcher
1026David J OstroskyCanada2025-09-12Rousseaux, Michael Esq UNQUALIFIED7Amy Elsner
1027Deepesh B KuskoAustralia2025-10-08Rousseaux, Michael Esq NEGOTIATION92Amy Elsner
1028Octavia V MorascaJapan2025-10-01Buckley Miller Wright PROPOSAL43Amy Elsner
1029Francesco R ButtSpain2025-09-25Chapman, Ross E Esq PROPOSAL86Amy Elsner
1030Murillo J PaprockiItaly2025-10-09Commercial Press PROPOSAL48Anna Fali
1031Ricardo J WieserArgentina2025-09-21Buckley Miller Wright UNQUALIFIED56Elwin Sharvill
1032Leon W ShinkoSpain2025-09-14Benton, John B Jr RENEWAL73Elwin Sharvill
1033Ricardo Q KolmetzGermany2025-09-15Buckley Miller Wright PROPOSAL17Amy Elsner
1034Misaki X PoquetteJapan2025-09-23King, Christopher A Esq PROPOSAL23Xuxue Feng
1035Johnson T DoeUnited Kingdom2025-09-15Chemel, James L Cpa PROPOSAL41Ioni Bowcher
1036Aditya M GlickSpain2025-09-28Chapman, Ross E Esq UNQUALIFIED23Amy Elsner
1037Salvatore X FerenczRussia2025-09-28Morlong Associates QUALIFIED41Ioni Bowcher
1038Alejandro S MarrierItaly2025-10-08Chapman, Ross E Esq NEGOTIATION58Amy Elsner
1039Cody F FollerFrance2025-09-23Feiner Bros PROPOSAL59Ioni Bowcher
1040Salvatore A StockhamRussia2025-09-20Benton, John B Jr NEW80Bernardo Dominic
1041Jefferson K KolmetzRussia2025-09-26Morlong Associates UNQUALIFIED79Onyama Limba
1042Silvio J VenereAustralia2025-09-15Feiner Bros UNQUALIFIED8Bernardo Dominic
1043Murillo I SlusarskiRussia2025-09-13Commercial Press NEW66Amy Elsner
1044Munro Q InouyeGermany2025-10-08Commercial Press RENEWAL17Elwin Sharvill
1045Nicolas I PoquetteSpain2025-09-18Commercial Press QUALIFIED44Stephen Shaw
1046Stacey M PerinGermany2025-09-24Benton, John B Jr PROPOSAL25Asiya Javayant
1047Emily I RulapaughSpain2025-09-23Chapman, Ross E Esq QUALIFIED33Amy Elsner
1048Kadeem Q VocelkaUnited Kingdom2025-09-12Chanay, Jeffrey A Esq NEGOTIATION41Anna Fali
1049Deepesh J GarufiCanada2025-10-06Chapman, Ross E Esq UNQUALIFIED96Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leon Q IturbideItalyAmy Elsner QUALIFIED
Faith V PoquetteBrazilAmy Elsner UNQUALIFIED
Smith J AmigonCanadaAsiya Javayant NEGOTIATION
Jennifer Z WieserUnited KingdomAsiya Javayant NEGOTIATION
Smith Z GillianIndiaAmy Elsner NEW
Ricardo H DoeArgentinaBernardo Dominic QUALIFIED
Silvio L ButtItalyIoni Bowcher NEW
Morrow U SlusarskiRussiaStephen Shaw QUALIFIED
Jennifer A DoeAustraliaOnyama Limba NEW
Ricardo U PerinCanadaElwin Sharvill NEW
Arvin B RoysterBrazilAnna Fali UNQUALIFIED
Rodrigues H IturbideIndiaIvan Magalhaes NEW
Maria Y MaletItalyIvan Magalhaes RENEWAL
Costa K SlusarskiIndiaElwin Sharvill NEW
Greenwood H MaletIndiaOnyama Limba NEW
Darci O SaylorsBrazilStephen Shaw NEGOTIATION
Kadeem T KolmetzUnited KingdomIoni Bowcher RENEWAL
Murillo D RutaSpainElwin Sharvill NEW
Ivar F SlusarskiIndiaAmy Elsner UNQUALIFIED
Salvatore F FigeroaRussiaOnyama Limba UNQUALIFIED
Nicolas V NickaAustraliaOnyama Limba PROPOSAL
Aika B DoeGermanyAmy Elsner RENEWAL
James G RulapaughCanadaXuxue Feng NEGOTIATION
Isabel Q PaprockiFranceBernardo Dominic UNQUALIFIED
Smith X MaletUnited KingdomAmy Elsner NEGOTIATION
Salvatore Y KuskoSpainAsiya Javayant QUALIFIED
Aditya G KolmetzArgentinaStephen Shaw NEW
Cody Y InouyeSpainElwin Sharvill NEGOTIATION
Francesco R KuskoArgentinaElwin Sharvill PROPOSAL
Maisha O KolmetzUnited KingdomStephen Shaw NEW
Jefferson H KolmetzBrazilIvan Magalhaes RENEWAL
Leon G AmigonJapanXuxue Feng UNQUALIFIED
Silvio Y DilliardArgentinaAnna Fali UNQUALIFIED
Faith R RulapaughAustraliaAsiya Javayant NEGOTIATION
Kaitlin H CaldareraGermanyAsiya Javayant UNQUALIFIED
Izzy R DoeArgentinaIoni Bowcher NEGOTIATION
Wickens Y WieserRussiaBernardo Dominic RENEWAL
Jeanfrancois P BriddickRussiaXuxue Feng NEGOTIATION
Silvio S ButtCanadaAsiya Javayant RENEWAL
Octavia J PaprockiBrazilOnyama Limba NEW
Johnson G VenereBrazilXuxue Feng UNQUALIFIED
Jennifer I GlickRussiaOnyama Limba PROPOSAL
Mayumi P ButtArgentinaIoni Bowcher QUALIFIED
Deepesh T WieserRussiaElwin Sharvill NEW
Adams X MorascaArgentinaBernardo Dominic PROPOSAL
Antonio N StensethArgentinaStephen Shaw RENEWAL
Jefferson O GarufiBrazilIoni Bowcher NEGOTIATION
Jones T CampainSpainAmy Elsner QUALIFIED
Adams M StensethAustraliaAnna Fali NEW
Juan I DarakjyItalyElwin Sharvill NEGOTIATION
Frozen Columns
Name
Costa M Garufi
Juan R Amigon
Isabel E Ferencz
Nicolas U Nestle
Juan H Marrier
Isabel L Ferencz
Sinclair H Caudy
Isabel N Albares
Izzy M Caudy
Kadeem F Whobrey
Mujtaba R Albares
Jefferson H Nicka
Adams L Foller
Wickens E Poquette
Leja G Kolmetz
Greenwood K Flosi
Francesco U Rulapaugh
James H Vocelka
Stacey W Tollner
Aika D Butt
Greenwood Z Doe
Sinclair M Wieser
Kadeem B Perin
Maria R Tollner
Aditya C Perin
Kaitlin U Gillian
Octavia T Inouye
Juan U Campain
Ashley K Glick
Morrow A Inouye
Maisha F Morasca
Kaitlin I Campain
Antonio A Oldroyd
James M Stockham
Tony G Tollner
Jefferson Q Caldarera
Chavez N Kusko
Smith T Butt
Emily Y Briddick
Ivar D Garufi
Maisha E Campain
Maisha R Iturbide
Sinclair J Stockham
Stacey K Oldroyd
Sinclair K Amigon
Kaitlin Y Schemmer
Jennifer G Briddick
Julie Y Marrier
Kaitlin E Ruta
Morrow G Nestle
IdCountryDate
1000Spain2025-09-23
1001Brazil2025-09-24
1002India2025-10-02
1003Canada2025-10-06
1004France2025-09-25
1005France2025-09-21
1006France2025-10-07
1007Russia2025-10-10
1008Russia2025-10-01
1009Brazil2025-10-03
1010Canada2025-10-08
1011United Kingdom2025-09-22
1012Russia2025-10-02
1013Japan2025-10-03
1014Canada2025-10-05
1015Germany2025-09-13
1016France2025-09-12
1017Russia2025-10-10
1018United Kingdom2025-09-12
1019Brazil2025-09-27
1020Japan2025-09-30
1021Italy2025-09-22
1022Russia2025-09-16
1023India2025-09-13
1024Japan2025-10-09
1025Spain2025-09-20
1026Argentina2025-09-12
1027United Kingdom2025-09-27
1028Italy2025-10-08
1029Italy2025-09-21
1030Spain2025-09-27
1031Germany2025-09-20
1032Brazil2025-09-13
1033Japan2025-10-05
1034India2025-09-26
1035Japan2025-10-06
1036Canada2025-09-30
1037Japan2025-10-01
1038France2025-09-14
1039Argentina2025-10-05
1040Brazil2025-09-21
1041India2025-09-21
1042Brazil2025-09-20
1043United Kingdom2025-09-26
1044Japan2025-09-12
1045United Kingdom2025-10-05
1046Russia2025-09-14
1047United Kingdom2025-10-01
1048France2025-09-15
1049Argentina2025-09-27

On-Demand Data

NameIdCountryDate
Misaki E Perin1000Brazil2025-09-21
Arvin G Garufi1001Argentina2025-09-30
Costa J Stenseth1002Argentina2025-09-13
Stacey Y Gillian1003Japan2025-10-04
Aditya L Schemmer1004United Kingdom2025-09-18
Munro G Oldroyd1005Russia2025-10-07
Nicolas R Sergi1006Germany2025-09-23
Misaki Z Albares1007India2025-10-03
Morrow H Perin1008United Kingdom2025-09-30
Silvio C Perin1009Japan2025-09-30
Kaitlin H Whobrey1010United Kingdom2025-09-28
Alejandro G Malet1011Russia2025-09-13
Aruna E Rim1012France2025-09-15
Deepesh C Stenseth1013Russia2025-09-24
Deepesh C Rulapaugh1014Brazil2025-09-24
Jeanfrancois M Figeroa1015Australia2025-10-08
Mayumi O Royster1016Spain2025-09-28
Julie Z Royster1017Spain2025-09-26
Silvio R Sergi1018Spain2025-10-08
Jennifer H Glick1019Australia2025-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues J DoeFranceOnyama Limba QUALIFIED
Johnson M SergiFranceStephen Shaw UNQUALIFIED
Jones C SaylorsAustraliaAmy Elsner UNQUALIFIED
Octavia O BriddickUnited KingdomBernardo Dominic UNQUALIFIED
David E VenereCanadaIoni Bowcher QUALIFIED
Francesco O SaylorsRussiaXuxue Feng QUALIFIED
Smith Z DilliardAustraliaIvan Magalhaes RENEWAL
Antonio V FigeroaItalyAsiya Javayant UNQUALIFIED
Jeanfrancois A BowleyRussiaAnna Fali NEGOTIATION
Sinclair V CaudyAustraliaXuxue Feng UNQUALIFIED
Munro X OldroydGermanyOnyama Limba PROPOSAL
Aruna L GauchoRussiaAsiya Javayant QUALIFIED
Cody I NickaArgentinaAsiya Javayant PROPOSAL
Ricardo P MaletRussiaAnna Fali RENEWAL
Jeanfrancois I VocelkaUnited KingdomAnna Fali UNQUALIFIED
Cody Z GauchoGermanyAnna Fali RENEWAL
Adams Y CaudyCanadaIoni Bowcher RENEWAL
Alejandro K BowleyAustraliaAsiya Javayant UNQUALIFIED
Ashley U CampainFranceElwin Sharvill PROPOSAL
Adams H CampainIndiaAnna Fali RENEWAL
Isabel Z AlbaresFranceIvan Magalhaes UNQUALIFIED
Aika I WieserAustraliaAmy Elsner NEW
Jones J FlosiRussiaStephen Shaw PROPOSAL
Chavez O DoeJapanElwin Sharvill QUALIFIED
Isabel M DoeGermanyIvan Magalhaes NEW
Tony I FlosiJapanBernardo Dominic QUALIFIED
Juan T CaldareraGermanyOnyama Limba QUALIFIED
Sinclair K NickaJapanBernardo Dominic QUALIFIED
Ashley E RulapaughSpainAsiya Javayant PROPOSAL
Chavez Q GarufiCanadaIoni Bowcher NEW
David F PaprockiFranceStephen Shaw NEW
James V SergiGermanyAsiya Javayant PROPOSAL
Kadeem T GillianBrazilAsiya Javayant QUALIFIED
Greenwood K WhobreyGermanyXuxue Feng PROPOSAL
Leja X DarakjyFranceElwin Sharvill NEW
James A FigeroaJapanXuxue Feng QUALIFIED
Alejandro Y WaycottRussiaXuxue Feng UNQUALIFIED
Ivar W MarrierUnited KingdomIoni Bowcher NEW
Murillo F IturbideCanadaIvan Magalhaes QUALIFIED
Clifford Q ShinkoIndiaAmy Elsner 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>