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
Clifford K SlusarskiBrazilIvan Magalhaes NEW
Claire L MarrierCanadaOnyama Limba QUALIFIED
Clifford I RimJapanOnyama Limba NEW
James K GlickJapanBernardo Dominic RENEWAL
Maisha J StockhamArgentinaBernardo Dominic PROPOSAL
Kaitlin S NestleAustraliaStephen Shaw UNQUALIFIED
Mujtaba E SchemmerSpainIoni Bowcher UNQUALIFIED
Aruna X NestleUnited KingdomAsiya Javayant UNQUALIFIED
Alejandro R FerenczBrazilAnna Fali PROPOSAL
James A OstroskySpainIvan Magalhaes NEW
Chavez J BriddickArgentinaElwin Sharvill NEGOTIATION
Arvin Y AlbaresBrazilAsiya Javayant QUALIFIED
Morrow V MacleadRussiaStephen Shaw NEGOTIATION
David R SlusarskiGermanyAsiya Javayant NEGOTIATION
Mayumi M PoquetteGermanyOnyama Limba NEGOTIATION
Greenwood U PaprockiItalyIvan Magalhaes NEW
Sinclair Y PoquetteUnited KingdomStephen Shaw NEW
Alejandro W WieserRussiaOnyama Limba QUALIFIED
Francesco I CaudyFranceIvan Magalhaes RENEWAL
Munro J NickaFranceOnyama Limba RENEWAL
Aruna I BowleyGermanyAmy Elsner UNQUALIFIED
Tony T BologniaSpainBernardo Dominic UNQUALIFIED
Leja G DoeUnited KingdomStephen Shaw PROPOSAL
Sinclair Z FlosiItalyOnyama Limba UNQUALIFIED
Octavia Y NestleArgentinaBernardo Dominic QUALIFIED
Ricardo S FerenczJapanAsiya Javayant RENEWAL
Stacey S InouyeBrazilOnyama Limba PROPOSAL
Julie O FerenczGermanyBernardo Dominic UNQUALIFIED
Juan C AlbaresItalyStephen Shaw RENEWAL
Isabel B BriddickItalyAnna Fali NEW
Alejandro I RutaSpainIvan Magalhaes NEGOTIATION
Faith N CaudyAustraliaAsiya Javayant NEW
Mayumi U RulapaughBrazilXuxue Feng PROPOSAL
Salvatore W FlosiGermanyIvan Magalhaes NEGOTIATION
Julie J DarakjyArgentinaAsiya Javayant PROPOSAL
Costa P VenereFranceOnyama Limba NEGOTIATION
Claire J SergiJapanXuxue Feng PROPOSAL
Misaki V PoquetteUnited KingdomAmy Elsner NEW
Stacey L AmigonGermanyElwin Sharvill NEW
Emily N GlickCanadaOnyama Limba QUALIFIED
Smith Q GlickItalyIvan Magalhaes PROPOSAL
Mayumi I CaudyBrazilStephen Shaw QUALIFIED
Mayumi G MaletCanadaAnna Fali PROPOSAL
Wickens Q VenereItalyElwin Sharvill PROPOSAL
Costa K GarufiFranceAmy Elsner RENEWAL
Maisha W StockhamJapanIvan Magalhaes NEGOTIATION
Morrow J MarrierSpainStephen Shaw QUALIFIED
Aika H ShinkoRussiaStephen Shaw PROPOSAL
Nicolas G GauchoAustraliaAmy Elsner RENEWAL
Munro V PaprockiFranceXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Munro L OstroskyIndiaAsiya Javayant PROPOSAL
Isabel L GlickGermanyStephen Shaw NEW
Tony P OstroskyAustraliaOnyama Limba NEGOTIATION
Arvin P DoeBrazilAmy Elsner QUALIFIED
Jones T NickaItalyAsiya Javayant UNQUALIFIED
Leja B VenereBrazilOnyama Limba UNQUALIFIED
Darci I NestleItalyOnyama Limba UNQUALIFIED
Murillo R RutaItalyOnyama Limba QUALIFIED
Aditya Q DarakjyGermanyAsiya Javayant NEGOTIATION
David Z SchemmerRussiaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow Q AmigonAustralia2026-10-02King, Christopher A Esq UNQUALIFIED28Anna Fali
1001Chavez B KuskoItaly2026-09-03Chapman, Ross E Esq RENEWAL50Onyama Limba
1002Octavia E MorascaRussia2026-09-24Chanay, Jeffrey A Esq NEW13Asiya Javayant
1003Maisha Z AmigonUnited Kingdom2026-09-13Rousseaux, Michael Esq UNQUALIFIED56Onyama Limba
1004Sinclair V AlbaresArgentina2026-09-08Morlong Associates PROPOSAL57Onyama Limba
1005Ivar S FigeroaBrazil2026-09-22Commercial Press NEW50Onyama Limba
1006Julie Q PerinAustralia2026-09-16Commercial Press RENEWAL80Xuxue Feng
1007Munro U MarrierCanada2026-09-06King, Christopher A Esq QUALIFIED40Onyama Limba
1008Faith A RulapaughAustralia2026-10-01King, Christopher A Esq UNQUALIFIED35Ioni Bowcher
1009Octavia B RulapaughArgentina2026-09-25Feltz Printing Service QUALIFIED32Stephen Shaw
1010Murillo Z PerinCanada2026-09-25Feltz Printing Service QUALIFIED46Bernardo Dominic
1011Izzy Z NestleJapan2026-09-14King, Christopher A Esq RENEWAL54Elwin Sharvill
1012Emily F SaylorsSpain2026-09-18Feltz Printing Service NEGOTIATION7Stephen Shaw
1013Mujtaba I RimIndia2026-09-03Printing Dimensions NEGOTIATION27Amy Elsner
1014Silvio A RoysterJapan2026-09-08Buckley Miller Wright UNQUALIFIED14Onyama Limba
1015Ivar Z DarakjyCanada2026-09-14Printing Dimensions PROPOSAL24Ivan Magalhaes
1016Stacey O SergiFrance2026-09-13Rangoni Of Florence NEW43Amy Elsner
1017Juan W IturbideSpain2026-09-03Rangoni Of Florence NEW7Onyama Limba
1018Adams U FigeroaRussia2026-09-23Morlong Associates RENEWAL41Xuxue Feng
1019Antonio D SlusarskiJapan2026-09-12Morlong Associates RENEWAL6Bernardo Dominic
1020Jennifer A ShinkoBrazil2026-10-01Rousseaux, Michael Esq NEGOTIATION10Amy Elsner
1021Mayumi M ChuiItaly2026-09-03Morlong Associates UNQUALIFIED73Stephen Shaw
1022Morrow X GillianItaly2026-09-17Chanay, Jeffrey A Esq NEGOTIATION98Asiya Javayant
1023Cody O RoysterRussia2026-09-09Commercial Press NEW42Ivan Magalhaes
1024Ashley H FerenczUnited Kingdom2026-09-08Chemel, James L Cpa UNQUALIFIED94Amy Elsner
1025Arvin F MacleadFrance2026-09-23Feiner Bros RENEWAL95Onyama Limba
1026Ivar K AlbaresAustralia2026-09-16Benton, John B Jr NEW4Asiya Javayant
1027Ricardo G KolmetzUnited Kingdom2026-09-20Chanay, Jeffrey A Esq PROPOSAL43Ivan Magalhaes
1028Greenwood X PaprockiBrazil2026-09-27Rangoni Of Florence PROPOSAL91Amy Elsner
1029Alejandro S SergiFrance2026-09-03Commercial Press RENEWAL89Asiya Javayant
1030Juan D StensethCanada2026-09-06Printing Dimensions NEW57Amy Elsner
1031Isabel O MarrierBrazil2026-09-08Chapman, Ross E Esq QUALIFIED95Xuxue Feng
1032Murillo A MaletArgentina2026-09-25Printing Dimensions UNQUALIFIED81Xuxue Feng
1033Ivar T SchemmerFrance2026-10-01King, Christopher A Esq NEGOTIATION0Onyama Limba
1034Isabel B MacleadJapan2026-09-14Commercial Press RENEWAL27Ivan Magalhaes
1035Rodrigues C DarakjyArgentina2026-09-20Buckley Miller Wright NEW26Elwin Sharvill
1036Claire Q DilliardJapan2026-09-27King, Christopher A Esq QUALIFIED18Onyama Limba
1037James E VocelkaArgentina2026-09-16Feiner Bros NEGOTIATION21Anna Fali
1038Francesco Y StockhamArgentina2026-09-06Chanay, Jeffrey A Esq UNQUALIFIED50Stephen Shaw
1039Morrow A AmigonAustralia2026-09-09Chapman, Ross E Esq NEW0Asiya Javayant
1040Nicolas M GarufiCanada2026-09-24Feltz Printing Service QUALIFIED67Ivan Magalhaes
1041James J PerinBrazil2026-09-09King, Christopher A Esq UNQUALIFIED99Amy Elsner
1042Maisha L BowleyGermany2026-09-20King, Christopher A Esq NEGOTIATION48Asiya Javayant
1043Juan X VocelkaGermany2026-09-16King, Christopher A Esq NEGOTIATION24Onyama Limba
1044Alejandro O CaldareraItaly2026-09-12Benton, John B Jr RENEWAL68Xuxue Feng
1045Costa T CaudyJapan2026-09-24Benton, John B Jr NEGOTIATION15Xuxue Feng
1046Clifford I TollnerGermany2026-09-25Dorl, James J Esq NEW96Stephen Shaw
1047Mayumi U SaylorsArgentina2026-09-16Morlong Associates NEGOTIATION74Asiya Javayant
1048Francesco O KolmetzItaly2026-09-17Feiner Bros NEGOTIATION72Xuxue Feng
1049Chavez X RutaArgentina2026-09-27Feiner Bros NEGOTIATION18Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aditya R MaletJapanAsiya Javayant NEW
Izzy L MarrierItalyOnyama Limba NEGOTIATION
Isabel I RimGermanyXuxue Feng RENEWAL
Misaki A NickaItalyOnyama Limba RENEWAL
Maisha D DilliardItalyOnyama Limba NEW
Izzy D MorascaSpainBernardo Dominic QUALIFIED
Faith F FigeroaAustraliaIoni Bowcher UNQUALIFIED
Maisha R NestleBrazilAnna Fali NEW
Deepesh Y WaycottCanadaIvan Magalhaes PROPOSAL
Rodrigues J MacleadAustraliaAnna Fali QUALIFIED
Deepesh L ChuiCanadaStephen Shaw UNQUALIFIED
Misaki R VenereFranceElwin Sharvill UNQUALIFIED
Juan P SlusarskiJapanIvan Magalhaes RENEWAL
Francesco Y MaletCanadaAnna Fali QUALIFIED
Ricardo S RutaSpainAmy Elsner QUALIFIED
Mayumi E VenereAustraliaBernardo Dominic NEGOTIATION
Chavez J NickaBrazilXuxue Feng QUALIFIED
Smith G NickaRussiaAmy Elsner UNQUALIFIED
James H AlbaresUnited KingdomStephen Shaw UNQUALIFIED
Francesco G GarufiAustraliaElwin Sharvill QUALIFIED
Adams E SlusarskiJapanAmy Elsner RENEWAL
Francesco G AlbaresRussiaBernardo Dominic NEGOTIATION
Jeanfrancois P AlbaresBrazilOnyama Limba UNQUALIFIED
Isabel F PoquetteSpainBernardo Dominic NEW
Izzy X AmigonJapanAsiya Javayant UNQUALIFIED
Jeanfrancois I RoysterRussiaAmy Elsner UNQUALIFIED
Murillo T FlosiGermanyIoni Bowcher RENEWAL
Jones L RimItalyXuxue Feng UNQUALIFIED
Aruna E StockhamAustraliaAsiya Javayant NEW
Nicolas R MacleadArgentinaOnyama Limba PROPOSAL
Stacey W VocelkaSpainStephen Shaw PROPOSAL
Alejandro E WieserJapanBernardo Dominic NEGOTIATION
Leon U MaletFranceAnna Fali RENEWAL
Kadeem O GauchoRussiaBernardo Dominic PROPOSAL
Faith I IturbideAustraliaAmy Elsner QUALIFIED
Izzy J MarrierJapanIoni Bowcher PROPOSAL
Greenwood S DarakjyIndiaStephen Shaw NEW
Smith P MorascaArgentinaAnna Fali RENEWAL
Izzy P WhobreyArgentinaIvan Magalhaes PROPOSAL
Rodrigues K RimCanadaXuxue Feng NEGOTIATION
Ivar Y BowleyRussiaIoni Bowcher NEGOTIATION
Salvatore S MacleadRussiaElwin Sharvill NEW
Stacey D CaldareraCanadaElwin Sharvill UNQUALIFIED
Jefferson P RoysterBrazilIoni Bowcher QUALIFIED
Morrow K CampainGermanyAmy Elsner QUALIFIED
Sinclair E MarrierItalyAsiya Javayant QUALIFIED
Greenwood A AmigonArgentinaIvan Magalhaes QUALIFIED
Smith N DarakjyUnited KingdomElwin Sharvill UNQUALIFIED
Maisha X ShinkoAustraliaAmy Elsner QUALIFIED
Leon U GlickUnited KingdomXuxue Feng UNQUALIFIED
Frozen Columns
Name
Ivar G Nicka
Greenwood J Bowley
Emily A Oldroyd
Clifford V Poquette
Maria Q Paprocki
Costa Y Vocelka
Misaki N Caldarera
Nicolas O Caldarera
Claire G Slusarski
Alejandro F Vocelka
Julie D Stockham
Arvin Z Vocelka
Octavia L Waycott
Munro C Stockham
Wickens B Waycott
Antonio Q Chui
Arvin S Tollner
Deepesh L Albares
Mujtaba L Paprocki
Kadeem D Rulapaugh
Aditya C Shinko
Arvin Y Vocelka
Isabel Z Schemmer
Leja N Stockham
Misaki V Ruta
Silvio J Wieser
Johnson J Campain
Aditya C Campain
Jones Z Perin
Morrow W Caudy
Ricardo U Gillian
Darci X Iturbide
Leja R Ostrosky
Isabel T Paprocki
Cody V Iturbide
Kaitlin O Ferencz
Stacey Z Maclead
Octavia S Perin
Sinclair M Perin
Adams D Briddick
Smith T Paprocki
Leja A Campain
Arvin N Waycott
Ashley M Maclead
David U Rulapaugh
Costa I Malet
Tony L Ferencz
Johnson Q Saylors
Maisha H Garufi
Salvatore L Vocelka
IdCountryDate
1000Argentina2026-09-13
1001Spain2026-09-18
1002India2026-09-13
1003United Kingdom2026-09-16
1004Brazil2026-09-24
1005Italy2026-09-19
1006Russia2026-09-27
1007Australia2026-10-01
1008Germany2026-09-05
1009France2026-09-06
1010Italy2026-09-23
1011Canada2026-09-14
1012India2026-09-19
1013United Kingdom2026-09-03
1014Russia2026-09-29
1015Canada2026-09-20
1016Germany2026-09-22
1017United Kingdom2026-09-10
1018Australia2026-10-02
1019Germany2026-09-11
1020Spain2026-09-05
1021France2026-09-28
1022Spain2026-09-04
1023Japan2026-09-25
1024Japan2026-09-23
1025United Kingdom2026-09-13
1026Russia2026-09-06
1027India2026-09-17
1028Brazil2026-09-19
1029Brazil2026-10-02
1030United Kingdom2026-09-19
1031Japan2026-09-13
1032Argentina2026-09-22
1033Brazil2026-10-02
1034Germany2026-09-30
1035Russia2026-09-22
1036Brazil2026-09-29
1037Brazil2026-09-18
1038India2026-09-18
1039Germany2026-09-09
1040Canada2026-10-02
1041India2026-09-19
1042France2026-09-29
1043France2026-09-18
1044Canada2026-09-10
1045Canada2026-09-22
1046Brazil2026-09-15
1047Russia2026-09-05
1048Spain2026-10-02
1049Germany2026-09-09

On-Demand Data

NameIdCountryDate
Emily W Nicka1000India2026-10-02
Misaki S Iturbide1001Germany2026-09-19
Claire F Marrier1002United Kingdom2026-09-23
Wickens I Malet1003Germany2026-09-25
Greenwood F Waycott1004Argentina2026-09-24
Aruna K Shinko1005Argentina2026-09-15
Aruna E Figeroa1006Italy2026-09-09
Aditya P Stockham1007Germany2026-09-30
Ricardo D Inouye1008United Kingdom2026-09-23
Faith W Nicka1009Italy2026-09-11
Claire C Tollner1010Germany2026-09-05
Silvio O Darakjy1011Italy2026-09-15
Costa F Iturbide1012France2026-09-15
Aditya D Glick1013Spain2026-09-24
Costa U Maclead1014Brazil2026-09-17
Wickens O Glick1015France2026-09-22
Kaitlin O Doe1016Canada2026-09-22
Kaitlin P Kusko1017Germany2026-09-22
Leon N Amigon1018Spain2026-09-17
Silvio Y Ferencz1019Argentina2026-10-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo Z AmigonRussiaAsiya Javayant UNQUALIFIED
Deepesh I KolmetzCanadaXuxue Feng NEW
Ashley X BologniaBrazilElwin Sharvill RENEWAL
Aditya H StockhamSpainIvan Magalhaes PROPOSAL
Stacey H KolmetzRussiaAmy Elsner QUALIFIED
Mujtaba M ChuiSpainXuxue Feng QUALIFIED
Jeanfrancois M DoeBrazilIvan Magalhaes NEW
Deepesh O WhobreyArgentinaOnyama Limba UNQUALIFIED
Stacey Z TollnerFranceIvan Magalhaes PROPOSAL
Claire B OstroskyCanadaOnyama Limba RENEWAL
Izzy Y SergiSpainIvan Magalhaes NEW
Stacey G KolmetzBrazilXuxue Feng NEGOTIATION
Stacey O SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Izzy S StensethFranceAnna Fali NEW
Greenwood F SlusarskiGermanyAnna Fali QUALIFIED
Arvin P FlosiIndiaStephen Shaw RENEWAL
Arvin I TollnerRussiaOnyama Limba NEW
Morrow A StensethIndiaBernardo Dominic NEW
Ricardo G AmigonCanadaBernardo Dominic PROPOSAL
Wickens E FerenczCanadaAmy Elsner NEGOTIATION
Isabel A FlosiJapanIvan Magalhaes QUALIFIED
Alejandro D SlusarskiGermanyElwin Sharvill NEGOTIATION
Wickens H WieserFranceStephen Shaw QUALIFIED
David V DoeItalyAsiya Javayant QUALIFIED
Ivar U MaletGermanyAmy Elsner NEW
Juan V SchemmerFranceXuxue Feng NEGOTIATION
Johnson Z MaletUnited KingdomAmy Elsner QUALIFIED
Ivar H SergiSpainIvan Magalhaes QUALIFIED
Stacey X ShinkoJapanIvan Magalhaes RENEWAL
Jennifer D IturbideArgentinaAnna Fali QUALIFIED
Johnson J CaldareraGermanyIvan Magalhaes QUALIFIED
Juan P VenereIndiaAsiya Javayant NEGOTIATION
Smith K IturbideBrazilAsiya Javayant RENEWAL
Leja I WieserRussiaIoni Bowcher NEGOTIATION
Francesco C KolmetzItalyBernardo Dominic PROPOSAL
Clifford N SchemmerGermanyXuxue Feng UNQUALIFIED
Mujtaba X StockhamArgentinaStephen Shaw PROPOSAL
Emily B KuskoJapanElwin Sharvill NEGOTIATION
Sinclair U GillianItalyAmy Elsner RENEWAL
Nicolas M FerenczRussiaXuxue Feng PROPOSAL

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