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
Greenwood T SchemmerSpainElwin Sharvill RENEWAL
Faith E RimUnited KingdomIoni Bowcher PROPOSAL
Aika E BowleyAustraliaAnna Fali RENEWAL
Aruna D ShinkoArgentinaIoni Bowcher NEW
Claire Q DarakjySpainIvan Magalhaes QUALIFIED
Leja A NestleItalyAmy Elsner QUALIFIED
Alejandro M GarufiUnited KingdomStephen Shaw RENEWAL
Julie X NestleIndiaIvan Magalhaes NEW
Mayumi C KuskoBrazilAsiya Javayant NEGOTIATION
James I StensethAustraliaBernardo Dominic NEGOTIATION
Darci S GauchoItalyAsiya Javayant RENEWAL
Julie I SchemmerCanadaAmy Elsner NEGOTIATION
Julie U VocelkaAustraliaAmy Elsner QUALIFIED
Jones V AlbaresUnited KingdomStephen Shaw UNQUALIFIED
Jones Y FerenczJapanIvan Magalhaes NEGOTIATION
Johnson R FerenczFranceAnna Fali RENEWAL
Morrow E BriddickRussiaXuxue Feng NEW
Kaitlin O RutaSpainIoni Bowcher QUALIFIED
Mujtaba T TollnerJapanIoni Bowcher QUALIFIED
Aruna Q CampainFranceOnyama Limba QUALIFIED
Jones T SaylorsSpainIvan Magalhaes QUALIFIED
Smith T BologniaUnited KingdomAsiya Javayant UNQUALIFIED
Salvatore D RoysterAustraliaElwin Sharvill NEGOTIATION
Ashley F FlosiRussiaBernardo Dominic NEW
David Y StensethJapanAsiya Javayant UNQUALIFIED
Octavia F GauchoGermanyIoni Bowcher NEW
Silvio H FollerBrazilElwin Sharvill RENEWAL
Munro Z MaletSpainAsiya Javayant UNQUALIFIED
Salvatore Y NestleIndiaAsiya Javayant PROPOSAL
Antonio S StensethUnited KingdomBernardo Dominic UNQUALIFIED
Johnson I OldroydRussiaOnyama Limba NEW
Alejandro O GauchoAustraliaAmy Elsner PROPOSAL
James H PerinBrazilIvan Magalhaes NEGOTIATION
Ashley B FerenczCanadaAnna Fali QUALIFIED
Nicolas J TollnerUnited KingdomIoni Bowcher NEW
Antonio B KuskoAustraliaAnna Fali NEGOTIATION
David F NestleFranceIvan Magalhaes NEW
James J InouyeSpainAsiya Javayant UNQUALIFIED
Misaki S GarufiAustraliaAsiya Javayant QUALIFIED
Jennifer M MacleadCanadaBernardo Dominic NEGOTIATION
Smith U GillianArgentinaElwin Sharvill NEW
David F FollerCanadaIoni Bowcher QUALIFIED
Wickens Q InouyeArgentinaStephen Shaw UNQUALIFIED
Jones O KolmetzGermanyIvan Magalhaes NEW
David T MorascaIndiaElwin Sharvill UNQUALIFIED
Morrow Y ChuiIndiaXuxue Feng UNQUALIFIED
Silvio H GillianArgentinaIoni Bowcher RENEWAL
Maria P SaylorsGermanyIvan Magalhaes UNQUALIFIED
Maisha L SlusarskiSpainAmy Elsner QUALIFIED
Ivar K ButtCanadaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Faith W SchemmerArgentinaIvan Magalhaes NEW
Mayumi P GlickGermanyIvan Magalhaes UNQUALIFIED
Emily N CampainArgentinaStephen Shaw RENEWAL
Greenwood U PoquetteSpainOnyama Limba PROPOSAL
Faith E RimItalyAsiya Javayant QUALIFIED
Isabel M MacleadUnited KingdomStephen Shaw RENEWAL
Rodrigues Z RoysterCanadaAmy Elsner UNQUALIFIED
Mujtaba L GillianFranceAnna Fali RENEWAL
Leon M MaletFranceIvan Magalhaes NEW
Mayumi E SergiArgentinaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois X MaletGermany2025-10-02Feltz Printing Service RENEWAL9Anna Fali
1001Maisha Q GlickUnited Kingdom2025-09-30Feltz Printing Service RENEWAL19Elwin Sharvill
1002David E BologniaBrazil2025-10-02Rangoni Of Florence UNQUALIFIED51Onyama Limba
1003Izzy S DilliardArgentina2025-09-27Printing Dimensions PROPOSAL37Amy Elsner
1004Leja Y NestleUnited Kingdom2025-10-11Buckley Miller Wright NEW59Stephen Shaw
1005Ricardo G MaletArgentina2025-10-16Truhlar And Truhlar Attys QUALIFIED21Elwin Sharvill
1006Darci N MaletFrance2025-10-06Buckley Miller Wright NEGOTIATION58Amy Elsner
1007Arvin X ChuiBrazil2025-10-14Feltz Printing Service PROPOSAL62Elwin Sharvill
1008Alejandro Q DilliardAustralia2025-09-24Chemel, James L Cpa UNQUALIFIED72Asiya Javayant
1009Antonio E OstroskyItaly2025-09-23Printing Dimensions PROPOSAL58Ivan Magalhaes
1010Maria G ShinkoItaly2025-09-30Benton, John B Jr NEW29Stephen Shaw
1011Jones N BriddickItaly2025-09-21Chapman, Ross E Esq UNQUALIFIED68Stephen Shaw
1012Wickens F RutaSpain2025-10-12King, Christopher A Esq NEW57Elwin Sharvill
1013Emily X VocelkaUnited Kingdom2025-09-22Chanay, Jeffrey A Esq QUALIFIED84Asiya Javayant
1014Jones Z SchemmerGermany2025-10-03King, Christopher A Esq NEW5Bernardo Dominic
1015Wickens H DoeSpain2025-10-03Commercial Press NEGOTIATION83Asiya Javayant
1016Ivar K NickaAustralia2025-09-25Morlong Associates QUALIFIED49Ioni Bowcher
1017Maisha D GlickItaly2025-09-28Rousseaux, Michael Esq NEW47Asiya Javayant
1018Stacey R ShinkoBrazil2025-10-18Chemel, James L Cpa QUALIFIED63Asiya Javayant
1019Munro V AmigonAustralia2025-09-21Feltz Printing Service PROPOSAL62Elwin Sharvill
1020Murillo F AmigonGermany2025-10-19Rousseaux, Michael Esq QUALIFIED60Onyama Limba
1021Morrow P MaletItaly2025-09-26Chanay, Jeffrey A Esq UNQUALIFIED15Xuxue Feng
1022Rodrigues S ShinkoJapan2025-10-13Morlong Associates QUALIFIED49Amy Elsner
1023Chavez S SaylorsFrance2025-09-23Chemel, James L Cpa NEW12Ivan Magalhaes
1024Ricardo W AlbaresSpain2025-10-19Chapman, Ross E Esq QUALIFIED10Onyama Limba
1025Ricardo F CaudyJapan2025-10-19Benton, John B Jr QUALIFIED76Onyama Limba
1026Ashley T DarakjyUnited Kingdom2025-09-26Truhlar And Truhlar Attys NEW86Amy Elsner
1027Mayumi G FigeroaJapan2025-09-22Buckley Miller Wright NEW87Anna Fali
1028Octavia G SlusarskiArgentina2025-10-08Feltz Printing Service UNQUALIFIED92Ioni Bowcher
1029Octavia X MaletIndia2025-09-26Dorl, James J Esq NEGOTIATION82Asiya Javayant
1030Munro M SlusarskiRussia2025-10-17Morlong Associates QUALIFIED1Asiya Javayant
1031Kaitlin Z OldroydBrazil2025-09-21Dorl, James J Esq UNQUALIFIED47Bernardo Dominic
1032Mayumi R ButtBrazil2025-10-09Chemel, James L Cpa PROPOSAL24Anna Fali
1033Costa Q StensethItaly2025-10-07Feiner Bros UNQUALIFIED26Asiya Javayant
1034Wickens P RimUnited Kingdom2025-09-25Morlong Associates RENEWAL16Onyama Limba
1035Aika R GarufiSpain2025-09-29Buckley Miller Wright UNQUALIFIED31Bernardo Dominic
1036Alejandro B MarrierAustralia2025-10-05Morlong Associates NEW94Ivan Magalhaes
1037Jones D FigeroaAustralia2025-09-29Buckley Miller Wright QUALIFIED79Xuxue Feng
1038Greenwood P IturbideItaly2025-09-29Morlong Associates UNQUALIFIED16Elwin Sharvill
1039Isabel G AmigonIndia2025-10-13Feltz Printing Service PROPOSAL52Elwin Sharvill
1040Isabel J VocelkaFrance2025-10-14King, Christopher A Esq QUALIFIED82Onyama Limba
1041Aditya T MaletAustralia2025-09-29Chemel, James L Cpa UNQUALIFIED56Bernardo Dominic
1042Rodrigues L DilliardBrazil2025-09-27King, Christopher A Esq RENEWAL34Onyama Limba
1043Leja J FerenczSpain2025-09-21Buckley Miller Wright PROPOSAL1Xuxue Feng
1044Cody R WhobreyIndia2025-10-09Rousseaux, Michael Esq UNQUALIFIED8Onyama Limba
1045Octavia T DilliardJapan2025-09-23Printing Dimensions RENEWAL74Ivan Magalhaes
1046Ricardo Y WhobreyGermany2025-09-27Commercial Press NEGOTIATION8Asiya Javayant
1047Ricardo W InouyeSpain2025-10-09Printing Dimensions NEW86Anna Fali
1048Costa E NickaIndia2025-10-19Feltz Printing Service UNQUALIFIED30Asiya Javayant
1049Aruna X AmigonRussia2025-10-10Buckley Miller Wright RENEWAL76Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Costa Q SchemmerFranceIvan Magalhaes RENEWAL
Aditya Y BologniaRussiaXuxue Feng NEW
Claire H RoysterIndiaOnyama Limba UNQUALIFIED
Wickens P CaldareraIndiaAnna Fali RENEWAL
Aditya H VocelkaUnited KingdomAmy Elsner RENEWAL
Adams S CaldareraGermanyIoni Bowcher PROPOSAL
Kadeem G WhobreyItalyOnyama Limba UNQUALIFIED
Deepesh I WhobreyAustraliaIvan Magalhaes UNQUALIFIED
Deepesh X GarufiUnited KingdomStephen Shaw UNQUALIFIED
Misaki X ChuiItalyAmy Elsner NEGOTIATION
Silvio D WhobreyArgentinaAsiya Javayant UNQUALIFIED
Munro Z VenereSpainAmy Elsner QUALIFIED
Leon Z AmigonItalyIoni Bowcher RENEWAL
Silvio I ButtGermanyXuxue Feng NEGOTIATION
Jennifer Z DilliardCanadaBernardo Dominic NEGOTIATION
Nicolas V FlosiFranceAmy Elsner QUALIFIED
Ricardo H OldroydRussiaAnna Fali UNQUALIFIED
Isabel F BriddickBrazilOnyama Limba RENEWAL
Aruna Y TollnerSpainBernardo Dominic QUALIFIED
Claire F BriddickBrazilStephen Shaw RENEWAL
Munro T CaldareraGermanyIoni Bowcher RENEWAL
Leon R WhobreyAustraliaOnyama Limba RENEWAL
Mujtaba K RoysterJapanElwin Sharvill RENEWAL
Maria S FerenczSpainAmy Elsner NEGOTIATION
Greenwood J CampainItalyAsiya Javayant NEW
Murillo W GarufiJapanIvan Magalhaes PROPOSAL
Leja H MacleadFranceAnna Fali PROPOSAL
Leon O NickaJapanBernardo Dominic NEGOTIATION
Faith R CaldareraArgentinaXuxue Feng QUALIFIED
Aditya F ChuiGermanyAmy Elsner QUALIFIED
Alejandro J GlickIndiaXuxue Feng QUALIFIED
Silvio A GauchoFranceIoni Bowcher UNQUALIFIED
Greenwood C PerinJapanStephen Shaw NEGOTIATION
Clifford D SaylorsGermanyIvan Magalhaes NEGOTIATION
Kadeem G ButtIndiaBernardo Dominic NEW
Munro I SlusarskiAustraliaElwin Sharvill QUALIFIED
Mujtaba E DarakjyCanadaAsiya Javayant RENEWAL
Mujtaba V MaletAustraliaStephen Shaw RENEWAL
Clifford V MarrierBrazilStephen Shaw PROPOSAL
Darci K FerenczUnited KingdomAsiya Javayant RENEWAL
Maisha P CaudyItalyBernardo Dominic NEW
Greenwood B CaldareraIndiaOnyama Limba NEW
Costa P SergiItalyXuxue Feng NEGOTIATION
Jones D VenereAustraliaAnna Fali NEW
Munro P IturbideFranceBernardo Dominic NEW
Kadeem N OldroydFranceElwin Sharvill QUALIFIED
Aditya J KolmetzItalyAnna Fali UNQUALIFIED
Francesco S CampainSpainIoni Bowcher NEGOTIATION
Juan C RoysterItalyAnna Fali UNQUALIFIED
Aruna Z CampainJapanAsiya Javayant QUALIFIED
Frozen Columns
Name
Kadeem P Amigon
Deepesh B Glick
Julie R Chui
Clifford U Amigon
Mayumi L Malet
Chavez M Poquette
Maisha I Nicka
Jefferson S Butt
Darci Z Kusko
Emily U Rulapaugh
Izzy S Figeroa
Misaki J Nicka
Murillo Q Briddick
Chavez V Schemmer
Faith N Malet
Munro D Nestle
Greenwood O Schemmer
Adams P Perin
Adams Q Sergi
Ricardo L Shinko
Misaki Q Shinko
Faith U Glick
Alejandro I Shinko
Mujtaba O Flosi
Johnson O Tollner
Silvio K Tollner
Smith Z Rim
Leja N Inouye
Mayumi Y Glick
Tony J Caldarera
Aruna C Malet
Wickens J Malet
Leon E Kolmetz
Maria V Briddick
James V Nicka
Juan T Venere
Tony G Morasca
Antonio O Stockham
Kadeem V Waycott
Leon B Sergi
Maisha J Marrier
Jefferson D Darakjy
Aruna P Rulapaugh
Arvin K Iturbide
Ricardo O Foller
Stacey K Darakjy
Leon X Poquette
Aditya I Gillian
Jones E Darakjy
Johnson G Campain
IdCountryDate
1000Italy2025-09-22
1001France2025-10-02
1002Argentina2025-09-23
1003Canada2025-10-16
1004Germany2025-10-10
1005France2025-09-29
1006Germany2025-10-10
1007Japan2025-10-09
1008Brazil2025-09-28
1009Italy2025-09-30
1010Canada2025-09-22
1011France2025-09-23
1012United Kingdom2025-09-24
1013Germany2025-09-27
1014Spain2025-10-05
1015Spain2025-09-29
1016Australia2025-09-30
1017Russia2025-10-06
1018Spain2025-10-14
1019Brazil2025-10-13
1020Spain2025-10-19
1021France2025-10-02
1022Canada2025-10-18
1023United Kingdom2025-10-15
1024Spain2025-10-10
1025Germany2025-10-14
1026Japan2025-10-03
1027France2025-09-29
1028Germany2025-10-04
1029Germany2025-10-07
1030Italy2025-09-26
1031United Kingdom2025-10-10
1032France2025-09-28
1033Russia2025-10-02
1034Australia2025-10-12
1035France2025-10-05
1036Australia2025-10-12
1037United Kingdom2025-10-04
1038Australia2025-10-04
1039France2025-10-10
1040Spain2025-09-29
1041Japan2025-09-29
1042France2025-09-25
1043Spain2025-10-03
1044India2025-10-07
1045Germany2025-10-17
1046Germany2025-09-29
1047Brazil2025-09-21
1048Spain2025-10-07
1049Russia2025-09-20

On-Demand Data

NameIdCountryDate
Darci Z Shinko1000India2025-10-19
Morrow I Flosi1001India2025-10-14
Sinclair H Dilliard1002India2025-09-26
Clifford O Gillian1003Spain2025-10-02
Johnson R Figeroa1004Brazil2025-09-27
Johnson A Perin1005Canada2025-09-20
Mujtaba X Garufi1006France2025-10-08
Julie W Maclead1007Japan2025-10-10
Salvatore G Sergi1008Argentina2025-09-27
Murillo S Saylors1009Germany2025-10-04
Leon E Paprocki1010Canada2025-10-12
David G Campain1011Australia2025-09-26
Faith E Paprocki1012United Kingdom2025-10-06
Faith S Morasca1013Argentina2025-10-19
James E Royster1014India2025-10-14
Aruna R Paprocki1015Germany2025-09-29
Leon E Glick1016Germany2025-10-14
Julie D Dilliard1017India2025-09-22
Arvin D Ruta1018Germany2025-10-12
Adams N Gaucho1019Brazil2025-09-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James T FerenczBrazilStephen Shaw NEW
Aditya Y RimFranceStephen Shaw RENEWAL
Jeanfrancois J MarrierSpainAmy Elsner RENEWAL
Smith A WaycottIndiaElwin Sharvill NEGOTIATION
Costa V RulapaughJapanIvan Magalhaes NEGOTIATION
David B CampainGermanyIvan Magalhaes NEW
Faith N RoysterArgentinaAnna Fali PROPOSAL
Mujtaba A FigeroaBrazilAsiya Javayant NEW
Mujtaba I DarakjyCanadaXuxue Feng UNQUALIFIED
Emily K KolmetzCanadaAmy Elsner UNQUALIFIED
Jefferson O CampainRussiaStephen Shaw QUALIFIED
Aditya S IturbideJapanIvan Magalhaes UNQUALIFIED
Sinclair U GauchoIndiaXuxue Feng NEGOTIATION
Adams F BriddickGermanyAsiya Javayant UNQUALIFIED
Nicolas X SchemmerUnited KingdomAmy Elsner PROPOSAL
James N DarakjyCanadaXuxue Feng NEGOTIATION
Jefferson W OldroydBrazilIvan Magalhaes QUALIFIED
Mujtaba V FlosiBrazilStephen Shaw PROPOSAL
Aditya O BowleyJapanBernardo Dominic UNQUALIFIED
Tony Q TollnerRussiaOnyama Limba RENEWAL
Ashley B PoquetteGermanyOnyama Limba NEGOTIATION
Clifford P CaudyItalyAmy Elsner RENEWAL
Leon E RimItalyIoni Bowcher QUALIFIED
Kaitlin T IturbideJapanElwin Sharvill NEGOTIATION
Misaki O ButtUnited KingdomOnyama Limba UNQUALIFIED
Rodrigues C FerenczJapanAsiya Javayant PROPOSAL
Nicolas H DilliardJapanAnna Fali RENEWAL
Smith E NickaAustraliaStephen Shaw NEW
Morrow L FerenczCanadaAnna Fali RENEWAL
Faith N RulapaughBrazilElwin Sharvill QUALIFIED
Kadeem J StensethRussiaAsiya Javayant NEGOTIATION
Ashley V VenereIndiaIvan Magalhaes PROPOSAL
Murillo L WhobreyArgentinaAsiya Javayant NEGOTIATION
Alejandro T PoquetteRussiaAmy Elsner QUALIFIED
Ashley V PoquetteArgentinaIoni Bowcher NEGOTIATION
Stacey T FollerIndiaAmy Elsner NEW
Julie U ChuiSpainIoni Bowcher NEW
David H GauchoJapanElwin Sharvill NEGOTIATION
Tony O AmigonAustraliaElwin Sharvill RENEWAL
James T InouyeRussiaElwin Sharvill NEGOTIATION

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