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
Ivar Q SaylorsItalyAnna Fali NEW
James F GauchoItalyAmy Elsner PROPOSAL
Rodrigues D RoysterSpainIoni Bowcher UNQUALIFIED
Johnson X StensethJapanOnyama Limba NEGOTIATION
Aika B MaletUnited KingdomAsiya Javayant QUALIFIED
Aditya E BowleyAustraliaIvan Magalhaes PROPOSAL
Emily Y GarufiArgentinaOnyama Limba NEGOTIATION
Clifford M MarrierAustraliaElwin Sharvill NEW
Jefferson T PerinIndiaAnna Fali NEGOTIATION
Aruna O MorascaRussiaOnyama Limba NEW
Clifford H ButtGermanyIvan Magalhaes RENEWAL
Silvio V PaprockiCanadaIvan Magalhaes NEW
Deepesh B FerenczGermanyStephen Shaw RENEWAL
Rodrigues B FigeroaIndiaBernardo Dominic PROPOSAL
Emily M AmigonJapanIoni Bowcher NEW
Munro M RulapaughSpainOnyama Limba NEGOTIATION
Faith H StockhamIndiaXuxue Feng NEW
Emily V PerinRussiaOnyama Limba UNQUALIFIED
Juan A VenereItalyBernardo Dominic RENEWAL
Stacey W WhobreyAustraliaAmy Elsner NEGOTIATION
Jones V InouyeBrazilIvan Magalhaes QUALIFIED
Silvio L WaycottAustraliaAmy Elsner NEW
Stacey Q NestleJapanAmy Elsner QUALIFIED
Misaki V GarufiFranceBernardo Dominic NEGOTIATION
Deepesh U IturbideCanadaAnna Fali PROPOSAL
Alejandro J OldroydUnited KingdomAsiya Javayant NEW
Munro V StockhamUnited KingdomAmy Elsner NEW
Izzy Y ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Juan P CampainFranceBernardo Dominic NEGOTIATION
Sinclair G MarrierRussiaStephen Shaw UNQUALIFIED
Cody M OldroydUnited KingdomAsiya Javayant NEW
Misaki P CaldareraIndiaAsiya Javayant PROPOSAL
Mayumi J DoeUnited KingdomAnna Fali RENEWAL
Deepesh Q SchemmerBrazilAsiya Javayant NEGOTIATION
Jeanfrancois K StensethSpainAnna Fali UNQUALIFIED
Wickens T MarrierBrazilElwin Sharvill NEGOTIATION
Arvin L BowleyJapanIoni Bowcher QUALIFIED
Costa J BologniaRussiaElwin Sharvill NEW
Claire W KuskoAustraliaAmy Elsner NEW
Antonio R KolmetzGermanyAmy Elsner RENEWAL
Chavez B FerenczFranceAsiya Javayant QUALIFIED
James D RulapaughFranceStephen Shaw NEGOTIATION
Stacey G NickaArgentinaIoni Bowcher NEW
Claire Z FlosiItalyIvan Magalhaes UNQUALIFIED
Octavia Y CaldareraCanadaAmy Elsner RENEWAL
Aika W TollnerIndiaStephen Shaw PROPOSAL
Claire A SaylorsUnited KingdomIoni Bowcher NEW
Aditya C MaletAustraliaStephen Shaw PROPOSAL
Alejandro D StensethItalyXuxue Feng RENEWAL
Tony L SaylorsSpainBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
David S StensethUnited KingdomXuxue Feng PROPOSAL
Octavia Z WieserGermanyAnna Fali QUALIFIED
Morrow X SaylorsRussiaIoni Bowcher UNQUALIFIED
Maisha J AlbaresItalyStephen Shaw NEGOTIATION
Tony W OldroydFranceIoni Bowcher NEGOTIATION
Johnson W StockhamIndiaIoni Bowcher QUALIFIED
Rodrigues G OstroskyArgentinaAsiya Javayant NEW
Nicolas R FlosiItalyAsiya Javayant PROPOSAL
Silvio Q ChuiUnited KingdomBernardo Dominic RENEWAL
Claire S FlosiItalyIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith N KuskoJapan2026-09-25Dorl, James J Esq QUALIFIED24Xuxue Feng
1001Emily J GarufiFrance2026-09-24Dorl, James J Esq RENEWAL69Asiya Javayant
1002Wickens A ButtArgentina2026-10-06Chemel, James L Cpa PROPOSAL33Amy Elsner
1003Antonio W FlosiArgentina2026-09-20Buckley Miller Wright QUALIFIED6Asiya Javayant
1004Arvin A CampainJapan2026-09-20Chemel, James L Cpa RENEWAL0Anna Fali
1005Leon B FigeroaBrazil2026-10-08Feiner Bros NEW36Stephen Shaw
1006James O IturbideSpain2026-10-10Rangoni Of Florence UNQUALIFIED59Bernardo Dominic
1007Emily S RoysterSpain2026-10-05Rangoni Of Florence RENEWAL92Stephen Shaw
1008Tony Q ShinkoSpain2026-09-22Rousseaux, Michael Esq PROPOSAL81Asiya Javayant
1009Darci P OstroskyIndia2026-10-11Rousseaux, Michael Esq PROPOSAL76Elwin Sharvill
1010Octavia B MorascaSpain2026-09-29Commercial Press NEGOTIATION51Ioni Bowcher
1011Rodrigues Z CaldareraIndia2026-10-12Feiner Bros PROPOSAL18Asiya Javayant
1012Darci P BologniaUnited Kingdom2026-09-24Rangoni Of Florence NEW91Ivan Magalhaes
1013Misaki Z MorascaCanada2026-09-15Buckley Miller Wright NEW47Asiya Javayant
1014Deepesh P MorascaJapan2026-09-23Benton, John B Jr UNQUALIFIED67Bernardo Dominic
1015Murillo U MarrierAustralia2026-10-02Morlong Associates RENEWAL1Ivan Magalhaes
1016Julie R KuskoAustralia2026-10-09Chanay, Jeffrey A Esq QUALIFIED49Ivan Magalhaes
1017Murillo R KuskoRussia2026-09-25Feltz Printing Service RENEWAL67Bernardo Dominic
1018Costa R FigeroaGermany2026-10-03Chanay, Jeffrey A Esq QUALIFIED50Asiya Javayant
1019Tony E MarrierGermany2026-09-29Dorl, James J Esq PROPOSAL65Ioni Bowcher
1020Wickens P VocelkaIndia2026-09-29Benton, John B Jr PROPOSAL20Onyama Limba
1021Silvio T BowleyBrazil2026-10-04Rousseaux, Michael Esq RENEWAL74Stephen Shaw
1022David I OldroydArgentina2026-10-02Dorl, James J Esq UNQUALIFIED52Ivan Magalhaes
1023Faith C AmigonItaly2026-09-23Commercial Press NEW33Elwin Sharvill
1024Wickens P KolmetzUnited Kingdom2026-10-11Feltz Printing Service UNQUALIFIED31Ioni Bowcher
1025Francesco X NickaIndia2026-10-07Buckley Miller Wright UNQUALIFIED32Bernardo Dominic
1026Alejandro L AlbaresJapan2026-09-30Feiner Bros PROPOSAL63Ivan Magalhaes
1027Claire D FlosiGermany2026-10-07Truhlar And Truhlar Attys QUALIFIED58Asiya Javayant
1028Rodrigues Y CaldareraArgentina2026-09-17Morlong Associates NEGOTIATION96Bernardo Dominic
1029Darci Q CaudyArgentina2026-10-09Buckley Miller Wright NEGOTIATION31Onyama Limba
1030Arvin I KolmetzGermany2026-09-29Rousseaux, Michael Esq QUALIFIED71Asiya Javayant
1031David G KolmetzJapan2026-10-05Benton, John B Jr UNQUALIFIED3Amy Elsner
1032Johnson I GauchoItaly2026-09-30Buckley Miller Wright NEGOTIATION0Asiya Javayant
1033Wickens V CampainUnited Kingdom2026-09-27Buckley Miller Wright NEW34Stephen Shaw
1034Clifford H IturbideIndia2026-09-24Feltz Printing Service NEW88Asiya Javayant
1035Sinclair H PaprockiItaly2026-09-19Printing Dimensions NEGOTIATION59Stephen Shaw
1036Ricardo X RimJapan2026-09-22Buckley Miller Wright QUALIFIED99Ivan Magalhaes
1037Salvatore B ShinkoGermany2026-09-19King, Christopher A Esq UNQUALIFIED42Bernardo Dominic
1038Mujtaba R FerenczIndia2026-10-09Chanay, Jeffrey A Esq QUALIFIED53Bernardo Dominic
1039Smith G WhobreyUnited Kingdom2026-10-09Chemel, James L Cpa NEW30Ivan Magalhaes
1040Deepesh E CaudyCanada2026-09-25Morlong Associates PROPOSAL49Anna Fali
1041Aruna D VenereItaly2026-10-03Chemel, James L Cpa PROPOSAL84Onyama Limba
1042Sinclair V PerinJapan2026-10-13Commercial Press NEGOTIATION16Onyama Limba
1043Kaitlin J FigeroaJapan2026-10-03Feltz Printing Service PROPOSAL26Xuxue Feng
1044Kadeem O AlbaresRussia2026-09-26Dorl, James J Esq NEGOTIATION42Ivan Magalhaes
1045Wickens P RutaJapan2026-09-30Chapman, Ross E Esq PROPOSAL85Anna Fali
1046Silvio V WieserArgentina2026-09-19Chapman, Ross E Esq NEGOTIATION92Stephen Shaw
1047Ashley Z GlickBrazil2026-09-17Morlong Associates NEW89Onyama Limba
1048Maisha M PaprockiIndia2026-10-07Morlong Associates NEW66Bernardo Dominic
1049Sinclair H MorascaIndia2026-09-24Commercial Press QUALIFIED39Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Maria O StensethFranceAnna Fali RENEWAL
Aruna W StockhamItalyAnna Fali RENEWAL
Jones R CaldareraArgentinaAsiya Javayant NEW
Emily J WieserCanadaOnyama Limba PROPOSAL
Mayumi L CaudyGermanyXuxue Feng NEW
Costa T PaprockiFranceIvan Magalhaes RENEWAL
Faith Q GillianIndiaOnyama Limba RENEWAL
Cody M ShinkoRussiaIvan Magalhaes NEGOTIATION
Octavia R FerenczGermanyOnyama Limba NEGOTIATION
Isabel I BowleyJapanIoni Bowcher NEW
Izzy U StockhamItalyStephen Shaw NEW
Faith Y FigeroaSpainElwin Sharvill NEW
Jennifer I MorascaFranceStephen Shaw PROPOSAL
Claire I FlosiGermanyAnna Fali UNQUALIFIED
Chavez Q CaudyJapanOnyama Limba PROPOSAL
Leon U KuskoBrazilBernardo Dominic UNQUALIFIED
Emily P RulapaughSpainXuxue Feng QUALIFIED
Jefferson Q RutaUnited KingdomAmy Elsner NEGOTIATION
Alejandro G BologniaRussiaAnna Fali UNQUALIFIED
Mayumi F DarakjyJapanAmy Elsner NEGOTIATION
Jones V VenereRussiaXuxue Feng PROPOSAL
Adams H GarufiIndiaIoni Bowcher PROPOSAL
Isabel Z FlosiBrazilAmy Elsner UNQUALIFIED
Jefferson J MaletJapanAsiya Javayant UNQUALIFIED
Morrow A WaycottFranceIoni Bowcher NEW
Francesco J TollnerIndiaElwin Sharvill PROPOSAL
Stacey V FigeroaItalyXuxue Feng QUALIFIED
Antonio H ChuiUnited KingdomElwin Sharvill PROPOSAL
James Z WhobreyAustraliaXuxue Feng QUALIFIED
Wickens Z DilliardJapanIoni Bowcher NEGOTIATION
Kadeem W PerinIndiaAmy Elsner RENEWAL
Maria T RimSpainElwin Sharvill NEGOTIATION
Juan M ShinkoIndiaBernardo Dominic RENEWAL
Ivar E BowleyIndiaAnna Fali NEW
Jones B PerinCanadaBernardo Dominic PROPOSAL
Sinclair L VenereArgentinaXuxue Feng NEW
Kaitlin A FigeroaSpainAsiya Javayant UNQUALIFIED
Stacey D SchemmerArgentinaElwin Sharvill NEGOTIATION
Antonio Q PoquetteBrazilAsiya Javayant NEW
Tony O PoquetteRussiaXuxue Feng NEGOTIATION
Jeanfrancois J NickaBrazilElwin Sharvill PROPOSAL
Tony X BriddickAustraliaXuxue Feng PROPOSAL
Sinclair I CaudyRussiaIoni Bowcher UNQUALIFIED
Francesco Y WaycottBrazilAnna Fali NEW
Emily D BriddickGermanyXuxue Feng PROPOSAL
Aruna K MarrierJapanAnna Fali NEGOTIATION
Jefferson K BowleyAustraliaXuxue Feng UNQUALIFIED
Francesco M GauchoRussiaElwin Sharvill NEW
Sinclair R CaldareraBrazilAsiya Javayant NEW
James N WaycottAustraliaIoni Bowcher NEW
Frozen Columns
Name
Greenwood M Sergi
Stacey M Marrier
Aika Y Nicka
Faith E Chui
Chavez R Vocelka
Juan W Oldroyd
Emily V Wieser
Clifford M Figeroa
Aika M Slusarski
Silvio S Ferencz
Jeanfrancois C Caldarera
Faith I Tollner
Isabel G Schemmer
Aditya P Nicka
Tony U Kolmetz
Claire I Bowley
Jennifer P Garufi
Morrow V Darakjy
Ricardo H Saylors
Claire F Caldarera
Chavez U Campain
Ashley O Marrier
Smith Q Maclead
Adams B Stenseth
Misaki E Whobrey
Rodrigues X Campain
Julie U Gillian
Morrow H Kolmetz
Silvio H Darakjy
Ricardo A Inouye
Johnson N Nestle
Cody K Briddick
Isabel U Rulapaugh
Deepesh E Ostrosky
Mayumi E Foller
Julie I Schemmer
Misaki I Nestle
Antonio P Caldarera
Maisha D Nicka
Sinclair J Bowley
Jeanfrancois I Ostrosky
Ivar B Morasca
Julie D Iturbide
Mayumi Z Tollner
Isabel Z Malet
Mujtaba C Vocelka
Antonio P Whobrey
Arvin Z Albares
Greenwood M Morasca
Morrow I Venere
IdCountryDate
1000Germany2026-10-10
1001Germany2026-10-11
1002United Kingdom2026-09-27
1003Canada2026-09-16
1004Spain2026-09-17
1005Japan2026-10-03
1006Germany2026-10-01
1007Russia2026-09-27
1008Australia2026-09-19
1009Russia2026-09-18
1010Italy2026-10-10
1011United Kingdom2026-10-09
1012Brazil2026-09-17
1013Japan2026-10-13
1014Brazil2026-09-29
1015Australia2026-09-22
1016Brazil2026-09-29
1017Brazil2026-09-16
1018India2026-09-20
1019Germany2026-09-22
1020Russia2026-09-28
1021Canada2026-09-22
1022Canada2026-10-09
1023Russia2026-10-03
1024Brazil2026-09-24
1025Spain2026-10-08
1026United Kingdom2026-09-19
1027Italy2026-10-08
1028Spain2026-10-01
1029Canada2026-09-21
1030Canada2026-10-10
1031Argentina2026-09-30
1032Russia2026-10-02
1033United Kingdom2026-10-06
1034Italy2026-10-06
1035Australia2026-09-17
1036Italy2026-09-29
1037Brazil2026-09-24
1038United Kingdom2026-09-28
1039Argentina2026-10-14
1040France2026-10-05
1041Australia2026-10-07
1042France2026-09-28
1043Germany2026-10-04
1044Germany2026-10-08
1045Italy2026-09-20
1046Russia2026-10-13
1047Japan2026-09-25
1048Spain2026-09-19
1049Japan2026-09-15

On-Demand Data

NameIdCountryDate
Salvatore F Chui1000Canada2026-09-18
Wickens F Schemmer1001Australia2026-09-23
Juan G Nestle1002France2026-09-18
Isabel X Shinko1003Japan2026-10-10
Julie Z Dilliard1004Italy2026-09-19
Octavia G Darakjy1005Australia2026-09-15
Leon O Dilliard1006United Kingdom2026-09-29
Deepesh G Rim1007Germany2026-10-04
Tony R Stenseth1008France2026-09-23
Tony N Shinko1009Australia2026-10-02
Murillo P Doe1010India2026-09-19
Mujtaba W Flosi1011Russia2026-10-03
Adams H Glick1012Canada2026-09-23
Kadeem Y Figeroa1013Spain2026-10-09
Misaki W Sergi1014Brazil2026-09-24
Wickens Z Whobrey1015Argentina2026-09-17
Rodrigues S Bolognia1016Japan2026-10-12
Costa G Amigon1017Canada2026-09-20
Mayumi W Tollner1018Spain2026-10-03
Francesco A Poquette1019Australia2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony H TollnerItalyIvan Magalhaes PROPOSAL
Greenwood L ButtBrazilAnna Fali QUALIFIED
Jeanfrancois F NickaBrazilAnna Fali UNQUALIFIED
Darci G NickaItalyAsiya Javayant RENEWAL
David U NickaItalyAmy Elsner RENEWAL
Jefferson K DarakjyAustraliaAnna Fali QUALIFIED
Ashley K DoeIndiaAsiya Javayant NEGOTIATION
Kaitlin W NestleSpainElwin Sharvill NEW
Ricardo W MacleadBrazilBernardo Dominic PROPOSAL
Alejandro J OstroskyItalyOnyama Limba PROPOSAL
Leon G OstroskyArgentinaAnna Fali UNQUALIFIED
Aruna K AmigonBrazilStephen Shaw PROPOSAL
Kadeem O RutaCanadaXuxue Feng NEGOTIATION
Francesco L FigeroaAustraliaAnna Fali QUALIFIED
Maria H AmigonItalyIvan Magalhaes PROPOSAL
Aruna H BowleyGermanyIoni Bowcher UNQUALIFIED
Aika T CampainRussiaIoni Bowcher PROPOSAL
Stacey J DarakjyIndiaOnyama Limba NEW
Misaki Z ShinkoUnited KingdomStephen Shaw PROPOSAL
Nicolas O SergiGermanyOnyama Limba NEGOTIATION
Isabel S RulapaughFranceElwin Sharvill QUALIFIED
Ivar G CampainSpainStephen Shaw NEW
Stacey Y SergiGermanyXuxue Feng PROPOSAL
Costa N StensethFranceIoni Bowcher PROPOSAL
Salvatore D RimSpainAsiya Javayant QUALIFIED
Costa S ButtUnited KingdomAmy Elsner NEW
Morrow W MacleadItalyIvan Magalhaes NEW
Morrow S AmigonUnited KingdomIoni Bowcher NEGOTIATION
Kadeem L AlbaresFranceOnyama Limba RENEWAL
Arvin Q WhobreyJapanOnyama Limba NEGOTIATION
Kadeem U AlbaresSpainAnna Fali RENEWAL
Kadeem Z ButtCanadaBernardo Dominic NEGOTIATION
Adams N MaletUnited KingdomBernardo Dominic NEGOTIATION
Darci Q OldroydRussiaAnna Fali NEW
Octavia D WieserGermanyElwin Sharvill RENEWAL
Alejandro R BriddickAustraliaOnyama Limba RENEWAL
Aika B GauchoUnited KingdomAsiya Javayant NEW
Morrow I InouyeIndiaAnna Fali NEGOTIATION
Alejandro P FollerUnited KingdomElwin Sharvill NEGOTIATION
Johnson T NickaCanadaAsiya Javayant 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>