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
Jeanfrancois V RutaItalyAnna Fali PROPOSAL
Chavez O RulapaughArgentinaOnyama Limba NEW
Mayumi B SergiJapanElwin Sharvill PROPOSAL
Salvatore W VenereRussiaStephen Shaw NEW
Faith L KolmetzBrazilXuxue Feng NEGOTIATION
Alejandro B DilliardArgentinaAnna Fali PROPOSAL
Isabel W KuskoJapanStephen Shaw PROPOSAL
Juan N GlickCanadaAnna Fali QUALIFIED
Juan X KolmetzBrazilAmy Elsner NEGOTIATION
Julie G SergiJapanElwin Sharvill RENEWAL
Arvin V VocelkaUnited KingdomIvan Magalhaes QUALIFIED
Smith Q TollnerSpainStephen Shaw NEW
Ivar W SlusarskiArgentinaXuxue Feng NEGOTIATION
Aditya T RoysterUnited KingdomAsiya Javayant QUALIFIED
David K SlusarskiCanadaBernardo Dominic NEW
Juan E GlickRussiaIvan Magalhaes NEW
Chavez S BologniaFranceElwin Sharvill NEW
Francesco U PoquetteBrazilAmy Elsner PROPOSAL
Stacey Y AmigonGermanyStephen Shaw NEW
Alejandro Q PaprockiArgentinaStephen Shaw RENEWAL
Sinclair O ChuiIndiaBernardo Dominic QUALIFIED
Salvatore H SergiGermanyXuxue Feng NEW
Jefferson A MaletUnited KingdomIvan Magalhaes NEGOTIATION
Stacey A GlickCanadaIoni Bowcher NEW
Kadeem B AlbaresCanadaStephen Shaw RENEWAL
Murillo U RutaFranceBernardo Dominic NEW
Cody T KolmetzSpainElwin Sharvill RENEWAL
Rodrigues C FerenczIndiaAnna Fali QUALIFIED
Sinclair V MacleadFranceIvan Magalhaes PROPOSAL
Jeanfrancois I CaldareraGermanyAmy Elsner NEW
Kadeem B GillianItalyAsiya Javayant RENEWAL
Nicolas F OstroskyRussiaIvan Magalhaes NEW
Mayumi V GauchoIndiaElwin Sharvill NEGOTIATION
Smith E PoquetteAustraliaElwin Sharvill QUALIFIED
Munro M GarufiRussiaAsiya Javayant RENEWAL
Misaki G NickaJapanIvan Magalhaes RENEWAL
Greenwood I CampainFranceIoni Bowcher QUALIFIED
James I PaprockiRussiaAsiya Javayant QUALIFIED
Mujtaba V DilliardIndiaAnna Fali NEGOTIATION
Jones K RutaJapanStephen Shaw RENEWAL
Nicolas Y SergiJapanOnyama Limba RENEWAL
James N StockhamBrazilAmy Elsner RENEWAL
Murillo F ChuiGermanyAsiya Javayant NEGOTIATION
Izzy T WaycottJapanOnyama Limba QUALIFIED
Octavia B StockhamSpainAnna Fali RENEWAL
Mayumi A ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Maria A BriddickSpainBernardo Dominic NEGOTIATION
Leon I ChuiSpainIvan Magalhaes NEW
Morrow E FollerBrazilAsiya Javayant UNQUALIFIED
Deepesh X NickaFranceAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Tony O KolmetzAustraliaIoni Bowcher QUALIFIED
Sinclair Y BriddickFranceAnna Fali UNQUALIFIED
Munro S RulapaughUnited KingdomXuxue Feng PROPOSAL
Stacey E TollnerRussiaXuxue Feng RENEWAL
Kaitlin N MarrierGermanyBernardo Dominic RENEWAL
Kaitlin E WhobreyAustraliaElwin Sharvill RENEWAL
Munro C DoeIndiaAsiya Javayant NEW
David U PaprockiItalyAsiya Javayant NEW
Juan S GarufiFranceAmy Elsner QUALIFIED
Costa M ButtRussiaIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro R ShinkoCanada2026-10-30Truhlar And Truhlar Attys NEW84Elwin Sharvill
1001Leon I RutaArgentina2026-10-25Feiner Bros RENEWAL13Asiya Javayant
1002Aruna Q GarufiGermany2026-10-02Rangoni Of Florence UNQUALIFIED22Ioni Bowcher
1003Salvatore K StockhamBrazil2026-10-17Morlong Associates UNQUALIFIED81Stephen Shaw
1004Cody N FollerItaly2026-10-02Truhlar And Truhlar Attys UNQUALIFIED28Stephen Shaw
1005Julie V OstroskyAustralia2026-10-21Truhlar And Truhlar Attys QUALIFIED60Ioni Bowcher
1006Antonio I FigeroaSpain2026-10-08Rangoni Of Florence PROPOSAL96Amy Elsner
1007Munro L GauchoGermany2026-10-03Printing Dimensions RENEWAL85Anna Fali
1008Nicolas D ShinkoSpain2026-10-09Feltz Printing Service RENEWAL30Ioni Bowcher
1009James V OstroskyBrazil2026-10-25Rousseaux, Michael Esq NEGOTIATION16Onyama Limba
1010Smith Z RimUnited Kingdom2026-10-09Commercial Press RENEWAL51Xuxue Feng
1011Munro G MaletItaly2026-10-18Feiner Bros NEGOTIATION8Ivan Magalhaes
1012Rodrigues M PoquetteFrance2026-10-22Printing Dimensions QUALIFIED81Ioni Bowcher
1013Jones C OstroskyAustralia2026-10-26Printing Dimensions NEGOTIATION77Stephen Shaw
1014Aruna X FlosiSpain2026-10-16Printing Dimensions QUALIFIED77Amy Elsner
1015Francesco F FlosiItaly2026-10-25Chemel, James L Cpa RENEWAL90Amy Elsner
1016James S StockhamCanada2026-10-29Commercial Press QUALIFIED88Amy Elsner
1017Isabel A MaletItaly2026-10-29King, Christopher A Esq RENEWAL87Anna Fali
1018Izzy A SaylorsUnited Kingdom2026-10-20Feiner Bros NEGOTIATION45Ivan Magalhaes
1019Claire M NestleJapan2026-10-06Commercial Press PROPOSAL38Bernardo Dominic
1020Wickens E MaletCanada2026-10-05Chanay, Jeffrey A Esq UNQUALIFIED62Amy Elsner
1021Kadeem F FerenczFrance2026-10-02Rousseaux, Michael Esq NEGOTIATION95Xuxue Feng
1022Sinclair M WaycottIndia2026-10-27King, Christopher A Esq UNQUALIFIED12Bernardo Dominic
1023Greenwood D CaudyBrazil2026-10-21Truhlar And Truhlar Attys QUALIFIED60Ivan Magalhaes
1024Francesco V MaletAustralia2026-10-25Benton, John B Jr RENEWAL26Amy Elsner
1025Faith M RulapaughArgentina2026-10-29Printing Dimensions UNQUALIFIED90Ioni Bowcher
1026Kaitlin J BologniaGermany2026-10-29Chapman, Ross E Esq NEGOTIATION90Ioni Bowcher
1027Faith I RutaArgentina2026-10-22Dorl, James J Esq QUALIFIED68Ivan Magalhaes
1028Murillo O SchemmerGermany2026-10-14Truhlar And Truhlar Attys UNQUALIFIED51Asiya Javayant
1029Arvin I StensethArgentina2026-10-21Morlong Associates PROPOSAL89Ivan Magalhaes
1030David M ButtCanada2026-10-05Printing Dimensions RENEWAL10Anna Fali
1031Arvin O SchemmerJapan2026-10-26Truhlar And Truhlar Attys QUALIFIED46Bernardo Dominic
1032Jefferson N GillianGermany2026-10-10Chemel, James L Cpa RENEWAL44Stephen Shaw
1033David S FerenczFrance2026-10-23Feiner Bros UNQUALIFIED45Anna Fali
1034Aditya I FlosiJapan2026-10-15Chapman, Ross E Esq NEW42Ioni Bowcher
1035Chavez H RimRussia2026-10-17Chemel, James L Cpa QUALIFIED11Anna Fali
1036Jeanfrancois R FerenczBrazil2026-10-11Rousseaux, Michael Esq NEW25Stephen Shaw
1037Jones R MaletIndia2026-10-18Dorl, James J Esq NEGOTIATION92Asiya Javayant
1038Alejandro V SaylorsJapan2026-10-30Chanay, Jeffrey A Esq NEW53Ivan Magalhaes
1039Ricardo A GauchoFrance2026-10-23Chapman, Ross E Esq NEW27Onyama Limba
1040Murillo Z BriddickRussia2026-10-09Chapman, Ross E Esq NEW25Stephen Shaw
1041Jeanfrancois F PerinGermany2026-10-27Chanay, Jeffrey A Esq RENEWAL91Ivan Magalhaes
1042Antonio B OldroydFrance2026-10-03Chanay, Jeffrey A Esq RENEWAL83Amy Elsner
1043Clifford G TollnerArgentina2026-10-20Chapman, Ross E Esq NEW34Asiya Javayant
1044Maisha I PoquetteCanada2026-10-23King, Christopher A Esq QUALIFIED93Bernardo Dominic
1045Tony X MarrierUnited Kingdom2026-10-14Chanay, Jeffrey A Esq NEGOTIATION81Xuxue Feng
1046Johnson C CaudyAustralia2026-10-23Dorl, James J Esq NEW11Bernardo Dominic
1047Arvin F FollerGermany2026-10-13Chapman, Ross E Esq UNQUALIFIED21Asiya Javayant
1048James E ChuiCanada2026-10-19Buckley Miller Wright NEW7Stephen Shaw
1049Wickens O VocelkaArgentina2026-10-31Rangoni Of Florence NEW54Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Jennifer C CaudyFranceStephen Shaw NEGOTIATION
Maisha B CaudySpainIoni Bowcher NEW
Greenwood B WhobreyFranceElwin Sharvill QUALIFIED
Leon V CaldareraFranceOnyama Limba QUALIFIED
Darci H GlickRussiaAsiya Javayant NEW
Maisha E FigeroaUnited KingdomAnna Fali RENEWAL
Jefferson V VocelkaFranceOnyama Limba PROPOSAL
Morrow X TollnerGermanyElwin Sharvill UNQUALIFIED
Aruna J MacleadIndiaAsiya Javayant QUALIFIED
Ricardo W CampainRussiaAsiya Javayant NEW
Rodrigues H PaprockiItalyIoni Bowcher NEW
Arvin W FollerIndiaIvan Magalhaes QUALIFIED
Kadeem Y DarakjyCanadaIvan Magalhaes NEGOTIATION
Greenwood L ButtItalyOnyama Limba NEGOTIATION
Stacey Q PaprockiFranceAsiya Javayant PROPOSAL
Smith D PoquetteCanadaAsiya Javayant QUALIFIED
Izzy P GarufiSpainStephen Shaw QUALIFIED
Cody Y PerinArgentinaXuxue Feng UNQUALIFIED
Isabel C KolmetzArgentinaAnna Fali QUALIFIED
Leon L AlbaresArgentinaAsiya Javayant NEGOTIATION
Claire W RimItalyAmy Elsner RENEWAL
Emily X BologniaCanadaStephen Shaw PROPOSAL
Johnson T VenereUnited KingdomIvan Magalhaes UNQUALIFIED
Faith M MaletGermanyAnna Fali QUALIFIED
Johnson C CampainIndiaXuxue Feng UNQUALIFIED
Greenwood X GlickIndiaAsiya Javayant UNQUALIFIED
Mayumi D OstroskyAustraliaAnna Fali NEW
Aika Y ButtItalyOnyama Limba NEGOTIATION
Leja X VenereArgentinaIoni Bowcher UNQUALIFIED
Kaitlin Z DarakjyRussiaAmy Elsner NEW
Aruna I FerenczUnited KingdomAnna Fali RENEWAL
Alejandro Z SaylorsGermanyIvan Magalhaes PROPOSAL
Tony F KuskoJapanAsiya Javayant PROPOSAL
Darci L GauchoAustraliaAmy Elsner QUALIFIED
Tony H RutaSpainAnna Fali RENEWAL
Rodrigues N CaldareraBrazilStephen Shaw UNQUALIFIED
David Q BriddickSpainIoni Bowcher RENEWAL
Alejandro G KuskoCanadaXuxue Feng QUALIFIED
Nicolas I ShinkoFranceElwin Sharvill PROPOSAL
Antonio B WaycottIndiaStephen Shaw NEW
Nicolas O BriddickJapanAmy Elsner UNQUALIFIED
Leon R NickaRussiaXuxue Feng UNQUALIFIED
Kadeem D CampainIndiaAsiya Javayant RENEWAL
Deepesh Z StensethJapanIoni Bowcher QUALIFIED
Claire P DarakjyUnited KingdomIvan Magalhaes UNQUALIFIED
Izzy O GarufiGermanyXuxue Feng RENEWAL
Sinclair F AlbaresSpainIoni Bowcher PROPOSAL
Clifford H NestleGermanyOnyama Limba NEGOTIATION
James P KolmetzIndiaStephen Shaw QUALIFIED
Leon U ChuiFranceIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Julie F Dilliard
Jennifer M Chui
Kadeem K Bolognia
Mayumi R Royster
Tony C Nestle
Murillo A Malet
Ivar C Vocelka
Faith Z Albares
Juan L Schemmer
Costa D Flosi
Cody G Campain
Mayumi E Flosi
Greenwood Q Schemmer
Misaki F Saylors
Maria B Albares
Costa C Foller
Kaitlin R Paprocki
Johnson Y Foller
Morrow I Butt
Jennifer R Gaucho
Sinclair C Waycott
Darci T Caldarera
Clifford I Ostrosky
Costa G Briddick
Aruna T Sergi
Wickens C Perin
Rodrigues K Iturbide
Izzy L Foller
Ashley K Royster
Silvio T Ferencz
Juan B Iturbide
Clifford R Whobrey
Octavia W Darakjy
Juan X Wieser
Antonio O Gaucho
Greenwood F Ferencz
Chavez D Bolognia
Misaki A Sergi
Adams B Wieser
Aika D Saylors
David K Waycott
Salvatore U Malet
Juan B Oldroyd
Wickens R Ferencz
David I Stenseth
Smith R Waycott
Leon I Marrier
Jones V Wieser
Isabel V Whobrey
Adams J Shinko
IdCountryDate
1000Brazil2026-10-26
1001Japan2026-10-23
1002Japan2026-10-23
1003Spain2026-10-27
1004United Kingdom2026-10-22
1005Brazil2026-10-25
1006Russia2026-10-16
1007Brazil2026-10-13
1008Russia2026-10-11
1009Italy2026-10-25
1010France2026-10-22
1011Russia2026-10-21
1012Australia2026-10-24
1013Australia2026-10-19
1014Germany2026-10-13
1015France2026-10-23
1016Japan2026-10-03
1017Australia2026-10-19
1018Spain2026-10-24
1019Italy2026-10-06
1020Japan2026-10-05
1021Canada2026-10-13
1022Japan2026-10-29
1023Germany2026-10-14
1024Brazil2026-10-18
1025Argentina2026-10-06
1026France2026-10-12
1027Japan2026-10-16
1028Germany2026-10-20
1029India2026-10-31
1030Germany2026-10-12
1031Argentina2026-10-18
1032Australia2026-10-13
1033France2026-10-22
1034India2026-10-20
1035Germany2026-10-16
1036Russia2026-10-23
1037Italy2026-10-26
1038Argentina2026-10-15
1039France2026-10-06
1040Argentina2026-10-13
1041India2026-10-28
1042Australia2026-10-16
1043Italy2026-10-03
1044Australia2026-10-12
1045Spain2026-10-24
1046Russia2026-10-14
1047Russia2026-10-29
1048Italy2026-10-19
1049Germany2026-10-15

On-Demand Data

NameIdCountryDate
Julie B Sergi1000United Kingdom2026-10-20
Aika S Kolmetz1001Japan2026-10-22
Misaki B Gillian1002Russia2026-10-31
James V Darakjy1003Germany2026-10-25
Smith H Maclead1004Brazil2026-10-29
Rodrigues Z Campain1005Argentina2026-10-13
Rodrigues U Ferencz1006Argentina2026-10-26
Leja O Bolognia1007Canada2026-10-03
Adams R Schemmer1008Germany2026-10-31
Nicolas B Figeroa1009India2026-10-06
Adams G Rulapaugh1010France2026-10-15
Aditya Q Whobrey1011Russia2026-10-02
Ivar U Amigon1012Japan2026-10-08
Faith R Briddick1013Argentina2026-10-02
Faith B Glick1014Canada2026-10-28
Smith C Gaucho1015India2026-10-13
Julie J Bowley1016Germany2026-10-19
Aruna N Malet1017India2026-10-27
Morrow X Kusko1018Japan2026-10-26
Arvin C Kolmetz1019Japan2026-10-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson A FigeroaRussiaAsiya Javayant QUALIFIED
Ivar U FlosiItalyIvan Magalhaes NEW
Jefferson D PerinUnited KingdomIoni Bowcher NEGOTIATION
Ivar Y CampainAustraliaBernardo Dominic QUALIFIED
Ivar N AmigonArgentinaAsiya Javayant UNQUALIFIED
Claire X FigeroaRussiaStephen Shaw UNQUALIFIED
Leon K GlickCanadaXuxue Feng QUALIFIED
Antonio L WieserAustraliaAmy Elsner PROPOSAL
Ricardo G PerinRussiaIoni Bowcher PROPOSAL
Costa H RoysterGermanyXuxue Feng PROPOSAL
Salvatore V NestleUnited KingdomAmy Elsner NEW
Juan G RutaAustraliaAmy Elsner UNQUALIFIED
Izzy A ShinkoCanadaStephen Shaw NEGOTIATION
Ricardo K FollerFranceAmy Elsner NEGOTIATION
Misaki X SergiGermanyIoni Bowcher NEW
Misaki H AlbaresBrazilAnna Fali NEW
Claire Q RimArgentinaStephen Shaw NEW
Sinclair Z RoysterAustraliaAmy Elsner NEW
Kadeem V PerinItalyAsiya Javayant NEW
Maisha P InouyeUnited KingdomOnyama Limba QUALIFIED
Clifford H FlosiGermanyXuxue Feng NEGOTIATION
Salvatore M ButtArgentinaStephen Shaw QUALIFIED
Alejandro V MacleadArgentinaElwin Sharvill QUALIFIED
James E RoysterSpainStephen Shaw QUALIFIED
Silvio Y AlbaresRussiaAnna Fali QUALIFIED
Kadeem J VocelkaRussiaXuxue Feng UNQUALIFIED
Isabel Z NestleGermanyStephen Shaw PROPOSAL
Julie G SlusarskiFranceIvan Magalhaes NEW
Aika T FlosiFranceAmy Elsner RENEWAL
Smith C KuskoCanadaBernardo Dominic NEGOTIATION
Francesco F RoysterGermanyStephen Shaw NEW
Leon G MarrierBrazilBernardo Dominic RENEWAL
Tony C GillianFranceIoni Bowcher NEW
Izzy G KuskoIndiaIoni Bowcher QUALIFIED
Faith F CaldareraFranceBernardo Dominic UNQUALIFIED
Maria L NickaUnited KingdomAsiya Javayant RENEWAL
Faith A MaletBrazilElwin Sharvill NEGOTIATION
Maria J RulapaughArgentinaIvan Magalhaes NEGOTIATION
Aditya W VocelkaAustraliaElwin Sharvill NEW
Aruna O CaldareraIndiaIoni Bowcher 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>