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
Antonio V FollerJapanXuxue Feng QUALIFIED
Leja P RutaArgentinaBernardo Dominic NEW
Mujtaba G PoquetteFranceIvan Magalhaes RENEWAL
Clifford X AmigonItalyIoni Bowcher QUALIFIED
Kadeem M StockhamIndiaOnyama Limba PROPOSAL
Mayumi Z BriddickRussiaAsiya Javayant RENEWAL
Rodrigues Z RulapaughSpainXuxue Feng PROPOSAL
Jennifer Z SchemmerJapanIvan Magalhaes QUALIFIED
Rodrigues M FigeroaFranceAmy Elsner NEW
Clifford S WaycottCanadaAmy Elsner NEW
Francesco H KolmetzArgentinaStephen Shaw QUALIFIED
Costa B IturbideJapanAnna Fali UNQUALIFIED
Maisha F AmigonBrazilAmy Elsner RENEWAL
Munro R AlbaresCanadaIvan Magalhaes NEW
Faith O PerinGermanyAnna Fali NEW
Antonio M DilliardJapanAsiya Javayant UNQUALIFIED
Jefferson E DarakjyJapanAsiya Javayant RENEWAL
Chavez M ButtFranceIoni Bowcher NEW
Deepesh C PoquetteFranceStephen Shaw RENEWAL
Maria A WhobreyRussiaAsiya Javayant NEW
Sinclair V VenereAustraliaAnna Fali NEGOTIATION
Maisha K DarakjyCanadaIoni Bowcher NEGOTIATION
Jones K MorascaUnited KingdomBernardo Dominic NEW
Adams Z FigeroaGermanyBernardo Dominic NEGOTIATION
Adams Z CaldareraIndiaStephen Shaw QUALIFIED
Faith T GarufiAustraliaAnna Fali NEGOTIATION
Clifford L CaudySpainBernardo Dominic NEGOTIATION
Johnson Z SlusarskiIndiaAmy Elsner UNQUALIFIED
Faith U AlbaresCanadaElwin Sharvill RENEWAL
Stacey Q MarrierRussiaAnna Fali NEW
David M RoysterGermanyElwin Sharvill NEGOTIATION
Leon N CaudyRussiaElwin Sharvill PROPOSAL
Kaitlin E BowleyJapanIvan Magalhaes NEW
Rodrigues P PerinJapanIoni Bowcher NEGOTIATION
Rodrigues N GlickAustraliaAmy Elsner UNQUALIFIED
Silvio W SaylorsJapanOnyama Limba UNQUALIFIED
Adams M FollerIndiaXuxue Feng NEW
Costa I StockhamAustraliaIoni Bowcher NEW
Silvio K VenereRussiaXuxue Feng UNQUALIFIED
Leja O WieserIndiaIvan Magalhaes QUALIFIED
Wickens D WaycottJapanIoni Bowcher QUALIFIED
Julie H CampainFranceAnna Fali UNQUALIFIED
Greenwood G NestleArgentinaAnna Fali RENEWAL
Rodrigues E DarakjyCanadaAnna Fali UNQUALIFIED
Jeanfrancois M AlbaresFranceStephen Shaw RENEWAL
Tony V WhobreySpainAmy Elsner UNQUALIFIED
Leon O SlusarskiArgentinaStephen Shaw NEW
Ashley D BriddickUnited KingdomOnyama Limba QUALIFIED
Izzy U RutaAustraliaAsiya Javayant NEW
Johnson I GlickJapanStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Ashley V RutaRussiaElwin Sharvill PROPOSAL
Morrow P FerenczGermanyOnyama Limba RENEWAL
Octavia D DilliardBrazilOnyama Limba PROPOSAL
Isabel H VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Jefferson J PaprockiBrazilAnna Fali UNQUALIFIED
Darci K CaldareraCanadaStephen Shaw NEGOTIATION
Smith U ShinkoIndiaAnna Fali PROPOSAL
Maria R WaycottBrazilIoni Bowcher NEW
Kadeem X NestleGermanyOnyama Limba QUALIFIED
Wickens J FerenczSpainOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens L ButtItaly2026-11-12Feltz Printing Service NEW26Anna Fali
1001Jones R ButtIndia2026-11-11Chemel, James L Cpa RENEWAL72Stephen Shaw
1002Alejandro E KuskoFrance2026-11-03Benton, John B Jr PROPOSAL95Elwin Sharvill
1003Smith Q PerinAustralia2026-10-23Feiner Bros NEW60Ioni Bowcher
1004Leja F SergiBrazil2026-10-14Chanay, Jeffrey A Esq NEGOTIATION55Elwin Sharvill
1005Antonio O ChuiRussia2026-11-11Benton, John B Jr NEW40Xuxue Feng
1006Deepesh W BologniaCanada2026-10-18Feiner Bros PROPOSAL13Anna Fali
1007Rodrigues Z FollerSpain2026-11-10Chanay, Jeffrey A Esq RENEWAL33Anna Fali
1008Maisha I RutaSpain2026-11-12Printing Dimensions NEGOTIATION37Xuxue Feng
1009Jefferson X SchemmerItaly2026-10-18Feiner Bros UNQUALIFIED17Elwin Sharvill
1010Faith M IturbideCanada2026-10-17King, Christopher A Esq UNQUALIFIED48Onyama Limba
1011Aditya N MaletGermany2026-11-09Printing Dimensions PROPOSAL8Asiya Javayant
1012Ivar T InouyeCanada2026-10-21Printing Dimensions QUALIFIED95Elwin Sharvill
1013Aditya O MacleadSpain2026-10-21Chemel, James L Cpa QUALIFIED18Elwin Sharvill
1014Emily N FerenczIndia2026-10-15King, Christopher A Esq NEW79Asiya Javayant
1015James B GillianIndia2026-11-09Morlong Associates NEW79Xuxue Feng
1016Ivar A VenereBrazil2026-10-27Benton, John B Jr PROPOSAL90Amy Elsner
1017Octavia N WaycottIndia2026-10-17Dorl, James J Esq PROPOSAL97Bernardo Dominic
1018Jeanfrancois B FerenczIndia2026-10-30Benton, John B Jr QUALIFIED94Stephen Shaw
1019Greenwood Q WaycottUnited Kingdom2026-10-20Benton, John B Jr NEW78Anna Fali
1020Morrow U SaylorsUnited Kingdom2026-11-04Rousseaux, Michael Esq RENEWAL77Ioni Bowcher
1021Aditya S BriddickJapan2026-10-31Feiner Bros RENEWAL71Amy Elsner
1022Costa W FigeroaIndia2026-11-12Morlong Associates RENEWAL59Stephen Shaw
1023Adams O CaldareraRussia2026-11-08Benton, John B Jr NEGOTIATION34Stephen Shaw
1024Maria M WhobreyArgentina2026-11-08Chapman, Ross E Esq RENEWAL85Bernardo Dominic
1025Juan H SchemmerJapan2026-10-30Chemel, James L Cpa UNQUALIFIED74Xuxue Feng
1026Arvin L StensethSpain2026-10-21Feltz Printing Service UNQUALIFIED0Stephen Shaw
1027Darci R InouyeFrance2026-10-16Morlong Associates NEGOTIATION41Onyama Limba
1028Nicolas Z WieserFrance2026-11-12Commercial Press PROPOSAL94Onyama Limba
1029James W RutaFrance2026-10-17Feltz Printing Service PROPOSAL50Ioni Bowcher
1030Misaki J FlosiSpain2026-10-19Benton, John B Jr PROPOSAL18Ioni Bowcher
1031Jeanfrancois C KolmetzJapan2026-10-27Chapman, Ross E Esq PROPOSAL20Onyama Limba
1032Ivar Y AmigonBrazil2026-10-28King, Christopher A Esq RENEWAL14Amy Elsner
1033Emily C TollnerBrazil2026-10-27Chemel, James L Cpa QUALIFIED30Bernardo Dominic
1034Wickens J NickaRussia2026-10-21Rousseaux, Michael Esq UNQUALIFIED67Amy Elsner
1035Jennifer C RoysterGermany2026-11-05Buckley Miller Wright RENEWAL35Ioni Bowcher
1036Jones I WaycottJapan2026-10-24Dorl, James J Esq NEW73Amy Elsner
1037Aruna O CaudyArgentina2026-10-17Commercial Press RENEWAL76Elwin Sharvill
1038Tony O PoquetteFrance2026-11-08Truhlar And Truhlar Attys RENEWAL72Anna Fali
1039Isabel B AlbaresSpain2026-11-12King, Christopher A Esq UNQUALIFIED98Bernardo Dominic
1040Adams A FerenczAustralia2026-10-18Benton, John B Jr UNQUALIFIED71Onyama Limba
1041Murillo K TollnerFrance2026-11-10Chanay, Jeffrey A Esq RENEWAL21Ivan Magalhaes
1042Claire U SaylorsArgentina2026-10-18Dorl, James J Esq NEGOTIATION63Ioni Bowcher
1043James D MacleadRussia2026-11-11Morlong Associates UNQUALIFIED71Stephen Shaw
1044Alejandro L FigeroaArgentina2026-11-11Buckley Miller Wright UNQUALIFIED98Bernardo Dominic
1045Jeanfrancois U MacleadRussia2026-10-16Benton, John B Jr NEW52Xuxue Feng
1046Smith K SaylorsUnited Kingdom2026-11-08Commercial Press NEGOTIATION51Amy Elsner
1047Cody E TollnerItaly2026-11-02Chemel, James L Cpa UNQUALIFIED0Ioni Bowcher
1048Greenwood M GauchoJapan2026-10-21King, Christopher A Esq QUALIFIED73Onyama Limba
1049Octavia N KolmetzRussia2026-11-03Buckley Miller Wright PROPOSAL25Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jones U CaldareraJapanBernardo Dominic RENEWAL
Maisha S CaudyUnited KingdomAnna Fali NEW
Clifford Y AlbaresItalyOnyama Limba UNQUALIFIED
Rodrigues P NickaGermanyElwin Sharvill QUALIFIED
Aruna X WhobreyUnited KingdomOnyama Limba NEW
Arvin P FollerItalyIvan Magalhaes NEW
Julie O NestleSpainXuxue Feng PROPOSAL
Sinclair B WieserRussiaOnyama Limba NEW
Morrow Y GlickJapanIoni Bowcher RENEWAL
Jeanfrancois S CampainBrazilOnyama Limba NEGOTIATION
Aditya O MorascaSpainXuxue Feng NEW
Murillo W PerinItalyStephen Shaw PROPOSAL
Adams K NestleBrazilAnna Fali UNQUALIFIED
Juan K VenereJapanBernardo Dominic NEW
Ivar D VenereFranceElwin Sharvill QUALIFIED
Clifford K BriddickUnited KingdomXuxue Feng PROPOSAL
Octavia J GauchoUnited KingdomElwin Sharvill UNQUALIFIED
Mayumi E PerinGermanyElwin Sharvill RENEWAL
Kaitlin D PerinCanadaElwin Sharvill PROPOSAL
Ricardo L NickaRussiaIoni Bowcher NEGOTIATION
Misaki T TollnerBrazilBernardo Dominic RENEWAL
Smith K BologniaIndiaAnna Fali RENEWAL
Julie X VocelkaCanadaAmy Elsner PROPOSAL
Faith D BologniaCanadaBernardo Dominic NEW
Adams B RulapaughSpainAsiya Javayant RENEWAL
Stacey D PerinJapanXuxue Feng PROPOSAL
Aditya M GlickItalyBernardo Dominic PROPOSAL
Clifford M IturbideItalyElwin Sharvill UNQUALIFIED
Nicolas B WieserFranceAnna Fali RENEWAL
Antonio T TollnerRussiaStephen Shaw QUALIFIED
Juan H CaudySpainOnyama Limba UNQUALIFIED
Cody A MarrierCanadaStephen Shaw UNQUALIFIED
Murillo O BologniaJapanXuxue Feng PROPOSAL
Kaitlin H PaprockiUnited KingdomAnna Fali UNQUALIFIED
James V DilliardJapanAmy Elsner NEGOTIATION
Cody X RoysterAustraliaAsiya Javayant NEGOTIATION
Francesco G FigeroaRussiaXuxue Feng NEGOTIATION
Alejandro H DarakjyCanadaBernardo Dominic NEW
Morrow T ShinkoArgentinaAnna Fali RENEWAL
Juan E RulapaughSpainAsiya Javayant PROPOSAL
Julie U AlbaresItalyAsiya Javayant PROPOSAL
Tony A MarrierCanadaElwin Sharvill NEW
Maria H OstroskyAustraliaStephen Shaw UNQUALIFIED
Kaitlin S OldroydJapanOnyama Limba QUALIFIED
Maria S GillianArgentinaXuxue Feng RENEWAL
Faith S VocelkaArgentinaBernardo Dominic NEW
Antonio T InouyeSpainXuxue Feng PROPOSAL
Arvin D PaprockiAustraliaOnyama Limba RENEWAL
Isabel D MaletSpainStephen Shaw PROPOSAL
Stacey J DilliardFranceXuxue Feng NEGOTIATION
Frozen Columns
Name
Izzy E Campain
Tony S Glick
Emily B Tollner
Morrow O Darakjy
Juan I Gillian
Kaitlin W Poquette
Wickens G Garufi
Emily V Chui
Sinclair I Chui
James M Ostrosky
Ashley N Gillian
Mujtaba C Morasca
Tony P Nicka
Smith P Rulapaugh
Jefferson N Stenseth
Wickens R Waycott
Antonio R Perin
Jefferson H Marrier
Maria I Waycott
Jennifer J Maclead
Stacey L Chui
Mayumi F Iturbide
Cody J Ostrosky
Mayumi Y Bolognia
Aika T Royster
Darci A Poquette
Maisha V Marrier
Cody C Venere
Maisha B Flosi
Aika U Oldroyd
Faith J Schemmer
Misaki I Garufi
Munro O Bolognia
Ricardo P Tollner
Izzy H Ferencz
Ivar Y Poquette
Jefferson V Butt
Juan J Nestle
Aruna S Wieser
Kadeem J Wieser
Jennifer C Maclead
Jeanfrancois I Nicka
Francesco O Waycott
Jennifer Z Maclead
Mayumi K Gaucho
Murillo A Rulapaugh
Aditya R Chui
Greenwood R Ruta
Faith M Stockham
Octavia S Whobrey
IdCountryDate
1000Brazil2026-11-09
1001Brazil2026-10-27
1002France2026-10-28
1003India2026-10-20
1004Japan2026-11-04
1005Canada2026-10-14
1006United Kingdom2026-10-28
1007Germany2026-11-10
1008Brazil2026-11-05
1009Italy2026-10-31
1010Canada2026-10-19
1011Argentina2026-10-31
1012France2026-10-17
1013Germany2026-11-07
1014United Kingdom2026-10-23
1015Argentina2026-10-23
1016United Kingdom2026-10-16
1017Russia2026-11-05
1018France2026-10-25
1019Japan2026-11-05
1020India2026-11-02
1021Canada2026-10-24
1022France2026-10-15
1023Brazil2026-11-01
1024Japan2026-10-24
1025Russia2026-11-09
1026France2026-10-20
1027Australia2026-10-19
1028Spain2026-10-15
1029Russia2026-11-01
1030Italy2026-10-25
1031Japan2026-10-29
1032Argentina2026-10-30
1033Germany2026-10-18
1034Italy2026-10-23
1035Brazil2026-10-15
1036Germany2026-10-18
1037France2026-11-02
1038Brazil2026-10-15
1039India2026-11-07
1040France2026-10-14
1041Spain2026-11-10
1042United Kingdom2026-10-24
1043Spain2026-11-01
1044United Kingdom2026-11-02
1045Canada2026-11-02
1046United Kingdom2026-10-14
1047Canada2026-10-23
1048Brazil2026-10-17
1049India2026-10-31

On-Demand Data

NameIdCountryDate
Izzy B Chui1000Germany2026-11-12
Greenwood I Paprocki1001Italy2026-11-12
Tony V Doe1002Russia2026-10-26
Julie N Marrier1003Japan2026-11-05
Wickens R Waycott1004Argentina2026-10-21
Leon Z Wieser1005Spain2026-10-16
Jeanfrancois C Royster1006Spain2026-11-02
Leja V Maclead1007Spain2026-10-18
Claire C Ostrosky1008Spain2026-10-20
Julie J Saylors1009Spain2026-10-27
Emily Y Flosi1010Russia2026-10-15
Smith M Malet1011Spain2026-11-05
Maisha Y Stockham1012France2026-10-24
Arvin T Kolmetz1013United Kingdom2026-11-04
Johnson U Maclead1014France2026-11-09
Ivar Q Chui1015Italy2026-11-01
Arvin H Stockham1016Russia2026-10-23
Morrow W Saylors1017Spain2026-11-11
Costa U Stockham1018Japan2026-10-16
Izzy T Flosi1019Brazil2026-10-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James C OldroydFranceXuxue Feng QUALIFIED
Leja M TollnerIndiaOnyama Limba NEW
Greenwood E ShinkoIndiaXuxue Feng RENEWAL
Johnson B PerinSpainXuxue Feng PROPOSAL
Isabel M OstroskySpainBernardo Dominic RENEWAL
Antonio A SchemmerIndiaIvan Magalhaes RENEWAL
Adams S StensethItalyXuxue Feng PROPOSAL
Johnson J BowleyAustraliaAmy Elsner RENEWAL
Silvio Z MaletUnited KingdomElwin Sharvill PROPOSAL
James T ShinkoGermanyIvan Magalhaes NEGOTIATION
Kadeem Q ChuiCanadaOnyama Limba UNQUALIFIED
Jeanfrancois W MorascaArgentinaAsiya Javayant PROPOSAL
Kaitlin I SergiGermanyBernardo Dominic NEGOTIATION
Jeanfrancois E RoysterCanadaIvan Magalhaes NEGOTIATION
Murillo B InouyeAustraliaBernardo Dominic NEGOTIATION
Julie S RoysterRussiaXuxue Feng NEW
Darci H GauchoBrazilAsiya Javayant UNQUALIFIED
Stacey K WieserSpainXuxue Feng UNQUALIFIED
David R SlusarskiGermanyAmy Elsner RENEWAL
Jeanfrancois A SchemmerArgentinaAsiya Javayant NEGOTIATION
Aditya B ShinkoGermanyStephen Shaw RENEWAL
Tony D SlusarskiSpainXuxue Feng PROPOSAL
Chavez U BologniaBrazilIoni Bowcher UNQUALIFIED
Juan O MorascaCanadaAsiya Javayant RENEWAL
Isabel T PerinGermanyIoni Bowcher PROPOSAL
Julie B StensethArgentinaStephen Shaw NEGOTIATION
Juan W InouyeBrazilIvan Magalhaes UNQUALIFIED
Sinclair H BologniaSpainStephen Shaw PROPOSAL
Sinclair K AmigonArgentinaOnyama Limba NEW
Julie Q PerinBrazilIvan Magalhaes PROPOSAL
Johnson D DilliardJapanIoni Bowcher NEW
Izzy Z StensethBrazilStephen Shaw PROPOSAL
Alejandro J TollnerGermanyAmy Elsner QUALIFIED
Jennifer Y RimArgentinaStephen Shaw UNQUALIFIED
Aruna F OstroskyUnited KingdomAnna Fali QUALIFIED
Deepesh L DilliardItalyOnyama Limba UNQUALIFIED
David U RoysterRussiaAsiya Javayant NEW
Jeanfrancois G TollnerIndiaStephen Shaw RENEWAL
David U OstroskyBrazilAmy Elsner RENEWAL
Munro Y RulapaughUnited KingdomBernardo Dominic 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>