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
Morrow E DilliardBrazilXuxue Feng UNQUALIFIED
Claire Q PaprockiCanadaElwin Sharvill PROPOSAL
Claire V AlbaresBrazilOnyama Limba RENEWAL
Maria Q VenereArgentinaAmy Elsner QUALIFIED
Maisha J VenereIndiaXuxue Feng QUALIFIED
Morrow U RoysterRussiaStephen Shaw NEGOTIATION
Faith D ChuiFranceOnyama Limba RENEWAL
Arvin Z MorascaIndiaBernardo Dominic QUALIFIED
Sinclair J MaletRussiaBernardo Dominic NEW
Isabel E SlusarskiItalyAnna Fali RENEWAL
Ricardo E MorascaBrazilIvan Magalhaes NEGOTIATION
Aika S StockhamFranceAsiya Javayant NEW
Johnson C BriddickSpainAmy Elsner QUALIFIED
Alejandro F KolmetzGermanyAmy Elsner UNQUALIFIED
Alejandro L SlusarskiIndiaOnyama Limba NEW
Morrow Q SaylorsJapanStephen Shaw NEGOTIATION
Jeanfrancois F GarufiCanadaAsiya Javayant UNQUALIFIED
Kaitlin B WhobreyBrazilOnyama Limba RENEWAL
Ricardo E KuskoUnited KingdomIvan Magalhaes UNQUALIFIED
Munro C IturbideSpainBernardo Dominic PROPOSAL
Costa P PerinItalyIoni Bowcher UNQUALIFIED
Aika N BriddickFranceAnna Fali QUALIFIED
Misaki T TollnerGermanyIvan Magalhaes NEW
Jones E MacleadIndiaStephen Shaw QUALIFIED
David Z WieserJapanElwin Sharvill PROPOSAL
Mayumi S VenereSpainIvan Magalhaes PROPOSAL
Kaitlin N WhobreyUnited KingdomAnna Fali QUALIFIED
Stacey A VocelkaIndiaBernardo Dominic QUALIFIED
Leja W GillianRussiaXuxue Feng PROPOSAL
Izzy E StockhamSpainAmy Elsner QUALIFIED
Leon N WieserFranceIoni Bowcher QUALIFIED
Costa D KuskoCanadaXuxue Feng NEW
Aruna M MorascaUnited KingdomIoni Bowcher PROPOSAL
Juan T GillianBrazilElwin Sharvill QUALIFIED
Aika Y SergiBrazilBernardo Dominic NEGOTIATION
Maisha I StockhamArgentinaIvan Magalhaes NEW
Rodrigues M AlbaresJapanIvan Magalhaes PROPOSAL
Murillo U AlbaresRussiaIvan Magalhaes PROPOSAL
Johnson T KolmetzCanadaAnna Fali PROPOSAL
Wickens O BriddickItalyAmy Elsner PROPOSAL
Izzy A BriddickGermanyStephen Shaw UNQUALIFIED
Ivar D MacleadRussiaIoni Bowcher NEW
Claire B DoeGermanyBernardo Dominic UNQUALIFIED
Maisha P GauchoArgentinaStephen Shaw NEGOTIATION
Darci L CaldareraJapanOnyama Limba NEGOTIATION
Alejandro X FigeroaIndiaIoni Bowcher RENEWAL
Adams F WaycottArgentinaBernardo Dominic QUALIFIED
Clifford L RoysterUnited KingdomAsiya Javayant RENEWAL
Ricardo F PerinArgentinaIoni Bowcher NEGOTIATION
Greenwood N SlusarskiItalyBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin N OldroydCanadaAmy Elsner QUALIFIED
Silvio H WieserUnited KingdomBernardo Dominic QUALIFIED
Deepesh C CaudySpainAmy Elsner PROPOSAL
James D WaycottBrazilElwin Sharvill PROPOSAL
Leon S DarakjyGermanyOnyama Limba RENEWAL
Claire C SergiFranceAmy Elsner UNQUALIFIED
Jones U BriddickJapanStephen Shaw RENEWAL
Maisha J StockhamRussiaElwin Sharvill UNQUALIFIED
Nicolas W PerinGermanyAmy Elsner UNQUALIFIED
Alejandro I SergiSpainIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya Q CampainBrazil2026-10-13Chanay, Jeffrey A Esq NEW71Ivan Magalhaes
1001Alejandro R WieserGermany2026-10-18Morlong Associates NEGOTIATION90Asiya Javayant
1002Francesco Y ButtCanada2026-10-02Chapman, Ross E Esq QUALIFIED25Anna Fali
1003Leja Q ShinkoGermany2026-10-17Chemel, James L Cpa UNQUALIFIED34Stephen Shaw
1004Sinclair E FollerRussia2026-10-18Truhlar And Truhlar Attys UNQUALIFIED89Elwin Sharvill
1005Silvio P ChuiFrance2026-10-17Truhlar And Truhlar Attys PROPOSAL23Ioni Bowcher
1006Octavia O NestleAustralia2026-09-29Dorl, James J Esq QUALIFIED45Stephen Shaw
1007Ivar D AmigonSpain2026-09-26Feltz Printing Service RENEWAL61Stephen Shaw
1008Johnson L VocelkaRussia2026-10-04Benton, John B Jr NEGOTIATION97Stephen Shaw
1009Sinclair U AmigonIndia2026-10-16Rangoni Of Florence NEW28Amy Elsner
1010Emily K DarakjyFrance2026-10-04Feltz Printing Service NEW3Xuxue Feng
1011Kadeem E MaletCanada2026-09-30Feiner Bros NEW73Anna Fali
1012Isabel E VenereFrance2026-10-19Feiner Bros QUALIFIED1Asiya Javayant
1013Aditya W RimGermany2026-10-11Feltz Printing Service QUALIFIED66Xuxue Feng
1014Emily J GillianAustralia2026-09-22Buckley Miller Wright NEW43Stephen Shaw
1015Kadeem B GlickJapan2026-10-08King, Christopher A Esq PROPOSAL69Elwin Sharvill
1016Octavia N GlickRussia2026-09-27Feltz Printing Service NEW1Bernardo Dominic
1017Leon F CaldareraFrance2026-10-05Truhlar And Truhlar Attys QUALIFIED92Ivan Magalhaes
1018Aika F ButtSpain2026-09-23Morlong Associates NEGOTIATION19Xuxue Feng
1019Leja O SaylorsGermany2026-10-09Printing Dimensions NEW40Ioni Bowcher
1020Alejandro I AlbaresIndia2026-09-23Chanay, Jeffrey A Esq PROPOSAL21Ivan Magalhaes
1021Juan F VocelkaGermany2026-10-06Chemel, James L Cpa NEGOTIATION15Bernardo Dominic
1022Maria M DarakjyCanada2026-10-06King, Christopher A Esq QUALIFIED80Xuxue Feng
1023Johnson B BriddickFrance2026-09-29Chapman, Ross E Esq NEGOTIATION9Ivan Magalhaes
1024Faith G ChuiUnited Kingdom2026-09-22Commercial Press RENEWAL92Onyama Limba
1025Maisha A BriddickIndia2026-10-12Chemel, James L Cpa RENEWAL57Asiya Javayant
1026David R RoysterIndia2026-10-17Buckley Miller Wright RENEWAL51Amy Elsner
1027Kadeem T FlosiRussia2026-10-13Dorl, James J Esq RENEWAL71Onyama Limba
1028Greenwood R ChuiItaly2026-10-13Chemel, James L Cpa RENEWAL14Amy Elsner
1029Francesco Z PerinGermany2026-10-01Benton, John B Jr RENEWAL62Xuxue Feng
1030Rodrigues T IturbideIndia2026-10-14Rangoni Of Florence RENEWAL1Asiya Javayant
1031Octavia N KolmetzSpain2026-10-09Morlong Associates NEW2Amy Elsner
1032Emily P SaylorsJapan2026-10-08Morlong Associates NEGOTIATION9Ivan Magalhaes
1033Greenwood S CampainAustralia2026-10-15Feiner Bros QUALIFIED40Anna Fali
1034Jeanfrancois F FlosiCanada2026-10-13Printing Dimensions UNQUALIFIED67Xuxue Feng
1035Salvatore I BriddickJapan2026-10-12Chapman, Ross E Esq PROPOSAL13Stephen Shaw
1036Costa V BowleyItaly2026-10-14Chanay, Jeffrey A Esq NEW15Anna Fali
1037Munro D AmigonSpain2026-10-05Buckley Miller Wright UNQUALIFIED67Ioni Bowcher
1038Adams G StensethFrance2026-09-22Buckley Miller Wright QUALIFIED63Amy Elsner
1039Francesco F MacleadAustralia2026-10-01Feiner Bros NEW81Anna Fali
1040Smith D ButtAustralia2026-10-18Feiner Bros RENEWAL27Bernardo Dominic
1041Alejandro B TollnerAustralia2026-10-12Commercial Press NEGOTIATION55Onyama Limba
1042Emily C TollnerFrance2026-10-19Feiner Bros NEW64Xuxue Feng
1043Murillo J MacleadIndia2026-10-16Morlong Associates NEGOTIATION50Bernardo Dominic
1044Leja C MaletRussia2026-10-04Benton, John B Jr QUALIFIED41Ioni Bowcher
1045Greenwood C MorascaFrance2026-10-14Commercial Press UNQUALIFIED88Stephen Shaw
1046James D SlusarskiRussia2026-09-29Chapman, Ross E Esq NEGOTIATION61Stephen Shaw
1047Costa O MaletArgentina2026-09-24Chanay, Jeffrey A Esq QUALIFIED83Xuxue Feng
1048Stacey U OldroydGermany2026-10-17Buckley Miller Wright RENEWAL68Amy Elsner
1049Leja R MaletJapan2026-09-26Truhlar And Truhlar Attys UNQUALIFIED22Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois I WaycottItalyXuxue Feng NEGOTIATION
Claire Q VenereRussiaStephen Shaw RENEWAL
Rodrigues C CampainJapanXuxue Feng QUALIFIED
Darci G ButtAustraliaAsiya Javayant UNQUALIFIED
Mujtaba K GarufiAustraliaIoni Bowcher NEW
Octavia L WhobreyIndiaAnna Fali RENEWAL
Sinclair Q PaprockiUnited KingdomAsiya Javayant RENEWAL
Leja T WhobreyUnited KingdomAsiya Javayant PROPOSAL
Arvin M BriddickArgentinaXuxue Feng NEW
Isabel A SlusarskiArgentinaElwin Sharvill PROPOSAL
Kadeem L WieserFranceBernardo Dominic QUALIFIED
James W CaldareraArgentinaAnna Fali RENEWAL
Mayumi K StensethFranceElwin Sharvill RENEWAL
Cody I WhobreyGermanyIoni Bowcher NEW
Wickens T ChuiJapanIvan Magalhaes RENEWAL
Munro X VocelkaJapanXuxue Feng UNQUALIFIED
Emily Y AmigonAustraliaOnyama Limba QUALIFIED
Kaitlin M BologniaGermanyIvan Magalhaes NEGOTIATION
Juan H PoquetteSpainXuxue Feng NEGOTIATION
Jennifer C SaylorsFranceXuxue Feng QUALIFIED
Silvio F BowleySpainIvan Magalhaes NEGOTIATION
Munro J SchemmerItalyAsiya Javayant UNQUALIFIED
Munro Z DarakjyIndiaAnna Fali PROPOSAL
Claire R PerinBrazilIoni Bowcher UNQUALIFIED
Faith H FollerFranceIoni Bowcher RENEWAL
Isabel B WhobreyBrazilOnyama Limba PROPOSAL
Sinclair U OstroskyFranceOnyama Limba NEW
Darci J SchemmerJapanStephen Shaw PROPOSAL
Isabel D CampainJapanIoni Bowcher NEGOTIATION
Maria P RulapaughSpainStephen Shaw PROPOSAL
Juan F VocelkaSpainBernardo Dominic NEW
Misaki K ButtArgentinaBernardo Dominic QUALIFIED
Emily L VocelkaIndiaBernardo Dominic NEW
Ivar V StensethFranceAsiya Javayant NEGOTIATION
Antonio E GarufiCanadaAnna Fali NEGOTIATION
Maisha U PerinRussiaStephen Shaw NEGOTIATION
Antonio W SlusarskiGermanyBernardo Dominic PROPOSAL
Darci J DoeCanadaAnna Fali NEW
Alejandro H OldroydJapanElwin Sharvill RENEWAL
Jones Y BologniaGermanyAsiya Javayant NEGOTIATION
Adams E CaudySpainStephen Shaw QUALIFIED
Arvin A GlickBrazilAmy Elsner PROPOSAL
Ashley I SlusarskiGermanyBernardo Dominic NEGOTIATION
Jefferson G GarufiFranceBernardo Dominic NEW
Mayumi S VenereRussiaAsiya Javayant UNQUALIFIED
Julie F OldroydItalyAnna Fali RENEWAL
Kaitlin M InouyeItalyIvan Magalhaes NEW
David A PerinCanadaElwin Sharvill UNQUALIFIED
Ashley B KuskoBrazilIvan Magalhaes NEGOTIATION
Leon Z NickaAustraliaOnyama Limba NEW
Frozen Columns
Name
Johnson O Paprocki
Jefferson J Ostrosky
Ricardo U Amigon
Jennifer V Morasca
David P Rulapaugh
Kaitlin T Garufi
Emily C Ostrosky
Ashley M Caudy
Salvatore T Foller
Kadeem N Bolognia
Arvin Q Albares
Francesco V Royster
Silvio N Campain
Greenwood N Albares
Leja W Bowley
Maria Z Venere
Munro C Albares
Jefferson C Bowley
Antonio P Kusko
Izzy H Whobrey
James Z Stenseth
Nicolas Q Morasca
Murillo C Saylors
Wickens Y Doe
Tony W Briddick
Arvin H Bolognia
Ivar Z Briddick
Morrow V Dilliard
Costa W Slusarski
Jennifer E Amigon
Kaitlin X Butt
Cody M Glick
Adams E Marrier
Morrow T Doe
Jones X Ruta
Leon M Nestle
Faith B Slusarski
James G Ruta
Cody D Ferencz
James C Doe
Cody M Royster
Ashley W Caldarera
Mujtaba K Whobrey
James G Nestle
Izzy P Ruta
Jones D Paprocki
Ashley G Maclead
Juan I Vocelka
Darci S Campain
Clifford O Inouye
IdCountryDate
1000Russia2026-10-16
1001Spain2026-10-05
1002Italy2026-10-07
1003Japan2026-10-18
1004Australia2026-10-18
1005Italy2026-10-17
1006United Kingdom2026-09-22
1007Italy2026-09-25
1008Argentina2026-10-03
1009Spain2026-10-07
1010Argentina2026-09-22
1011Germany2026-10-16
1012Russia2026-10-05
1013Australia2026-10-04
1014Spain2026-10-20
1015France2026-10-20
1016Australia2026-09-21
1017Canada2026-09-25
1018Japan2026-09-27
1019Japan2026-09-23
1020Argentina2026-09-29
1021Brazil2026-10-01
1022Argentina2026-10-18
1023India2026-10-03
1024Russia2026-10-11
1025United Kingdom2026-10-18
1026India2026-10-06
1027Australia2026-09-22
1028Canada2026-09-22
1029Russia2026-10-11
1030Spain2026-09-24
1031Spain2026-10-11
1032India2026-09-30
1033Russia2026-09-27
1034France2026-09-27
1035Germany2026-10-17
1036Spain2026-10-16
1037Australia2026-10-17
1038United Kingdom2026-09-25
1039Italy2026-10-05
1040France2026-10-12
1041Italy2026-10-09
1042Argentina2026-10-20
1043Canada2026-09-30
1044Brazil2026-10-11
1045Argentina2026-09-23
1046India2026-10-02
1047Australia2026-10-11
1048Canada2026-10-18
1049Japan2026-09-21

On-Demand Data

NameIdCountryDate
Munro D Bolognia1000Spain2026-10-05
Deepesh N Poquette1001France2026-09-28
Juan Z Campain1002Argentina2026-09-27
Alejandro U Kolmetz1003United Kingdom2026-10-10
Isabel D Whobrey1004Argentina2026-09-23
Leja D Paprocki1005Australia2026-10-02
Wickens K Caudy1006Japan2026-10-18
Kaitlin X Caudy1007Brazil2026-10-17
Mayumi G Gillian1008United Kingdom2026-10-13
Chavez Q Stenseth1009Japan2026-10-18
Misaki G Doe1010United Kingdom2026-10-12
Deepesh C Whobrey1011Australia2026-10-09
Aruna V Paprocki1012Australia2026-09-30
Darci B Stenseth1013Germany2026-10-07
Octavia F Whobrey1014Germany2026-10-11
Greenwood E Perin1015Italy2026-10-07
Clifford T Albares1016Japan2026-10-15
Jones K Venere1017Argentina2026-10-13
Octavia T Dilliard1018Brazil2026-10-20
Arvin O Kolmetz1019Spain2026-10-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo B MacleadCanadaBernardo Dominic RENEWAL
Arvin P OstroskyIndiaAsiya Javayant RENEWAL
Maisha V SaylorsArgentinaAmy Elsner NEW
Costa V NickaAustraliaIoni Bowcher PROPOSAL
Maisha G ButtBrazilAmy Elsner RENEWAL
Jeanfrancois A MaletAustraliaAsiya Javayant NEW
Ashley V CampainAustraliaXuxue Feng NEGOTIATION
Leja O KuskoItalyElwin Sharvill NEW
Misaki B WhobreyArgentinaAmy Elsner QUALIFIED
James O GauchoRussiaAnna Fali PROPOSAL
Izzy B WieserJapanAsiya Javayant QUALIFIED
Tony W GauchoAustraliaAnna Fali PROPOSAL
Ashley C DoeBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois K IturbideBrazilXuxue Feng QUALIFIED
Maisha P AmigonArgentinaAsiya Javayant UNQUALIFIED
Deepesh C StockhamJapanElwin Sharvill PROPOSAL
Jennifer G FlosiUnited KingdomElwin Sharvill NEGOTIATION
Smith L FerenczArgentinaXuxue Feng NEW
Ashley W StensethItalyAnna Fali NEW
Leon P GlickArgentinaIvan Magalhaes UNQUALIFIED
Murillo N RutaRussiaAsiya Javayant NEW
Murillo U RutaSpainIoni Bowcher QUALIFIED
Clifford D BowleyBrazilStephen Shaw UNQUALIFIED
Salvatore H GauchoAustraliaIvan Magalhaes RENEWAL
Tony Y GillianGermanyAnna Fali NEGOTIATION
Munro G CaudyUnited KingdomIvan Magalhaes QUALIFIED
Murillo A FerenczCanadaStephen Shaw NEGOTIATION
Jeanfrancois Q PoquetteRussiaIoni Bowcher NEGOTIATION
Isabel H FigeroaCanadaElwin Sharvill RENEWAL
Mujtaba R GauchoUnited KingdomOnyama Limba RENEWAL
Claire F RimUnited KingdomIvan Magalhaes QUALIFIED
Wickens I BriddickRussiaAmy Elsner PROPOSAL
Arvin V OldroydBrazilBernardo Dominic NEGOTIATION
Octavia D PaprockiUnited KingdomIoni Bowcher NEW
Arvin F BriddickAustraliaBernardo Dominic PROPOSAL
Tony P DilliardBrazilAnna Fali UNQUALIFIED
Greenwood D CaldareraCanadaStephen Shaw PROPOSAL
Rodrigues D OstroskyRussiaAmy Elsner NEW
Ashley X ChuiIndiaStephen Shaw UNQUALIFIED
Juan W GarufiRussiaElwin Sharvill NEW

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