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
Silvio U AlbaresUnited KingdomIoni Bowcher UNQUALIFIED
David U CampainFranceElwin Sharvill RENEWAL
Leja Y MarrierAustraliaIoni Bowcher RENEWAL
Aika J FlosiSpainAsiya Javayant PROPOSAL
Rodrigues I MaletSpainAsiya Javayant NEGOTIATION
Ashley Z SchemmerCanadaAmy Elsner RENEWAL
Darci G GlickBrazilBernardo Dominic NEW
Rodrigues A IturbideUnited KingdomStephen Shaw PROPOSAL
Maria S SchemmerBrazilAsiya Javayant PROPOSAL
Ashley J BowleyAustraliaAsiya Javayant NEGOTIATION
Antonio T NestleUnited KingdomAsiya Javayant PROPOSAL
Juan L DilliardUnited KingdomElwin Sharvill NEGOTIATION
Claire W StensethCanadaXuxue Feng RENEWAL
Tony C BowleyJapanXuxue Feng NEW
David C SergiAustraliaAmy Elsner UNQUALIFIED
Ivar V RoysterJapanIoni Bowcher RENEWAL
Cody Q KolmetzGermanyAsiya Javayant NEGOTIATION
Octavia O GauchoBrazilAsiya Javayant NEGOTIATION
Leja U AmigonFranceElwin Sharvill UNQUALIFIED
Adams K CaudyCanadaAmy Elsner NEW
Darci P InouyeAustraliaAnna Fali QUALIFIED
Mayumi T BriddickSpainBernardo Dominic NEGOTIATION
Jennifer A AlbaresFranceStephen Shaw NEW
Jeanfrancois W FerenczRussiaIoni Bowcher RENEWAL
Stacey J SaylorsCanadaElwin Sharvill RENEWAL
Johnson N FollerCanadaAmy Elsner RENEWAL
Maisha U StensethCanadaIvan Magalhaes NEW
Aditya O DilliardBrazilBernardo Dominic PROPOSAL
Antonio Q NickaFranceIvan Magalhaes RENEWAL
Rodrigues K KolmetzArgentinaElwin Sharvill QUALIFIED
Cody U StockhamFranceXuxue Feng QUALIFIED
Tony T PoquetteRussiaIoni Bowcher RENEWAL
Chavez Z CaudyRussiaElwin Sharvill NEGOTIATION
Alejandro B AmigonRussiaAsiya Javayant RENEWAL
Aditya M VocelkaBrazilStephen Shaw PROPOSAL
Juan S StockhamBrazilIvan Magalhaes UNQUALIFIED
Maisha N ShinkoRussiaStephen Shaw QUALIFIED
Julie D GauchoItalyAsiya Javayant QUALIFIED
Leja Y AlbaresIndiaBernardo Dominic UNQUALIFIED
Francesco U InouyeBrazilStephen Shaw UNQUALIFIED
Maisha W KuskoGermanyBernardo Dominic QUALIFIED
Costa B MarrierIndiaElwin Sharvill QUALIFIED
Aruna H CampainUnited KingdomOnyama Limba RENEWAL
Maisha U RoysterArgentinaIoni Bowcher QUALIFIED
Chavez D GauchoArgentinaIvan Magalhaes RENEWAL
Arvin Z DoeBrazilBernardo Dominic NEGOTIATION
Cody R SlusarskiSpainIvan Magalhaes PROPOSAL
Alejandro E CaldareraGermanyStephen Shaw UNQUALIFIED
Leja C FerenczIndiaIoni Bowcher RENEWAL
Claire T ShinkoItalyBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Julie B DarakjyUnited KingdomBernardo Dominic RENEWAL
Emily N NestleRussiaIvan Magalhaes RENEWAL
Alejandro B StockhamRussiaIvan Magalhaes UNQUALIFIED
Deepesh Q CampainArgentinaOnyama Limba NEW
Francesco Q IturbideArgentinaOnyama Limba NEGOTIATION
Leon A StensethCanadaAnna Fali RENEWAL
Maisha O ChuiFranceStephen Shaw NEW
Wickens P GauchoUnited KingdomAmy Elsner RENEWAL
Silvio Z AmigonRussiaElwin Sharvill NEGOTIATION
Mayumi I ButtAustraliaAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez W TollnerArgentina2026-11-01Rousseaux, Michael Esq UNQUALIFIED49Ioni Bowcher
1001Jeanfrancois K FlosiBrazil2026-10-16Feltz Printing Service RENEWAL72Onyama Limba
1002Tony H ButtCanada2026-11-02Feiner Bros NEW36Anna Fali
1003Aika S DilliardFrance2026-10-23Chanay, Jeffrey A Esq UNQUALIFIED55Amy Elsner
1004Rodrigues A FlosiUnited Kingdom2026-11-03Chanay, Jeffrey A Esq UNQUALIFIED98Asiya Javayant
1005Sinclair N CampainRussia2026-10-16Morlong Associates NEW0Xuxue Feng
1006Aditya H FlosiItaly2026-11-02Buckley Miller Wright QUALIFIED96Ivan Magalhaes
1007Nicolas C NestleBrazil2026-10-12Commercial Press NEW20Ioni Bowcher
1008Silvio A RimIndia2026-11-04Commercial Press QUALIFIED28Amy Elsner
1009Claire O GauchoItaly2026-11-02Chapman, Ross E Esq PROPOSAL51Asiya Javayant
1010Jefferson S NestleRussia2026-10-23Truhlar And Truhlar Attys RENEWAL44Anna Fali
1011Sinclair L RoysterItaly2026-10-23Feiner Bros RENEWAL66Elwin Sharvill
1012Chavez C OstroskyGermany2026-11-04King, Christopher A Esq NEGOTIATION2Elwin Sharvill
1013Jones A SergiRussia2026-10-28Chemel, James L Cpa RENEWAL92Amy Elsner
1014Darci U MorascaArgentina2026-11-07Buckley Miller Wright NEGOTIATION45Anna Fali
1015Darci M BowleyFrance2026-10-24Feiner Bros QUALIFIED23Amy Elsner
1016Juan J AlbaresFrance2026-11-09Truhlar And Truhlar Attys RENEWAL52Onyama Limba
1017Mayumi N WhobreyCanada2026-10-25Feltz Printing Service NEGOTIATION71Ivan Magalhaes
1018Emily K WaycottBrazil2026-10-31Feltz Printing Service PROPOSAL41Ioni Bowcher
1019Deepesh L GarufiBrazil2026-10-26Feiner Bros QUALIFIED58Asiya Javayant
1020Ricardo G ShinkoIndia2026-10-14Dorl, James J Esq NEW78Ivan Magalhaes
1021Misaki F NickaAustralia2026-11-02Chapman, Ross E Esq NEGOTIATION35Elwin Sharvill
1022Arvin B CampainAustralia2026-10-28Feltz Printing Service PROPOSAL24Amy Elsner
1023Munro V MacleadRussia2026-11-05Printing Dimensions QUALIFIED93Stephen Shaw
1024Deepesh U WieserUnited Kingdom2026-10-17Chanay, Jeffrey A Esq NEW85Ivan Magalhaes
1025Clifford L RoysterArgentina2026-11-05Chapman, Ross E Esq QUALIFIED33Amy Elsner
1026Jefferson V BowleyJapan2026-10-17Dorl, James J Esq RENEWAL21Amy Elsner
1027Maisha U NestleSpain2026-10-27Chanay, Jeffrey A Esq UNQUALIFIED95Stephen Shaw
1028Ivar G InouyeAustralia2026-10-13Printing Dimensions NEW54Ioni Bowcher
1029Jennifer M MaletCanada2026-11-09Chanay, Jeffrey A Esq NEGOTIATION95Ioni Bowcher
1030Octavia P MacleadSpain2026-10-21Commercial Press NEW64Bernardo Dominic
1031Silvio C IturbideFrance2026-10-11Commercial Press QUALIFIED61Ioni Bowcher
1032Isabel K BologniaSpain2026-10-29Commercial Press QUALIFIED61Amy Elsner
1033Emily D FollerFrance2026-10-24Dorl, James J Esq PROPOSAL12Amy Elsner
1034David F MaletGermany2026-10-26Morlong Associates PROPOSAL64Stephen Shaw
1035Emily L DilliardFrance2026-11-06Buckley Miller Wright RENEWAL47Asiya Javayant
1036Greenwood B WhobreyJapan2026-11-08Rousseaux, Michael Esq NEGOTIATION77Ioni Bowcher
1037Juan F KuskoJapan2026-10-16Feltz Printing Service RENEWAL37Ivan Magalhaes
1038Emily I NickaGermany2026-10-13Feiner Bros UNQUALIFIED3Ioni Bowcher
1039Aditya Z AmigonCanada2026-10-17Morlong Associates RENEWAL47Asiya Javayant
1040James Y CampainUnited Kingdom2026-10-13Buckley Miller Wright UNQUALIFIED5Onyama Limba
1041Octavia H MaletItaly2026-10-22Printing Dimensions NEGOTIATION33Stephen Shaw
1042Darci E RimItaly2026-11-05Feltz Printing Service NEW8Anna Fali
1043Izzy L SergiUnited Kingdom2026-10-31Chapman, Ross E Esq NEW81Elwin Sharvill
1044Adams B RoysterSpain2026-10-25Chanay, Jeffrey A Esq QUALIFIED77Onyama Limba
1045Emily R PaprockiJapan2026-11-04Commercial Press NEGOTIATION85Amy Elsner
1046Nicolas N RimCanada2026-11-04Morlong Associates NEGOTIATION56Anna Fali
1047Maisha T FigeroaBrazil2026-10-27Dorl, James J Esq NEGOTIATION89Bernardo Dominic
1048Chavez F KolmetzJapan2026-10-24Morlong Associates QUALIFIED80Anna Fali
1049Johnson U ShinkoArgentina2026-11-06Benton, John B Jr NEW6Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues F MaletSpainElwin Sharvill NEW
Aruna P SlusarskiAustraliaAsiya Javayant QUALIFIED
Stacey F KuskoSpainIoni Bowcher UNQUALIFIED
Kadeem C ChuiBrazilAnna Fali QUALIFIED
Maisha F GauchoSpainBernardo Dominic QUALIFIED
Aika U CaldareraFranceXuxue Feng NEW
Jeanfrancois L WieserAustraliaAnna Fali PROPOSAL
Cody S ShinkoFranceIvan Magalhaes RENEWAL
Aika L SaylorsUnited KingdomIoni Bowcher UNQUALIFIED
Jones U SaylorsCanadaStephen Shaw UNQUALIFIED
Tony H PoquetteBrazilElwin Sharvill NEGOTIATION
Antonio G VenereGermanyAsiya Javayant UNQUALIFIED
Julie K WhobreyJapanStephen Shaw QUALIFIED
Sinclair E SergiAustraliaAsiya Javayant NEW
Jeanfrancois W ButtGermanyAnna Fali RENEWAL
Julie Q NestleAustraliaOnyama Limba PROPOSAL
Izzy Q GlickArgentinaBernardo Dominic PROPOSAL
Ashley B ShinkoCanadaIoni Bowcher NEW
Darci C BriddickGermanyOnyama Limba UNQUALIFIED
Adams M MaletUnited KingdomIoni Bowcher NEW
Wickens F GauchoRussiaIoni Bowcher PROPOSAL
Leja C GillianGermanyIoni Bowcher RENEWAL
Aika E RimSpainXuxue Feng RENEWAL
Nicolas Y BologniaIndiaXuxue Feng PROPOSAL
Alejandro B AmigonJapanAnna Fali UNQUALIFIED
Rodrigues O WaycottRussiaXuxue Feng NEW
Mujtaba B AlbaresArgentinaOnyama Limba NEW
Jennifer L WaycottBrazilXuxue Feng PROPOSAL
Ashley K ButtIndiaXuxue Feng PROPOSAL
David O RimGermanyOnyama Limba QUALIFIED
Mayumi Y BologniaIndiaIoni Bowcher UNQUALIFIED
Darci F PerinBrazilAsiya Javayant NEW
Leon K BriddickItalyIoni Bowcher QUALIFIED
Aditya H CaudyCanadaStephen Shaw PROPOSAL
Salvatore Z FollerJapanElwin Sharvill NEW
Antonio L MacleadBrazilStephen Shaw QUALIFIED
Costa F NestleJapanStephen Shaw NEW
Cody Y ShinkoJapanAnna Fali PROPOSAL
Faith Z WaycottAustraliaBernardo Dominic NEGOTIATION
Claire C GillianSpainXuxue Feng PROPOSAL
Stacey N KuskoCanadaBernardo Dominic NEW
Nicolas X DarakjyArgentinaAmy Elsner NEGOTIATION
Jennifer M PerinSpainIoni Bowcher PROPOSAL
Aika X CaldareraSpainBernardo Dominic PROPOSAL
Aika E GlickArgentinaIvan Magalhaes PROPOSAL
Ricardo T SchemmerItalyIvan Magalhaes RENEWAL
Juan L SergiJapanBernardo Dominic RENEWAL
Jefferson U DarakjyRussiaIoni Bowcher UNQUALIFIED
Faith R FigeroaItalyXuxue Feng PROPOSAL
Maria N SlusarskiJapanStephen Shaw QUALIFIED
Frozen Columns
Name
Juan M Inouye
Alejandro K Shinko
Julie W Ostrosky
Julie G Whobrey
Francesco Q Butt
Kaitlin O Albares
Jeanfrancois L Chui
Isabel J Kusko
Aditya U Caldarera
Clifford R Schemmer
Antonio N Butt
Johnson T Albares
Wickens B Bowley
Tony F Stenseth
Leja E Sergi
Smith T Flosi
Jones U Flosi
Faith Z Marrier
Chavez C Briddick
Deepesh H Figeroa
Antonio V Gillian
Octavia T Ruta
Chavez F Nestle
Morrow H Stenseth
Kaitlin S Flosi
Wickens B Slusarski
Costa P Iturbide
Silvio W Iturbide
Munro C Waycott
Misaki S Stenseth
Kaitlin D Waycott
Sinclair U Perin
Juan P Wieser
Sinclair G Marrier
Deepesh S Stenseth
Antonio E Garufi
Misaki R Kusko
Sinclair R Kolmetz
Deepesh E Paprocki
Faith H Amigon
Silvio B Campain
Clifford H Dilliard
Ivar B Inouye
Aika S Malet
Smith J Waycott
Misaki O Nestle
Salvatore I Amigon
Darci D Iturbide
Misaki T Kusko
Claire M Sergi
IdCountryDate
1000India2026-11-02
1001Brazil2026-10-20
1002Japan2026-11-09
1003Argentina2026-10-18
1004India2026-10-31
1005France2026-11-03
1006Canada2026-10-11
1007Italy2026-10-22
1008United Kingdom2026-10-18
1009France2026-10-30
1010Spain2026-11-07
1011Spain2026-10-11
1012Japan2026-11-05
1013Germany2026-10-27
1014Brazil2026-11-06
1015Italy2026-11-09
1016Italy2026-10-20
1017Australia2026-11-01
1018United Kingdom2026-10-30
1019Russia2026-10-18
1020United Kingdom2026-11-02
1021Italy2026-11-06
1022Spain2026-10-16
1023Brazil2026-10-23
1024Australia2026-10-18
1025Canada2026-10-16
1026Italy2026-11-01
1027Brazil2026-11-02
1028Spain2026-10-28
1029United Kingdom2026-10-12
1030France2026-10-31
1031Russia2026-10-29
1032India2026-10-13
1033Canada2026-11-07
1034Germany2026-10-19
1035Canada2026-10-28
1036Spain2026-10-25
1037United Kingdom2026-10-24
1038Brazil2026-11-01
1039India2026-10-20
1040Canada2026-10-23
1041United Kingdom2026-10-26
1042Canada2026-10-11
1043Spain2026-11-04
1044Canada2026-10-25
1045Canada2026-11-09
1046India2026-11-04
1047Germany2026-10-15
1048Japan2026-10-12
1049Canada2026-10-26

On-Demand Data

NameIdCountryDate
Munro B Ostrosky1000France2026-11-06
Octavia F Inouye1001Australia2026-10-16
Clifford Q Rulapaugh1002Argentina2026-10-31
Adams H Bowley1003Italy2026-10-17
Emily R Ferencz1004France2026-11-07
Johnson T Caldarera1005Japan2026-10-11
Johnson N Paprocki1006Argentina2026-10-16
Cody S Foller1007India2026-10-13
Julie L Briddick1008Russia2026-10-11
Darci J Amigon1009Australia2026-11-06
Misaki Y Inouye1010India2026-11-05
Adams F Ferencz1011India2026-10-16
Ricardo P Venere1012Germany2026-10-21
Ivar V Stenseth1013Canada2026-10-30
Leon O Figeroa1014Canada2026-10-18
Deepesh S Wieser1015Brazil2026-10-27
Isabel C Gaucho1016Canada2026-10-17
Mayumi Q Tollner1017Italy2026-10-14
Jones Y Schemmer1018Spain2026-10-16
Kaitlin A Poquette1019Brazil2026-11-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa S BriddickAustraliaAnna Fali NEW
Greenwood R StensethCanadaIvan Magalhaes NEW
Murillo M WaycottFranceXuxue Feng QUALIFIED
Salvatore N MaletBrazilAsiya Javayant NEW
Greenwood J ButtBrazilIoni Bowcher PROPOSAL
Silvio S NestleJapanXuxue Feng RENEWAL
Ashley S SaylorsUnited KingdomStephen Shaw RENEWAL
Morrow B SchemmerSpainAsiya Javayant UNQUALIFIED
Isabel S MaletFranceIvan Magalhaes PROPOSAL
Ashley F RutaSpainXuxue Feng UNQUALIFIED
Aruna M MarrierArgentinaBernardo Dominic NEGOTIATION
Kadeem Q ShinkoSpainBernardo Dominic NEW
Chavez U RoysterBrazilAmy Elsner NEW
Costa I DilliardItalyXuxue Feng QUALIFIED
Kaitlin A InouyeGermanyOnyama Limba NEGOTIATION
Jennifer T BowleyArgentinaStephen Shaw NEW
Ivar R SlusarskiRussiaXuxue Feng NEGOTIATION
Aika Z DilliardIndiaXuxue Feng NEGOTIATION
Izzy Z GillianArgentinaStephen Shaw QUALIFIED
Ricardo R SlusarskiFranceBernardo Dominic NEW
Nicolas B TollnerBrazilBernardo Dominic PROPOSAL
Deepesh R SlusarskiCanadaStephen Shaw RENEWAL
Francesco K CaudyCanadaAnna Fali RENEWAL
Darci R InouyeAustraliaXuxue Feng RENEWAL
David C SergiArgentinaStephen Shaw RENEWAL
Mayumi P BriddickArgentinaAnna Fali UNQUALIFIED
Ivar X PaprockiIndiaAnna Fali NEW
Costa S OldroydSpainAsiya Javayant PROPOSAL
Emily P InouyeUnited KingdomXuxue Feng NEW
Smith W CampainIndiaBernardo Dominic RENEWAL
Aditya Z AmigonItalyBernardo Dominic PROPOSAL
Leja Y FigeroaBrazilXuxue Feng NEGOTIATION
Juan A IturbideCanadaXuxue Feng PROPOSAL
Johnson T GarufiIndiaElwin Sharvill NEW
Jones T VocelkaCanadaElwin Sharvill NEW
Murillo S ChuiCanadaStephen Shaw NEW
Greenwood I GarufiIndiaAsiya Javayant PROPOSAL
Stacey M FerenczRussiaAmy Elsner RENEWAL
Francesco J AmigonJapanIoni Bowcher PROPOSAL
Greenwood H BologniaAustraliaXuxue Feng 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>