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
Ashley E AmigonGermanyIvan Magalhaes RENEWAL
Smith V OstroskyIndiaAmy Elsner NEGOTIATION
Silvio P GillianArgentinaStephen Shaw PROPOSAL
Maria B VenereUnited KingdomElwin Sharvill NEGOTIATION
Smith Y RulapaughArgentinaOnyama Limba NEW
Murillo A CaudyCanadaElwin Sharvill QUALIFIED
Misaki C CampainCanadaAnna Fali UNQUALIFIED
Ivar D WaycottAustraliaIoni Bowcher UNQUALIFIED
Emily N FollerSpainIoni Bowcher NEW
Aruna P PerinGermanyIvan Magalhaes NEGOTIATION
Greenwood U DilliardArgentinaStephen Shaw NEW
James D PerinIndiaIoni Bowcher QUALIFIED
Rodrigues T BologniaSpainAnna Fali PROPOSAL
Murillo W PerinGermanyElwin Sharvill QUALIFIED
Adams L SaylorsItalyOnyama Limba NEW
Leja A VocelkaJapanElwin Sharvill RENEWAL
Ashley M TollnerArgentinaXuxue Feng UNQUALIFIED
Salvatore T GlickBrazilOnyama Limba NEGOTIATION
Darci F TollnerJapanBernardo Dominic NEGOTIATION
Murillo M GauchoFranceElwin Sharvill QUALIFIED
Adams W IturbideJapanIoni Bowcher QUALIFIED
Jones C ButtCanadaXuxue Feng PROPOSAL
Ashley T CaudyIndiaStephen Shaw QUALIFIED
Antonio D StockhamRussiaStephen Shaw RENEWAL
Izzy W InouyeArgentinaBernardo Dominic UNQUALIFIED
Murillo K BowleyBrazilElwin Sharvill UNQUALIFIED
Mayumi W FollerItalyAsiya Javayant NEGOTIATION
Arvin S SergiBrazilAsiya Javayant QUALIFIED
Antonio S VocelkaFranceOnyama Limba QUALIFIED
Adams Z AlbaresIndiaAsiya Javayant RENEWAL
Jefferson Q PoquetteBrazilAnna Fali RENEWAL
Izzy H BowleySpainAnna Fali PROPOSAL
Tony W WaycottRussiaOnyama Limba RENEWAL
Ashley D ShinkoGermanyElwin Sharvill NEW
Juan M SergiAustraliaXuxue Feng UNQUALIFIED
Octavia I FigeroaArgentinaAmy Elsner NEGOTIATION
James W OldroydSpainOnyama Limba NEW
Silvio Y RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Aika L CaudyRussiaIvan Magalhaes RENEWAL
Jennifer X NickaBrazilOnyama Limba NEGOTIATION
Darci I InouyeAustraliaAmy Elsner NEW
Leja E KolmetzSpainAsiya Javayant UNQUALIFIED
Aruna A NestleRussiaStephen Shaw RENEWAL
Stacey T StensethIndiaAmy Elsner UNQUALIFIED
Aruna R MaletFranceXuxue Feng UNQUALIFIED
Ricardo N CaldareraGermanyIoni Bowcher PROPOSAL
Maria Z InouyeGermanyStephen Shaw PROPOSAL
Stacey F BowleyGermanyIvan Magalhaes NEW
Salvatore X CaldareraItalyIvan Magalhaes UNQUALIFIED
Stacey E GarufiItalyAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
Smith G FlosiCanadaStephen Shaw NEW
Cody M TollnerAustraliaOnyama Limba PROPOSAL
Sinclair T NestleUnited KingdomElwin Sharvill QUALIFIED
Emily P GillianBrazilIvan Magalhaes RENEWAL
Emily S ShinkoAustraliaStephen Shaw NEGOTIATION
Maisha G SlusarskiIndiaElwin Sharvill NEGOTIATION
Faith J MacleadRussiaAnna Fali NEW
Adams C KolmetzAustraliaAnna Fali QUALIFIED
Emily C DarakjyFranceStephen Shaw QUALIFIED
Tony F DoeArgentinaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo K BowleyIndia2026-09-15Dorl, James J Esq UNQUALIFIED28Elwin Sharvill
1001Leon Q BowleyGermany2026-09-04Buckley Miller Wright NEW16Amy Elsner
1002Aruna X NestleIndia2026-09-12Dorl, James J Esq NEGOTIATION50Onyama Limba
1003Silvio D SlusarskiAustralia2026-08-27Buckley Miller Wright RENEWAL42Elwin Sharvill
1004Isabel A VenereIndia2026-08-27Truhlar And Truhlar Attys NEW4Xuxue Feng
1005Aditya K StockhamJapan2026-09-03Buckley Miller Wright RENEWAL33Onyama Limba
1006Wickens B RimRussia2026-08-27Commercial Press NEW54Asiya Javayant
1007Misaki V PoquetteUnited Kingdom2026-09-22Rousseaux, Michael Esq QUALIFIED71Elwin Sharvill
1008Nicolas V DoeIndia2026-09-04Chapman, Ross E Esq QUALIFIED75Xuxue Feng
1009Costa J SergiFrance2026-09-06Chemel, James L Cpa NEW2Bernardo Dominic
1010Wickens T WhobreyRussia2026-09-11Chemel, James L Cpa RENEWAL17Bernardo Dominic
1011Stacey V StockhamJapan2026-09-05Truhlar And Truhlar Attys NEW2Elwin Sharvill
1012Kaitlin I NestleArgentina2026-09-22Rangoni Of Florence QUALIFIED36Anna Fali
1013Murillo F SergiRussia2026-09-05Rousseaux, Michael Esq NEW2Asiya Javayant
1014Munro F FerenczUnited Kingdom2026-09-09Printing Dimensions UNQUALIFIED23Anna Fali
1015Ashley N TollnerIndia2026-08-27Rangoni Of Florence NEW6Xuxue Feng
1016Costa E BowleySpain2026-09-18Feltz Printing Service NEW21Stephen Shaw
1017Faith O KolmetzItaly2026-08-25Buckley Miller Wright QUALIFIED43Anna Fali
1018Izzy W RulapaughSpain2026-09-04King, Christopher A Esq NEW64Bernardo Dominic
1019Tony R DilliardUnited Kingdom2026-09-11Buckley Miller Wright QUALIFIED5Ivan Magalhaes
1020Kadeem F WieserGermany2026-09-11Chemel, James L Cpa RENEWAL9Ioni Bowcher
1021Emily G ChuiUnited Kingdom2026-09-13Morlong Associates UNQUALIFIED80Bernardo Dominic
1022Cody S CaudyCanada2026-09-01Rousseaux, Michael Esq QUALIFIED68Ioni Bowcher
1023Jennifer J StockhamGermany2026-09-18Chanay, Jeffrey A Esq RENEWAL36Ioni Bowcher
1024Munro E ButtBrazil2026-09-10Chemel, James L Cpa NEGOTIATION19Elwin Sharvill
1025David W TollnerCanada2026-09-01King, Christopher A Esq NEGOTIATION91Bernardo Dominic
1026Izzy S FerenczAustralia2026-08-25King, Christopher A Esq NEGOTIATION97Bernardo Dominic
1027Ivar Y ButtUnited Kingdom2026-09-11Truhlar And Truhlar Attys QUALIFIED17Amy Elsner
1028Aika G TollnerFrance2026-09-15Commercial Press NEW15Bernardo Dominic
1029Aika O GillianGermany2026-09-20Buckley Miller Wright NEGOTIATION84Onyama Limba
1030Izzy N GarufiGermany2026-09-02Buckley Miller Wright QUALIFIED68Xuxue Feng
1031Kaitlin Q NickaRussia2026-09-21Truhlar And Truhlar Attys UNQUALIFIED33Ivan Magalhaes
1032Jennifer X FollerSpain2026-09-12Feltz Printing Service QUALIFIED16Elwin Sharvill
1033Jeanfrancois B OldroydAustralia2026-08-30Morlong Associates UNQUALIFIED46Elwin Sharvill
1034Julie W OstroskyAustralia2026-09-21Printing Dimensions PROPOSAL41Stephen Shaw
1035Octavia K SchemmerFrance2026-09-02Benton, John B Jr NEGOTIATION60Amy Elsner
1036Julie I GillianIndia2026-09-10Truhlar And Truhlar Attys NEGOTIATION75Stephen Shaw
1037Smith Z KolmetzRussia2026-09-21Chanay, Jeffrey A Esq QUALIFIED36Amy Elsner
1038Mujtaba W PaprockiCanada2026-09-01Feiner Bros RENEWAL6Elwin Sharvill
1039Ricardo D RutaGermany2026-08-31Chapman, Ross E Esq RENEWAL86Amy Elsner
1040Misaki H CampainGermany2026-09-03Dorl, James J Esq PROPOSAL80Ivan Magalhaes
1041Jefferson N MaletArgentina2026-09-09Dorl, James J Esq UNQUALIFIED79Amy Elsner
1042Julie R CaldareraBrazil2026-09-14Chapman, Ross E Esq QUALIFIED76Ioni Bowcher
1043Leja X WieserJapan2026-08-24Feltz Printing Service UNQUALIFIED24Bernardo Dominic
1044Antonio I GarufiArgentina2026-09-13Truhlar And Truhlar Attys UNQUALIFIED33Xuxue Feng
1045Izzy E KolmetzRussia2026-08-29Buckley Miller Wright UNQUALIFIED79Stephen Shaw
1046Jeanfrancois B PoquetteAustralia2026-09-02Rangoni Of Florence NEGOTIATION22Ioni Bowcher
1047Wickens D SergiAustralia2026-08-26Feltz Printing Service PROPOSAL82Elwin Sharvill
1048Smith H VenereIndia2026-09-15Chapman, Ross E Esq RENEWAL61Onyama Limba
1049Stacey S TollnerCanada2026-08-28Printing Dimensions RENEWAL42Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Leon R KolmetzGermanyAmy Elsner QUALIFIED
James Z WieserItalyIoni Bowcher PROPOSAL
Kadeem R OldroydGermanyAsiya Javayant NEW
Deepesh Y RulapaughItalyAmy Elsner QUALIFIED
Nicolas S OldroydGermanyAnna Fali UNQUALIFIED
Nicolas Q NestleItalyIoni Bowcher UNQUALIFIED
Silvio L InouyeFranceStephen Shaw UNQUALIFIED
Leon I PaprockiGermanyAnna Fali RENEWAL
Aika G DilliardItalyBernardo Dominic PROPOSAL
Greenwood X BologniaSpainElwin Sharvill NEGOTIATION
Octavia L AmigonJapanAmy Elsner QUALIFIED
Jennifer R InouyeUnited KingdomAnna Fali QUALIFIED
Aika E NickaSpainOnyama Limba QUALIFIED
Mujtaba H TollnerBrazilIvan Magalhaes NEGOTIATION
Isabel F TollnerBrazilAnna Fali NEGOTIATION
Octavia C NestleIndiaIoni Bowcher UNQUALIFIED
Jefferson L WhobreyBrazilAnna Fali QUALIFIED
Arvin V MaletArgentinaBernardo Dominic RENEWAL
Julie Y CampainArgentinaIoni Bowcher PROPOSAL
James I RimCanadaIoni Bowcher NEW
Mayumi T PaprockiGermanyStephen Shaw QUALIFIED
Jones F RoysterItalyIoni Bowcher NEW
Johnson J SaylorsSpainIvan Magalhaes QUALIFIED
Rodrigues C InouyeIndiaAsiya Javayant RENEWAL
Johnson F SchemmerCanadaIvan Magalhaes PROPOSAL
Aditya Q GarufiBrazilBernardo Dominic NEGOTIATION
Aditya I CaudyUnited KingdomOnyama Limba QUALIFIED
Cody S BologniaIndiaXuxue Feng QUALIFIED
James X PerinIndiaIoni Bowcher PROPOSAL
Adams W MarrierCanadaOnyama Limba RENEWAL
Smith Z PerinBrazilAsiya Javayant NEW
Juan P MacleadBrazilAsiya Javayant NEW
Rodrigues F GarufiGermanyOnyama Limba PROPOSAL
Mujtaba P SchemmerBrazilIvan Magalhaes NEW
Izzy V InouyeUnited KingdomXuxue Feng NEGOTIATION
Adams W RutaItalyStephen Shaw UNQUALIFIED
Alejandro S ButtGermanyIoni Bowcher NEW
Julie Z NestleUnited KingdomBernardo Dominic RENEWAL
Adams A StockhamUnited KingdomAmy Elsner NEW
Darci K OstroskyGermanyStephen Shaw NEW
Antonio H GillianItalyBernardo Dominic NEGOTIATION
Smith M SchemmerAustraliaIoni Bowcher NEGOTIATION
Munro L DoeGermanyIoni Bowcher RENEWAL
Clifford Z MaletRussiaStephen Shaw PROPOSAL
Smith Z SergiFranceAsiya Javayant QUALIFIED
Julie I AlbaresIndiaBernardo Dominic QUALIFIED
Leon R DoeCanadaBernardo Dominic RENEWAL
Wickens N DoeItalyXuxue Feng NEW
David G SchemmerUnited KingdomOnyama Limba QUALIFIED
Kaitlin A VocelkaRussiaElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Kaitlin Z Royster
Octavia P Amigon
Morrow J Kolmetz
Alejandro L Saylors
Jeanfrancois N Oldroyd
Alejandro U Saylors
Darci F Briddick
Octavia N Oldroyd
Alejandro U Darakjy
Sinclair F Sergi
Nicolas Z Nestle
Antonio V Amigon
Ashley F Sergi
James C Butt
Costa P Glick
Salvatore P Chui
Kaitlin I Doe
Julie B Oldroyd
Leon Z Rim
Darci X Nicka
Costa N Foller
Aditya K Morasca
Julie R Morasca
Octavia M Bowley
Ivar E Doe
Alejandro W Campain
Salvatore V Royster
Alejandro H Bolognia
Stacey Y Morasca
Murillo R Chui
Aika E Kolmetz
Aika R Darakjy
Adams W Sergi
Jennifer S Iturbide
Kaitlin C Royster
Tony F Glick
Mujtaba L Stockham
Juan J Malet
Kadeem A Ruta
Morrow K Chui
Cody B Gillian
Morrow C Bowley
Clifford I Venere
Aruna E Kolmetz
Ricardo S Rulapaugh
Leja K Gaucho
Maria H Rim
Tony G Glick
Izzy Z Oldroyd
Ashley K Oldroyd
IdCountryDate
1000Japan2026-09-17
1001Italy2026-09-14
1002Italy2026-09-13
1003Japan2026-09-02
1004Brazil2026-09-08
1005United Kingdom2026-08-29
1006Germany2026-09-10
1007Brazil2026-08-25
1008Australia2026-09-19
1009Argentina2026-09-15
1010Japan2026-08-27
1011United Kingdom2026-09-03
1012Germany2026-09-11
1013Italy2026-09-13
1014Italy2026-09-01
1015Italy2026-09-07
1016United Kingdom2026-08-27
1017Russia2026-09-19
1018Canada2026-09-13
1019United Kingdom2026-09-04
1020United Kingdom2026-09-08
1021Japan2026-09-08
1022Canada2026-09-11
1023Japan2026-08-29
1024Spain2026-08-26
1025Italy2026-08-25
1026Japan2026-09-02
1027Russia2026-09-16
1028Russia2026-09-21
1029India2026-09-10
1030Australia2026-08-26
1031Canada2026-08-26
1032Brazil2026-09-20
1033France2026-08-31
1034Spain2026-08-28
1035United Kingdom2026-08-28
1036United Kingdom2026-09-06
1037Germany2026-08-28
1038Japan2026-09-07
1039Canada2026-09-19
1040Russia2026-09-22
1041Japan2026-09-12
1042Brazil2026-09-06
1043Spain2026-09-10
1044Canada2026-09-16
1045Japan2026-09-22
1046Russia2026-08-29
1047Germany2026-09-22
1048France2026-09-15
1049Spain2026-08-31

On-Demand Data

NameIdCountryDate
Munro L Bowley1000Japan2026-08-25
Darci M Malet1001United Kingdom2026-09-15
Mujtaba A Rulapaugh1002Argentina2026-09-07
Murillo C Marrier1003Argentina2026-09-02
Jones M Rim1004Japan2026-08-29
Cody V Tollner1005Brazil2026-09-12
Maria L Darakjy1006Spain2026-09-05
Adams F Bowley1007Russia2026-09-20
James B Royster1008Germany2026-08-28
Maisha S Oldroyd1009France2026-08-31
Morrow Y Kusko1010France2026-08-28
Antonio C Garufi1011Spain2026-08-25
Smith Q Gillian1012Germany2026-08-28
Wickens M Campain1013Argentina2026-09-09
Rodrigues Z Campain1014Russia2026-09-03
Maisha T Figeroa1015France2026-09-13
Francesco L Albares1016Australia2026-09-13
James B Darakjy1017Spain2026-09-20
Adams S Ruta1018Italy2026-09-01
Izzy F Butt1019Brazil2026-08-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois N MacleadRussiaXuxue Feng NEW
Aika O FigeroaCanadaXuxue Feng NEGOTIATION
Leon O PerinJapanIoni Bowcher QUALIFIED
Aditya O BriddickBrazilAmy Elsner NEGOTIATION
Rodrigues W WieserCanadaStephen Shaw RENEWAL
Ashley G InouyeSpainAnna Fali RENEWAL
Sinclair S RoysterItalyIoni Bowcher NEW
Tony E NickaFranceIvan Magalhaes NEW
Isabel C GillianSpainAsiya Javayant QUALIFIED
Arvin W GarufiFranceIoni Bowcher PROPOSAL
Jones D ShinkoFranceStephen Shaw NEGOTIATION
Misaki Q GauchoBrazilAsiya Javayant NEGOTIATION
Ashley P GarufiArgentinaAmy Elsner UNQUALIFIED
Silvio V MarrierIndiaBernardo Dominic PROPOSAL
Leja J WieserAustraliaElwin Sharvill QUALIFIED
Murillo N ShinkoAustraliaAsiya Javayant PROPOSAL
Antonio A GarufiArgentinaStephen Shaw NEW
Izzy R VenereRussiaAsiya Javayant NEW
Salvatore Y MaletJapanAsiya Javayant UNQUALIFIED
Stacey O StockhamArgentinaAnna Fali NEW
Alejandro V KolmetzCanadaStephen Shaw RENEWAL
Octavia O PerinRussiaAnna Fali NEGOTIATION
Adams R MarrierSpainAsiya Javayant RENEWAL
Greenwood W VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Jennifer Z StockhamUnited KingdomAmy Elsner QUALIFIED
Silvio G InouyeGermanyAnna Fali QUALIFIED
Silvio J MaletItalyIvan Magalhaes QUALIFIED
Aika Z RoysterUnited KingdomAnna Fali RENEWAL
Julie I WieserItalyStephen Shaw UNQUALIFIED
Darci K OstroskyIndiaOnyama Limba NEW
James K ButtSpainXuxue Feng NEGOTIATION
Costa M PoquetteItalyBernardo Dominic PROPOSAL
Costa K NestleAustraliaXuxue Feng NEW
Leon D FerenczAustraliaIoni Bowcher RENEWAL
Mayumi W ShinkoArgentinaAnna Fali NEGOTIATION
Aika Q CaldareraBrazilIoni Bowcher NEW
Costa E GauchoUnited KingdomXuxue Feng NEW
Aruna B StockhamCanadaOnyama Limba QUALIFIED
Murillo D AmigonArgentinaIoni Bowcher PROPOSAL
Mayumi Z GauchoBrazilXuxue Feng UNQUALIFIED

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