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
Kaitlin A SaylorsUnited KingdomAmy Elsner RENEWAL
Maria Y OldroydBrazilXuxue Feng NEW
Stacey X AmigonSpainStephen Shaw RENEWAL
Faith A BologniaGermanyAnna Fali UNQUALIFIED
Tony U NickaIndiaIvan Magalhaes QUALIFIED
Misaki W ShinkoArgentinaIvan Magalhaes QUALIFIED
Clifford V AlbaresCanadaBernardo Dominic RENEWAL
Jeanfrancois K DilliardItalyBernardo Dominic NEGOTIATION
Smith H InouyeIndiaOnyama Limba QUALIFIED
Jennifer M MaletCanadaOnyama Limba PROPOSAL
Jennifer Y GlickJapanOnyama Limba PROPOSAL
James D KuskoJapanElwin Sharvill NEGOTIATION
Deepesh O CampainSpainAnna Fali RENEWAL
Clifford D MacleadBrazilOnyama Limba UNQUALIFIED
Adams G DarakjyGermanyElwin Sharvill NEGOTIATION
Octavia C FlosiSpainOnyama Limba NEGOTIATION
Kadeem Z BologniaItalyIvan Magalhaes PROPOSAL
Tony G WaycottSpainIoni Bowcher NEGOTIATION
Izzy X VocelkaFranceBernardo Dominic RENEWAL
Octavia Q SlusarskiSpainAnna Fali QUALIFIED
Jones K DarakjyIndiaIoni Bowcher RENEWAL
Misaki H CaldareraJapanAmy Elsner NEW
Munro X BologniaUnited KingdomElwin Sharvill UNQUALIFIED
Julie Q StensethGermanyElwin Sharvill UNQUALIFIED
Jennifer A SergiItalyAnna Fali UNQUALIFIED
Clifford O AmigonSpainElwin Sharvill RENEWAL
Morrow G DarakjyRussiaAmy Elsner RENEWAL
Ivar D BowleyCanadaIvan Magalhaes RENEWAL
Costa G FlosiBrazilOnyama Limba PROPOSAL
Faith P StensethArgentinaOnyama Limba QUALIFIED
Leja L MacleadAustraliaIoni Bowcher RENEWAL
Julie H WhobreyGermanyAmy Elsner QUALIFIED
Deepesh F KuskoFranceStephen Shaw PROPOSAL
Jones Q SaylorsAustraliaStephen Shaw UNQUALIFIED
Ivar T BowleyItalyBernardo Dominic NEW
Mayumi S PerinUnited KingdomAnna Fali QUALIFIED
Costa Q InouyeCanadaElwin Sharvill QUALIFIED
Rodrigues V CampainIndiaIvan Magalhaes NEW
Arvin E NickaBrazilStephen Shaw PROPOSAL
Nicolas H MaletAustraliaAnna Fali NEW
Tony U FollerArgentinaOnyama Limba PROPOSAL
Smith Q PerinFranceAmy Elsner PROPOSAL
Ivar Z GarufiAustraliaXuxue Feng RENEWAL
Isabel W AlbaresBrazilBernardo Dominic UNQUALIFIED
Smith V StockhamAustraliaAnna Fali NEGOTIATION
Isabel S OldroydUnited KingdomBernardo Dominic NEGOTIATION
Costa R WieserRussiaXuxue Feng NEGOTIATION
Sinclair F InouyeJapanBernardo Dominic RENEWAL
Adams U RoysterBrazilElwin Sharvill NEW
Ivar N RimSpainElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Alejandro Q OstroskyIndiaStephen Shaw NEW
Faith D TollnerUnited KingdomIvan Magalhaes RENEWAL
Cody Z MaletIndiaBernardo Dominic NEW
Chavez T CampainSpainAnna Fali RENEWAL
David O GillianSpainStephen Shaw RENEWAL
Nicolas C CampainArgentinaAmy Elsner RENEWAL
Isabel I VocelkaBrazilIoni Bowcher QUALIFIED
Darci P RulapaughBrazilIoni Bowcher UNQUALIFIED
Rodrigues J RimAustraliaAsiya Javayant NEGOTIATION
Arvin J DilliardCanadaStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem J StensethJapan2026-09-27Truhlar And Truhlar Attys NEW66Bernardo Dominic
1001Kadeem F BowleyUnited Kingdom2026-09-12Morlong Associates NEW18Stephen Shaw
1002Silvio T CampainJapan2026-10-04Dorl, James J Esq NEW80Stephen Shaw
1003Leja O VenereGermany2026-09-22Chapman, Ross E Esq UNQUALIFIED38Amy Elsner
1004Misaki S PerinFrance2026-09-21Benton, John B Jr UNQUALIFIED91Bernardo Dominic
1005Alejandro A SaylorsSpain2026-09-19Rousseaux, Michael Esq RENEWAL96Asiya Javayant
1006Smith D CaudyFrance2026-09-23King, Christopher A Esq NEW41Bernardo Dominic
1007David X VocelkaCanada2026-09-14Rousseaux, Michael Esq RENEWAL93Ivan Magalhaes
1008Kaitlin I DoeCanada2026-09-10Truhlar And Truhlar Attys RENEWAL95Elwin Sharvill
1009Adams C MorascaAustralia2026-09-24Morlong Associates NEW81Asiya Javayant
1010Wickens W SergiFrance2026-09-09Truhlar And Truhlar Attys NEW30Amy Elsner
1011Costa J GarufiCanada2026-10-04Chapman, Ross E Esq UNQUALIFIED75Elwin Sharvill
1012Johnson N GlickUnited Kingdom2026-09-20Feiner Bros PROPOSAL34Onyama Limba
1013Antonio Z StensethItaly2026-09-06Rangoni Of Florence NEW37Amy Elsner
1014Maria L FigeroaSpain2026-09-12Chanay, Jeffrey A Esq NEW9Xuxue Feng
1015Antonio A StensethArgentina2026-09-10Buckley Miller Wright QUALIFIED48Onyama Limba
1016Adams P SergiBrazil2026-09-08Benton, John B Jr RENEWAL54Elwin Sharvill
1017Murillo Z GlickSpain2026-09-23Feltz Printing Service UNQUALIFIED79Amy Elsner
1018Arvin C FlosiBrazil2026-09-28Feiner Bros RENEWAL19Elwin Sharvill
1019Kadeem L DoeJapan2026-09-20Buckley Miller Wright RENEWAL93Amy Elsner
1020Smith P GarufiUnited Kingdom2026-09-11Dorl, James J Esq PROPOSAL32Anna Fali
1021Leon E BologniaFrance2026-09-27King, Christopher A Esq QUALIFIED21Stephen Shaw
1022Sinclair V KolmetzSpain2026-10-03Dorl, James J Esq NEW81Elwin Sharvill
1023Leon H DilliardBrazil2026-09-05Printing Dimensions RENEWAL34Stephen Shaw
1024Morrow E RulapaughArgentina2026-09-20King, Christopher A Esq UNQUALIFIED68Anna Fali
1025Octavia N PoquetteCanada2026-09-17Truhlar And Truhlar Attys RENEWAL0Ioni Bowcher
1026James R ButtBrazil2026-09-08Chapman, Ross E Esq RENEWAL7Xuxue Feng
1027Alejandro H GillianGermany2026-09-11Buckley Miller Wright QUALIFIED98Anna Fali
1028Silvio P VenereItaly2026-10-02Feiner Bros NEW81Ivan Magalhaes
1029Nicolas W ButtJapan2026-09-17Feltz Printing Service PROPOSAL47Onyama Limba
1030Mujtaba B CaldareraItaly2026-09-17Printing Dimensions NEW31Onyama Limba
1031Johnson Z ButtGermany2026-09-22Morlong Associates UNQUALIFIED2Onyama Limba
1032Juan M OstroskyAustralia2026-09-11Chemel, James L Cpa NEGOTIATION15Anna Fali
1033Aditya I WhobreyUnited Kingdom2026-09-12Feltz Printing Service RENEWAL85Amy Elsner
1034Cody V FerenczFrance2026-09-13Printing Dimensions NEGOTIATION22Ivan Magalhaes
1035Jennifer I StensethCanada2026-09-06Rousseaux, Michael Esq QUALIFIED95Ivan Magalhaes
1036Claire Q StensethSpain2026-10-03Printing Dimensions UNQUALIFIED10Bernardo Dominic
1037Johnson N InouyeIndia2026-09-19Chemel, James L Cpa UNQUALIFIED72Asiya Javayant
1038Julie K GillianGermany2026-09-16Rangoni Of Florence UNQUALIFIED79Asiya Javayant
1039Julie S WhobreyBrazil2026-09-07Morlong Associates QUALIFIED37Elwin Sharvill
1040Antonio F BriddickItaly2026-10-03Commercial Press NEW3Ivan Magalhaes
1041Munro F NickaItaly2026-09-26Benton, John B Jr NEGOTIATION10Amy Elsner
1042Costa U OstroskyBrazil2026-09-11Truhlar And Truhlar Attys QUALIFIED51Asiya Javayant
1043Isabel X DarakjyAustralia2026-09-13Morlong Associates QUALIFIED78Bernardo Dominic
1044Jones P DoeRussia2026-09-23Rousseaux, Michael Esq NEGOTIATION96Stephen Shaw
1045Mujtaba Z CampainIndia2026-09-10Morlong Associates RENEWAL35Anna Fali
1046Costa B CampainBrazil2026-09-12Chemel, James L Cpa PROPOSAL70Elwin Sharvill
1047Jeanfrancois X SlusarskiBrazil2026-10-04Rousseaux, Michael Esq NEW42Xuxue Feng
1048Tony W RimIndia2026-09-28King, Christopher A Esq RENEWAL9Asiya Javayant
1049Claire L BriddickArgentina2026-09-08Chapman, Ross E Esq QUALIFIED34Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Alejandro O GillianIndiaElwin Sharvill PROPOSAL
Costa G VocelkaArgentinaAnna Fali UNQUALIFIED
Aditya N MarrierArgentinaIvan Magalhaes QUALIFIED
Claire W NickaItalyAsiya Javayant RENEWAL
Francesco X WhobreyCanadaIvan Magalhaes RENEWAL
Silvio S CaudyAustraliaOnyama Limba UNQUALIFIED
Silvio J OstroskyAustraliaElwin Sharvill QUALIFIED
Murillo N PoquetteGermanyXuxue Feng QUALIFIED
Julie I OldroydUnited KingdomXuxue Feng NEGOTIATION
Ashley A FollerJapanAmy Elsner QUALIFIED
Munro A MarrierUnited KingdomAsiya Javayant NEW
Julie I CaudyIndiaAmy Elsner RENEWAL
Stacey U MaletFranceIoni Bowcher RENEWAL
Mayumi M MarrierBrazilBernardo Dominic NEGOTIATION
Ashley Z RimItalyElwin Sharvill UNQUALIFIED
Maria I OstroskyGermanyIoni Bowcher NEW
Kadeem R CaudyAustraliaXuxue Feng NEGOTIATION
Darci J RoysterBrazilIvan Magalhaes UNQUALIFIED
Jones K FigeroaCanadaElwin Sharvill RENEWAL
Aruna S SchemmerCanadaAmy Elsner QUALIFIED
Julie F CaudyAustraliaStephen Shaw NEGOTIATION
Sinclair S GlickIndiaAmy Elsner PROPOSAL
Misaki I NickaGermanyIoni Bowcher UNQUALIFIED
Rodrigues S FigeroaUnited KingdomBernardo Dominic QUALIFIED
Jones H MorascaUnited KingdomStephen Shaw NEW
Alejandro W InouyeArgentinaStephen Shaw UNQUALIFIED
Deepesh L PoquetteGermanyAmy Elsner RENEWAL
Faith V NestleSpainOnyama Limba RENEWAL
Mayumi O TollnerJapanStephen Shaw RENEWAL
Mujtaba U BriddickRussiaXuxue Feng NEW
Silvio M BowleyAustraliaElwin Sharvill RENEWAL
Alejandro M GarufiRussiaAnna Fali UNQUALIFIED
Kaitlin Y FollerJapanBernardo Dominic NEW
Darci P CampainGermanyXuxue Feng NEW
Ricardo O MorascaIndiaAmy Elsner NEGOTIATION
Wickens F StockhamJapanAmy Elsner QUALIFIED
Chavez L VenereSpainStephen Shaw PROPOSAL
Ashley R StockhamJapanIoni Bowcher UNQUALIFIED
Mayumi J CaldareraJapanIoni Bowcher NEGOTIATION
Juan P WhobreyUnited KingdomAmy Elsner UNQUALIFIED
Deepesh C NestleJapanAnna Fali RENEWAL
Leon Q MaletIndiaAmy Elsner QUALIFIED
Nicolas M OldroydItalyAnna Fali PROPOSAL
Alejandro I OldroydIndiaOnyama Limba NEW
Ivar P WhobreyJapanIoni Bowcher PROPOSAL
Antonio U RulapaughRussiaStephen Shaw PROPOSAL
Jeanfrancois P WhobreyRussiaIvan Magalhaes NEGOTIATION
Leon O PerinBrazilIvan Magalhaes NEGOTIATION
Nicolas C CaldareraIndiaIvan Magalhaes PROPOSAL
Costa Q StockhamCanadaOnyama Limba NEW
Frozen Columns
Name
David T Garufi
Clifford N Paprocki
Ivar O Schemmer
Claire M Amigon
James Z Nicka
Chavez S Briddick
Kadeem U Bolognia
Jones G Morasca
Greenwood U Darakjy
Aditya S Paprocki
Stacey D Stockham
Chavez P Poquette
Morrow U Venere
Leon N Stenseth
Jefferson N Perin
Smith Q Marrier
Aruna J Royster
Salvatore Z Rim
Ashley C Nicka
Chavez S Royster
Clifford K Bolognia
Jones G Ferencz
Deepesh X Figeroa
Greenwood C Morasca
Nicolas M Garufi
Kadeem R Poquette
Juan M Paprocki
Stacey S Flosi
David D Rulapaugh
Claire P Rulapaugh
Antonio X Doe
Adams Z Vocelka
Cody O Waycott
Alejandro U Saylors
Aditya N Chui
Alejandro G Whobrey
Izzy V Darakjy
Chavez F Ostrosky
Deepesh K Kolmetz
Costa U Caldarera
David F Saylors
Nicolas M Tollner
Aika A Gaucho
Rodrigues P Slusarski
Aruna K Nicka
Leja F Butt
Isabel O Slusarski
Leon O Dilliard
Johnson U Gaucho
Costa O Royster
IdCountryDate
1000Brazil2026-09-11
1001Germany2026-09-21
1002Germany2026-09-13
1003United Kingdom2026-09-25
1004Canada2026-09-25
1005Australia2026-09-27
1006Australia2026-09-27
1007Italy2026-09-19
1008Spain2026-09-28
1009Germany2026-09-22
1010France2026-10-02
1011Japan2026-09-19
1012Russia2026-09-29
1013United Kingdom2026-09-09
1014Italy2026-09-27
1015Japan2026-09-05
1016Brazil2026-09-30
1017Australia2026-09-15
1018Australia2026-09-18
1019Spain2026-09-21
1020France2026-09-19
1021United Kingdom2026-09-26
1022Germany2026-09-17
1023United Kingdom2026-09-21
1024Italy2026-09-14
1025Brazil2026-09-16
1026India2026-09-12
1027Argentina2026-09-30
1028Brazil2026-09-16
1029Japan2026-09-20
1030France2026-09-09
1031Spain2026-09-25
1032Spain2026-09-30
1033Argentina2026-09-30
1034Germany2026-09-29
1035Australia2026-10-03
1036Spain2026-09-29
1037Italy2026-09-19
1038Australia2026-09-30
1039Italy2026-09-12
1040Australia2026-09-19
1041Italy2026-09-30
1042Canada2026-10-04
1043Japan2026-09-12
1044Australia2026-09-23
1045Canada2026-09-26
1046United Kingdom2026-09-19
1047Argentina2026-09-11
1048Australia2026-09-23
1049Italy2026-09-12

On-Demand Data

NameIdCountryDate
Mayumi Y Glick1000Brazil2026-10-01
Tony P Royster1001Brazil2026-09-25
Claire L Poquette1002Germany2026-09-20
Greenwood T Saylors1003France2026-09-07
Jefferson K Slusarski1004Italy2026-09-11
Alejandro B Shinko1005Australia2026-09-08
Julie Y Sergi1006Argentina2026-09-14
Claire J Ruta1007Australia2026-09-15
Costa O Royster1008Japan2026-09-07
Salvatore R Slusarski1009Italy2026-09-07
Ricardo U Chui1010United Kingdom2026-09-21
Mayumi D Slusarski1011Brazil2026-10-01
Jones A Campain1012Russia2026-09-05
Murillo P Briddick1013Australia2026-09-23
Salvatore T Stockham1014Italy2026-09-24
Tony Q Rim1015India2026-09-18
Smith P Paprocki1016France2026-09-06
Antonio Z Amigon1017Spain2026-09-25
Morrow U Whobrey1018United Kingdom2026-09-17
Murillo J Briddick1019Germany2026-09-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez E GauchoJapanXuxue Feng UNQUALIFIED
Rodrigues X CaldareraFranceIoni Bowcher RENEWAL
Leja K ButtItalyAsiya Javayant NEGOTIATION
Costa W KolmetzJapanAsiya Javayant UNQUALIFIED
Chavez M OstroskyCanadaElwin Sharvill NEW
Isabel B CampainGermanyStephen Shaw NEW
Jeanfrancois I NickaJapanAnna Fali QUALIFIED
Octavia O FlosiArgentinaXuxue Feng PROPOSAL
Alejandro W GauchoAustraliaBernardo Dominic NEW
Mayumi Y ShinkoRussiaOnyama Limba NEW
Kadeem K GillianBrazilBernardo Dominic NEW
Arvin C ShinkoJapanStephen Shaw NEGOTIATION
Maria S BriddickArgentinaIoni Bowcher RENEWAL
Claire B PoquetteSpainAnna Fali RENEWAL
Alejandro V KuskoSpainBernardo Dominic PROPOSAL
Jeanfrancois Z IturbideJapanOnyama Limba RENEWAL
Faith J GauchoJapanXuxue Feng QUALIFIED
James H FigeroaArgentinaAsiya Javayant PROPOSAL
Tony W GauchoJapanElwin Sharvill QUALIFIED
Jennifer W MarrierCanadaElwin Sharvill RENEWAL
Ricardo R InouyeArgentinaIvan Magalhaes QUALIFIED
Emily J WieserSpainIoni Bowcher PROPOSAL
Salvatore C GarufiSpainBernardo Dominic QUALIFIED
Julie I SlusarskiCanadaAsiya Javayant RENEWAL
Mujtaba G SchemmerJapanElwin Sharvill PROPOSAL
Adams W PerinUnited KingdomStephen Shaw UNQUALIFIED
Aditya U CaldareraArgentinaOnyama Limba UNQUALIFIED
Cody J BologniaFranceAnna Fali NEW
Jones Y ButtIndiaAmy Elsner NEW
Sinclair V MaletAustraliaElwin Sharvill NEW
Aditya A GillianGermanyAmy Elsner PROPOSAL
Maria M ButtRussiaIoni Bowcher NEGOTIATION
Claire I WieserGermanyElwin Sharvill UNQUALIFIED
Faith X SaylorsAustraliaBernardo Dominic QUALIFIED
Octavia Y MaletItalyAsiya Javayant RENEWAL
Antonio B CaldareraItalyAsiya Javayant RENEWAL
Sinclair N GarufiArgentinaAmy Elsner RENEWAL
Mayumi V StensethFranceOnyama Limba NEGOTIATION
Mujtaba Z WaycottArgentinaIvan Magalhaes NEW
Kadeem C VenereGermanyAnna Fali 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>