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
Mayumi X BologniaFranceIvan Magalhaes RENEWAL
Francesco I ChuiSpainAnna Fali NEW
James R CaldareraIndiaAnna Fali NEW
Tony I NickaAustraliaOnyama Limba NEGOTIATION
Octavia Q ChuiSpainStephen Shaw NEGOTIATION
Adams W CaudyUnited KingdomAnna Fali PROPOSAL
Ricardo I MarrierAustraliaAmy Elsner QUALIFIED
Stacey C FlosiUnited KingdomStephen Shaw NEW
Jones B StensethArgentinaAnna Fali RENEWAL
Mujtaba X SlusarskiAustraliaStephen Shaw NEGOTIATION
Munro V GillianJapanAsiya Javayant NEW
Antonio R OstroskyIndiaIoni Bowcher NEGOTIATION
Smith I FollerRussiaOnyama Limba NEW
Deepesh R FollerUnited KingdomStephen Shaw NEW
Ricardo Y PoquetteGermanyElwin Sharvill RENEWAL
Leon B FollerCanadaAnna Fali QUALIFIED
Johnson W FlosiBrazilXuxue Feng NEGOTIATION
James U ChuiArgentinaIoni Bowcher RENEWAL
Jones L StensethRussiaBernardo Dominic PROPOSAL
Salvatore D SergiAustraliaXuxue Feng RENEWAL
Chavez U NestleIndiaElwin Sharvill NEW
Aika H CampainSpainAsiya Javayant NEGOTIATION
Alejandro P WhobreyIndiaXuxue Feng QUALIFIED
Stacey C AlbaresUnited KingdomIoni Bowcher NEGOTIATION
Mayumi H DoeCanadaIoni Bowcher QUALIFIED
Greenwood L BologniaCanadaBernardo Dominic RENEWAL
Aditya F BriddickBrazilElwin Sharvill RENEWAL
Munro A PoquetteIndiaAsiya Javayant UNQUALIFIED
Tony R BriddickBrazilAmy Elsner RENEWAL
Cody A CampainCanadaIoni Bowcher RENEWAL
Aika V AlbaresArgentinaStephen Shaw RENEWAL
Faith V DoeJapanElwin Sharvill PROPOSAL
Ricardo C OstroskyUnited KingdomIvan Magalhaes NEW
David J OstroskyRussiaElwin Sharvill UNQUALIFIED
Johnson I MacleadAustraliaStephen Shaw QUALIFIED
Misaki Z FerenczJapanBernardo Dominic RENEWAL
Chavez F MarrierRussiaAmy Elsner QUALIFIED
Tony E InouyeJapanXuxue Feng NEGOTIATION
Misaki K DoeCanadaStephen Shaw NEGOTIATION
Mujtaba C AlbaresArgentinaElwin Sharvill UNQUALIFIED
Arvin A KuskoSpainAmy Elsner QUALIFIED
Aditya L StensethAustraliaElwin Sharvill NEGOTIATION
Aditya M WieserUnited KingdomXuxue Feng QUALIFIED
Jones Y FlosiUnited KingdomAsiya Javayant NEW
Silvio H CaudyGermanyAnna Fali UNQUALIFIED
Salvatore E DilliardFranceOnyama Limba NEW
Salvatore T WhobreyAustraliaStephen Shaw UNQUALIFIED
Ivar S GauchoCanadaElwin Sharvill RENEWAL
Munro M WaycottItalyElwin Sharvill NEW
Kaitlin O PoquetteSpainAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Salvatore B FerenczIndiaAsiya Javayant NEGOTIATION
Isabel Z RoysterRussiaIoni Bowcher NEW
Aika X RutaJapanAnna Fali NEGOTIATION
Jennifer R MarrierUnited KingdomStephen Shaw RENEWAL
Aika E StockhamJapanAmy Elsner NEW
Smith L SergiArgentinaAsiya Javayant NEW
Munro L BowleyBrazilAmy Elsner RENEWAL
Aditya D DilliardUnited KingdomIoni Bowcher RENEWAL
Murillo X DoeGermanyElwin Sharvill NEGOTIATION
Jennifer O MaletArgentinaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David R MaletIndia2026-10-09Morlong Associates PROPOSAL90Stephen Shaw
1001Aika N RutaGermany2026-10-18Buckley Miller Wright RENEWAL30Ivan Magalhaes
1002Salvatore K CaudyJapan2026-10-15Commercial Press UNQUALIFIED1Stephen Shaw
1003Antonio O RutaSpain2026-10-05Morlong Associates NEGOTIATION60Ivan Magalhaes
1004Rodrigues D SergiArgentina2026-10-12Commercial Press NEGOTIATION12Xuxue Feng
1005Murillo O FerenczGermany2026-10-23Benton, John B Jr QUALIFIED63Stephen Shaw
1006Tony N KolmetzArgentina2026-10-04Buckley Miller Wright QUALIFIED91Onyama Limba
1007Morrow W FlosiItaly2026-10-31Chemel, James L Cpa NEW10Elwin Sharvill
1008Alejandro B FlosiBrazil2026-10-26Feltz Printing Service UNQUALIFIED16Ivan Magalhaes
1009Ivar I ButtGermany2026-10-21Truhlar And Truhlar Attys PROPOSAL71Anna Fali
1010Silvio A BriddickRussia2026-10-16Chapman, Ross E Esq PROPOSAL70Ivan Magalhaes
1011Wickens G PerinFrance2026-10-19Feltz Printing Service NEW85Xuxue Feng
1012Arvin M GillianAustralia2026-10-27Feiner Bros UNQUALIFIED77Anna Fali
1013Kadeem K SaylorsSpain2026-10-31Printing Dimensions QUALIFIED25Stephen Shaw
1014Leon L BologniaGermany2026-10-16Truhlar And Truhlar Attys PROPOSAL6Ioni Bowcher
1015Johnson J StockhamFrance2026-10-04Chapman, Ross E Esq QUALIFIED97Asiya Javayant
1016Greenwood W MaletBrazil2026-10-19Chapman, Ross E Esq QUALIFIED8Elwin Sharvill
1017Julie P WaycottFrance2026-10-27Truhlar And Truhlar Attys PROPOSAL20Bernardo Dominic
1018Chavez Y InouyeJapan2026-10-21Dorl, James J Esq RENEWAL58Ioni Bowcher
1019Chavez H StensethIndia2026-10-05Chanay, Jeffrey A Esq PROPOSAL18Onyama Limba
1020Adams U ShinkoGermany2026-10-27Rangoni Of Florence PROPOSAL54Stephen Shaw
1021Morrow V SaylorsItaly2026-10-03Chapman, Ross E Esq RENEWAL12Ivan Magalhaes
1022Clifford F RimRussia2026-10-31Chapman, Ross E Esq NEW26Xuxue Feng
1023Deepesh Y OldroydAustralia2026-10-22Feltz Printing Service RENEWAL46Stephen Shaw
1024Isabel U PaprockiSpain2026-10-09King, Christopher A Esq RENEWAL63Anna Fali
1025Octavia F ButtAustralia2026-10-15Morlong Associates UNQUALIFIED9Amy Elsner
1026David J MorascaBrazil2026-10-09Feiner Bros QUALIFIED60Onyama Limba
1027Smith Q GillianBrazil2026-10-13Chemel, James L Cpa NEGOTIATION74Stephen Shaw
1028Aruna I FollerCanada2026-10-03Chapman, Ross E Esq QUALIFIED79Asiya Javayant
1029Maria I PaprockiItaly2026-10-28Chapman, Ross E Esq RENEWAL88Stephen Shaw
1030Kadeem K ChuiArgentina2026-10-24Buckley Miller Wright NEGOTIATION13Ioni Bowcher
1031Aika G MaletRussia2026-10-16King, Christopher A Esq RENEWAL58Xuxue Feng
1032Juan S InouyeRussia2026-10-28Commercial Press QUALIFIED98Bernardo Dominic
1033Stacey M FollerSpain2026-10-25Rousseaux, Michael Esq NEW68Asiya Javayant
1034Cody B NickaGermany2026-10-10Buckley Miller Wright NEGOTIATION76Ivan Magalhaes
1035Aruna X MaletAustralia2026-10-22Truhlar And Truhlar Attys QUALIFIED23Elwin Sharvill
1036Murillo M BriddickRussia2026-10-19Chapman, Ross E Esq NEGOTIATION67Anna Fali
1037Jeanfrancois M BologniaIndia2026-10-07Printing Dimensions NEW49Anna Fali
1038Darci U DoeIndia2026-10-18Morlong Associates UNQUALIFIED56Onyama Limba
1039Ivar Y RimFrance2026-10-09Chapman, Ross E Esq NEGOTIATION15Amy Elsner
1040Kadeem V FigeroaJapan2026-10-21Feiner Bros QUALIFIED96Ioni Bowcher
1041Alejandro W VocelkaCanada2026-10-29King, Christopher A Esq RENEWAL96Ioni Bowcher
1042Leja V ShinkoIndia2026-10-25Chanay, Jeffrey A Esq NEW73Ivan Magalhaes
1043Deepesh N SaylorsCanada2026-10-26Chapman, Ross E Esq NEGOTIATION73Amy Elsner
1044Munro M GarufiUnited Kingdom2026-10-09Truhlar And Truhlar Attys RENEWAL68Onyama Limba
1045Claire Y KolmetzFrance2026-10-09Dorl, James J Esq NEW70Elwin Sharvill
1046Nicolas T GarufiArgentina2026-10-11Feiner Bros UNQUALIFIED45Anna Fali
1047Mayumi R NickaFrance2026-10-17Rousseaux, Michael Esq NEW35Ioni Bowcher
1048Ivar F OldroydJapan2026-10-09Benton, John B Jr NEGOTIATION87Bernardo Dominic
1049Juan K GauchoItaly2026-10-28Benton, John B Jr RENEWAL47Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Smith M SchemmerBrazilStephen Shaw NEW
Maisha C ButtArgentinaXuxue Feng NEGOTIATION
Sinclair M FollerUnited KingdomOnyama Limba UNQUALIFIED
Chavez I PerinUnited KingdomElwin Sharvill RENEWAL
Julie H OldroydItalyElwin Sharvill QUALIFIED
Juan C RoysterUnited KingdomElwin Sharvill PROPOSAL
Ricardo W FlosiCanadaStephen Shaw QUALIFIED
Ivar R AmigonIndiaIoni Bowcher QUALIFIED
Misaki D GlickUnited KingdomElwin Sharvill NEGOTIATION
Maria X RutaItalyAmy Elsner PROPOSAL
Emily E FollerIndiaAmy Elsner PROPOSAL
Darci U RimUnited KingdomAnna Fali PROPOSAL
Sinclair W RutaSpainAsiya Javayant QUALIFIED
Cody W GillianUnited KingdomIvan Magalhaes NEGOTIATION
Arvin X RutaArgentinaAsiya Javayant PROPOSAL
Isabel C FerenczArgentinaIoni Bowcher NEW
Emily N DarakjyFranceAnna Fali QUALIFIED
Alejandro A TollnerCanadaAnna Fali RENEWAL
Ivar Q OstroskyUnited KingdomBernardo Dominic RENEWAL
Johnson T IturbideBrazilIoni Bowcher PROPOSAL
Rodrigues H AlbaresArgentinaIoni Bowcher NEGOTIATION
Izzy T MorascaIndiaAsiya Javayant NEW
Jeanfrancois S DarakjyGermanyBernardo Dominic PROPOSAL
Jennifer H KuskoGermanyAmy Elsner RENEWAL
Kaitlin O DarakjySpainStephen Shaw UNQUALIFIED
Aruna N WieserIndiaAnna Fali NEW
Morrow B WhobreyRussiaStephen Shaw NEGOTIATION
David Y RulapaughJapanIvan Magalhaes NEGOTIATION
Nicolas Y OstroskyArgentinaAnna Fali NEGOTIATION
Octavia A PerinBrazilXuxue Feng PROPOSAL
Johnson E GauchoCanadaIoni Bowcher QUALIFIED
Arvin P MaletIndiaAmy Elsner NEGOTIATION
Maisha Y WieserAustraliaIoni Bowcher UNQUALIFIED
Misaki H GarufiRussiaIvan Magalhaes RENEWAL
Kadeem K SergiIndiaAmy Elsner NEGOTIATION
Smith P RoysterGermanyAnna Fali QUALIFIED
Arvin T CaudyIndiaBernardo Dominic UNQUALIFIED
Jeanfrancois I MarrierSpainBernardo Dominic QUALIFIED
Isabel B PoquetteIndiaBernardo Dominic NEGOTIATION
Silvio S ChuiGermanyOnyama Limba PROPOSAL
Stacey W FollerRussiaXuxue Feng PROPOSAL
Leon L PerinJapanXuxue Feng PROPOSAL
Leon Z ButtSpainIoni Bowcher NEGOTIATION
Silvio I StockhamRussiaStephen Shaw NEW
Maria W BologniaFranceElwin Sharvill NEGOTIATION
David L TollnerArgentinaIvan Magalhaes NEGOTIATION
Alejandro I RutaCanadaXuxue Feng RENEWAL
Julie G PaprockiCanadaOnyama Limba NEGOTIATION
Cody L GarufiGermanyAnna Fali QUALIFIED
Rodrigues U VenereUnited KingdomIvan Magalhaes QUALIFIED
Frozen Columns
Name
Izzy Q Amigon
Silvio W Rim
Smith B Royster
Mujtaba H Vocelka
Maria X Figeroa
Wickens T Kusko
Silvio I Stenseth
Alejandro G Iturbide
Munro D Amigon
Silvio O Malet
Juan B Perin
Ricardo U Morasca
Leja U Rim
Aruna L Gaucho
Chavez H Schemmer
Jefferson S Stenseth
Claire U Rulapaugh
Morrow G Caldarera
Isabel J Caudy
Mujtaba E Iturbide
Murillo R Royster
Greenwood V Ostrosky
Isabel C Wieser
Aika M Doe
Wickens T Ruta
Maria Z Stenseth
Octavia Q Vocelka
Claire P Briddick
Leja W Foller
David J Tollner
Mujtaba Y Flosi
Aditya A Venere
James N Iturbide
Isabel H Figeroa
Kaitlin Y Waycott
David X Bowley
Izzy E Kusko
Wickens P Ostrosky
Ricardo O Shinko
Nicolas H Dilliard
Silvio A Nicka
Juan V Chui
Greenwood F Tollner
Morrow N Nestle
Aika T Poquette
Jeanfrancois G Figeroa
Costa K Glick
Munro U Waycott
Murillo K Venere
Leja W Ostrosky
IdCountryDate
1000Germany2026-10-16
1001Brazil2026-10-14
1002France2026-10-05
1003Spain2026-10-31
1004Russia2026-10-30
1005Russia2026-10-07
1006Russia2026-10-14
1007Australia2026-10-04
1008Spain2026-10-09
1009Spain2026-10-09
1010Italy2026-10-29
1011Japan2026-10-30
1012Japan2026-10-31
1013Argentina2026-10-31
1014Canada2026-10-04
1015Italy2026-10-04
1016Canada2026-10-30
1017Spain2026-10-08
1018Italy2026-10-31
1019Spain2026-10-30
1020Japan2026-10-03
1021India2026-10-05
1022Argentina2026-10-12
1023Australia2026-10-08
1024Germany2026-10-08
1025Italy2026-10-28
1026Argentina2026-10-21
1027Spain2026-10-22
1028France2026-10-27
1029Germany2026-10-11
1030Japan2026-10-27
1031Japan2026-10-26
1032Japan2026-10-27
1033Australia2026-10-22
1034Germany2026-10-23
1035Australia2026-10-10
1036Spain2026-10-23
1037Germany2026-10-15
1038United Kingdom2026-10-19
1039Japan2026-10-13
1040Australia2026-10-15
1041Germany2026-10-09
1042Spain2026-10-19
1043Canada2026-10-03
1044Spain2026-10-29
1045Canada2026-10-08
1046Spain2026-10-28
1047India2026-10-10
1048France2026-10-12
1049Russia2026-10-31

On-Demand Data

NameIdCountryDate
Isabel U Caudy1000Canada2026-10-29
Antonio J Rulapaugh1001Japan2026-10-09
Claire D Morasca1002France2026-10-05
Salvatore X Paprocki1003Germany2026-10-08
Isabel A Caldarera1004Australia2026-10-16
Antonio C Garufi1005Russia2026-10-16
Stacey D Royster1006Australia2026-10-27
Faith H Campain1007Australia2026-10-07
Ricardo R Garufi1008Japan2026-10-03
Johnson E Paprocki1009Italy2026-10-09
Aditya V Tollner1010Brazil2026-10-18
Jones W Flosi1011Russia2026-10-31
Kadeem O Doe1012Argentina2026-10-28
Johnson F Poquette1013Russia2026-10-18
Maria C Albares1014Australia2026-11-01
Jefferson M Butt1015Germany2026-10-09
Maisha F Foller1016Argentina2026-10-08
Aditya J Ferencz1017India2026-10-27
Jennifer S Gaucho1018Spain2026-10-18
Stacey U Kolmetz1019United Kingdom2026-10-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody J PoquetteIndiaXuxue Feng PROPOSAL
Claire K StensethJapanOnyama Limba NEW
Morrow L GillianArgentinaXuxue Feng NEW
Ivar U NestleBrazilElwin Sharvill QUALIFIED
Johnson G GlickSpainAsiya Javayant RENEWAL
Tony Y DarakjyUnited KingdomStephen Shaw QUALIFIED
Emily B FerenczAustraliaAmy Elsner UNQUALIFIED
Misaki X PerinBrazilIoni Bowcher QUALIFIED
Ivar H RoysterBrazilIoni Bowcher RENEWAL
Sinclair G MarrierBrazilIoni Bowcher RENEWAL
David M MaletGermanyAnna Fali UNQUALIFIED
Isabel G MacleadItalyXuxue Feng PROPOSAL
Leja D SaylorsIndiaAsiya Javayant QUALIFIED
David T KolmetzIndiaAsiya Javayant NEGOTIATION
Aika Q GarufiUnited KingdomIoni Bowcher QUALIFIED
Morrow O CaldareraItalyBernardo Dominic QUALIFIED
Arvin V VocelkaArgentinaIoni Bowcher PROPOSAL
Rodrigues Z CaudyFranceAnna Fali RENEWAL
Rodrigues J CampainGermanyOnyama Limba NEGOTIATION
Isabel V ButtFranceXuxue Feng QUALIFIED
Stacey N SaylorsIndiaAsiya Javayant NEW
Kadeem K ShinkoItalyElwin Sharvill NEW
Arvin J PoquetteJapanOnyama Limba NEW
Murillo M MacleadArgentinaAsiya Javayant NEW
Aika L PaprockiUnited KingdomAsiya Javayant QUALIFIED
Stacey P OldroydItalyStephen Shaw NEW
Aditya C FollerBrazilStephen Shaw NEGOTIATION
Greenwood Z CaldareraBrazilIvan Magalhaes NEGOTIATION
Claire L FerenczUnited KingdomStephen Shaw NEW
Wickens F NickaIndiaAnna Fali RENEWAL
Jones V FollerSpainAnna Fali QUALIFIED
Aruna X DarakjyBrazilStephen Shaw PROPOSAL
Munro M BowleyRussiaStephen Shaw RENEWAL
Antonio G MaletCanadaAmy Elsner UNQUALIFIED
Alejandro B RutaUnited KingdomXuxue Feng UNQUALIFIED
Deepesh R AlbaresUnited KingdomXuxue Feng NEW
Arvin C ChuiJapanAsiya Javayant UNQUALIFIED
Costa G SaylorsSpainAnna Fali QUALIFIED
Claire N PerinIndiaXuxue Feng QUALIFIED
Izzy M TollnerIndiaStephen Shaw 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>