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
Isabel N DoeArgentinaIoni Bowcher NEW
Emily K MorascaCanadaAmy Elsner QUALIFIED
Salvatore K AlbaresGermanyAsiya Javayant RENEWAL
Greenwood P FollerUnited KingdomAnna Fali NEW
Ashley O StockhamCanadaIoni Bowcher NEW
Kadeem W SlusarskiCanadaElwin Sharvill NEW
Johnson D StensethItalyElwin Sharvill PROPOSAL
Maria I ButtRussiaXuxue Feng NEW
Juan P GlickAustraliaIvan Magalhaes RENEWAL
Nicolas I KolmetzUnited KingdomStephen Shaw RENEWAL
Aruna B WaycottUnited KingdomBernardo Dominic NEW
Deepesh R StockhamFranceElwin Sharvill QUALIFIED
Maisha J IturbideIndiaOnyama Limba PROPOSAL
Kadeem J SlusarskiSpainIoni Bowcher UNQUALIFIED
Smith F ShinkoFranceXuxue Feng RENEWAL
Smith E PerinArgentinaElwin Sharvill PROPOSAL
Maria B StensethSpainXuxue Feng RENEWAL
Darci N MaletGermanyBernardo Dominic NEW
Adams I GlickGermanyAmy Elsner RENEWAL
Sinclair A MaletSpainIvan Magalhaes UNQUALIFIED
Darci Y RulapaughSpainAsiya Javayant NEW
Cody A OldroydGermanyElwin Sharvill QUALIFIED
Aditya T StockhamRussiaOnyama Limba RENEWAL
Wickens B GarufiItalyAmy Elsner RENEWAL
Jones O MacleadFranceAmy Elsner RENEWAL
Clifford F BowleyJapanIvan Magalhaes NEGOTIATION
Maisha G TollnerIndiaAsiya Javayant RENEWAL
David Z NickaUnited KingdomBernardo Dominic QUALIFIED
Wickens V FlosiBrazilStephen Shaw QUALIFIED
Greenwood S NickaItalyIoni Bowcher RENEWAL
Smith Z GarufiSpainIoni Bowcher NEGOTIATION
Ricardo T NestleJapanIoni Bowcher RENEWAL
Clifford B ShinkoArgentinaIvan Magalhaes NEW
Faith U GarufiIndiaXuxue Feng RENEWAL
James I RutaArgentinaAmy Elsner PROPOSAL
Sinclair E BriddickJapanAsiya Javayant UNQUALIFIED
Claire A NickaFranceXuxue Feng QUALIFIED
Costa S ButtItalyAmy Elsner UNQUALIFIED
Julie Y GarufiBrazilAsiya Javayant NEGOTIATION
Juan R WaycottAustraliaIvan Magalhaes QUALIFIED
Mujtaba Y RutaAustraliaAsiya Javayant NEW
Aditya U NestleAustraliaBernardo Dominic UNQUALIFIED
Morrow P GauchoFranceStephen Shaw RENEWAL
Misaki V GauchoFranceOnyama Limba NEGOTIATION
Rodrigues T SergiGermanyStephen Shaw NEGOTIATION
Darci A RimArgentinaBernardo Dominic QUALIFIED
Aditya D FollerAustraliaAnna Fali QUALIFIED
Deepesh M SchemmerSpainAnna Fali PROPOSAL
Darci Y RutaGermanyOnyama Limba RENEWAL
Nicolas U NickaIndiaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Isabel F KuskoAustraliaAnna Fali QUALIFIED
Emily B GarufiArgentinaStephen Shaw PROPOSAL
Jefferson A PaprockiUnited KingdomIvan Magalhaes QUALIFIED
Juan K SergiAustraliaElwin Sharvill RENEWAL
Leja S GauchoArgentinaIvan Magalhaes UNQUALIFIED
Mayumi G FerenczSpainAmy Elsner NEGOTIATION
Claire F SergiSpainOnyama Limba NEW
Kaitlin O WieserBrazilAsiya Javayant PROPOSAL
Jeanfrancois F FerenczJapanIoni Bowcher UNQUALIFIED
Aditya G OstroskyFranceAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci I OstroskyJapan2026-10-31Chemel, James L Cpa UNQUALIFIED85Anna Fali
1001Jeanfrancois I DoeIndia2026-10-24Truhlar And Truhlar Attys PROPOSAL93Onyama Limba
1002Tony R StensethBrazil2026-10-10Morlong Associates NEW72Bernardo Dominic
1003Mujtaba M KuskoBrazil2026-10-12Rousseaux, Michael Esq NEW36Elwin Sharvill
1004Ashley Z FollerGermany2026-11-06Dorl, James J Esq NEGOTIATION25Stephen Shaw
1005Julie S RoysterItaly2026-10-25Truhlar And Truhlar Attys UNQUALIFIED70Amy Elsner
1006Mayumi X ChuiArgentina2026-10-13Rousseaux, Michael Esq RENEWAL41Bernardo Dominic
1007David W SaylorsBrazil2026-10-26Truhlar And Truhlar Attys NEW9Anna Fali
1008Murillo Q WieserItaly2026-10-21Benton, John B Jr PROPOSAL24Onyama Limba
1009Silvio L MorascaCanada2026-10-16Feltz Printing Service RENEWAL73Stephen Shaw
1010Ricardo Q GillianCanada2026-10-29Benton, John B Jr RENEWAL29Bernardo Dominic
1011Clifford Q RulapaughJapan2026-10-18Buckley Miller Wright NEW90Ioni Bowcher
1012Arvin U VocelkaRussia2026-10-12Chemel, James L Cpa NEW85Ivan Magalhaes
1013Leon D FerenczUnited Kingdom2026-11-02Chanay, Jeffrey A Esq QUALIFIED71Elwin Sharvill
1014Alejandro G GarufiJapan2026-11-05Truhlar And Truhlar Attys QUALIFIED46Xuxue Feng
1015Clifford I VocelkaFrance2026-10-22Chemel, James L Cpa PROPOSAL76Stephen Shaw
1016Mayumi E WhobreyFrance2026-10-09Dorl, James J Esq QUALIFIED25Anna Fali
1017Cody D OstroskyAustralia2026-10-31Dorl, James J Esq NEGOTIATION17Anna Fali
1018Nicolas V SchemmerAustralia2026-10-30Truhlar And Truhlar Attys RENEWAL7Bernardo Dominic
1019David X StensethCanada2026-10-10Morlong Associates QUALIFIED4Asiya Javayant
1020Wickens W SlusarskiUnited Kingdom2026-10-27Feiner Bros NEGOTIATION52Anna Fali
1021Julie I SaylorsRussia2026-10-21Chapman, Ross E Esq RENEWAL49Bernardo Dominic
1022Jefferson S InouyeFrance2026-10-17Chanay, Jeffrey A Esq QUALIFIED6Asiya Javayant
1023Maria X FollerUnited Kingdom2026-10-19Truhlar And Truhlar Attys UNQUALIFIED68Xuxue Feng
1024Mayumi T StockhamArgentina2026-10-19Chapman, Ross E Esq RENEWAL84Bernardo Dominic
1025James D SchemmerItaly2026-10-10Truhlar And Truhlar Attys NEW60Xuxue Feng
1026Antonio Z RimGermany2026-10-11Chanay, Jeffrey A Esq QUALIFIED74Xuxue Feng
1027Misaki B IturbideAustralia2026-10-28Feiner Bros NEGOTIATION62Onyama Limba
1028Greenwood A VocelkaSpain2026-11-04Printing Dimensions RENEWAL22Bernardo Dominic
1029Morrow F ChuiAustralia2026-10-11Printing Dimensions NEW17Bernardo Dominic
1030Antonio G TollnerJapan2026-10-11Chemel, James L Cpa QUALIFIED37Stephen Shaw
1031Mayumi I StensethIndia2026-10-14Printing Dimensions PROPOSAL29Xuxue Feng
1032Juan U RimUnited Kingdom2026-10-18Printing Dimensions NEGOTIATION67Onyama Limba
1033Tony W PerinSpain2026-10-25Feltz Printing Service NEGOTIATION65Bernardo Dominic
1034Julie P WieserAustralia2026-11-03Morlong Associates NEGOTIATION8Anna Fali
1035Misaki N BriddickUnited Kingdom2026-10-25Commercial Press QUALIFIED83Xuxue Feng
1036Cody X DarakjyCanada2026-10-23Chanay, Jeffrey A Esq QUALIFIED48Stephen Shaw
1037Ivar L VocelkaFrance2026-10-30Buckley Miller Wright PROPOSAL90Ioni Bowcher
1038Octavia T ButtFrance2026-10-27Feltz Printing Service PROPOSAL75Onyama Limba
1039Clifford C CaudyAustralia2026-10-11Printing Dimensions UNQUALIFIED10Elwin Sharvill
1040Leon H StensethRussia2026-10-08Benton, John B Jr QUALIFIED69Anna Fali
1041Julie E DarakjyAustralia2026-10-30Rangoni Of Florence RENEWAL65Asiya Javayant
1042Leja V PaprockiSpain2026-10-08Printing Dimensions UNQUALIFIED13Ivan Magalhaes
1043Aditya K PoquetteFrance2026-11-05Feiner Bros QUALIFIED90Anna Fali
1044Isabel K GillianBrazil2026-10-11Printing Dimensions RENEWAL60Ioni Bowcher
1045Kaitlin S PaprockiSpain2026-11-01Printing Dimensions NEW85Asiya Javayant
1046Deepesh G StockhamItaly2026-10-10Dorl, James J Esq PROPOSAL94Bernardo Dominic
1047Stacey E RimUnited Kingdom2026-10-14Rangoni Of Florence PROPOSAL49Elwin Sharvill
1048Darci Z DoeCanada2026-10-19Rangoni Of Florence PROPOSAL24Bernardo Dominic
1049Morrow R BriddickFrance2026-10-27Dorl, James J Esq RENEWAL59Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Tony C PerinBrazilStephen Shaw QUALIFIED
Ricardo W SaylorsRussiaIvan Magalhaes RENEWAL
Jennifer M StockhamArgentinaIoni Bowcher RENEWAL
Ricardo N WieserArgentinaElwin Sharvill UNQUALIFIED
Stacey M BowleyUnited KingdomIvan Magalhaes QUALIFIED
Misaki N IturbideJapanElwin Sharvill UNQUALIFIED
Darci B MorascaAustraliaElwin Sharvill UNQUALIFIED
Munro K GlickUnited KingdomAsiya Javayant NEGOTIATION
Smith A IturbideCanadaXuxue Feng RENEWAL
Aditya E CaudySpainAmy Elsner NEW
Leon D WieserIndiaOnyama Limba QUALIFIED
Costa F RulapaughBrazilBernardo Dominic UNQUALIFIED
Johnson M VenereJapanAsiya Javayant NEW
Jones H StensethFranceOnyama Limba NEGOTIATION
Silvio L KuskoBrazilIoni Bowcher UNQUALIFIED
Tony G ButtGermanyXuxue Feng PROPOSAL
Sinclair U FerenczCanadaIoni Bowcher RENEWAL
Leja T DilliardSpainOnyama Limba UNQUALIFIED
Francesco M RoysterIndiaIvan Magalhaes NEW
Kadeem V RoysterAustraliaIoni Bowcher PROPOSAL
Greenwood T SergiBrazilXuxue Feng NEW
Ivar B RutaUnited KingdomAmy Elsner QUALIFIED
Leon Z FlosiRussiaXuxue Feng NEGOTIATION
Octavia J FlosiIndiaIoni Bowcher UNQUALIFIED
Sinclair T RimItalyElwin Sharvill UNQUALIFIED
Kaitlin N DilliardAustraliaAnna Fali NEGOTIATION
Costa N GillianJapanIvan Magalhaes NEW
Stacey O CaldareraUnited KingdomBernardo Dominic PROPOSAL
Smith R OldroydArgentinaIoni Bowcher RENEWAL
Jennifer A DarakjyJapanBernardo Dominic PROPOSAL
Isabel J ShinkoSpainElwin Sharvill QUALIFIED
Aika B GlickIndiaElwin Sharvill QUALIFIED
Julie F SchemmerArgentinaStephen Shaw PROPOSAL
Costa F FollerBrazilBernardo Dominic NEGOTIATION
Aika X WieserJapanBernardo Dominic QUALIFIED
Ivar Z KolmetzGermanyBernardo Dominic QUALIFIED
Aditya O ChuiGermanyStephen Shaw NEGOTIATION
Maria N PerinCanadaAmy Elsner NEGOTIATION
Aruna P ButtRussiaAsiya Javayant NEW
Francesco F GarufiFranceElwin Sharvill UNQUALIFIED
Aika J VenereIndiaXuxue Feng UNQUALIFIED
Mujtaba G SchemmerItalyOnyama Limba NEGOTIATION
Morrow I KuskoAustraliaIoni Bowcher NEW
Aika W GauchoJapanAsiya Javayant NEGOTIATION
Aditya L OstroskyAustraliaIoni Bowcher PROPOSAL
Misaki E VenereRussiaAmy Elsner UNQUALIFIED
Alejandro G TollnerItalyAnna Fali NEGOTIATION
Rodrigues H ChuiRussiaAnna Fali RENEWAL
Aruna S DilliardJapanIoni Bowcher NEW
Murillo N PaprockiFranceBernardo Dominic NEGOTIATION
Frozen Columns
Name
Octavia F Saylors
Salvatore J Briddick
Wickens A Doe
Stacey Z Darakjy
James F Ferencz
Jeanfrancois A Ruta
Julie M Royster
Ricardo C Iturbide
Juan E Bowley
Johnson B Saylors
Jones M Tollner
Juan X Ostrosky
Clifford N Malet
Leon Y Kusko
Deepesh S Maclead
Juan I Saylors
Arvin T Shinko
Isabel Q Venere
James P Doe
Greenwood U Doe
Mujtaba C Stenseth
Isabel S Royster
Smith V Amigon
Juan G Caudy
Alejandro V Oldroyd
Aika M Bolognia
Juan A Schemmer
Izzy C Waycott
Ricardo K Kolmetz
Arvin M Vocelka
Johnson B Albares
Rodrigues K Garufi
Clifford O Stockham
Maria J Garufi
Kaitlin X Albares
Rodrigues K Shinko
Clifford E Butt
Kaitlin I Ferencz
Greenwood W Iturbide
Johnson D Sergi
Maisha P Figeroa
Sinclair I Amigon
Maria K Glick
Alejandro G Doe
Izzy B Ferencz
Maria O Shinko
Salvatore U Foller
James T Bolognia
Smith O Gillian
Smith U Campain
IdCountryDate
1000Japan2026-10-23
1001Russia2026-11-04
1002Canada2026-10-10
1003India2026-10-31
1004France2026-11-01
1005Spain2026-10-26
1006Japan2026-10-20
1007Argentina2026-11-02
1008Spain2026-10-25
1009Spain2026-10-11
1010Spain2026-11-05
1011Brazil2026-10-18
1012Canada2026-10-28
1013Italy2026-11-03
1014Russia2026-11-04
1015Australia2026-11-02
1016Australia2026-11-02
1017India2026-10-26
1018United Kingdom2026-10-25
1019Germany2026-10-28
1020Australia2026-10-23
1021Italy2026-11-01
1022United Kingdom2026-10-09
1023Germany2026-10-29
1024Japan2026-10-18
1025Germany2026-10-18
1026India2026-10-14
1027Russia2026-11-03
1028India2026-10-30
1029France2026-11-04
1030United Kingdom2026-10-09
1031Spain2026-10-19
1032Spain2026-11-02
1033Italy2026-11-06
1034Australia2026-11-05
1035Canada2026-10-20
1036Germany2026-10-31
1037Brazil2026-10-16
1038France2026-10-23
1039Spain2026-10-09
1040United Kingdom2026-10-20
1041Japan2026-11-05
1042Argentina2026-10-11
1043Brazil2026-11-03
1044Germany2026-11-02
1045Italy2026-11-04
1046Argentina2026-10-24
1047Australia2026-10-09
1048France2026-10-20
1049Australia2026-10-21

On-Demand Data

NameIdCountryDate
Sinclair B Whobrey1000France2026-10-26
Maisha K Malet1001Russia2026-10-16
Claire S Bolognia1002Japan2026-10-15
Greenwood D Kolmetz1003France2026-10-14
Morrow F Foller1004France2026-10-24
Salvatore L Saylors1005Spain2026-11-02
Murillo W Malet1006France2026-11-05
Arvin Z Butt1007Brazil2026-10-18
Alejandro Q Waycott1008Spain2026-10-12
Aruna A Albares1009Germany2026-10-08
Leja W Ostrosky1010India2026-10-31
Tony P Wieser1011United Kingdom2026-10-27
Francesco Z Inouye1012Germany2026-10-20
Octavia I Whobrey1013Brazil2026-10-28
Francesco Z Malet1014Argentina2026-10-28
Misaki I Ruta1015Argentina2026-10-14
Jefferson N Flosi1016Canada2026-10-30
Kadeem V Malet1017Brazil2026-10-18
Darci Q Waycott1018India2026-10-16
Salvatore P Dilliard1019Germany2026-10-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues H MaletFranceElwin Sharvill NEGOTIATION
Cody U StockhamCanadaIvan Magalhaes NEGOTIATION
Clifford F SchemmerGermanyStephen Shaw NEGOTIATION
David S FlosiAustraliaXuxue Feng UNQUALIFIED
David X TollnerCanadaBernardo Dominic NEGOTIATION
Claire H ChuiFranceOnyama Limba RENEWAL
Leon Y BologniaItalyElwin Sharvill RENEWAL
Stacey M WieserIndiaIvan Magalhaes PROPOSAL
Arvin V WaycottGermanyIvan Magalhaes RENEWAL
Greenwood J IturbideGermanyXuxue Feng UNQUALIFIED
Johnson Z FerenczRussiaAsiya Javayant UNQUALIFIED
Rodrigues J SlusarskiAustraliaBernardo Dominic NEGOTIATION
Jennifer B PaprockiBrazilAnna Fali NEW
Maisha N VenereCanadaIvan Magalhaes PROPOSAL
Murillo R GarufiAustraliaAnna Fali NEGOTIATION
Alejandro Y ShinkoBrazilXuxue Feng NEW
Mujtaba S AmigonCanadaAnna Fali NEW
Faith H FollerFranceXuxue Feng QUALIFIED
Mayumi Q CaudySpainIvan Magalhaes UNQUALIFIED
Isabel Q MaletCanadaAmy Elsner QUALIFIED
Nicolas T MarrierRussiaStephen Shaw QUALIFIED
Alejandro B StockhamIndiaIvan Magalhaes NEGOTIATION
Darci D GauchoJapanXuxue Feng NEGOTIATION
Darci Q GauchoAustraliaOnyama Limba RENEWAL
Ricardo U FollerRussiaStephen Shaw NEGOTIATION
Mayumi Z GillianAustraliaOnyama Limba NEGOTIATION
Cody T RimJapanOnyama Limba NEGOTIATION
Emily X OldroydUnited KingdomAnna Fali NEW
Aruna T VenereBrazilAnna Fali NEW
Aditya V RulapaughSpainAnna Fali RENEWAL
Clifford Z DarakjyJapanAmy Elsner PROPOSAL
Stacey C PerinIndiaElwin Sharvill NEGOTIATION
Faith F OldroydJapanIoni Bowcher NEW
Francesco L CampainCanadaIvan Magalhaes RENEWAL
Faith J PoquetteSpainBernardo Dominic PROPOSAL
Salvatore L CaldareraItalyAsiya Javayant QUALIFIED
Leon T MorascaFranceAnna Fali NEW
Jeanfrancois X MarrierFranceIvan Magalhaes NEGOTIATION
Nicolas G DilliardAustraliaAsiya Javayant UNQUALIFIED
Munro C RutaBrazilIvan Magalhaes 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>