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
Morrow X SlusarskiBrazilAmy Elsner QUALIFIED
Francesco Y IturbideAustraliaAmy Elsner NEW
Juan Z WaycottGermanyElwin Sharvill QUALIFIED
Kaitlin F FerenczItalyIvan Magalhaes NEGOTIATION
Adams I TollnerAustraliaAsiya Javayant NEGOTIATION
Kadeem C CampainUnited KingdomAnna Fali NEW
Silvio G FollerGermanyOnyama Limba UNQUALIFIED
Munro G ButtJapanOnyama Limba NEGOTIATION
Rodrigues E PerinAustraliaAnna Fali UNQUALIFIED
Tony B InouyeGermanyStephen Shaw RENEWAL
Octavia X MarrierCanadaOnyama Limba NEGOTIATION
Emily Z NestleAustraliaOnyama Limba PROPOSAL
Salvatore V OstroskyIndiaAnna Fali RENEWAL
Juan G RimItalyStephen Shaw RENEWAL
Kadeem P FigeroaSpainIoni Bowcher NEGOTIATION
Deepesh A GillianSpainBernardo Dominic NEW
Isabel C AlbaresIndiaAmy Elsner QUALIFIED
Sinclair X MaletFranceElwin Sharvill NEGOTIATION
Ivar F DarakjyAustraliaStephen Shaw NEW
Antonio A SaylorsSpainStephen Shaw NEGOTIATION
Greenwood D PoquetteIndiaAnna Fali PROPOSAL
Cody R BologniaJapanBernardo Dominic QUALIFIED
Claire J VenereBrazilStephen Shaw RENEWAL
Emily Y BriddickIndiaAnna Fali NEGOTIATION
Julie G AlbaresSpainAsiya Javayant QUALIFIED
Darci W RoysterIndiaBernardo Dominic NEGOTIATION
Rodrigues Q OstroskyUnited KingdomAnna Fali UNQUALIFIED
Kadeem W FigeroaJapanIvan Magalhaes QUALIFIED
Deepesh N PoquetteAustraliaIvan Magalhaes NEGOTIATION
Clifford S MaletArgentinaAsiya Javayant NEW
James H ShinkoCanadaXuxue Feng RENEWAL
Kadeem N WieserAustraliaElwin Sharvill PROPOSAL
Deepesh J PaprockiFranceAsiya Javayant QUALIFIED
Ivar Q PerinFranceAsiya Javayant NEW
Cody Q GarufiUnited KingdomBernardo Dominic QUALIFIED
Leon V RulapaughCanadaAsiya Javayant QUALIFIED
Clifford U WieserItalyAnna Fali NEGOTIATION
Aditya U CaldareraUnited KingdomAsiya Javayant PROPOSAL
Darci Y GauchoCanadaOnyama Limba RENEWAL
Isabel E SergiSpainIvan Magalhaes UNQUALIFIED
Maria Q InouyeFranceElwin Sharvill QUALIFIED
Aditya S ButtItalyAsiya Javayant NEW
Cody G SaylorsFranceIoni Bowcher QUALIFIED
Silvio W VenereJapanXuxue Feng QUALIFIED
Morrow Q FlosiCanadaStephen Shaw PROPOSAL
Claire Q ShinkoCanadaIvan Magalhaes NEW
Wickens F ChuiRussiaOnyama Limba UNQUALIFIED
Murillo K DarakjyFranceBernardo Dominic PROPOSAL
Claire B KuskoCanadaBernardo Dominic NEW
Arvin X FlosiAustraliaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Darci G StensethFranceAmy Elsner NEW
Murillo D GarufiRussiaElwin Sharvill UNQUALIFIED
Leja I OldroydSpainOnyama Limba PROPOSAL
Nicolas W MacleadJapanXuxue Feng UNQUALIFIED
Silvio T KuskoItalyElwin Sharvill NEW
Maria W RimIndiaAsiya Javayant PROPOSAL
Wickens C NestleArgentinaAsiya Javayant NEGOTIATION
Greenwood K WieserArgentinaIoni Bowcher QUALIFIED
Chavez Y PoquetteFranceBernardo Dominic QUALIFIED
David Z CampainBrazilElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco D VenereIndia2025-07-09Morlong Associates UNQUALIFIED14Asiya Javayant
1001Costa D SchemmerIndia2025-07-21Dorl, James J Esq RENEWAL4Stephen Shaw
1002Smith T InouyeGermany2025-07-21Chemel, James L Cpa PROPOSAL24Asiya Javayant
1003Maria T InouyeAustralia2025-07-19Commercial Press NEW96Amy Elsner
1004David U DarakjyUnited Kingdom2025-07-14Benton, John B Jr QUALIFIED7Stephen Shaw
1005Mujtaba U GillianUnited Kingdom2025-07-07Dorl, James J Esq NEW17Anna Fali
1006Kadeem E PaprockiItaly2025-07-17Chemel, James L Cpa UNQUALIFIED63Amy Elsner
1007Mujtaba R OldroydCanada2025-08-02Rousseaux, Michael Esq PROPOSAL8Xuxue Feng
1008Ricardo T AmigonCanada2025-07-08Chapman, Ross E Esq NEW76Asiya Javayant
1009Emily V RulapaughAustralia2025-07-10Feltz Printing Service NEW33Xuxue Feng
1010Misaki A GillianAustralia2025-07-25Feltz Printing Service RENEWAL48Elwin Sharvill
1011Ashley K GlickIndia2025-07-08Feiner Bros QUALIFIED9Ivan Magalhaes
1012Costa U WaycottJapan2025-07-26Rousseaux, Michael Esq UNQUALIFIED53Stephen Shaw
1013Ashley N GlickSpain2025-07-28Chanay, Jeffrey A Esq UNQUALIFIED49Ioni Bowcher
1014Cody T BologniaJapan2025-07-31Buckley Miller Wright QUALIFIED53Asiya Javayant
1015Izzy U OldroydRussia2025-07-21Benton, John B Jr UNQUALIFIED23Ioni Bowcher
1016Octavia F RimBrazil2025-07-30Chapman, Ross E Esq QUALIFIED94Bernardo Dominic
1017Mujtaba W RulapaughCanada2025-07-25Chemel, James L Cpa UNQUALIFIED55Stephen Shaw
1018Salvatore H RimSpain2025-07-21Feltz Printing Service QUALIFIED29Ivan Magalhaes
1019Jones Q MaletCanada2025-07-31Morlong Associates RENEWAL60Amy Elsner
1020Juan S DoeIndia2025-07-18Dorl, James J Esq QUALIFIED77Elwin Sharvill
1021Rodrigues G OldroydAustralia2025-07-19Commercial Press QUALIFIED76Ioni Bowcher
1022Murillo Y TollnerAustralia2025-07-28King, Christopher A Esq UNQUALIFIED78Ioni Bowcher
1023Aika G InouyeCanada2025-07-17Printing Dimensions QUALIFIED18Anna Fali
1024Juan F RutaUnited Kingdom2025-07-22Morlong Associates QUALIFIED96Ivan Magalhaes
1025Leja U GarufiGermany2025-07-06Chapman, Ross E Esq QUALIFIED60Elwin Sharvill
1026Ashley A DarakjyAustralia2025-07-24King, Christopher A Esq NEGOTIATION93Onyama Limba
1027Cody O WhobreyItaly2025-08-01Feiner Bros NEGOTIATION35Asiya Javayant
1028Greenwood M AmigonItaly2025-07-25Feltz Printing Service RENEWAL11Anna Fali
1029Mayumi Q KolmetzSpain2025-07-10Buckley Miller Wright RENEWAL58Amy Elsner
1030Isabel F InouyeBrazil2025-07-19Commercial Press RENEWAL42Ivan Magalhaes
1031Aika P PoquetteIndia2025-07-28King, Christopher A Esq PROPOSAL47Anna Fali
1032Ricardo B AmigonJapan2025-08-03Morlong Associates NEGOTIATION96Onyama Limba
1033Francesco F KolmetzRussia2025-07-14Truhlar And Truhlar Attys QUALIFIED32Elwin Sharvill
1034Emily D ShinkoGermany2025-07-06Rousseaux, Michael Esq NEGOTIATION42Elwin Sharvill
1035Cody C PaprockiUnited Kingdom2025-07-06Morlong Associates NEW24Amy Elsner
1036Jennifer T SaylorsCanada2025-07-30Chemel, James L Cpa PROPOSAL82Onyama Limba
1037Wickens H StockhamArgentina2025-07-06Dorl, James J Esq NEGOTIATION79Bernardo Dominic
1038Izzy O DarakjyIndia2025-08-02Chanay, Jeffrey A Esq UNQUALIFIED59Bernardo Dominic
1039Leja W SaylorsJapan2025-07-09Truhlar And Truhlar Attys PROPOSAL99Amy Elsner
1040Deepesh I MaletRussia2025-07-23Chapman, Ross E Esq NEGOTIATION14Elwin Sharvill
1041Munro J GillianUnited Kingdom2025-07-11Rousseaux, Michael Esq NEGOTIATION5Onyama Limba
1042James V ShinkoAustralia2025-07-28Dorl, James J Esq RENEWAL85Onyama Limba
1043Cody Y SlusarskiBrazil2025-07-15Chanay, Jeffrey A Esq UNQUALIFIED69Stephen Shaw
1044Misaki B MaletCanada2025-07-31Feiner Bros RENEWAL8Amy Elsner
1045Claire T SaylorsJapan2025-07-09Commercial Press NEGOTIATION35Elwin Sharvill
1046Jones F NickaCanada2025-08-01Buckley Miller Wright PROPOSAL5Xuxue Feng
1047Alejandro S TollnerUnited Kingdom2025-07-16Feltz Printing Service NEGOTIATION20Amy Elsner
1048Silvio O AlbaresCanada2025-07-22Feltz Printing Service QUALIFIED88Amy Elsner
1049Misaki S CaldareraArgentina2025-07-24Truhlar And Truhlar Attys RENEWAL83Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Stacey G PoquetteItalyOnyama Limba RENEWAL
Jennifer L WieserCanadaAsiya Javayant NEGOTIATION
Faith G CampainFranceXuxue Feng RENEWAL
Rodrigues M PoquetteBrazilElwin Sharvill NEW
Darci Z CaudyUnited KingdomAsiya Javayant QUALIFIED
Munro H NickaRussiaAnna Fali NEW
Mujtaba W PaprockiJapanAnna Fali RENEWAL
Rodrigues N CampainItalyIoni Bowcher RENEWAL
Johnson G StockhamGermanyStephen Shaw QUALIFIED
Ashley I WaycottIndiaAmy Elsner PROPOSAL
Alejandro A RulapaughIndiaOnyama Limba UNQUALIFIED
Maisha V DilliardJapanAmy Elsner UNQUALIFIED
Octavia H GauchoArgentinaBernardo Dominic NEGOTIATION
Smith U BologniaItalyStephen Shaw QUALIFIED
Maisha V WhobreyFranceBernardo Dominic RENEWAL
Jennifer M MaletSpainOnyama Limba NEGOTIATION
Adams C FerenczAustraliaAsiya Javayant RENEWAL
Jennifer D TollnerItalyBernardo Dominic QUALIFIED
Mujtaba V AlbaresRussiaBernardo Dominic NEW
Nicolas O PerinRussiaIoni Bowcher NEGOTIATION
Morrow G ShinkoGermanyIvan Magalhaes UNQUALIFIED
Aditya Y RimItalyAnna Fali NEGOTIATION
Misaki L GlickRussiaXuxue Feng RENEWAL
Costa X CaldareraBrazilStephen Shaw RENEWAL
Silvio A ChuiBrazilBernardo Dominic QUALIFIED
Isabel J DarakjyItalyBernardo Dominic NEW
Munro D GlickSpainAsiya Javayant NEGOTIATION
Jeanfrancois J RulapaughItalyBernardo Dominic UNQUALIFIED
Jennifer Z ChuiJapanAsiya Javayant NEW
Jefferson R FlosiBrazilAsiya Javayant UNQUALIFIED
Cody M BologniaSpainElwin Sharvill NEGOTIATION
Jefferson R AmigonIndiaBernardo Dominic NEW
Kadeem L MarrierBrazilAmy Elsner NEW
Maria B KolmetzAustraliaOnyama Limba UNQUALIFIED
Stacey N RulapaughGermanyIvan Magalhaes QUALIFIED
Adams T SaylorsAustraliaElwin Sharvill RENEWAL
Jones X RulapaughBrazilStephen Shaw PROPOSAL
Nicolas F InouyeFranceIoni Bowcher RENEWAL
Mujtaba C ShinkoAustraliaXuxue Feng NEGOTIATION
Leja A DoeCanadaOnyama Limba UNQUALIFIED
Jefferson W FigeroaSpainAmy Elsner QUALIFIED
Maria O MarrierGermanyIoni Bowcher RENEWAL
Tony S PaprockiIndiaAsiya Javayant RENEWAL
Darci A BowleySpainStephen Shaw NEGOTIATION
Salvatore W SlusarskiFranceXuxue Feng NEW
Darci T ShinkoItalyBernardo Dominic PROPOSAL
Maisha H WieserIndiaIoni Bowcher NEW
Clifford L BriddickGermanyAmy Elsner NEGOTIATION
Morrow Z CampainAustraliaIvan Magalhaes PROPOSAL
Izzy P SchemmerCanadaAsiya Javayant QUALIFIED
Frozen Columns
Name
Maria N Ferencz
Murillo W Ferencz
Kadeem B Maclead
Morrow H Dilliard
Adams X Foller
Mayumi J Inouye
Silvio A Oldroyd
Octavia X Foller
Juan N Garufi
Salvatore K Figeroa
Kaitlin J Garufi
Chavez D Briddick
David H Darakjy
Darci J Perin
Ricardo M Maclead
Rodrigues N Waycott
Kaitlin O Gaucho
Wickens U Poquette
Stacey K Royster
Aruna X Slusarski
Leon K Iturbide
Ivar N Slusarski
Tony Q Tollner
Wickens O Campain
Greenwood Q Campain
Munro H Rulapaugh
Mayumi A Royster
Cody L Nicka
Faith U Sergi
Chavez V Vocelka
David F Kusko
Clifford S Bowley
Isabel R Malet
Darci R Perin
Salvatore G Sergi
Jones N Tollner
Johnson T Briddick
Stacey P Garufi
Leon W Gaucho
Faith F Paprocki
Antonio S Foller
Clifford T Chui
Misaki T Saylors
Faith S Nestle
Julie B Kusko
Kaitlin A Campain
James Z Albares
Isabel W Ostrosky
Julie T Ostrosky
Ivar T Amigon
IdCountryDate
1000United Kingdom2025-07-23
1001Australia2025-07-23
1002Australia2025-07-28
1003Spain2025-07-23
1004Brazil2025-07-17
1005United Kingdom2025-07-07
1006Spain2025-08-02
1007Brazil2025-07-27
1008Spain2025-07-10
1009India2025-07-21
1010Australia2025-07-21
1011Japan2025-07-18
1012Germany2025-07-25
1013Japan2025-08-02
1014Italy2025-07-25
1015France2025-07-31
1016Spain2025-07-11
1017France2025-07-12
1018Canada2025-07-17
1019Canada2025-07-28
1020Germany2025-07-13
1021Spain2025-08-02
1022Russia2025-08-04
1023India2025-08-04
1024Italy2025-08-04
1025France2025-07-27
1026Russia2025-07-09
1027Italy2025-07-15
1028Canada2025-07-16
1029Australia2025-07-19
1030United Kingdom2025-07-22
1031Brazil2025-07-26
1032India2025-07-26
1033Australia2025-07-15
1034Italy2025-07-09
1035Japan2025-07-12
1036Italy2025-07-15
1037India2025-07-14
1038Brazil2025-07-18
1039Spain2025-07-28
1040India2025-07-18
1041France2025-07-29
1042France2025-07-12
1043Germany2025-07-08
1044United Kingdom2025-07-28
1045United Kingdom2025-07-06
1046Canada2025-07-17
1047Argentina2025-07-20
1048France2025-07-16
1049India2025-07-16

On-Demand Data

NameIdCountryDate
Arvin L Dilliard1000Japan2025-08-01
Kadeem U Ostrosky1001Brazil2025-07-20
Munro J Paprocki1002Spain2025-07-23
Jefferson A Marrier1003India2025-07-09
Juan F Darakjy1004Australia2025-07-25
Leja V Garufi1005Japan2025-07-13
Ivar F Saylors1006Australia2025-07-18
Greenwood H Inouye1007United Kingdom2025-07-26
Octavia P Ruta1008Spain2025-07-22
Stacey H Bowley1009Canada2025-07-30
Murillo S Amigon1010Italy2025-07-10
Stacey M Shinko1011Australia2025-07-20
Ashley V Darakjy1012India2025-07-14
Ivar R Campain1013Germany2025-07-29
Isabel W Kolmetz1014France2025-07-12
David G Waycott1015Germany2025-07-06
Salvatore X Campain1016Brazil2025-07-26
Arvin E Stockham1017Argentina2025-08-02
Aditya G Venere1018Russia2025-07-16
Clifford O Bowley1019Canada2025-07-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio K BologniaArgentinaStephen Shaw QUALIFIED
Greenwood O NestleItalyAnna Fali NEGOTIATION
Deepesh R WieserUnited KingdomAsiya Javayant UNQUALIFIED
Smith C SergiGermanyElwin Sharvill UNQUALIFIED
Juan I NestleJapanBernardo Dominic NEGOTIATION
Isabel S ShinkoUnited KingdomBernardo Dominic UNQUALIFIED
Cody D WaycottSpainOnyama Limba NEGOTIATION
Faith D FerenczBrazilElwin Sharvill QUALIFIED
Leon Y KuskoFranceAsiya Javayant QUALIFIED
Nicolas O AmigonIndiaIoni Bowcher RENEWAL
Isabel Z KuskoGermanyAnna Fali UNQUALIFIED
Rodrigues O CampainUnited KingdomIoni Bowcher NEW
Isabel V MaletItalyAsiya Javayant RENEWAL
James C MarrierFranceIvan Magalhaes NEW
Francesco V SaylorsItalyOnyama Limba QUALIFIED
Arvin J RulapaughUnited KingdomElwin Sharvill NEW
Cody A WaycottRussiaBernardo Dominic PROPOSAL
Stacey M OldroydUnited KingdomAmy Elsner NEGOTIATION
Alejandro F MaletUnited KingdomIvan Magalhaes NEGOTIATION
Tony W VocelkaIndiaAsiya Javayant UNQUALIFIED
Maisha R CampainFranceIvan Magalhaes PROPOSAL
Mujtaba V FigeroaGermanyOnyama Limba RENEWAL
Greenwood R RulapaughRussiaAmy Elsner UNQUALIFIED
Cody A PaprockiGermanyBernardo Dominic NEGOTIATION
Ricardo M FigeroaAustraliaAsiya Javayant QUALIFIED
Faith A ButtIndiaElwin Sharvill NEGOTIATION
Cody O GlickIndiaXuxue Feng NEGOTIATION
Jones Q TollnerFranceXuxue Feng NEGOTIATION
Jefferson O PoquetteRussiaOnyama Limba QUALIFIED
Faith P StensethGermanyAnna Fali NEW
Ashley E VocelkaArgentinaAnna Fali PROPOSAL
Emily F TollnerCanadaBernardo Dominic NEGOTIATION
Chavez U FerenczCanadaStephen Shaw UNQUALIFIED
Darci N FigeroaJapanOnyama Limba NEW
Ivar R GillianItalyBernardo Dominic UNQUALIFIED
Clifford L DarakjyCanadaIvan Magalhaes RENEWAL
Munro T BriddickSpainStephen Shaw NEGOTIATION
Aruna Z CaudyFranceOnyama Limba UNQUALIFIED
Cody C AmigonBrazilIvan Magalhaes NEW
Chavez U DoeIndiaAnna Fali 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>