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
Rodrigues Z MacleadAustraliaAsiya Javayant NEW
Leja Q MaletCanadaAnna Fali PROPOSAL
Maisha I BriddickFranceElwin Sharvill RENEWAL
Leon C WaycottArgentinaAmy Elsner RENEWAL
Juan S CampainUnited KingdomAmy Elsner RENEWAL
Murillo H SergiRussiaOnyama Limba UNQUALIFIED
Morrow T WieserRussiaAmy Elsner QUALIFIED
Maisha N MacleadUnited KingdomIoni Bowcher PROPOSAL
Maisha L DarakjyJapanAmy Elsner RENEWAL
Jones L GlickIndiaOnyama Limba RENEWAL
Antonio Q SlusarskiArgentinaAsiya Javayant PROPOSAL
Mujtaba M KuskoAustraliaAmy Elsner UNQUALIFIED
Rodrigues D KolmetzUnited KingdomAsiya Javayant UNQUALIFIED
Ivar V DarakjyAustraliaElwin Sharvill PROPOSAL
Izzy N SaylorsCanadaElwin Sharvill RENEWAL
Wickens G KuskoCanadaAmy Elsner NEGOTIATION
Nicolas M CaldareraAustraliaAnna Fali PROPOSAL
Nicolas B ChuiRussiaAmy Elsner UNQUALIFIED
Jeanfrancois Y WieserBrazilAsiya Javayant QUALIFIED
Octavia Q GlickArgentinaAsiya Javayant PROPOSAL
Wickens K WieserUnited KingdomOnyama Limba UNQUALIFIED
Antonio G FigeroaArgentinaIvan Magalhaes UNQUALIFIED
Misaki X DilliardGermanyAsiya Javayant PROPOSAL
Aruna M WieserIndiaAnna Fali UNQUALIFIED
Alejandro Y StockhamAustraliaIvan Magalhaes PROPOSAL
Jeanfrancois C MaletUnited KingdomIvan Magalhaes NEW
Morrow I WhobreyGermanyElwin Sharvill NEGOTIATION
Antonio W RulapaughCanadaIvan Magalhaes RENEWAL
Chavez P MarrierSpainIoni Bowcher UNQUALIFIED
Clifford P MacleadAustraliaIvan Magalhaes UNQUALIFIED
Aditya J GillianSpainAsiya Javayant UNQUALIFIED
Maisha W GauchoFranceElwin Sharvill NEW
Jeanfrancois I InouyeFranceStephen Shaw UNQUALIFIED
Faith A FerenczSpainElwin Sharvill NEGOTIATION
Sinclair Y FerenczGermanyAnna Fali QUALIFIED
Kaitlin D DilliardArgentinaXuxue Feng QUALIFIED
Tony M WieserItalyBernardo Dominic NEW
Greenwood N KuskoRussiaBernardo Dominic UNQUALIFIED
Alejandro M CaudyBrazilBernardo Dominic NEW
Costa U WieserCanadaAmy Elsner UNQUALIFIED
Leja S WieserCanadaStephen Shaw UNQUALIFIED
Chavez L FlosiCanadaElwin Sharvill NEW
Greenwood A DilliardRussiaXuxue Feng RENEWAL
Aditya P KolmetzArgentinaBernardo Dominic NEGOTIATION
Arvin G FigeroaArgentinaAmy Elsner RENEWAL
Munro L NickaIndiaIvan Magalhaes UNQUALIFIED
Jones U InouyeRussiaIvan Magalhaes PROPOSAL
Cody Y IturbideBrazilBernardo Dominic NEW
Tony Q GillianArgentinaStephen Shaw UNQUALIFIED
Alejandro H SergiRussiaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kadeem C AlbaresRussiaAnna Fali NEW
Darci K FollerBrazilElwin Sharvill UNQUALIFIED
Jefferson Q InouyeAustraliaAmy Elsner PROPOSAL
Jeanfrancois H KolmetzIndiaElwin Sharvill PROPOSAL
Francesco N WieserBrazilAnna Fali QUALIFIED
Julie A CampainAustraliaElwin Sharvill QUALIFIED
Arvin S GauchoBrazilOnyama Limba NEW
Claire C DarakjyItalyAsiya Javayant NEGOTIATION
Kaitlin E KolmetzRussiaIoni Bowcher PROPOSAL
Maisha L MorascaIndiaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo Z DilliardJapan2026-10-09Chapman, Ross E Esq RENEWAL63Elwin Sharvill
1001Mujtaba Z GauchoRussia2026-10-11Commercial Press NEGOTIATION54Ioni Bowcher
1002James E SaylorsCanada2026-09-26Feiner Bros NEGOTIATION77Elwin Sharvill
1003Ashley L CaudyFrance2026-09-28Feiner Bros QUALIFIED45Asiya Javayant
1004Francesco I FerenczSpain2026-10-04Feiner Bros NEGOTIATION62Asiya Javayant
1005Salvatore I ChuiRussia2026-09-26Commercial Press NEW15Xuxue Feng
1006Leja V DoeRussia2026-10-15Commercial Press NEW61Amy Elsner
1007Ricardo O RutaFrance2026-10-02Chanay, Jeffrey A Esq NEW30Ioni Bowcher
1008Clifford C MaletCanada2026-09-27Printing Dimensions RENEWAL31Xuxue Feng
1009Juan V SaylorsSpain2026-10-08Feltz Printing Service PROPOSAL72Xuxue Feng
1010Jones P RoysterUnited Kingdom2026-09-23Buckley Miller Wright PROPOSAL37Asiya Javayant
1011Mujtaba C VenereIndia2026-09-29Feiner Bros NEGOTIATION95Bernardo Dominic
1012Tony X FigeroaBrazil2026-09-25Feltz Printing Service UNQUALIFIED60Amy Elsner
1013Faith Z IturbideSpain2026-10-21Dorl, James J Esq RENEWAL43Bernardo Dominic
1014Wickens J GauchoJapan2026-09-30Chapman, Ross E Esq NEGOTIATION65Stephen Shaw
1015Mayumi W ShinkoAustralia2026-10-03Morlong Associates RENEWAL27Xuxue Feng
1016Costa X AlbaresRussia2026-10-04Commercial Press QUALIFIED93Ioni Bowcher
1017Stacey L AlbaresUnited Kingdom2026-09-26Chapman, Ross E Esq NEGOTIATION71Anna Fali
1018Greenwood Z SchemmerFrance2026-09-27Chapman, Ross E Esq UNQUALIFIED24Anna Fali
1019Leon O ShinkoGermany2026-10-18Rousseaux, Michael Esq NEW24Onyama Limba
1020Leja Y FollerJapan2026-10-02King, Christopher A Esq PROPOSAL81Elwin Sharvill
1021Mujtaba W SaylorsJapan2026-10-04King, Christopher A Esq NEW88Onyama Limba
1022Octavia P GlickFrance2026-10-12King, Christopher A Esq QUALIFIED11Ivan Magalhaes
1023Maria M FerenczArgentina2026-10-18Feltz Printing Service NEGOTIATION16Onyama Limba
1024Jones I BologniaJapan2026-10-15Feiner Bros RENEWAL97Bernardo Dominic
1025Clifford Y MorascaFrance2026-10-06Chemel, James L Cpa NEGOTIATION56Asiya Javayant
1026Rodrigues C OldroydIndia2026-09-25Benton, John B Jr RENEWAL60Ioni Bowcher
1027Antonio L FollerFrance2026-10-06Printing Dimensions PROPOSAL70Anna Fali
1028Silvio U DilliardUnited Kingdom2026-10-10Morlong Associates NEGOTIATION77Ivan Magalhaes
1029Alejandro V ShinkoIndia2026-10-09Morlong Associates UNQUALIFIED79Ivan Magalhaes
1030Misaki A WaycottRussia2026-10-21Truhlar And Truhlar Attys RENEWAL44Asiya Javayant
1031Stacey S GlickBrazil2026-09-23Feiner Bros UNQUALIFIED28Ivan Magalhaes
1032Smith G SlusarskiIndia2026-10-11Chanay, Jeffrey A Esq QUALIFIED9Xuxue Feng
1033Salvatore V GillianCanada2026-10-20Truhlar And Truhlar Attys QUALIFIED4Ivan Magalhaes
1034David L FigeroaCanada2026-10-20Chapman, Ross E Esq NEW86Asiya Javayant
1035Ivar T VenereGermany2026-10-10Rousseaux, Michael Esq NEGOTIATION57Ivan Magalhaes
1036Ivar E PoquetteCanada2026-10-08King, Christopher A Esq NEW45Ioni Bowcher
1037Adams C FigeroaGermany2026-10-15Chemel, James L Cpa RENEWAL78Amy Elsner
1038Darci C StensethIndia2026-10-12Rousseaux, Michael Esq RENEWAL57Stephen Shaw
1039Juan V BologniaJapan2026-10-03Chapman, Ross E Esq RENEWAL11Onyama Limba
1040Wickens N PaprockiBrazil2026-09-30Chanay, Jeffrey A Esq PROPOSAL14Ioni Bowcher
1041Kadeem G OldroydIndia2026-09-24King, Christopher A Esq PROPOSAL19Amy Elsner
1042Smith N CaldareraItaly2026-10-20Rousseaux, Michael Esq NEGOTIATION5Ivan Magalhaes
1043Izzy A FlosiSpain2026-10-08Chapman, Ross E Esq NEGOTIATION1Anna Fali
1044Isabel Y SchemmerSpain2026-09-25Chapman, Ross E Esq QUALIFIED55Stephen Shaw
1045Ricardo A KolmetzSpain2026-10-01Rousseaux, Michael Esq NEGOTIATION22Elwin Sharvill
1046Misaki S MaletIndia2026-09-24Feltz Printing Service NEW83Anna Fali
1047Faith R FerenczAustralia2026-10-02Feltz Printing Service NEW10Bernardo Dominic
1048Salvatore V ShinkoFrance2026-10-17Feltz Printing Service NEW25Bernardo Dominic
1049Johnson A RutaSpain2026-09-26Rousseaux, Michael Esq NEGOTIATION86Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Johnson M OldroydAustraliaAnna Fali QUALIFIED
Alejandro Y VocelkaSpainAnna Fali UNQUALIFIED
Maria Y SergiBrazilAsiya Javayant PROPOSAL
Ivar Q VocelkaBrazilAnna Fali RENEWAL
Maria A SchemmerCanadaAnna Fali UNQUALIFIED
Aruna G AmigonArgentinaIvan Magalhaes QUALIFIED
Jennifer P StensethCanadaAnna Fali UNQUALIFIED
Greenwood W KolmetzUnited KingdomStephen Shaw QUALIFIED
Morrow D IturbideGermanyXuxue Feng PROPOSAL
Leon S RulapaughIndiaAsiya Javayant PROPOSAL
Chavez F WaycottItalyIvan Magalhaes NEW
Ivar O DoeSpainElwin Sharvill RENEWAL
James D MaletGermanyIoni Bowcher NEW
Salvatore U GillianIndiaBernardo Dominic QUALIFIED
Wickens I KolmetzIndiaStephen Shaw QUALIFIED
Jefferson S WhobreyFranceAsiya Javayant NEGOTIATION
Jefferson T PoquetteGermanyBernardo Dominic UNQUALIFIED
Aika A IturbideItalyOnyama Limba RENEWAL
Morrow E BologniaBrazilXuxue Feng NEW
Sinclair H StensethArgentinaXuxue Feng RENEWAL
Clifford A CampainArgentinaXuxue Feng PROPOSAL
Wickens G SergiArgentinaAnna Fali UNQUALIFIED
Jennifer U GillianJapanXuxue Feng PROPOSAL
Chavez L PerinCanadaStephen Shaw UNQUALIFIED
Salvatore V KuskoAustraliaStephen Shaw QUALIFIED
Izzy X RimBrazilStephen Shaw NEGOTIATION
Isabel O RimAustraliaAnna Fali NEGOTIATION
Izzy O TollnerRussiaBernardo Dominic PROPOSAL
Jeanfrancois K MaletGermanyStephen Shaw QUALIFIED
Jefferson L VenereCanadaAmy Elsner QUALIFIED
Smith S CaudyArgentinaIoni Bowcher NEW
Munro S AlbaresFranceAnna Fali NEGOTIATION
Maisha G OldroydJapanXuxue Feng PROPOSAL
Mayumi J RutaCanadaIoni Bowcher RENEWAL
Maisha X SaylorsArgentinaIvan Magalhaes PROPOSAL
Octavia U RimCanadaStephen Shaw PROPOSAL
Kaitlin W CaldareraSpainElwin Sharvill PROPOSAL
Octavia Q WieserBrazilOnyama Limba UNQUALIFIED
Jefferson Z BowleyItalyOnyama Limba UNQUALIFIED
Aika Y AmigonJapanIoni Bowcher PROPOSAL
Claire Y VenereSpainIvan Magalhaes NEW
Smith X CaldareraSpainStephen Shaw UNQUALIFIED
Leon M PaprockiSpainIvan Magalhaes NEW
Smith Z CaldareraFranceElwin Sharvill QUALIFIED
Maria D GauchoItalyXuxue Feng QUALIFIED
Smith E RimCanadaXuxue Feng NEGOTIATION
Murillo H SlusarskiUnited KingdomStephen Shaw UNQUALIFIED
Sinclair O MacleadIndiaAmy Elsner QUALIFIED
Mujtaba W NickaJapanIvan Magalhaes NEW
Smith V InouyeGermanyStephen Shaw PROPOSAL
Frozen Columns
Name
Greenwood E Malet
Leon R Stockham
Sinclair S Amigon
Claire Q Figeroa
James Y Gaucho
Smith C Ferencz
Faith Q Amigon
Silvio X Figeroa
Isabel B Briddick
Jones I Gillian
Cody X Inouye
Smith E Wieser
Jefferson X Kolmetz
Francesco D Bowley
Adams G Ruta
Nicolas P Shinko
Murillo W Doe
Maisha E Vocelka
Faith V Kolmetz
Costa P Malet
Aruna Q Kusko
Ivar A Whobrey
Alejandro Q Morasca
Rodrigues X Shinko
Kadeem T Wieser
Deepesh O Kusko
Salvatore T Iturbide
Emily T Iturbide
Maisha R Campain
Mayumi K Gillian
Jeanfrancois B Caldarera
Cody A Iturbide
Jennifer R Stenseth
Maria Z Maclead
Ashley X Garufi
Emily X Vocelka
Rodrigues E Garufi
Mujtaba Y Inouye
Wickens T Vocelka
Clifford E Ruta
Ricardo Q Caldarera
Tony C Butt
Kaitlin C Doe
Wickens E Gaucho
Octavia G Glick
Aika A Bolognia
Aruna E Saylors
Kaitlin P Maclead
Julie Y Sergi
Johnson B Shinko
IdCountryDate
1000Japan2026-10-19
1001Canada2026-10-17
1002Canada2026-09-30
1003Japan2026-10-15
1004Germany2026-09-23
1005Canada2026-10-02
1006Spain2026-10-07
1007Brazil2026-09-28
1008India2026-10-04
1009Russia2026-09-29
1010Italy2026-10-20
1011Australia2026-09-24
1012Brazil2026-10-09
1013France2026-10-04
1014Argentina2026-10-16
1015Japan2026-10-12
1016Brazil2026-10-13
1017Australia2026-09-26
1018Argentina2026-10-17
1019Japan2026-10-10
1020France2026-10-17
1021Brazil2026-10-16
1022India2026-09-27
1023France2026-09-30
1024Spain2026-10-15
1025Italy2026-09-23
1026Russia2026-10-13
1027India2026-10-17
1028Germany2026-10-21
1029Spain2026-10-09
1030United Kingdom2026-10-22
1031Japan2026-10-12
1032Italy2026-10-18
1033United Kingdom2026-10-12
1034Canada2026-10-01
1035Canada2026-10-08
1036Brazil2026-10-06
1037Australia2026-10-10
1038France2026-10-07
1039France2026-10-14
1040India2026-10-18
1041Australia2026-09-27
1042Germany2026-10-11
1043Australia2026-10-20
1044Russia2026-10-08
1045Germany2026-10-06
1046Brazil2026-10-17
1047France2026-10-22
1048United Kingdom2026-10-16
1049India2026-10-11

On-Demand Data

NameIdCountryDate
Costa S Nicka1000France2026-10-04
Clifford P Iturbide1001Canada2026-10-14
Ashley E Nicka1002Canada2026-10-17
Octavia A Wieser1003Spain2026-10-14
Arvin U Maclead1004Argentina2026-09-23
Darci S Rim1005United Kingdom2026-10-11
Jefferson Y Venere1006Canada2026-10-13
Misaki G Waycott1007India2026-10-15
Ivar S Nicka1008Italy2026-09-23
Stacey G Malet1009France2026-10-22
Antonio S Kolmetz1010Italy2026-09-24
Nicolas A Bowley1011Italy2026-09-26
Clifford P Caldarera1012Canada2026-10-21
Mujtaba Y Campain1013India2026-09-26
Chavez I Dilliard1014Brazil2026-10-20
Adams Z Rulapaugh1015France2026-10-17
Adams F Paprocki1016Italy2026-09-25
Ashley T Caudy1017India2026-09-24
Munro S Doe1018Germany2026-10-17
Jones B Caldarera1019Australia2026-09-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria Z VocelkaAustraliaIoni Bowcher PROPOSAL
Aruna A MorascaGermanyStephen Shaw UNQUALIFIED
Jennifer C GarufiIndiaXuxue Feng NEGOTIATION
Darci H FlosiBrazilElwin Sharvill UNQUALIFIED
Silvio X SergiFranceAnna Fali NEW
Stacey B SergiRussiaElwin Sharvill UNQUALIFIED
Maria Q StensethBrazilAmy Elsner QUALIFIED
Nicolas O DoeJapanXuxue Feng QUALIFIED
Maisha J IturbideJapanOnyama Limba UNQUALIFIED
Jeanfrancois N SergiAustraliaStephen Shaw RENEWAL
Ashley Z VenereRussiaAmy Elsner QUALIFIED
Murillo C KuskoAustraliaAsiya Javayant UNQUALIFIED
Alejandro Z MaletIndiaElwin Sharvill PROPOSAL
Johnson A PaprockiGermanyIoni Bowcher QUALIFIED
Silvio K StensethRussiaAnna Fali UNQUALIFIED
Ivar T ChuiBrazilElwin Sharvill NEGOTIATION
Rodrigues M GlickSpainAmy Elsner UNQUALIFIED
Chavez J AlbaresUnited KingdomAmy Elsner RENEWAL
Stacey D RoysterCanadaAnna Fali NEGOTIATION
Cody B MacleadBrazilAsiya Javayant NEW
Maria I ShinkoIndiaStephen Shaw UNQUALIFIED
Izzy U AmigonFranceIvan Magalhaes UNQUALIFIED
Kaitlin E FerenczBrazilStephen Shaw NEGOTIATION
Aika R CaudyIndiaAmy Elsner RENEWAL
Kadeem E GillianCanadaXuxue Feng PROPOSAL
Kaitlin L PerinUnited KingdomIvan Magalhaes PROPOSAL
Costa T KuskoFranceIvan Magalhaes QUALIFIED
Julie J MarrierUnited KingdomBernardo Dominic PROPOSAL
Murillo F InouyeSpainOnyama Limba NEW
Murillo U ChuiGermanyXuxue Feng QUALIFIED
Faith C GlickArgentinaBernardo Dominic UNQUALIFIED
Julie F MacleadItalyBernardo Dominic NEGOTIATION
Jeanfrancois L SergiAustraliaBernardo Dominic UNQUALIFIED
Aika A CampainUnited KingdomOnyama Limba RENEWAL
Faith G MaletIndiaAnna Fali NEW
Leon L SchemmerItalyAnna Fali RENEWAL
Mayumi X RulapaughItalyAmy Elsner UNQUALIFIED
Cody H FerenczGermanyIvan Magalhaes QUALIFIED
Izzy P TollnerAustraliaAmy Elsner RENEWAL
Greenwood Y GauchoArgentinaAnna Fali QUALIFIED

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