November Deals: Limited Coupons Available! 🎁 Claim Your Coupon

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
Maria U WaycottBrazilOnyama Limba NEGOTIATION
Alejandro Z BowleyArgentinaOnyama Limba UNQUALIFIED
Maisha H RimBrazilAsiya Javayant PROPOSAL
Arvin N RoysterJapanAsiya Javayant NEW
Munro H ShinkoCanadaElwin Sharvill RENEWAL
Rodrigues B BriddickAustraliaElwin Sharvill NEW
Julie T OstroskyFranceOnyama Limba NEW
Smith Z CampainUnited KingdomXuxue Feng UNQUALIFIED
Aruna Y WieserFranceXuxue Feng QUALIFIED
Tony J CampainGermanyElwin Sharvill RENEWAL
Maisha C AlbaresJapanOnyama Limba UNQUALIFIED
Izzy Y IturbideFranceAnna Fali NEGOTIATION
Adams N AlbaresGermanyAsiya Javayant NEGOTIATION
Clifford F SergiRussiaIvan Magalhaes PROPOSAL
David K ShinkoArgentinaAsiya Javayant NEGOTIATION
Emily E VenereItalyStephen Shaw NEW
Faith O TollnerGermanyAsiya Javayant RENEWAL
Octavia Z RimFranceAsiya Javayant NEGOTIATION
Mayumi L OstroskyBrazilStephen Shaw QUALIFIED
Jones D MorascaArgentinaElwin Sharvill RENEWAL
Jeanfrancois N BologniaIndiaAnna Fali UNQUALIFIED
Jefferson T FollerJapanIoni Bowcher RENEWAL
James R RimRussiaAsiya Javayant QUALIFIED
Stacey U RoysterCanadaBernardo Dominic NEW
Maisha J PoquetteAustraliaElwin Sharvill RENEWAL
Claire S NickaRussiaIoni Bowcher NEW
Maria H StensethBrazilAsiya Javayant QUALIFIED
Juan G GillianGermanyOnyama Limba NEW
Tony E WieserCanadaAnna Fali QUALIFIED
Johnson X StockhamRussiaAnna Fali UNQUALIFIED
Jeanfrancois C InouyeAustraliaIoni Bowcher NEGOTIATION
Greenwood K WaycottUnited KingdomAmy Elsner QUALIFIED
Greenwood O GillianAustraliaStephen Shaw PROPOSAL
Maria X CampainCanadaAnna Fali NEGOTIATION
Izzy Z GarufiIndiaIoni Bowcher QUALIFIED
Ricardo H OldroydUnited KingdomStephen Shaw RENEWAL
Munro C KuskoUnited KingdomAsiya Javayant QUALIFIED
Rodrigues R ShinkoCanadaStephen Shaw UNQUALIFIED
Francesco Y GillianArgentinaAsiya Javayant QUALIFIED
Cody F FollerIndiaAnna Fali QUALIFIED
Greenwood U MacleadCanadaIoni Bowcher QUALIFIED
Silvio C IturbideJapanAmy Elsner QUALIFIED
Adams L GlickAustraliaIvan Magalhaes QUALIFIED
Rodrigues V OstroskyCanadaAsiya Javayant NEGOTIATION
Jones D RutaSpainStephen Shaw RENEWAL
Mayumi Y RulapaughFranceAnna Fali NEW
Jennifer H PoquetteCanadaOnyama Limba UNQUALIFIED
Maria K SchemmerItalyAsiya Javayant NEW
James B StockhamBrazilIoni Bowcher PROPOSAL
Emily V BriddickItalyAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Salvatore C DilliardGermanyAmy Elsner NEGOTIATION
Juan I ButtGermanyIvan Magalhaes RENEWAL
Morrow R InouyeBrazilAmy Elsner NEW
Ivar Z InouyeFranceIoni Bowcher NEGOTIATION
Leja F FerenczRussiaXuxue Feng UNQUALIFIED
Salvatore E WaycottBrazilBernardo Dominic QUALIFIED
Aditya X WhobreyIndiaIoni Bowcher NEW
Leja N OstroskyAustraliaIvan Magalhaes UNQUALIFIED
Salvatore Y InouyeRussiaAnna Fali NEGOTIATION
Cody Z FerenczGermanyStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois O MarrierIndia2026-09-26Dorl, James J Esq NEW33Amy Elsner
1001Greenwood C WhobreyRussia2026-10-19Feltz Printing Service QUALIFIED62Anna Fali
1002David J MorascaItaly2026-10-01Chanay, Jeffrey A Esq PROPOSAL9Ioni Bowcher
1003Arvin R GarufiRussia2026-10-18King, Christopher A Esq QUALIFIED63Onyama Limba
1004Ivar K RoysterRussia2026-10-01Buckley Miller Wright NEGOTIATION59Onyama Limba
1005Jones P NickaFrance2026-10-01Buckley Miller Wright RENEWAL33Asiya Javayant
1006Adams L RimRussia2026-09-25Printing Dimensions NEW78Xuxue Feng
1007Claire F PaprockiBrazil2026-10-07Chanay, Jeffrey A Esq RENEWAL47Anna Fali
1008Clifford U VocelkaAustralia2026-10-23Feltz Printing Service PROPOSAL8Ioni Bowcher
1009Jennifer K GauchoAustralia2026-09-29Morlong Associates RENEWAL14Amy Elsner
1010Kaitlin I RoysterIndia2026-09-28Rangoni Of Florence NEGOTIATION14Ioni Bowcher
1011Isabel H TollnerArgentina2026-09-29Benton, John B Jr PROPOSAL97Amy Elsner
1012Kaitlin X RulapaughIndia2026-10-20Feiner Bros PROPOSAL11Bernardo Dominic
1013Alejandro X ChuiIndia2026-09-27Dorl, James J Esq UNQUALIFIED50Elwin Sharvill
1014Silvio W ButtAustralia2026-10-15Dorl, James J Esq NEW46Onyama Limba
1015Maria J AmigonGermany2026-09-28Printing Dimensions QUALIFIED1Ioni Bowcher
1016Deepesh W NickaItaly2026-10-20Rousseaux, Michael Esq PROPOSAL19Ioni Bowcher
1017Aditya C BologniaBrazil2026-09-30Dorl, James J Esq NEGOTIATION76Stephen Shaw
1018Ivar X PerinCanada2026-10-21Benton, John B Jr NEW84Stephen Shaw
1019Munro Q ChuiCanada2026-10-15Chemel, James L Cpa NEW19Asiya Javayant
1020Darci N CaldareraJapan2026-10-21Feiner Bros RENEWAL49Onyama Limba
1021Ashley S VenereArgentina2026-09-30Feiner Bros NEGOTIATION76Xuxue Feng
1022Darci A AlbaresAustralia2026-10-13Chanay, Jeffrey A Esq QUALIFIED95Ioni Bowcher
1023Ivar R OstroskyGermany2026-10-14Dorl, James J Esq NEW50Stephen Shaw
1024Ivar O MorascaIndia2026-09-28Dorl, James J Esq PROPOSAL61Ioni Bowcher
1025Antonio B InouyeItaly2026-10-22Feltz Printing Service NEW12Bernardo Dominic
1026Clifford K DarakjyArgentina2026-09-25Morlong Associates NEGOTIATION66Elwin Sharvill
1027Murillo F PerinIndia2026-10-06Dorl, James J Esq UNQUALIFIED25Onyama Limba
1028Maisha K BologniaCanada2026-10-07Commercial Press NEW2Stephen Shaw
1029Morrow R SchemmerArgentina2026-10-05Dorl, James J Esq RENEWAL66Amy Elsner
1030Costa W DilliardGermany2026-10-12Rangoni Of Florence RENEWAL27Anna Fali
1031Leon E BriddickArgentina2026-10-21Chapman, Ross E Esq QUALIFIED82Asiya Javayant
1032Smith E GlickArgentina2026-10-18Buckley Miller Wright NEGOTIATION81Onyama Limba
1033Jones Z ShinkoItaly2026-09-25Benton, John B Jr PROPOSAL56Amy Elsner
1034Wickens D WaycottIndia2026-10-22Commercial Press RENEWAL94Anna Fali
1035Nicolas G MaletBrazil2026-09-27Feiner Bros NEW32Ivan Magalhaes
1036Kaitlin M GillianIndia2026-10-08Chapman, Ross E Esq QUALIFIED94Amy Elsner
1037Cody Z BologniaGermany2026-10-10Benton, John B Jr UNQUALIFIED17Ioni Bowcher
1038Tony F TollnerCanada2026-10-23Benton, John B Jr QUALIFIED86Asiya Javayant
1039Stacey Y SaylorsBrazil2026-09-28Commercial Press QUALIFIED8Amy Elsner
1040Wickens Z WaycottCanada2026-10-13Feltz Printing Service NEGOTIATION30Bernardo Dominic
1041Deepesh O StensethArgentina2026-10-15Rousseaux, Michael Esq QUALIFIED20Amy Elsner
1042Faith F PaprockiJapan2026-10-17Benton, John B Jr NEGOTIATION18Bernardo Dominic
1043Jones B VenereBrazil2026-10-09Feltz Printing Service RENEWAL99Ioni Bowcher
1044Emily M PerinCanada2026-10-02Morlong Associates RENEWAL80Asiya Javayant
1045Mujtaba E WhobreyArgentina2026-10-24Morlong Associates NEGOTIATION23Ioni Bowcher
1046Mayumi W CaudyIndia2026-09-30Buckley Miller Wright NEW92Ioni Bowcher
1047Isabel L StockhamSpain2026-10-02Morlong Associates QUALIFIED64Stephen Shaw
1048Leon W MacleadUnited Kingdom2026-10-10Morlong Associates NEGOTIATION22Bernardo Dominic
1049Ashley I DilliardArgentina2026-10-08Benton, John B Jr QUALIFIED80Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Mayumi S DilliardFranceIoni Bowcher QUALIFIED
Faith M PoquetteCanadaStephen Shaw PROPOSAL
David E SergiUnited KingdomIvan Magalhaes NEGOTIATION
Darci V NickaArgentinaAmy Elsner QUALIFIED
Jennifer R SlusarskiIndiaXuxue Feng UNQUALIFIED
Isabel T GarufiIndiaAsiya Javayant QUALIFIED
Tony O ButtJapanIoni Bowcher RENEWAL
Murillo Q RimCanadaAmy Elsner PROPOSAL
James F AlbaresBrazilOnyama Limba NEW
Silvio R BowleyRussiaElwin Sharvill RENEWAL
Maisha F BriddickFranceStephen Shaw NEGOTIATION
Leja S MaletBrazilIoni Bowcher NEW
Kadeem H FollerSpainStephen Shaw NEW
Aruna K StockhamFranceStephen Shaw QUALIFIED
Isabel R RutaRussiaXuxue Feng PROPOSAL
Maria T OldroydUnited KingdomAnna Fali QUALIFIED
David J InouyeGermanyElwin Sharvill RENEWAL
Claire Z CampainFranceBernardo Dominic NEW
Greenwood M PoquetteFranceElwin Sharvill UNQUALIFIED
Aruna H GillianBrazilAsiya Javayant UNQUALIFIED
Morrow I GarufiIndiaAnna Fali PROPOSAL
Sinclair M MarrierBrazilElwin Sharvill UNQUALIFIED
Clifford Z ChuiGermanyIvan Magalhaes RENEWAL
Murillo P VenereRussiaBernardo Dominic NEGOTIATION
Francesco X NestleBrazilAmy Elsner NEGOTIATION
Ricardo R RimArgentinaXuxue Feng QUALIFIED
Sinclair K VenereSpainOnyama Limba NEW
Mayumi Y DoeJapanAsiya Javayant RENEWAL
Leon T AlbaresBrazilIvan Magalhaes NEW
Cody P RulapaughUnited KingdomAsiya Javayant QUALIFIED
Nicolas K GillianFranceIvan Magalhaes QUALIFIED
Tony C OldroydAustraliaIvan Magalhaes QUALIFIED
Jennifer W RulapaughIndiaAsiya Javayant UNQUALIFIED
Antonio F GlickBrazilBernardo Dominic UNQUALIFIED
Salvatore J ButtIndiaXuxue Feng RENEWAL
Jones J ShinkoBrazilIoni Bowcher UNQUALIFIED
Jennifer E WaycottItalyAnna Fali NEGOTIATION
Sinclair R MaletSpainStephen Shaw NEGOTIATION
Darci P SergiGermanyAnna Fali QUALIFIED
Nicolas T PaprockiIndiaElwin Sharvill RENEWAL
Murillo L KuskoAustraliaIvan Magalhaes RENEWAL
Maria C TollnerUnited KingdomAnna Fali NEW
Darci Y BologniaFranceAsiya Javayant RENEWAL
Jeanfrancois D StockhamSpainIvan Magalhaes RENEWAL
Mujtaba N BologniaGermanyAnna Fali QUALIFIED
Aruna Y GarufiItalyAmy Elsner NEGOTIATION
Wickens Z CaldareraAustraliaStephen Shaw RENEWAL
Isabel M RulapaughIndiaStephen Shaw NEGOTIATION
Ashley H CaudyItalyIvan Magalhaes PROPOSAL
Deepesh C FerenczUnited KingdomAsiya Javayant QUALIFIED
Frozen Columns
Name
Isabel N Royster
Nicolas T Dilliard
Adams O Slusarski
Isabel L Bowley
James X Oldroyd
Claire Y Malet
Nicolas D Slusarski
Deepesh M Rulapaugh
Octavia V Rulapaugh
Leon L Waycott
Greenwood M Doe
Rodrigues U Poquette
Johnson N Rim
Tony Q Ruta
Wickens F Caudy
Octavia P Bolognia
Faith G Perin
Mayumi H Caldarera
Francesco A Royster
Silvio T Caudy
Chavez M Darakjy
Maisha K Flosi
Ivar W Gaucho
Misaki I Rim
Misaki C Perin
Claire T Inouye
Silvio J Poquette
Faith J Wieser
Sinclair V Gillian
Sinclair D Albares
Jeanfrancois G Rim
Johnson C Malet
Faith Z Gaucho
Clifford I Ruta
Murillo Z Iturbide
Aditya U Maclead
Mujtaba J Vocelka
Maria A Sergi
Arvin V Figeroa
Murillo H Glick
Tony H Malet
Arvin J Ostrosky
Maisha D Garufi
Stacey O Figeroa
Aruna X Schemmer
Emily M Ostrosky
Mayumi P Malet
Rodrigues Q Poquette
Cody X Stockham
Mayumi O Gillian
IdCountryDate
1000India2026-10-08
1001Japan2026-10-22
1002Spain2026-10-15
1003Australia2026-09-27
1004Spain2026-09-29
1005Spain2026-10-19
1006Germany2026-09-29
1007Germany2026-10-07
1008Japan2026-10-06
1009United Kingdom2026-10-05
1010Japan2026-10-16
1011Germany2026-10-13
1012Italy2026-10-15
1013Japan2026-09-30
1014Brazil2026-10-21
1015Spain2026-10-14
1016Spain2026-10-12
1017Germany2026-10-06
1018Italy2026-09-28
1019France2026-10-15
1020Australia2026-10-24
1021United Kingdom2026-10-03
1022Spain2026-10-20
1023Russia2026-10-08
1024Russia2026-10-19
1025United Kingdom2026-10-02
1026France2026-10-16
1027Spain2026-10-20
1028Italy2026-10-08
1029Spain2026-10-06
1030United Kingdom2026-10-19
1031France2026-10-11
1032Japan2026-10-07
1033France2026-09-27
1034Argentina2026-10-04
1035France2026-10-09
1036Germany2026-09-28
1037Canada2026-10-24
1038Germany2026-10-06
1039United Kingdom2026-10-07
1040India2026-10-10
1041Germany2026-10-12
1042Argentina2026-10-09
1043France2026-09-28
1044Italy2026-10-22
1045Japan2026-10-06
1046Germany2026-09-26
1047Argentina2026-10-05
1048Canada2026-10-16
1049Australia2026-10-18

On-Demand Data

NameIdCountryDate
Mujtaba A Poquette1000Australia2026-10-05
Jeanfrancois A Waycott1001Argentina2026-10-03
Arvin G Campain1002Japan2026-10-15
Adams L Malet1003Spain2026-10-04
Salvatore E Rulapaugh1004India2026-10-21
Jefferson U Caldarera1005Italy2026-10-18
Smith H Gaucho1006Spain2026-10-08
Munro L Vocelka1007India2026-09-30
Izzy Y Stockham1008United Kingdom2026-09-29
Isabel S Oldroyd1009United Kingdom2026-10-02
Izzy H Sergi1010India2026-10-08
Juan Q Marrier1011Russia2026-09-29
Smith A Ruta1012Italy2026-10-20
Salvatore P Nicka1013United Kingdom2026-10-20
Octavia P Doe1014Spain2026-10-19
Stacey Y Flosi1015Argentina2026-10-11
Cody Z Bolognia1016Spain2026-10-22
Ashley O Bowley1017Russia2026-10-16
Ashley V Malet1018Germany2026-10-19
Morrow Z Whobrey1019Argentina2026-10-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams Z IturbideCanadaAnna Fali QUALIFIED
Johnson R MacleadRussiaIvan Magalhaes PROPOSAL
Emily H FlosiRussiaXuxue Feng PROPOSAL
Juan D NickaIndiaOnyama Limba PROPOSAL
Leja R SaylorsBrazilXuxue Feng RENEWAL
Izzy F MaletItalyStephen Shaw UNQUALIFIED
Juan U MaletSpainStephen Shaw UNQUALIFIED
Francesco Y InouyeSpainIvan Magalhaes UNQUALIFIED
Jefferson Q PaprockiJapanIoni Bowcher UNQUALIFIED
Salvatore X DoeIndiaAmy Elsner UNQUALIFIED
Jefferson D MarrierBrazilIvan Magalhaes QUALIFIED
Ashley C CaldareraGermanyOnyama Limba QUALIFIED
Johnson Q MaletSpainAnna Fali RENEWAL
Smith B MorascaIndiaAmy Elsner NEW
Aruna C InouyeFranceAnna Fali NEW
Sinclair B FerenczSpainAnna Fali RENEWAL
Adams P ButtRussiaAmy Elsner QUALIFIED
Leon A FerenczFranceBernardo Dominic NEW
Ricardo B WaycottJapanIoni Bowcher UNQUALIFIED
Stacey P StensethUnited KingdomAnna Fali UNQUALIFIED
David D GillianArgentinaAnna Fali NEW
Isabel F InouyeUnited KingdomXuxue Feng RENEWAL
Wickens N MorascaFranceAnna Fali NEW
Faith V MarrierIndiaAsiya Javayant PROPOSAL
Arvin W MarrierIndiaXuxue Feng QUALIFIED
Kadeem A StensethFranceIvan Magalhaes UNQUALIFIED
Leon O ShinkoAustraliaAsiya Javayant NEGOTIATION
Morrow N TollnerJapanElwin Sharvill UNQUALIFIED
Faith N PaprockiFranceAmy Elsner NEGOTIATION
Aditya R FollerAustraliaStephen Shaw NEW
Cody Q CaudyBrazilXuxue Feng NEGOTIATION
Morrow G AmigonFranceIoni Bowcher NEGOTIATION
Alejandro A SaylorsCanadaAnna Fali RENEWAL
Aditya T InouyeArgentinaIvan Magalhaes UNQUALIFIED
Izzy C WhobreyJapanAmy Elsner NEW
Clifford N WhobreyIndiaBernardo Dominic NEW
Emily P SchemmerArgentinaIoni Bowcher NEW
Izzy M BriddickJapanXuxue Feng RENEWAL
Mayumi Z KuskoJapanStephen Shaw PROPOSAL
Octavia A RulapaughIndiaBernardo Dominic 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>