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
Leja R InouyeRussiaAmy Elsner PROPOSAL
Francesco C NestleSpainIoni Bowcher QUALIFIED
Stacey B RulapaughCanadaIoni Bowcher QUALIFIED
Juan V BriddickAustraliaIoni Bowcher QUALIFIED
Ricardo M MorascaCanadaAmy Elsner UNQUALIFIED
Octavia I MaletUnited KingdomElwin Sharvill QUALIFIED
Kadeem C DoeBrazilAnna Fali UNQUALIFIED
Sinclair M InouyeJapanIvan Magalhaes QUALIFIED
Mujtaba N SchemmerFranceAmy Elsner UNQUALIFIED
Munro E AmigonRussiaXuxue Feng PROPOSAL
Stacey N MaletBrazilElwin Sharvill UNQUALIFIED
Ashley B BriddickRussiaIoni Bowcher RENEWAL
Greenwood S GlickGermanyElwin Sharvill RENEWAL
Leon E RutaAustraliaXuxue Feng NEGOTIATION
Octavia M PerinIndiaIoni Bowcher NEW
Emily P VenereRussiaIvan Magalhaes PROPOSAL
Antonio U MarrierArgentinaBernardo Dominic PROPOSAL
Darci Y WhobreySpainAsiya Javayant NEW
Rodrigues H CampainArgentinaElwin Sharvill NEGOTIATION
Mujtaba X GillianJapanIoni Bowcher PROPOSAL
Murillo G GlickBrazilStephen Shaw NEGOTIATION
Julie G BologniaSpainStephen Shaw PROPOSAL
Morrow J PoquetteGermanyAmy Elsner NEW
Aika P DoeIndiaElwin Sharvill QUALIFIED
Adams V VenereItalyOnyama Limba NEGOTIATION
Julie F OldroydJapanAsiya Javayant NEGOTIATION
Smith I DarakjyItalyIoni Bowcher NEGOTIATION
Deepesh Y SaylorsIndiaIvan Magalhaes PROPOSAL
Jennifer D ButtIndiaStephen Shaw UNQUALIFIED
Jennifer T TollnerItalyXuxue Feng RENEWAL
Clifford Q CaudyBrazilStephen Shaw UNQUALIFIED
Johnson C SchemmerUnited KingdomBernardo Dominic NEW
Ashley W GlickRussiaIvan Magalhaes UNQUALIFIED
Cody L MaletGermanyAsiya Javayant NEW
Greenwood G MarrierUnited KingdomOnyama Limba NEW
Leon P DilliardGermanyOnyama Limba QUALIFIED
Leon A MacleadSpainAmy Elsner QUALIFIED
Isabel U BologniaCanadaXuxue Feng NEW
Leon W DoeJapanOnyama Limba NEW
Kaitlin I MorascaIndiaBernardo Dominic NEW
Rodrigues L SlusarskiJapanOnyama Limba NEGOTIATION
Greenwood X BriddickAustraliaBernardo Dominic PROPOSAL
Kaitlin U BologniaFranceAsiya Javayant PROPOSAL
Mayumi X OldroydItalyIvan Magalhaes PROPOSAL
Kaitlin D MorascaGermanyIvan Magalhaes NEW
Misaki H ChuiIndiaOnyama Limba RENEWAL
Juan R FerenczFranceOnyama Limba QUALIFIED
Ricardo Q WaycottIndiaAsiya Javayant UNQUALIFIED
Chavez W RutaJapanBernardo Dominic NEGOTIATION
Ivar Y DarakjyCanadaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Kadeem T PoquetteFranceElwin Sharvill RENEWAL
Francesco R PaprockiGermanyAnna Fali RENEWAL
Clifford I FlosiAustraliaIvan Magalhaes NEGOTIATION
Maria O SergiSpainStephen Shaw PROPOSAL
Misaki J CaudyJapanXuxue Feng NEW
Silvio B AlbaresJapanElwin Sharvill UNQUALIFIED
Kaitlin J SergiUnited KingdomXuxue Feng NEW
Sinclair H RimIndiaIoni Bowcher UNQUALIFIED
Leon X CaldareraAustraliaElwin Sharvill QUALIFIED
Leja O WaycottRussiaElwin Sharvill NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair O MacleadCanada2025-07-14Dorl, James J Esq UNQUALIFIED50Ivan Magalhaes
1001Aika R GarufiCanada2025-08-05Commercial Press PROPOSAL32Anna Fali
1002Octavia P DilliardIndia2025-07-14Rousseaux, Michael Esq QUALIFIED49Xuxue Feng
1003Johnson R MorascaFrance2025-08-02Chanay, Jeffrey A Esq UNQUALIFIED50Asiya Javayant
1004Chavez J ShinkoRussia2025-07-21Benton, John B Jr NEW8Anna Fali
1005Adams R WaycottUnited Kingdom2025-07-29Chemel, James L Cpa QUALIFIED4Xuxue Feng
1006Nicolas I KuskoAustralia2025-08-03Feiner Bros RENEWAL45Onyama Limba
1007Maria P MorascaBrazil2025-07-26Feiner Bros QUALIFIED86Stephen Shaw
1008Tony P GlickAustralia2025-07-15Rangoni Of Florence NEGOTIATION91Stephen Shaw
1009James J MacleadAustralia2025-08-01Rangoni Of Florence NEGOTIATION0Asiya Javayant
1010Munro C VenereAustralia2025-07-16Morlong Associates RENEWAL18Ivan Magalhaes
1011Francesco N NickaSpain2025-07-17Morlong Associates NEW27Anna Fali
1012Ashley M MaletAustralia2025-07-15Feltz Printing Service PROPOSAL77Amy Elsner
1013Claire G RulapaughFrance2025-08-08Benton, John B Jr NEW62Ivan Magalhaes
1014Ashley H MarrierItaly2025-07-19Feltz Printing Service QUALIFIED71Asiya Javayant
1015Maisha S CampainAustralia2025-07-23Buckley Miller Wright QUALIFIED6Anna Fali
1016Kaitlin T KuskoCanada2025-08-04Commercial Press RENEWAL0Amy Elsner
1017Izzy W CaudyBrazil2025-08-09Feiner Bros NEW88Amy Elsner
1018Ricardo L KolmetzJapan2025-08-11Morlong Associates NEGOTIATION80Xuxue Feng
1019Mayumi I DoeRussia2025-07-28Chemel, James L Cpa UNQUALIFIED57Anna Fali
1020Alejandro V DarakjyJapan2025-07-30Feltz Printing Service UNQUALIFIED55Xuxue Feng
1021Stacey R FigeroaGermany2025-07-23Feltz Printing Service RENEWAL40Asiya Javayant
1022Murillo D DarakjyBrazil2025-07-25Feltz Printing Service NEGOTIATION75Xuxue Feng
1023Isabel S SaylorsArgentina2025-08-05Feltz Printing Service NEGOTIATION94Stephen Shaw
1024Smith Y OstroskyRussia2025-07-23Morlong Associates QUALIFIED33Ivan Magalhaes
1025Jeanfrancois J FollerArgentina2025-08-09Feiner Bros RENEWAL85Ioni Bowcher
1026Emily X FlosiCanada2025-07-24Morlong Associates NEGOTIATION77Asiya Javayant
1027Greenwood E WhobreyArgentina2025-07-18Dorl, James J Esq NEGOTIATION84Ioni Bowcher
1028Silvio K VenereGermany2025-08-06Chemel, James L Cpa PROPOSAL70Asiya Javayant
1029Aruna K DilliardGermany2025-07-27Chapman, Ross E Esq NEW17Elwin Sharvill
1030Leon K GarufiJapan2025-07-18King, Christopher A Esq NEW10Stephen Shaw
1031Sinclair Z DoeItaly2025-08-08King, Christopher A Esq UNQUALIFIED49Stephen Shaw
1032Tony J NestleBrazil2025-08-04Benton, John B Jr NEGOTIATION59Stephen Shaw
1033Jeanfrancois E RimArgentina2025-08-10Printing Dimensions PROPOSAL92Elwin Sharvill
1034Nicolas Z TollnerArgentina2025-08-06Morlong Associates UNQUALIFIED81Onyama Limba
1035Deepesh L RoysterJapan2025-08-02Printing Dimensions PROPOSAL30Asiya Javayant
1036Smith K KuskoFrance2025-08-02Printing Dimensions QUALIFIED64Asiya Javayant
1037Adams J BriddickFrance2025-08-02Truhlar And Truhlar Attys PROPOSAL89Stephen Shaw
1038Aika Y KolmetzRussia2025-07-18Truhlar And Truhlar Attys PROPOSAL34Stephen Shaw
1039Munro N FlosiGermany2025-08-10Feiner Bros RENEWAL14Amy Elsner
1040Greenwood G SlusarskiGermany2025-08-11King, Christopher A Esq NEGOTIATION38Onyama Limba
1041Salvatore E VenereJapan2025-07-20Benton, John B Jr QUALIFIED46Amy Elsner
1042Adams A PoquetteAustralia2025-08-08Chemel, James L Cpa NEW6Elwin Sharvill
1043Ricardo Q ButtRussia2025-07-30Feltz Printing Service RENEWAL40Stephen Shaw
1044Julie T SergiJapan2025-07-24Chanay, Jeffrey A Esq QUALIFIED51Stephen Shaw
1045Antonio X KolmetzJapan2025-08-08Rangoni Of Florence QUALIFIED4Ioni Bowcher
1046Leon L CaldareraFrance2025-07-23Chapman, Ross E Esq NEW57Ioni Bowcher
1047Mayumi I RutaJapan2025-07-17Chapman, Ross E Esq NEGOTIATION62Xuxue Feng
1048Aruna B PaprockiCanada2025-07-23Feltz Printing Service PROPOSAL56Asiya Javayant
1049Chavez C DarakjyRussia2025-07-30Chanay, Jeffrey A Esq PROPOSAL31Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jennifer I FollerCanadaStephen Shaw RENEWAL
Kadeem C NickaJapanElwin Sharvill QUALIFIED
Alejandro K MarrierGermanyAsiya Javayant UNQUALIFIED
Alejandro U CaldareraArgentinaAsiya Javayant NEW
Kadeem N InouyeArgentinaXuxue Feng PROPOSAL
Alejandro Y ButtArgentinaIoni Bowcher QUALIFIED
Maisha D FollerFranceAnna Fali RENEWAL
James H OstroskyCanadaBernardo Dominic NEW
Octavia U OldroydUnited KingdomAnna Fali NEGOTIATION
Munro Y CaudyAustraliaIvan Magalhaes PROPOSAL
Jeanfrancois I GlickBrazilBernardo Dominic QUALIFIED
David C AmigonAustraliaBernardo Dominic NEW
Aruna W StensethAustraliaXuxue Feng NEGOTIATION
Chavez D WaycottFranceXuxue Feng QUALIFIED
Kaitlin I MaletSpainIoni Bowcher QUALIFIED
Morrow I MaletJapanStephen Shaw RENEWAL
Deepesh U TollnerFranceBernardo Dominic NEW
Jefferson Q BowleyJapanOnyama Limba RENEWAL
Cody G GillianGermanyOnyama Limba PROPOSAL
Juan M FigeroaAustraliaBernardo Dominic NEW
Emily K KolmetzJapanAsiya Javayant NEGOTIATION
Julie F TollnerFranceStephen Shaw UNQUALIFIED
Ashley V StensethAustraliaStephen Shaw UNQUALIFIED
Juan I BowleyBrazilAmy Elsner NEW
Morrow D NestleJapanBernardo Dominic QUALIFIED
Mayumi K VenereIndiaStephen Shaw RENEWAL
Maria D TollnerUnited KingdomStephen Shaw NEGOTIATION
Ricardo A MacleadSpainXuxue Feng UNQUALIFIED
Kadeem A GarufiAustraliaAsiya Javayant NEW
Ashley W RimRussiaIoni Bowcher RENEWAL
Tony R MarrierItalyAmy Elsner NEGOTIATION
Adams R MacleadGermanyXuxue Feng NEW
Mujtaba V OldroydItalyOnyama Limba QUALIFIED
Aika Y PaprockiRussiaIvan Magalhaes NEGOTIATION
Mujtaba L NestleArgentinaStephen Shaw QUALIFIED
Emily Y RoysterSpainXuxue Feng NEGOTIATION
Juan V KuskoIndiaIoni Bowcher NEGOTIATION
David L VocelkaArgentinaIvan Magalhaes NEW
Deepesh B CampainAustraliaElwin Sharvill PROPOSAL
Darci M MaletJapanStephen Shaw PROPOSAL
Maria M BowleyCanadaAnna Fali NEGOTIATION
Jeanfrancois M ChuiFranceStephen Shaw NEGOTIATION
Murillo C MaletSpainOnyama Limba NEW
Greenwood F CaudyIndiaIvan Magalhaes NEGOTIATION
Jeanfrancois A RimJapanAsiya Javayant NEGOTIATION
Julie U MorascaBrazilAnna Fali PROPOSAL
Arvin V SaylorsJapanAnna Fali NEW
Salvatore Z WaycottRussiaIvan Magalhaes PROPOSAL
Sinclair M MacleadJapanAmy Elsner RENEWAL
Mayumi N NestleBrazilBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Clifford Y Perin
Darci X Inouye
Costa J Iturbide
Aika F Stenseth
Greenwood S Morasca
Leja Q Kusko
Sinclair O Saylors
Smith N Doe
Claire R Whobrey
Alejandro X Rulapaugh
Ivar Z Kusko
Arvin M Morasca
Julie D Nicka
Antonio P Gaucho
Aruna Y Ostrosky
Greenwood G Briddick
Smith K Rim
Ivar Q Wieser
Ivar V Flosi
Jefferson B Butt
Leon N Venere
Isabel S Bolognia
Jeanfrancois P Garufi
Deepesh E Inouye
Jones Q Ostrosky
Morrow K Tollner
Misaki M Royster
Darci I Butt
Isabel R Stockham
Johnson I Royster
Antonio S Bowley
David L Amigon
Clifford X Oldroyd
Cody X Tollner
Julie N Kolmetz
Wickens N Figeroa
James X Bowley
Nicolas O Oldroyd
Julie V Poquette
Wickens P Albares
Sinclair S Perin
Chavez W Royster
Murillo U Nicka
Cody B Albares
Ashley C Caldarera
Francesco W Albares
Francesco F Waycott
Rodrigues R Morasca
Ashley M Schemmer
Wickens O Marrier
IdCountryDate
1000India2025-07-18
1001Germany2025-07-20
1002Spain2025-08-12
1003Japan2025-08-01
1004Spain2025-08-03
1005Russia2025-08-09
1006Argentina2025-07-20
1007France2025-07-22
1008Russia2025-07-19
1009Canada2025-08-06
1010Canada2025-07-20
1011Spain2025-08-02
1012India2025-07-17
1013France2025-08-07
1014United Kingdom2025-08-01
1015Germany2025-08-04
1016Spain2025-08-01
1017Japan2025-08-09
1018Germany2025-07-27
1019Canada2025-08-10
1020France2025-07-18
1021France2025-08-11
1022United Kingdom2025-08-11
1023United Kingdom2025-07-24
1024Brazil2025-07-28
1025Brazil2025-07-26
1026Argentina2025-07-15
1027Italy2025-07-30
1028Germany2025-07-18
1029Canada2025-07-29
1030France2025-08-05
1031Argentina2025-07-25
1032Russia2025-08-09
1033United Kingdom2025-08-08
1034Canada2025-08-03
1035Russia2025-07-28
1036Russia2025-08-04
1037France2025-07-31
1038Argentina2025-07-18
1039France2025-07-17
1040Argentina2025-08-01
1041Italy2025-08-07
1042Spain2025-07-20
1043Australia2025-07-30
1044France2025-07-24
1045India2025-07-15
1046Spain2025-08-05
1047Argentina2025-07-30
1048Australia2025-08-02
1049Brazil2025-08-01

On-Demand Data

NameIdCountryDate
Claire I Maclead1000Russia2025-07-24
Kadeem J Royster1001United Kingdom2025-07-29
Maisha J Kolmetz1002Brazil2025-07-18
Jones Z Waycott1003Japan2025-07-19
Alejandro I Nicka1004Spain2025-07-20
Juan K Rulapaugh1005Russia2025-07-19
Maisha T Stockham1006France2025-07-15
Faith E Morasca1007Japan2025-07-17
Leon C Royster1008Italy2025-08-12
Wickens E Tollner1009India2025-07-30
Costa S Darakjy1010Brazil2025-07-26
Nicolas V Inouye1011Brazil2025-08-06
Leja A Saylors1012Spain2025-08-10
Claire K Royster1013Italy2025-08-03
Costa W Caldarera1014Italy2025-08-02
Juan K Ferencz1015Japan2025-07-26
Arvin L Caudy1016Brazil2025-08-01
Darci P Royster1017India2025-07-24
Faith G Darakjy1018Canada2025-07-20
Cody K Stockham1019Russia2025-07-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin S BowleyRussiaElwin Sharvill RENEWAL
Adams A ChuiGermanyAnna Fali UNQUALIFIED
Faith K NickaItalyAmy Elsner PROPOSAL
Mujtaba E FigeroaSpainAmy Elsner UNQUALIFIED
Juan O NickaAustraliaAsiya Javayant QUALIFIED
Nicolas C WaycottCanadaBernardo Dominic UNQUALIFIED
Ricardo T DoeAustraliaAmy Elsner RENEWAL
Ricardo T GauchoBrazilBernardo Dominic UNQUALIFIED
Mayumi S PerinItalyIvan Magalhaes NEW
Antonio G RimItalyXuxue Feng QUALIFIED
Ivar J RoysterIndiaStephen Shaw PROPOSAL
Greenwood G RoysterArgentinaBernardo Dominic QUALIFIED
Silvio L MaletGermanyXuxue Feng RENEWAL
Munro C FerenczItalyAsiya Javayant RENEWAL
Ricardo F SaylorsSpainBernardo Dominic UNQUALIFIED
Izzy L DilliardGermanyIoni Bowcher NEW
Jefferson K BowleyItalyStephen Shaw RENEWAL
Cody E AmigonBrazilAnna Fali QUALIFIED
Isabel L GlickRussiaAmy Elsner NEW
Clifford X GarufiCanadaIoni Bowcher NEW
Kaitlin Y KuskoGermanyStephen Shaw NEGOTIATION
Aika U InouyeJapanXuxue Feng UNQUALIFIED
Octavia M GarufiFranceAsiya Javayant UNQUALIFIED
Munro U DilliardBrazilXuxue Feng NEGOTIATION
Mayumi L RimIndiaAnna Fali PROPOSAL
Munro P NickaSpainStephen Shaw PROPOSAL
Claire K SchemmerIndiaElwin Sharvill QUALIFIED
Mayumi D RimUnited KingdomElwin Sharvill QUALIFIED
Rodrigues Y KolmetzUnited KingdomOnyama Limba QUALIFIED
Faith X WieserBrazilAnna Fali PROPOSAL
Antonio Q AmigonItalyElwin Sharvill NEW
Darci M MaletFranceIvan Magalhaes NEW
Isabel M ButtSpainOnyama Limba NEGOTIATION
Mujtaba L MacleadCanadaStephen Shaw QUALIFIED
Juan X GarufiCanadaAnna Fali PROPOSAL
Jennifer B FerenczBrazilOnyama Limba NEGOTIATION
Greenwood G WieserJapanAmy Elsner RENEWAL
Costa M DilliardAustraliaXuxue Feng QUALIFIED
Stacey J ShinkoAustraliaAsiya Javayant NEW
Izzy S SergiAustraliaIvan Magalhaes PROPOSAL

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