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
Sinclair E OldroydCanadaBernardo Dominic UNQUALIFIED
Kadeem N StockhamCanadaIvan Magalhaes UNQUALIFIED
Antonio W SchemmerAustraliaElwin Sharvill NEGOTIATION
Stacey U BologniaIndiaAmy Elsner QUALIFIED
Rodrigues K IturbideArgentinaIvan Magalhaes NEGOTIATION
Sinclair S RimBrazilOnyama Limba UNQUALIFIED
Wickens S FerenczCanadaElwin Sharvill NEW
Munro K RimJapanOnyama Limba UNQUALIFIED
Salvatore A RoysterBrazilAnna Fali NEGOTIATION
Sinclair S ShinkoJapanOnyama Limba RENEWAL
Munro J BologniaJapanBernardo Dominic PROPOSAL
Izzy O ButtGermanyIvan Magalhaes NEW
Alejandro Y MorascaArgentinaXuxue Feng PROPOSAL
Morrow Y AmigonBrazilAnna Fali NEGOTIATION
Ricardo R ChuiItalyStephen Shaw QUALIFIED
Izzy U FlosiSpainOnyama Limba NEGOTIATION
Aruna U DoeItalyElwin Sharvill NEW
Mujtaba A CaudyArgentinaAmy Elsner QUALIFIED
Emily F MacleadUnited KingdomStephen Shaw RENEWAL
Chavez O BriddickSpainOnyama Limba NEW
Johnson I RoysterItalyStephen Shaw NEW
Arvin A CampainGermanyIvan Magalhaes NEGOTIATION
Antonio P FlosiGermanyStephen Shaw QUALIFIED
Cody U KolmetzCanadaAnna Fali RENEWAL
Mayumi C CampainAustraliaElwin Sharvill UNQUALIFIED
Stacey H ChuiUnited KingdomAmy Elsner PROPOSAL
Cody C BriddickArgentinaAnna Fali NEGOTIATION
Smith I SchemmerAustraliaStephen Shaw UNQUALIFIED
Jefferson G RutaBrazilBernardo Dominic UNQUALIFIED
Ashley C MaletSpainOnyama Limba NEGOTIATION
Deepesh R ChuiFranceBernardo Dominic NEW
Adams S KuskoRussiaAnna Fali UNQUALIFIED
Aruna G IturbideBrazilXuxue Feng UNQUALIFIED
Maria W MacleadArgentinaElwin Sharvill NEW
Aika P RimItalyXuxue Feng UNQUALIFIED
Isabel I PaprockiUnited KingdomOnyama Limba PROPOSAL
James U FollerJapanOnyama Limba QUALIFIED
Leon G VenereArgentinaAmy Elsner NEW
Sinclair X SlusarskiItalyElwin Sharvill RENEWAL
Julie U MarrierItalyOnyama Limba UNQUALIFIED
Aika Z FlosiSpainBernardo Dominic QUALIFIED
Arvin H FigeroaItalyStephen Shaw PROPOSAL
Izzy I DilliardUnited KingdomXuxue Feng UNQUALIFIED
Costa T MaletSpainStephen Shaw NEGOTIATION
Izzy X AlbaresAustraliaXuxue Feng RENEWAL
James K CampainFranceOnyama Limba NEW
Mayumi F NickaIndiaOnyama Limba NEGOTIATION
Adams I PoquetteItalyBernardo Dominic QUALIFIED
Izzy N WieserItalyOnyama Limba RENEWAL
Mayumi W MacleadRussiaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Tony M WhobreyJapanStephen Shaw UNQUALIFIED
Leon Y PerinFranceBernardo Dominic PROPOSAL
Jones P WieserJapanXuxue Feng PROPOSAL
Smith V GauchoAustraliaBernardo Dominic NEW
David A GauchoBrazilXuxue Feng RENEWAL
Kadeem Q FlosiBrazilXuxue Feng UNQUALIFIED
Izzy U BologniaIndiaBernardo Dominic UNQUALIFIED
James K MorascaUnited KingdomAmy Elsner NEW
Stacey Y OstroskyUnited KingdomAmy Elsner NEW
Adams R NickaFranceStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow P FollerSpain2025-09-14Chapman, Ross E Esq RENEWAL60Amy Elsner
1001Jennifer V BologniaItaly2025-09-22Dorl, James J Esq RENEWAL44Elwin Sharvill
1002Maria O WaycottRussia2025-09-29Rangoni Of Florence QUALIFIED2Asiya Javayant
1003Adams M FigeroaAustralia2025-09-11Chemel, James L Cpa UNQUALIFIED0Asiya Javayant
1004Cody Q SergiUnited Kingdom2025-09-15Rousseaux, Michael Esq QUALIFIED13Bernardo Dominic
1005Munro E MacleadRussia2025-09-12Feiner Bros RENEWAL77Onyama Limba
1006Jones I SchemmerBrazil2025-09-04Printing Dimensions NEW18Ivan Magalhaes
1007Francesco N IturbideBrazil2025-09-15King, Christopher A Esq RENEWAL80Onyama Limba
1008Kaitlin L MaletIndia2025-09-08Chanay, Jeffrey A Esq UNQUALIFIED29Asiya Javayant
1009Juan U PoquetteGermany2025-09-01King, Christopher A Esq QUALIFIED87Onyama Limba
1010Julie L SergiIndia2025-09-02Chapman, Ross E Esq UNQUALIFIED35Bernardo Dominic
1011Francesco B PerinUnited Kingdom2025-09-02Feltz Printing Service QUALIFIED52Ioni Bowcher
1012Stacey S VocelkaArgentina2025-09-28Truhlar And Truhlar Attys NEGOTIATION93Ioni Bowcher
1013Salvatore B ChuiBrazil2025-09-02Rousseaux, Michael Esq PROPOSAL91Amy Elsner
1014Aruna F KuskoIndia2025-09-23Chanay, Jeffrey A Esq PROPOSAL26Elwin Sharvill
1015Silvio S DoeRussia2025-09-14Truhlar And Truhlar Attys UNQUALIFIED71Stephen Shaw
1016Juan A KolmetzArgentina2025-09-16Printing Dimensions NEW33Elwin Sharvill
1017Nicolas F CaudySpain2025-09-13Chanay, Jeffrey A Esq RENEWAL40Anna Fali
1018Cody G SchemmerFrance2025-09-29Commercial Press UNQUALIFIED91Onyama Limba
1019Tony E GlickIndia2025-09-11Buckley Miller Wright RENEWAL34Ioni Bowcher
1020Maria I MaletCanada2025-09-21Feiner Bros QUALIFIED21Bernardo Dominic
1021Aditya R SchemmerGermany2025-09-10Chanay, Jeffrey A Esq QUALIFIED68Onyama Limba
1022Octavia Y MaletCanada2025-09-28Chanay, Jeffrey A Esq NEW73Stephen Shaw
1023Deepesh L SaylorsItaly2025-09-23Commercial Press NEW30Stephen Shaw
1024Arvin F ChuiCanada2025-09-07Rangoni Of Florence PROPOSAL52Amy Elsner
1025Jennifer K DoeItaly2025-09-23Rousseaux, Michael Esq PROPOSAL16Bernardo Dominic
1026Salvatore P StensethGermany2025-09-10King, Christopher A Esq PROPOSAL10Stephen Shaw
1027Julie C StensethCanada2025-09-19Rangoni Of Florence NEGOTIATION81Bernardo Dominic
1028Morrow F AmigonArgentina2025-09-30Truhlar And Truhlar Attys NEW34Anna Fali
1029Claire M VenereCanada2025-09-17Morlong Associates UNQUALIFIED29Asiya Javayant
1030Sinclair D NestleBrazil2025-09-21Feiner Bros PROPOSAL46Amy Elsner
1031Faith E DoeFrance2025-09-19Dorl, James J Esq NEW67Bernardo Dominic
1032Smith Q GauchoRussia2025-09-20Buckley Miller Wright PROPOSAL83Stephen Shaw
1033Claire W FlosiBrazil2025-09-19Chemel, James L Cpa PROPOSAL34Amy Elsner
1034Leon U OstroskySpain2025-09-13Chemel, James L Cpa PROPOSAL53Anna Fali
1035Tony H BologniaUnited Kingdom2025-09-13Printing Dimensions QUALIFIED25Amy Elsner
1036Octavia K TollnerGermany2025-09-30Chemel, James L Cpa NEGOTIATION6Bernardo Dominic
1037Ivar H RimItaly2025-09-11Truhlar And Truhlar Attys QUALIFIED8Ivan Magalhaes
1038Silvio Z FlosiGermany2025-09-17Truhlar And Truhlar Attys PROPOSAL53Elwin Sharvill
1039Mayumi D WhobreyArgentina2025-09-13Truhlar And Truhlar Attys RENEWAL40Ioni Bowcher
1040Ricardo Q GillianGermany2025-09-30Buckley Miller Wright NEW97Anna Fali
1041Isabel E CaudyAustralia2025-09-16Feltz Printing Service NEW81Ivan Magalhaes
1042Aruna V GauchoGermany2025-09-08Chapman, Ross E Esq RENEWAL55Xuxue Feng
1043Julie Z MaletItaly2025-09-11King, Christopher A Esq NEW86Elwin Sharvill
1044Jennifer A RulapaughGermany2025-09-03Benton, John B Jr NEGOTIATION13Asiya Javayant
1045Cody F FollerBrazil2025-09-17King, Christopher A Esq NEW29Xuxue Feng
1046Mayumi L GlickRussia2025-09-21Benton, John B Jr NEW27Amy Elsner
1047Stacey L SchemmerUnited Kingdom2025-09-27Feltz Printing Service RENEWAL62Ivan Magalhaes
1048Smith W DoeGermany2025-09-26Chanay, Jeffrey A Esq NEW66Ioni Bowcher
1049Ricardo F FigeroaAustralia2025-09-18Dorl, James J Esq RENEWAL31Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Silvio H DilliardRussiaElwin Sharvill RENEWAL
Mayumi A ShinkoJapanAmy Elsner RENEWAL
Smith Z SergiRussiaStephen Shaw NEW
Johnson V StockhamGermanyXuxue Feng QUALIFIED
Cody T GauchoFranceStephen Shaw NEGOTIATION
Leon P ShinkoUnited KingdomElwin Sharvill PROPOSAL
Ivar G MaletIndiaBernardo Dominic UNQUALIFIED
Chavez Z AlbaresItalyIoni Bowcher QUALIFIED
Kaitlin C ButtFranceIvan Magalhaes NEGOTIATION
Rodrigues O BologniaCanadaElwin Sharvill NEGOTIATION
Leon U SergiSpainStephen Shaw UNQUALIFIED
Antonio J GauchoItalyAnna Fali QUALIFIED
Maisha W ButtIndiaXuxue Feng NEW
Julie C CaudyUnited KingdomStephen Shaw PROPOSAL
Stacey J ChuiSpainIoni Bowcher QUALIFIED
Faith M RimUnited KingdomXuxue Feng RENEWAL
Faith W MaletAustraliaAsiya Javayant NEW
Smith I SchemmerRussiaElwin Sharvill UNQUALIFIED
Jones F KolmetzRussiaIoni Bowcher PROPOSAL
Munro Q WaycottIndiaAsiya Javayant PROPOSAL
Misaki K RulapaughRussiaAsiya Javayant UNQUALIFIED
Smith R PaprockiRussiaAnna Fali NEW
Greenwood Z FigeroaRussiaAsiya Javayant NEGOTIATION
David Z ButtArgentinaOnyama Limba PROPOSAL
Misaki A GauchoArgentinaOnyama Limba RENEWAL
Smith M ButtArgentinaAnna Fali QUALIFIED
Ashley R TollnerUnited KingdomOnyama Limba QUALIFIED
Arvin E DoeAustraliaStephen Shaw RENEWAL
Emily O PoquetteItalyIoni Bowcher RENEWAL
Ashley T MacleadSpainAnna Fali UNQUALIFIED
Morrow G OldroydSpainXuxue Feng UNQUALIFIED
Nicolas S DilliardItalyAsiya Javayant NEGOTIATION
Mayumi R MaletFranceAmy Elsner NEGOTIATION
Smith G PoquetteCanadaAmy Elsner UNQUALIFIED
Clifford W FlosiGermanyAsiya Javayant UNQUALIFIED
Maisha B BowleyGermanyAnna Fali PROPOSAL
Octavia S FlosiItalyBernardo Dominic RENEWAL
Rodrigues P MaletAustraliaXuxue Feng RENEWAL
Aika S KolmetzBrazilIvan Magalhaes NEGOTIATION
Ricardo W PoquetteFranceAmy Elsner UNQUALIFIED
Francesco W DarakjySpainStephen Shaw NEGOTIATION
Adams H AlbaresAustraliaStephen Shaw QUALIFIED
Chavez Y RoysterBrazilAnna Fali UNQUALIFIED
Morrow P OldroydFranceOnyama Limba QUALIFIED
Emily J SlusarskiBrazilAsiya Javayant PROPOSAL
Maisha F InouyeIndiaIvan Magalhaes PROPOSAL
Munro D MorascaFranceOnyama Limba RENEWAL
David C DilliardJapanIvan Magalhaes NEGOTIATION
Adams R SchemmerJapanElwin Sharvill NEGOTIATION
Clifford Q BowleyRussiaElwin Sharvill NEW
Frozen Columns
Name
Chavez H Ferencz
Smith O Campain
Arvin C Inouye
Cody H Shinko
Leja S Malet
Alejandro A Stockham
Emily Z Campain
Aruna V Bolognia
Johnson H Shinko
Aruna S Tollner
Morrow Q Glick
Jefferson J Nestle
David Y Caudy
Wickens I Caudy
Nicolas Z Foller
Jefferson M Paprocki
Salvatore K Ferencz
Aika N Doe
Leon Z Oldroyd
Maria F Rim
Ricardo S Ostrosky
Mujtaba C Kusko
Misaki L Paprocki
Munro Q Shinko
Kadeem I Wieser
Darci A Gaucho
Ricardo U Gillian
Nicolas N Shinko
Maria B Darakjy
Chavez U Garufi
Tony N Bowley
Julie Y Figeroa
Ivar N Saylors
Johnson E Bolognia
Ricardo R Ferencz
Arvin P Iturbide
Claire V Inouye
Morrow P Rulapaugh
Mujtaba I Ostrosky
Jones Q Marrier
Aditya B Figeroa
Jefferson O Malet
Kadeem J Iturbide
Aruna S Kolmetz
Deepesh Z Bowley
Chavez S Briddick
Wickens Y Malet
Jeanfrancois R Foller
Misaki M Paprocki
Alejandro C Shinko
IdCountryDate
1000France2025-09-23
1001France2025-09-23
1002Argentina2025-09-27
1003France2025-09-30
1004Germany2025-09-15
1005Italy2025-09-10
1006Italy2025-09-02
1007India2025-09-12
1008Germany2025-09-01
1009Canada2025-09-09
1010Russia2025-09-08
1011Germany2025-09-08
1012Italy2025-09-12
1013Italy2025-09-10
1014Russia2025-09-06
1015France2025-09-11
1016Australia2025-09-28
1017United Kingdom2025-09-29
1018France2025-09-21
1019United Kingdom2025-09-21
1020Brazil2025-09-21
1021Argentina2025-09-15
1022Brazil2025-09-01
1023Russia2025-09-03
1024Japan2025-09-26
1025Germany2025-09-08
1026United Kingdom2025-09-04
1027India2025-09-07
1028Canada2025-09-16
1029India2025-09-13
1030Argentina2025-09-22
1031Brazil2025-09-19
1032Australia2025-09-10
1033Italy2025-09-27
1034France2025-09-13
1035Brazil2025-09-07
1036Italy2025-09-27
1037Australia2025-09-29
1038Spain2025-09-13
1039Japan2025-09-04
1040Germany2025-09-11
1041Italy2025-09-29
1042Spain2025-09-05
1043Italy2025-09-14
1044United Kingdom2025-09-20
1045Japan2025-09-17
1046India2025-09-19
1047Brazil2025-09-22
1048France2025-09-30
1049Japan2025-09-14

On-Demand Data

NameIdCountryDate
Nicolas X Schemmer1000Spain2025-09-11
Johnson M Bowley1001France2025-09-15
Greenwood L Paprocki1002Germany2025-09-30
Claire A Bolognia1003India2025-09-10
Murillo Q Inouye1004Russia2025-09-25
Alejandro V Glick1005Japan2025-09-25
Salvatore L Foller1006India2025-09-21
Greenwood N Amigon1007Spain2025-09-30
Chavez R Ferencz1008Canada2025-09-27
Johnson Z Poquette1009Canada2025-09-17
Juan S Shinko1010Australia2025-09-07
Rodrigues D Bolognia1011Canada2025-09-28
Emily F Tollner1012Brazil2025-09-07
Jennifer Q Kolmetz1013United Kingdom2025-09-16
Misaki G Paprocki1014Japan2025-09-13
Maria R Nicka1015Brazil2025-09-24
Silvio J Butt1016Argentina2025-09-08
Mujtaba I Nestle1017Russia2025-09-23
Isabel U Amigon1018United Kingdom2025-09-06
Maisha E Stenseth1019Canada2025-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie P GlickArgentinaElwin Sharvill RENEWAL
Smith O CaudyRussiaXuxue Feng QUALIFIED
Smith K PoquetteUnited KingdomIoni Bowcher NEW
Murillo N IturbideSpainAnna Fali NEGOTIATION
Maisha E NickaArgentinaAmy Elsner NEW
Wickens E FigeroaItalyElwin Sharvill NEGOTIATION
Leon J TollnerSpainAmy Elsner QUALIFIED
Greenwood R AmigonUnited KingdomElwin Sharvill NEGOTIATION
Francesco Z WhobreyIndiaStephen Shaw PROPOSAL
Octavia P WhobreyUnited KingdomOnyama Limba NEGOTIATION
Greenwood T CaudyBrazilAnna Fali PROPOSAL
Morrow Y RutaItalyXuxue Feng QUALIFIED
Ricardo L KolmetzJapanAmy Elsner UNQUALIFIED
Jones H RulapaughBrazilStephen Shaw NEW
Jones P FerenczItalyAsiya Javayant UNQUALIFIED
Jennifer D FollerCanadaIvan Magalhaes NEW
Murillo M StockhamRussiaStephen Shaw NEGOTIATION
Aika O CaldareraRussiaStephen Shaw RENEWAL
Cody N IturbideRussiaIoni Bowcher NEGOTIATION
Silvio Z SergiGermanyBernardo Dominic NEGOTIATION
Tony E NestleSpainStephen Shaw UNQUALIFIED
Ricardo G StockhamBrazilAmy Elsner NEGOTIATION
Leja Y SergiRussiaIvan Magalhaes UNQUALIFIED
Costa S DoeGermanyElwin Sharvill NEW
Greenwood M CampainCanadaOnyama Limba QUALIFIED
Aruna K KolmetzGermanyStephen Shaw UNQUALIFIED
Aruna E GauchoItalyAsiya Javayant NEGOTIATION
Greenwood Q MorascaBrazilAmy Elsner RENEWAL
Deepesh B MaletArgentinaStephen Shaw UNQUALIFIED
Aika E RoysterGermanyOnyama Limba UNQUALIFIED
Costa M MacleadGermanyIoni Bowcher QUALIFIED
David W AmigonItalyAsiya Javayant UNQUALIFIED
Adams U PerinCanadaIvan Magalhaes PROPOSAL
Isabel M RulapaughFranceStephen Shaw QUALIFIED
Aika L BowleyCanadaIvan Magalhaes QUALIFIED
Nicolas E RutaCanadaAmy Elsner UNQUALIFIED
Isabel H InouyeItalyStephen Shaw NEGOTIATION
Misaki A SchemmerIndiaIvan Magalhaes NEGOTIATION
Darci P StensethBrazilOnyama Limba RENEWAL
Tony X ShinkoRussiaElwin Sharvill 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>