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
Francesco V VenereSpainIvan Magalhaes NEGOTIATION
Murillo D DilliardUnited KingdomStephen Shaw QUALIFIED
Sinclair Y ButtBrazilIvan Magalhaes NEGOTIATION
Tony O ShinkoAustraliaStephen Shaw RENEWAL
James E CaudyItalyOnyama Limba PROPOSAL
Tony U FollerArgentinaOnyama Limba PROPOSAL
Isabel F ButtUnited KingdomElwin Sharvill UNQUALIFIED
Francesco S WaycottAustraliaOnyama Limba NEW
Wickens S FollerItalyAmy Elsner QUALIFIED
Claire J KolmetzJapanIoni Bowcher UNQUALIFIED
Ivar K PerinArgentinaAmy Elsner UNQUALIFIED
Leja L CampainCanadaXuxue Feng RENEWAL
Morrow H DarakjyIndiaXuxue Feng PROPOSAL
James E CaldareraItalyAnna Fali PROPOSAL
Alejandro F VocelkaBrazilBernardo Dominic UNQUALIFIED
Morrow E RulapaughGermanyAmy Elsner NEGOTIATION
Costa O RimCanadaAmy Elsner NEGOTIATION
Maria F FigeroaFranceStephen Shaw PROPOSAL
Emily U SchemmerAustraliaAnna Fali RENEWAL
Claire D MorascaItalyOnyama Limba NEW
Arvin Q SaylorsUnited KingdomXuxue Feng NEW
Mayumi V VenereIndiaBernardo Dominic NEGOTIATION
Antonio S FlosiFranceIoni Bowcher UNQUALIFIED
Ivar G GarufiUnited KingdomAnna Fali UNQUALIFIED
Kadeem W GillianAustraliaBernardo Dominic PROPOSAL
Jeanfrancois M WhobreyCanadaAmy Elsner PROPOSAL
Antonio Z StensethItalyBernardo Dominic NEW
Jefferson U MaletGermanyAnna Fali QUALIFIED
Johnson J TollnerIndiaBernardo Dominic RENEWAL
Jeanfrancois I WhobreyItalyAmy Elsner NEW
David W GarufiIndiaIvan Magalhaes RENEWAL
Costa Q BriddickRussiaAsiya Javayant PROPOSAL
Mayumi J RimGermanyAsiya Javayant RENEWAL
Juan T NestleAustraliaIvan Magalhaes PROPOSAL
Chavez E RimBrazilAsiya Javayant UNQUALIFIED
Costa T IturbideFranceElwin Sharvill QUALIFIED
Silvio Q CaudyBrazilStephen Shaw PROPOSAL
Ashley V OstroskyArgentinaAnna Fali RENEWAL
Jennifer Y MorascaSpainAmy Elsner NEGOTIATION
Jones D OldroydFranceStephen Shaw NEW
Julie J SchemmerSpainIoni Bowcher UNQUALIFIED
Smith E FerenczItalyElwin Sharvill NEGOTIATION
Maisha Z BriddickGermanyXuxue Feng NEGOTIATION
Isabel M CaudyCanadaIvan Magalhaes NEGOTIATION
Deepesh B AlbaresGermanyOnyama Limba RENEWAL
Clifford Q GarufiGermanyElwin Sharvill NEW
Tony C MorascaAustraliaAmy Elsner RENEWAL
Clifford T ShinkoJapanIvan Magalhaes QUALIFIED
Ashley F GauchoIndiaAmy Elsner UNQUALIFIED
Ricardo J WaycottFranceAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Sinclair I RimIndiaOnyama Limba PROPOSAL
Costa J MaletFranceXuxue Feng RENEWAL
Wickens A StensethSpainBernardo Dominic NEW
Wickens O WieserItalyStephen Shaw NEGOTIATION
Nicolas R InouyeCanadaAnna Fali NEGOTIATION
Darci P GillianIndiaStephen Shaw PROPOSAL
Aika O DilliardGermanyElwin Sharvill NEW
Alejandro H VocelkaIndiaBernardo Dominic PROPOSAL
Leja G MarrierItalyAmy Elsner NEW
Kaitlin E BriddickIndiaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco Y RutaGermany2026-10-16Morlong Associates PROPOSAL57Amy Elsner
1001Ivar N MarrierAustralia2026-11-02Printing Dimensions RENEWAL43Asiya Javayant
1002Octavia P KolmetzCanada2026-10-18Chapman, Ross E Esq NEW26Onyama Limba
1003Julie R AmigonGermany2026-10-12Buckley Miller Wright UNQUALIFIED33Bernardo Dominic
1004James T TollnerAustralia2026-10-15Rousseaux, Michael Esq NEW37Bernardo Dominic
1005Octavia X OldroydItaly2026-11-01Chapman, Ross E Esq UNQUALIFIED79Bernardo Dominic
1006Faith Q FollerGermany2026-10-27King, Christopher A Esq RENEWAL53Asiya Javayant
1007Mayumi T KolmetzItaly2026-10-26Feltz Printing Service UNQUALIFIED36Amy Elsner
1008Emily X KolmetzJapan2026-11-02Chanay, Jeffrey A Esq PROPOSAL90Asiya Javayant
1009Leon D CaudyJapan2026-10-09King, Christopher A Esq NEW82Asiya Javayant
1010Costa T CampainSpain2026-10-11Feiner Bros QUALIFIED5Onyama Limba
1011Mujtaba Y ShinkoIndia2026-11-05Rousseaux, Michael Esq UNQUALIFIED68Ivan Magalhaes
1012Kadeem H OstroskyBrazil2026-10-26Rangoni Of Florence PROPOSAL16Bernardo Dominic
1013Chavez A BologniaBrazil2026-10-10Feltz Printing Service PROPOSAL24Elwin Sharvill
1014Kaitlin Q PoquetteAustralia2026-10-17Morlong Associates QUALIFIED21Ivan Magalhaes
1015Silvio S TollnerJapan2026-10-11Truhlar And Truhlar Attys PROPOSAL15Stephen Shaw
1016Arvin K SlusarskiRussia2026-10-14Feltz Printing Service QUALIFIED57Bernardo Dominic
1017Murillo K CaldareraCanada2026-10-15Benton, John B Jr NEW96Ivan Magalhaes
1018Jennifer L BologniaItaly2026-10-10Chanay, Jeffrey A Esq PROPOSAL86Elwin Sharvill
1019Greenwood C MarrierRussia2026-10-25Printing Dimensions RENEWAL19Stephen Shaw
1020Munro Y DilliardArgentina2026-10-17Buckley Miller Wright QUALIFIED23Amy Elsner
1021Jennifer J IturbideBrazil2026-10-21Printing Dimensions QUALIFIED36Bernardo Dominic
1022Isabel S PoquetteItaly2026-10-23Rousseaux, Michael Esq QUALIFIED48Amy Elsner
1023Ivar I PoquetteRussia2026-10-15Buckley Miller Wright NEW12Amy Elsner
1024Alejandro B VenereSpain2026-10-17Truhlar And Truhlar Attys NEW78Onyama Limba
1025Isabel L DilliardFrance2026-10-12Buckley Miller Wright UNQUALIFIED3Xuxue Feng
1026Sinclair C CampainCanada2026-11-01Benton, John B Jr NEW59Xuxue Feng
1027Stacey A CaldareraCanada2026-11-02Feiner Bros NEGOTIATION55Anna Fali
1028Maria Y FigeroaFrance2026-10-23Morlong Associates NEGOTIATION15Xuxue Feng
1029Emily T AmigonJapan2026-10-30Feiner Bros UNQUALIFIED8Anna Fali
1030Munro D ShinkoAustralia2026-10-08Commercial Press RENEWAL7Onyama Limba
1031Costa T BologniaIndia2026-11-01Rangoni Of Florence PROPOSAL69Anna Fali
1032Kadeem E PerinUnited Kingdom2026-10-25King, Christopher A Esq PROPOSAL90Onyama Limba
1033Clifford W KuskoUnited Kingdom2026-10-20King, Christopher A Esq UNQUALIFIED95Ioni Bowcher
1034Tony L MaletItaly2026-10-30Chapman, Ross E Esq RENEWAL16Anna Fali
1035Francesco K FlosiJapan2026-10-27Commercial Press UNQUALIFIED59Xuxue Feng
1036Antonio F FollerArgentina2026-10-18Chapman, Ross E Esq NEGOTIATION33Bernardo Dominic
1037Jeanfrancois N DoeFrance2026-11-01Chanay, Jeffrey A Esq NEGOTIATION54Amy Elsner
1038Costa O WhobreyRussia2026-10-14Feiner Bros RENEWAL1Ioni Bowcher
1039Arvin D FlosiUnited Kingdom2026-10-23Dorl, James J Esq QUALIFIED75Xuxue Feng
1040Claire O StensethRussia2026-10-26Rousseaux, Michael Esq QUALIFIED73Xuxue Feng
1041Cody C MarrierItaly2026-10-14Printing Dimensions PROPOSAL46Anna Fali
1042Kadeem S BowleyArgentina2026-10-24Chanay, Jeffrey A Esq NEW86Anna Fali
1043Aditya G PaprockiIndia2026-11-02Printing Dimensions UNQUALIFIED28Bernardo Dominic
1044Rodrigues G CaldareraAustralia2026-10-11King, Christopher A Esq RENEWAL85Ivan Magalhaes
1045Kaitlin M ShinkoSpain2026-10-25Dorl, James J Esq PROPOSAL80Ivan Magalhaes
1046Maisha F AmigonCanada2026-10-21Truhlar And Truhlar Attys UNQUALIFIED49Stephen Shaw
1047Chavez L SergiFrance2026-10-14Printing Dimensions PROPOSAL21Ioni Bowcher
1048Rodrigues B GarufiGermany2026-11-03Feiner Bros UNQUALIFIED52Ivan Magalhaes
1049Clifford R FollerAustralia2026-10-24Truhlar And Truhlar Attys NEGOTIATION41Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ashley K ButtBrazilStephen Shaw PROPOSAL
Murillo L WaycottJapanXuxue Feng PROPOSAL
Maisha B SergiRussiaBernardo Dominic QUALIFIED
Morrow Q PaprockiRussiaXuxue Feng PROPOSAL
Nicolas N GillianArgentinaStephen Shaw UNQUALIFIED
Antonio S PoquetteJapanXuxue Feng RENEWAL
Aditya J IturbideCanadaOnyama Limba RENEWAL
Aika X CampainFranceBernardo Dominic PROPOSAL
Octavia E WaycottSpainElwin Sharvill RENEWAL
Antonio R FollerItalyStephen Shaw RENEWAL
Cody U VenereRussiaAnna Fali NEGOTIATION
Silvio I RoysterCanadaAnna Fali NEGOTIATION
Faith X AlbaresItalyAmy Elsner RENEWAL
Silvio V CampainItalyAnna Fali PROPOSAL
Cody C GauchoFranceAsiya Javayant NEW
Murillo T PerinRussiaElwin Sharvill PROPOSAL
Kaitlin P CaudyUnited KingdomAnna Fali NEW
Jennifer X CampainCanadaIvan Magalhaes UNQUALIFIED
Kaitlin O FlosiSpainAsiya Javayant QUALIFIED
Jones Y GauchoSpainAsiya Javayant UNQUALIFIED
Isabel L DoeRussiaBernardo Dominic PROPOSAL
Maria X SlusarskiUnited KingdomAnna Fali RENEWAL
Greenwood N NestleCanadaAsiya Javayant NEW
Ivar P NickaItalyElwin Sharvill NEW
Jennifer V WaycottAustraliaAnna Fali QUALIFIED
Murillo C RoysterArgentinaAnna Fali PROPOSAL
Smith Z WaycottIndiaOnyama Limba NEGOTIATION
Jones P AlbaresIndiaXuxue Feng NEGOTIATION
Claire U WieserCanadaOnyama Limba RENEWAL
Aika N SergiBrazilStephen Shaw UNQUALIFIED
Julie I KolmetzSpainBernardo Dominic PROPOSAL
Kaitlin A SaylorsGermanyIoni Bowcher RENEWAL
Kaitlin J DoeCanadaAmy Elsner PROPOSAL
Aika F SaylorsUnited KingdomAsiya Javayant RENEWAL
Silvio N StockhamGermanyAsiya Javayant NEW
Leja L SchemmerBrazilXuxue Feng PROPOSAL
Mujtaba R RimAustraliaBernardo Dominic QUALIFIED
Aika I MorascaItalyBernardo Dominic RENEWAL
Murillo O NestleFranceAsiya Javayant NEGOTIATION
Juan E PaprockiSpainStephen Shaw PROPOSAL
Isabel F StensethCanadaAmy Elsner QUALIFIED
Deepesh D MacleadBrazilOnyama Limba NEGOTIATION
Faith R ChuiSpainXuxue Feng NEGOTIATION
Adams A StensethArgentinaStephen Shaw NEW
Leja Q SaylorsCanadaStephen Shaw NEGOTIATION
Sinclair W ChuiIndiaAmy Elsner QUALIFIED
Darci X CampainRussiaXuxue Feng RENEWAL
Ricardo W KolmetzSpainAnna Fali NEGOTIATION
Alejandro X InouyeCanadaXuxue Feng QUALIFIED
Izzy O FlosiFranceAmy Elsner NEGOTIATION
Frozen Columns
Name
Mujtaba S Darakjy
Aditya O Ostrosky
Wickens T Sergi
Francesco V Ostrosky
Juan B Malet
Johnson R Albares
Izzy L Campain
Aruna F Rim
Juan E Venere
Smith Y Caldarera
Darci A Butt
David J Malet
Maisha B Nestle
Kaitlin J Gaucho
Mujtaba M Rulapaugh
Arvin V Malet
Arvin H Kusko
Ashley D Stenseth
Leon S Saylors
Jefferson L Chui
Johnson B Waycott
Costa S Butt
Deepesh P Morasca
Costa V Caudy
Rodrigues K Doe
Maisha B Perin
Ashley K Sergi
Smith K Stockham
Juan O Gillian
Aruna W Nicka
Greenwood N Iturbide
Morrow B Royster
Salvatore B Kolmetz
Antonio J Chui
David N Bolognia
Julie Z Stenseth
Deepesh U Iturbide
Mayumi L Vocelka
Faith P Rulapaugh
Aditya N Figeroa
Octavia E Kusko
Jennifer Y Saylors
Isabel B Caudy
Murillo O Doe
Antonio A Tollner
Ivar U Iturbide
Izzy C Garufi
Alejandro L Rulapaugh
Arvin H Flosi
Nicolas P Royster
IdCountryDate
1000Brazil2026-10-29
1001Canada2026-10-26
1002Russia2026-11-02
1003United Kingdom2026-11-04
1004Brazil2026-11-05
1005India2026-10-19
1006Canada2026-10-30
1007United Kingdom2026-10-22
1008France2026-10-11
1009Australia2026-10-29
1010Spain2026-10-15
1011Australia2026-11-03
1012Spain2026-10-18
1013Japan2026-11-04
1014Italy2026-10-30
1015Brazil2026-10-15
1016Spain2026-10-31
1017Germany2026-10-13
1018Australia2026-10-26
1019Japan2026-11-01
1020Russia2026-10-20
1021Germany2026-10-19
1022Canada2026-10-13
1023Australia2026-10-08
1024United Kingdom2026-10-22
1025Brazil2026-10-15
1026United Kingdom2026-10-14
1027Spain2026-10-08
1028Argentina2026-10-08
1029Germany2026-10-09
1030Russia2026-10-07
1031France2026-10-27
1032Brazil2026-10-26
1033France2026-10-27
1034Australia2026-10-14
1035Australia2026-10-21
1036Russia2026-10-26
1037France2026-10-20
1038Russia2026-10-27
1039Brazil2026-10-29
1040United Kingdom2026-11-03
1041Canada2026-10-29
1042India2026-10-19
1043United Kingdom2026-10-08
1044Italy2026-10-08
1045Japan2026-10-14
1046Germany2026-10-14
1047France2026-10-30
1048Russia2026-10-22
1049Argentina2026-10-29

On-Demand Data

NameIdCountryDate
Nicolas J Slusarski1000Japan2026-10-14
Antonio W Ostrosky1001Japan2026-10-24
Faith P Maclead1002Japan2026-11-02
Morrow S Slusarski1003India2026-10-26
Smith W Chui1004Canada2026-10-21
Kadeem Y Ostrosky1005Canada2026-10-10
Stacey N Kolmetz1006France2026-10-28
Adams K Kusko1007India2026-10-12
Greenwood U Tollner1008Argentina2026-10-16
Maria R Stenseth1009Argentina2026-10-19
Mayumi E Chui1010United Kingdom2026-10-31
Aruna M Wieser1011Argentina2026-10-19
Julie N Waycott1012Italy2026-10-16
Jeanfrancois C Gillian1013Argentina2026-10-07
Ivar L Ferencz1014France2026-10-16
Clifford I Marrier1015Argentina2026-11-04
Leja S Perin1016Brazil2026-10-14
Jones F Tollner1017Japan2026-10-26
Deepesh S Gillian1018Italy2026-10-28
Jones E Chui1019Spain2026-10-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony P FerenczCanadaOnyama Limba PROPOSAL
Aika O PoquetteFranceAmy Elsner PROPOSAL
Kaitlin H SlusarskiSpainBernardo Dominic PROPOSAL
Silvio L GlickFranceBernardo Dominic RENEWAL
Misaki V DarakjyItalyXuxue Feng NEW
Munro G MaletAustraliaStephen Shaw UNQUALIFIED
Jennifer A StensethUnited KingdomElwin Sharvill NEW
Claire B TollnerBrazilBernardo Dominic PROPOSAL
Izzy Y StockhamAustraliaIvan Magalhaes NEW
Claire N MarrierGermanyAsiya Javayant PROPOSAL
Johnson H MaletSpainOnyama Limba NEGOTIATION
Darci N KolmetzBrazilXuxue Feng NEGOTIATION
David N GlickIndiaOnyama Limba RENEWAL
Wickens M OldroydUnited KingdomAmy Elsner NEGOTIATION
Rodrigues Y RutaRussiaBernardo Dominic QUALIFIED
James K RutaFranceXuxue Feng NEW
Jennifer E AmigonArgentinaStephen Shaw NEGOTIATION
Julie U GauchoRussiaIvan Magalhaes RENEWAL
Aditya M VenereFranceXuxue Feng QUALIFIED
Jefferson B GauchoCanadaElwin Sharvill QUALIFIED
Ricardo T VenereUnited KingdomStephen Shaw RENEWAL
Leon R ShinkoSpainBernardo Dominic QUALIFIED
Rodrigues H MacleadIndiaStephen Shaw QUALIFIED
Deepesh U StockhamFranceAnna Fali NEW
Emily I WaycottCanadaElwin Sharvill QUALIFIED
Francesco Q TollnerGermanyAsiya Javayant QUALIFIED
Smith U ShinkoAustraliaElwin Sharvill RENEWAL
Ricardo G FlosiArgentinaBernardo Dominic NEW
Kadeem W IturbideRussiaElwin Sharvill NEW
Greenwood S FerenczUnited KingdomIvan Magalhaes QUALIFIED
Leja Q RutaArgentinaAnna Fali NEGOTIATION
Francesco A CampainSpainAnna Fali PROPOSAL
Juan C MaletGermanyStephen Shaw NEGOTIATION
Morrow D OstroskyUnited KingdomXuxue Feng NEW
Jeanfrancois U VocelkaGermanyAmy Elsner RENEWAL
Costa Y GlickSpainIoni Bowcher NEGOTIATION
Juan J WhobreyItalyIoni Bowcher NEW
Maisha X FlosiCanadaXuxue Feng NEGOTIATION
Julie I RoysterAustraliaAmy Elsner NEW
Adams R GlickGermanyXuxue Feng 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>