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
Sinclair B IturbideRussiaElwin Sharvill QUALIFIED
Morrow P MacleadJapanIvan Magalhaes QUALIFIED
Munro V VenereFranceAnna Fali QUALIFIED
Aika W ButtIndiaIvan Magalhaes NEW
Alejandro X BriddickAustraliaOnyama Limba UNQUALIFIED
Leon R OldroydBrazilIvan Magalhaes NEW
Jefferson K WieserBrazilAsiya Javayant UNQUALIFIED
Ashley M DarakjyArgentinaXuxue Feng QUALIFIED
Clifford D GillianBrazilIoni Bowcher NEW
Munro R ChuiJapanElwin Sharvill NEGOTIATION
Misaki Q GarufiFranceIvan Magalhaes UNQUALIFIED
Francesco Z AlbaresFranceOnyama Limba QUALIFIED
Chavez K MacleadGermanyIoni Bowcher NEW
Deepesh R KolmetzItalyIvan Magalhaes NEW
Aika C FerenczRussiaBernardo Dominic UNQUALIFIED
Aika U CaudyItalyStephen Shaw QUALIFIED
Isabel C BriddickItalyElwin Sharvill PROPOSAL
Nicolas W AlbaresIndiaAnna Fali NEW
Maisha O AmigonGermanyAmy Elsner RENEWAL
Jeanfrancois I FlosiRussiaIvan Magalhaes UNQUALIFIED
Greenwood W WhobreySpainBernardo Dominic PROPOSAL
Mayumi I FollerItalyOnyama Limba UNQUALIFIED
Francesco L BowleyAustraliaXuxue Feng PROPOSAL
Maria T WieserFranceBernardo Dominic NEGOTIATION
Maisha X RoysterGermanyAmy Elsner NEGOTIATION
Rodrigues A RulapaughUnited KingdomIvan Magalhaes RENEWAL
Jefferson D MarrierBrazilXuxue Feng NEW
Julie P DarakjyIndiaOnyama Limba PROPOSAL
Salvatore T IturbideGermanyAsiya Javayant QUALIFIED
Smith U ChuiSpainAnna Fali NEW
Arvin E AlbaresArgentinaXuxue Feng QUALIFIED
Cody G FigeroaRussiaBernardo Dominic QUALIFIED
Octavia O StockhamJapanIoni Bowcher QUALIFIED
Salvatore A RimSpainAsiya Javayant NEGOTIATION
Stacey S CampainIndiaIvan Magalhaes NEGOTIATION
Aruna C RimItalyXuxue Feng NEGOTIATION
Salvatore E GarufiSpainBernardo Dominic RENEWAL
Stacey N SlusarskiCanadaStephen Shaw UNQUALIFIED
James E BowleyUnited KingdomAmy Elsner PROPOSAL
Morrow G FollerBrazilAmy Elsner QUALIFIED
Mayumi B SchemmerArgentinaXuxue Feng QUALIFIED
Mayumi F WieserIndiaElwin Sharvill RENEWAL
Smith V DilliardAustraliaBernardo Dominic QUALIFIED
Chavez E BriddickAustraliaIvan Magalhaes NEGOTIATION
Cody W FlosiGermanyAmy Elsner RENEWAL
Faith J StensethCanadaBernardo Dominic NEGOTIATION
David U InouyeAustraliaAmy Elsner UNQUALIFIED
Izzy P KolmetzSpainAsiya Javayant PROPOSAL
Isabel C NestleGermanyOnyama Limba UNQUALIFIED
Faith L IturbideFranceIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
James M StensethJapanAmy Elsner RENEWAL
Alejandro V StensethIndiaAnna Fali NEGOTIATION
Ashley V BriddickBrazilXuxue Feng PROPOSAL
Emily K CampainBrazilAmy Elsner PROPOSAL
Sinclair G PerinGermanyOnyama Limba NEGOTIATION
Jones C RimRussiaAsiya Javayant QUALIFIED
Maisha S KolmetzAustraliaIoni Bowcher PROPOSAL
Claire H RoysterJapanAmy Elsner NEW
Kaitlin I WieserArgentinaIoni Bowcher UNQUALIFIED
Alejandro V MacleadGermanyOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore A BologniaItaly2026-10-13Feiner Bros QUALIFIED37Stephen Shaw
1001Ivar P OstroskyFrance2026-10-02Dorl, James J Esq RENEWAL7Ivan Magalhaes
1002Ashley V RoysterBrazil2026-10-07Chapman, Ross E Esq QUALIFIED67Onyama Limba
1003Jeanfrancois T DilliardGermany2026-10-22Dorl, James J Esq NEW6Anna Fali
1004Izzy U AmigonRussia2026-10-21Rousseaux, Michael Esq NEGOTIATION93Stephen Shaw
1005Juan Z WaycottUnited Kingdom2026-10-04Rangoni Of Florence QUALIFIED45Onyama Limba
1006Mujtaba S KolmetzItaly2026-10-08Feiner Bros UNQUALIFIED71Onyama Limba
1007Stacey A StockhamArgentina2026-10-28Morlong Associates RENEWAL18Xuxue Feng
1008Leon U CaldareraAustralia2026-09-30Benton, John B Jr NEW71Stephen Shaw
1009Emily U PerinIndia2026-10-02Truhlar And Truhlar Attys NEGOTIATION20Stephen Shaw
1010Aruna I RimFrance2026-10-29Rousseaux, Michael Esq PROPOSAL23Ivan Magalhaes
1011Octavia S CampainFrance2026-10-11Printing Dimensions QUALIFIED47Bernardo Dominic
1012Deepesh N StensethUnited Kingdom2026-10-19Benton, John B Jr QUALIFIED14Bernardo Dominic
1013Kadeem Z FerenczAustralia2026-10-11Buckley Miller Wright QUALIFIED63Amy Elsner
1014Clifford J PoquetteFrance2026-10-16Buckley Miller Wright PROPOSAL92Elwin Sharvill
1015Costa D BowleyIndia2026-10-17Feltz Printing Service UNQUALIFIED95Elwin Sharvill
1016Tony L MorascaRussia2026-10-04Feltz Printing Service RENEWAL41Ivan Magalhaes
1017Isabel Y FerenczSpain2026-10-10Feltz Printing Service NEGOTIATION52Stephen Shaw
1018Murillo E SergiArgentina2026-10-16Chemel, James L Cpa UNQUALIFIED8Asiya Javayant
1019Morrow X NestleUnited Kingdom2026-10-18Buckley Miller Wright NEGOTIATION3Ioni Bowcher
1020Octavia C AlbaresRussia2026-10-17Rousseaux, Michael Esq RENEWAL4Amy Elsner
1021Jefferson X FollerItaly2026-10-13Rangoni Of Florence QUALIFIED59Anna Fali
1022Salvatore F StockhamRussia2026-10-16Morlong Associates QUALIFIED49Amy Elsner
1023Mujtaba Y GillianGermany2026-10-08King, Christopher A Esq RENEWAL79Xuxue Feng
1024Ashley O DarakjySpain2026-10-05Rousseaux, Michael Esq NEGOTIATION91Asiya Javayant
1025Isabel S InouyeIndia2026-10-27Feltz Printing Service RENEWAL11Bernardo Dominic
1026Morrow V IturbideArgentina2026-10-27Feiner Bros QUALIFIED98Onyama Limba
1027Adams O GillianBrazil2026-10-29Chemel, James L Cpa RENEWAL17Xuxue Feng
1028Stacey R DarakjySpain2026-09-30Dorl, James J Esq RENEWAL11Stephen Shaw
1029Clifford K RulapaughGermany2026-10-29Rangoni Of Florence NEW19Ioni Bowcher
1030Clifford O IturbideBrazil2026-10-19Commercial Press UNQUALIFIED24Amy Elsner
1031Murillo B GauchoGermany2026-10-09Printing Dimensions UNQUALIFIED34Xuxue Feng
1032Jones K CaldareraJapan2026-10-25Morlong Associates QUALIFIED68Anna Fali
1033Clifford U NestleAustralia2026-10-06Commercial Press UNQUALIFIED98Xuxue Feng
1034Jennifer M RulapaughGermany2026-10-20Chemel, James L Cpa PROPOSAL21Amy Elsner
1035Leja B FollerJapan2026-10-08Feiner Bros RENEWAL7Bernardo Dominic
1036Maria I CampainGermany2026-10-06Buckley Miller Wright PROPOSAL98Asiya Javayant
1037Izzy U PerinIndia2026-10-22King, Christopher A Esq RENEWAL47Anna Fali
1038Leja L CaldareraUnited Kingdom2026-10-11Rousseaux, Michael Esq PROPOSAL78Elwin Sharvill
1039Munro S RulapaughItaly2026-10-02Rangoni Of Florence RENEWAL54Asiya Javayant
1040Maria B CaudyBrazil2026-10-29Commercial Press NEW73Ivan Magalhaes
1041Jeanfrancois M FigeroaCanada2026-10-20Chemel, James L Cpa QUALIFIED77Amy Elsner
1042Deepesh U DarakjyItaly2026-10-15Truhlar And Truhlar Attys RENEWAL48Bernardo Dominic
1043Misaki G ButtItaly2026-10-17Feiner Bros RENEWAL56Anna Fali
1044Murillo P SergiJapan2026-10-27Chapman, Ross E Esq PROPOSAL54Stephen Shaw
1045Octavia W SaylorsGermany2026-10-10Printing Dimensions NEW66Asiya Javayant
1046Ashley H SaylorsUnited Kingdom2026-10-27Feltz Printing Service NEGOTIATION59Bernardo Dominic
1047Julie E ShinkoJapan2026-10-28Rousseaux, Michael Esq PROPOSAL40Ioni Bowcher
1048Leon C CampainItaly2026-09-30Feltz Printing Service QUALIFIED69Ivan Magalhaes
1049Johnson S DoeAustralia2026-10-26Printing Dimensions RENEWAL55Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
David M SchemmerCanadaIvan Magalhaes UNQUALIFIED
Isabel O DoeItalyBernardo Dominic NEW
Juan U CaudyFranceStephen Shaw NEGOTIATION
Ricardo I WhobreyItalyAsiya Javayant NEW
Leon A StockhamUnited KingdomElwin Sharvill UNQUALIFIED
Claire H ShinkoAustraliaXuxue Feng QUALIFIED
Greenwood Y WaycottFranceBernardo Dominic RENEWAL
Munro D FollerIndiaBernardo Dominic PROPOSAL
James Z CaudyGermanyIvan Magalhaes UNQUALIFIED
Francesco G RimRussiaIoni Bowcher NEGOTIATION
Cody X GillianAustraliaIoni Bowcher RENEWAL
Sinclair F RoysterCanadaIvan Magalhaes RENEWAL
Arvin B PoquetteIndiaAsiya Javayant NEW
Deepesh A MaletItalyStephen Shaw NEW
Leja L IturbideJapanXuxue Feng NEW
Jeanfrancois D FollerRussiaAsiya Javayant NEW
Claire Q FerenczCanadaStephen Shaw PROPOSAL
Jefferson R PaprockiRussiaStephen Shaw PROPOSAL
Isabel D GlickGermanyAsiya Javayant PROPOSAL
Rodrigues K TollnerIndiaAnna Fali NEGOTIATION
Ricardo D VenereArgentinaBernardo Dominic NEW
Ashley U NickaArgentinaElwin Sharvill NEW
James K PoquetteIndiaAsiya Javayant NEW
Claire R AlbaresCanadaBernardo Dominic UNQUALIFIED
Jones T PoquetteRussiaAsiya Javayant PROPOSAL
Jeanfrancois Z BowleyAustraliaBernardo Dominic QUALIFIED
Ricardo X TollnerItalyStephen Shaw UNQUALIFIED
Ashley L GlickArgentinaIoni Bowcher NEGOTIATION
Nicolas W FlosiUnited KingdomXuxue Feng QUALIFIED
Clifford J RulapaughArgentinaElwin Sharvill NEW
Misaki L GauchoBrazilIvan Magalhaes RENEWAL
Silvio Z NestleBrazilStephen Shaw QUALIFIED
Clifford U KolmetzBrazilXuxue Feng NEW
Jones Z CaldareraItalyAnna Fali QUALIFIED
Jefferson P WaycottItalyBernardo Dominic QUALIFIED
Alejandro N DoeFranceElwin Sharvill RENEWAL
Greenwood E WhobreyUnited KingdomStephen Shaw PROPOSAL
Clifford R FerenczArgentinaAnna Fali PROPOSAL
Chavez Q KuskoArgentinaBernardo Dominic QUALIFIED
Jefferson Z RulapaughGermanyElwin Sharvill NEGOTIATION
Smith K CaldareraArgentinaXuxue Feng PROPOSAL
Aditya Z ButtJapanStephen Shaw QUALIFIED
Juan C RulapaughAustraliaXuxue Feng NEW
Kaitlin Y RimFranceIoni Bowcher RENEWAL
Isabel H VocelkaItalyAnna Fali PROPOSAL
Ashley T StockhamUnited KingdomIoni Bowcher RENEWAL
Kadeem A NestleItalyIoni Bowcher UNQUALIFIED
Ivar M FigeroaAustraliaOnyama Limba QUALIFIED
Silvio B KuskoIndiaIvan Magalhaes NEGOTIATION
Stacey D MaletIndiaBernardo Dominic NEW
Frozen Columns
Name
Julie C Glick
Adams M Perin
Aruna L Ostrosky
Leja C Sergi
Murillo M Briddick
Morrow L Poquette
Maisha P Wieser
Emily X Vocelka
Ivar R Darakjy
Deepesh S Royster
Emily P Stockham
Jefferson I Whobrey
Smith Y Ostrosky
Cody G Bolognia
Salvatore R Waycott
Ricardo X Venere
Faith A Perin
Misaki Z Morasca
Jennifer K Flosi
Mujtaba E Albares
Jones Q Slusarski
Munro J Gillian
Izzy N Perin
Murillo L Kusko
Tony K Ruta
Silvio R Sergi
Isabel T Darakjy
Silvio F Waycott
Munro F Garufi
Sinclair E Waycott
Julie I Venere
Deepesh N Ruta
Costa X Morasca
Izzy V Stenseth
Emily N Caldarera
Aruna T Shinko
Julie Y Nestle
Misaki J Rim
Francesco E Rim
Maisha M Rim
Faith U Sergi
Ashley N Gaucho
Ashley P Albares
Salvatore P Tollner
Ivar B Saylors
Leon V Stockham
Costa C Figeroa
Aika L Rulapaugh
Morrow Y Tollner
Darci K Glick
IdCountryDate
1000Canada2026-10-10
1001France2026-10-08
1002France2026-10-07
1003India2026-10-29
1004Australia2026-10-05
1005India2026-10-19
1006Japan2026-10-17
1007Japan2026-10-22
1008Canada2026-10-23
1009India2026-09-30
1010Brazil2026-10-03
1011Australia2026-10-05
1012Brazil2026-10-11
1013Brazil2026-09-30
1014Russia2026-09-30
1015India2026-10-05
1016France2026-10-11
1017Argentina2026-10-14
1018France2026-10-13
1019Australia2026-10-07
1020Russia2026-10-18
1021Germany2026-10-04
1022Germany2026-10-28
1023Germany2026-10-11
1024Brazil2026-10-05
1025France2026-10-18
1026Germany2026-10-28
1027Germany2026-10-15
1028Canada2026-10-17
1029Italy2026-10-03
1030Italy2026-10-28
1031Brazil2026-10-11
1032Italy2026-10-22
1033Australia2026-10-12
1034Spain2026-10-02
1035Italy2026-10-28
1036France2026-10-24
1037Spain2026-10-09
1038Argentina2026-10-26
1039Brazil2026-10-21
1040Spain2026-10-16
1041Italy2026-10-09
1042Spain2026-10-21
1043India2026-10-05
1044Russia2026-10-03
1045Germany2026-10-03
1046Australia2026-10-07
1047United Kingdom2026-10-04
1048France2026-10-09
1049Spain2026-10-20

On-Demand Data

NameIdCountryDate
Maisha L Ruta1000United Kingdom2026-10-19
Ashley C Nicka1001Germany2026-10-10
Smith G Caldarera1002India2026-10-13
Arvin K Ferencz1003Japan2026-10-02
Wickens U Stenseth1004Canada2026-10-16
Adams D Venere1005France2026-10-14
Tony Q Glick1006Brazil2026-10-28
Morrow P Foller1007Germany2026-10-05
Maria S Ruta1008United Kingdom2026-10-22
Leja F Gillian1009Germany2026-10-16
Juan Q Slusarski1010Australia2026-10-15
Jones Y Briddick1011France2026-10-16
Maisha T Stenseth1012Canada2026-10-14
Murillo L Stenseth1013Brazil2026-10-03
Silvio Q Dilliard1014Australia2026-10-12
Ashley H Malet1015United Kingdom2026-10-10
Rodrigues H Venere1016United Kingdom2026-10-27
Jones U Schemmer1017France2026-10-21
Rodrigues N Stenseth1018Spain2026-10-10
Johnson X Inouye1019Italy2026-10-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin X StockhamRussiaAsiya Javayant NEGOTIATION
Morrow S PoquetteIndiaIoni Bowcher UNQUALIFIED
Greenwood B DilliardAustraliaIvan Magalhaes PROPOSAL
Cody D FlosiArgentinaIoni Bowcher RENEWAL
Julie K RutaSpainXuxue Feng NEW
Cody F StensethUnited KingdomIvan Magalhaes NEGOTIATION
Darci A WhobreyGermanyIvan Magalhaes NEGOTIATION
Rodrigues R RulapaughUnited KingdomOnyama Limba RENEWAL
Octavia J MaletFranceIoni Bowcher PROPOSAL
Leon B MaletRussiaIvan Magalhaes UNQUALIFIED
Wickens H GlickJapanAmy Elsner PROPOSAL
Greenwood H VocelkaJapanAmy Elsner RENEWAL
Mujtaba D MaletFranceAmy Elsner PROPOSAL
Ashley V AlbaresRussiaAmy Elsner QUALIFIED
Mujtaba O FigeroaIndiaBernardo Dominic PROPOSAL
Claire A VocelkaCanadaIvan Magalhaes PROPOSAL
Adams I MorascaSpainElwin Sharvill NEW
Johnson Q OldroydFranceAmy Elsner NEGOTIATION
Misaki Y CaudyAustraliaIoni Bowcher PROPOSAL
Leja V RimJapanIvan Magalhaes RENEWAL
Silvio S CaudyItalyAnna Fali NEGOTIATION
Silvio U DoeUnited KingdomAmy Elsner QUALIFIED
Sinclair C MaletJapanAnna Fali UNQUALIFIED
Jeanfrancois W MaletItalyAnna Fali PROPOSAL
Claire E VocelkaRussiaStephen Shaw QUALIFIED
Murillo G VenereAustraliaOnyama Limba QUALIFIED
Mayumi I WieserFranceIoni Bowcher NEW
Ricardo T MorascaCanadaIoni Bowcher QUALIFIED
Julie F GarufiBrazilXuxue Feng RENEWAL
Rodrigues E FigeroaBrazilXuxue Feng NEW
Jeanfrancois P SchemmerAustraliaAnna Fali UNQUALIFIED
Rodrigues N CaudySpainIoni Bowcher NEW
Mayumi F VocelkaItalyAnna Fali PROPOSAL
Mujtaba D ShinkoIndiaXuxue Feng RENEWAL
Aruna L SergiItalyOnyama Limba NEW
Clifford U ShinkoArgentinaXuxue Feng RENEWAL
Jones L KolmetzAustraliaXuxue Feng PROPOSAL
Rodrigues V MacleadSpainIvan Magalhaes NEW
Kadeem A PerinArgentinaXuxue Feng PROPOSAL
Cody K OstroskyUnited KingdomElwin Sharvill RENEWAL

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