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
Clifford Q DarakjyGermanyIoni Bowcher QUALIFIED
Rodrigues I RimArgentinaElwin Sharvill PROPOSAL
Jennifer C FollerFranceElwin Sharvill PROPOSAL
Adams C GarufiIndiaAnna Fali PROPOSAL
Chavez S SaylorsJapanXuxue Feng PROPOSAL
Wickens D SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Smith F PaprockiItalyStephen Shaw PROPOSAL
Isabel R RulapaughUnited KingdomIoni Bowcher NEGOTIATION
Juan L AmigonArgentinaAmy Elsner UNQUALIFIED
Ashley Q RoysterArgentinaBernardo Dominic RENEWAL
Jennifer O OldroydBrazilStephen Shaw UNQUALIFIED
Deepesh M GauchoUnited KingdomIoni Bowcher NEW
Stacey H FlosiIndiaElwin Sharvill PROPOSAL
Leon W DoeAustraliaElwin Sharvill NEGOTIATION
Octavia L SchemmerFranceIvan Magalhaes QUALIFIED
Ricardo M ButtArgentinaIvan Magalhaes NEW
Murillo C NickaArgentinaXuxue Feng UNQUALIFIED
Leja J AlbaresArgentinaBernardo Dominic UNQUALIFIED
Clifford Q StockhamIndiaOnyama Limba UNQUALIFIED
Octavia I NickaGermanyStephen Shaw RENEWAL
Emily Q KuskoArgentinaAsiya Javayant NEW
Jennifer M GillianAustraliaAnna Fali NEW
Misaki D StensethCanadaBernardo Dominic UNQUALIFIED
Maisha P GlickJapanIvan Magalhaes NEGOTIATION
Ricardo W BriddickBrazilAmy Elsner NEW
Isabel R ChuiJapanOnyama Limba RENEWAL
Silvio H WieserIndiaAnna Fali QUALIFIED
Izzy E InouyeIndiaStephen Shaw PROPOSAL
Greenwood X NestleGermanyAsiya Javayant RENEWAL
Stacey Y AmigonJapanBernardo Dominic NEGOTIATION
Stacey J PoquetteGermanyIvan Magalhaes UNQUALIFIED
Emily W WaycottUnited KingdomBernardo Dominic UNQUALIFIED
Isabel E CaudyFranceOnyama Limba NEGOTIATION
James P SergiUnited KingdomIvan Magalhaes NEW
Faith X FlosiAustraliaIoni Bowcher PROPOSAL
Darci T FerenczArgentinaStephen Shaw PROPOSAL
Aruna D CampainUnited KingdomIoni Bowcher RENEWAL
Jeanfrancois N VocelkaUnited KingdomAsiya Javayant QUALIFIED
Octavia M FlosiIndiaAnna Fali NEW
Faith H PoquetteIndiaAnna Fali NEW
Greenwood W IturbideItalyElwin Sharvill RENEWAL
Rodrigues K TollnerIndiaXuxue Feng UNQUALIFIED
Arvin R GlickGermanyElwin Sharvill QUALIFIED
Smith W MorascaSpainAsiya Javayant RENEWAL
Ashley Y FlosiSpainIoni Bowcher NEGOTIATION
Faith Q WieserFranceIvan Magalhaes NEW
David D InouyeRussiaOnyama Limba NEW
Morrow C ButtAustraliaStephen Shaw NEW
Maria U FerenczSpainStephen Shaw NEGOTIATION
Jefferson I RulapaughCanadaAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin Q DarakjyIndiaAsiya Javayant QUALIFIED
Murillo D BriddickJapanIoni Bowcher NEW
Octavia Z ChuiIndiaOnyama Limba RENEWAL
Ivar K PoquetteBrazilOnyama Limba PROPOSAL
Kadeem K GarufiCanadaElwin Sharvill NEGOTIATION
Sinclair Q DilliardRussiaAmy Elsner NEW
Costa H CaldareraBrazilAnna Fali NEGOTIATION
Maria I SchemmerIndiaIvan Magalhaes RENEWAL
Mayumi O ButtIndiaAnna Fali NEW
Maisha F StensethArgentinaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez A FerenczSpain2026-10-06Buckley Miller Wright NEGOTIATION89Xuxue Feng
1001Chavez O SergiAustralia2026-10-07Feiner Bros RENEWAL32Stephen Shaw
1002Kaitlin O AmigonItaly2026-10-07King, Christopher A Esq UNQUALIFIED56Ioni Bowcher
1003Alejandro V NestleRussia2026-09-18Rangoni Of Florence NEGOTIATION96Amy Elsner
1004Aruna G BologniaItaly2026-09-29Buckley Miller Wright UNQUALIFIED25Bernardo Dominic
1005Tony C SaylorsCanada2026-10-04King, Christopher A Esq RENEWAL64Ivan Magalhaes
1006Rodrigues W GillianFrance2026-10-11Benton, John B Jr NEGOTIATION13Bernardo Dominic
1007Murillo Z GauchoAustralia2026-10-01King, Christopher A Esq QUALIFIED6Bernardo Dominic
1008Claire T CaldareraFrance2026-09-29Dorl, James J Esq NEGOTIATION6Amy Elsner
1009Misaki K OstroskyArgentina2026-10-04Dorl, James J Esq NEGOTIATION2Xuxue Feng
1010Kaitlin F PoquetteGermany2026-09-25Chapman, Ross E Esq PROPOSAL92Bernardo Dominic
1011Claire W ShinkoAustralia2026-09-23Chemel, James L Cpa NEGOTIATION42Amy Elsner
1012Octavia R OstroskyUnited Kingdom2026-10-05Feiner Bros NEW89Stephen Shaw
1013Ivar B VocelkaFrance2026-10-05Rousseaux, Michael Esq UNQUALIFIED51Anna Fali
1014Adams R WaycottCanada2026-10-05King, Christopher A Esq PROPOSAL20Elwin Sharvill
1015Aika H RimUnited Kingdom2026-10-13Chanay, Jeffrey A Esq RENEWAL86Stephen Shaw
1016Chavez F WieserSpain2026-09-22Truhlar And Truhlar Attys PROPOSAL16Elwin Sharvill
1017Sinclair S FerenczUnited Kingdom2026-09-26Feltz Printing Service UNQUALIFIED27Elwin Sharvill
1018Tony X StensethArgentina2026-10-10King, Christopher A Esq UNQUALIFIED76Ioni Bowcher
1019Nicolas L FigeroaUnited Kingdom2026-10-09Rangoni Of Florence NEGOTIATION15Ivan Magalhaes
1020Izzy D MarrierCanada2026-10-07Benton, John B Jr NEGOTIATION74Stephen Shaw
1021Claire C CampainRussia2026-10-09Commercial Press NEGOTIATION67Stephen Shaw
1022James X MaletJapan2026-09-25Rangoni Of Florence RENEWAL19Ioni Bowcher
1023Misaki J MaletGermany2026-09-28Dorl, James J Esq RENEWAL67Stephen Shaw
1024Jefferson X KolmetzAustralia2026-10-08Commercial Press QUALIFIED93Ioni Bowcher
1025Leja L FollerJapan2026-10-08Morlong Associates PROPOSAL71Ivan Magalhaes
1026Arvin L FigeroaSpain2026-10-07Chapman, Ross E Esq RENEWAL25Stephen Shaw
1027Johnson C OldroydArgentina2026-09-29Dorl, James J Esq UNQUALIFIED82Elwin Sharvill
1028Izzy P RutaAustralia2026-09-21Chanay, Jeffrey A Esq NEGOTIATION37Ioni Bowcher
1029Julie Z MarrierRussia2026-09-24Morlong Associates UNQUALIFIED29Xuxue Feng
1030Silvio G CampainGermany2026-09-21Commercial Press NEGOTIATION69Bernardo Dominic
1031Sinclair B DarakjyJapan2026-09-28Morlong Associates UNQUALIFIED68Asiya Javayant
1032Aika A AlbaresRussia2026-10-06Feiner Bros NEW91Xuxue Feng
1033Alejandro P StensethUnited Kingdom2026-10-16Printing Dimensions NEGOTIATION97Stephen Shaw
1034Faith M SchemmerUnited Kingdom2026-10-16Buckley Miller Wright NEGOTIATION94Elwin Sharvill
1035Cody G SlusarskiBrazil2026-10-13Feiner Bros NEGOTIATION65Onyama Limba
1036Mujtaba P FollerAustralia2026-10-16Morlong Associates UNQUALIFIED10Onyama Limba
1037Greenwood Q ButtItaly2026-10-14Buckley Miller Wright PROPOSAL46Ivan Magalhaes
1038Sinclair F IturbideArgentina2026-10-10Printing Dimensions NEW25Ivan Magalhaes
1039Darci Y NickaSpain2026-10-04Rangoni Of Florence PROPOSAL73Elwin Sharvill
1040Ricardo K DarakjyAustralia2026-09-23Buckley Miller Wright QUALIFIED23Amy Elsner
1041Tony V GlickArgentina2026-10-14Dorl, James J Esq RENEWAL86Ivan Magalhaes
1042Johnson V DilliardCanada2026-10-04Rousseaux, Michael Esq NEGOTIATION89Anna Fali
1043Faith Z OstroskyGermany2026-10-03Dorl, James J Esq NEW55Amy Elsner
1044Jones A InouyeUnited Kingdom2026-10-07Chemel, James L Cpa RENEWAL94Stephen Shaw
1045Faith C CampainAustralia2026-10-03Chemel, James L Cpa NEGOTIATION80Bernardo Dominic
1046Rodrigues Z VocelkaCanada2026-09-26Feltz Printing Service UNQUALIFIED18Asiya Javayant
1047Kadeem W StensethIndia2026-09-21Truhlar And Truhlar Attys RENEWAL38Asiya Javayant
1048Aruna C GauchoUnited Kingdom2026-10-06Commercial Press QUALIFIED61Amy Elsner
1049Costa A DarakjyAustralia2026-09-28Chanay, Jeffrey A Esq RENEWAL97Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Kadeem S MorascaCanadaAnna Fali NEGOTIATION
Francesco D PaprockiIndiaAmy Elsner RENEWAL
Jefferson V BriddickBrazilXuxue Feng UNQUALIFIED
James J VenereFranceXuxue Feng NEW
Mayumi W MaletIndiaOnyama Limba RENEWAL
Maria X RimArgentinaStephen Shaw RENEWAL
Darci U MorascaArgentinaStephen Shaw UNQUALIFIED
Alejandro P AmigonIndiaIoni Bowcher NEW
Kadeem N RutaRussiaBernardo Dominic UNQUALIFIED
Deepesh J FerenczGermanyElwin Sharvill UNQUALIFIED
Mayumi Y ChuiGermanyStephen Shaw NEGOTIATION
Stacey Z PoquetteSpainIvan Magalhaes NEGOTIATION
Johnson U MaletUnited KingdomBernardo Dominic NEGOTIATION
Francesco N MaletItalyOnyama Limba UNQUALIFIED
James C CaldareraJapanElwin Sharvill PROPOSAL
Costa F KuskoItalyElwin Sharvill RENEWAL
Munro F AlbaresSpainXuxue Feng PROPOSAL
Murillo M GlickArgentinaStephen Shaw NEGOTIATION
Ashley Z MorascaJapanIoni Bowcher PROPOSAL
Alejandro N FigeroaBrazilIvan Magalhaes RENEWAL
Jefferson D MacleadUnited KingdomIvan Magalhaes NEW
Murillo O DoeFranceStephen Shaw RENEWAL
Jefferson V DilliardBrazilIoni Bowcher QUALIFIED
Deepesh T FlosiCanadaStephen Shaw QUALIFIED
Wickens A MaletGermanyElwin Sharvill UNQUALIFIED
Faith E GillianArgentinaBernardo Dominic NEW
Adams N FerenczAustraliaAnna Fali PROPOSAL
Maisha Y ButtItalyAsiya Javayant QUALIFIED
Jeanfrancois A ChuiBrazilAnna Fali NEGOTIATION
Juan H CaldareraFranceAnna Fali QUALIFIED
Aditya W DoeRussiaAnna Fali NEGOTIATION
Francesco Q SergiCanadaAnna Fali QUALIFIED
James J RutaRussiaAnna Fali UNQUALIFIED
Misaki Z VenereJapanXuxue Feng RENEWAL
Costa S RimUnited KingdomAnna Fali NEGOTIATION
Silvio N OstroskyCanadaStephen Shaw NEGOTIATION
Wickens V OstroskyBrazilAnna Fali RENEWAL
Cody I OstroskyIndiaStephen Shaw NEW
Arvin C AmigonIndiaIvan Magalhaes NEGOTIATION
Nicolas R DarakjyArgentinaAsiya Javayant UNQUALIFIED
Antonio O AlbaresFranceXuxue Feng NEW
Chavez I GillianItalyAnna Fali RENEWAL
Ricardo G StensethItalyAsiya Javayant RENEWAL
Aditya D GillianUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi H FollerArgentinaElwin Sharvill RENEWAL
Adams F MaletRussiaXuxue Feng NEGOTIATION
Kadeem S FigeroaSpainAsiya Javayant PROPOSAL
Jennifer Z WhobreyItalyIvan Magalhaes NEW
Tony N FerenczBrazilAsiya Javayant PROPOSAL
Rodrigues T PerinSpainIvan Magalhaes NEW
Frozen Columns
Name
Francesco T Stockham
James R Stenseth
Julie V Royster
David A Butt
Octavia P Venere
Arvin F Foller
Johnson F Glick
Maria I Malet
Jeanfrancois B Gaucho
Murillo U Chui
Kadeem H Ostrosky
Maisha O Inouye
David G Perin
Kadeem Q Dilliard
Smith H Butt
Murillo F Caudy
Jennifer J Kolmetz
Izzy K Darakjy
Maria A Malet
Darci V Bowley
Claire O Briddick
Kaitlin O Iturbide
Sinclair O Wieser
Aruna H Inouye
Nicolas N Saylors
Salvatore M Darakjy
Greenwood Y Garufi
Leon W Flosi
Jennifer G Stockham
Greenwood Z Slusarski
Darci L Darakjy
Sinclair N Malet
Claire D Waycott
Deepesh V Schemmer
Jennifer U Darakjy
Jones H Ferencz
Clifford N Saylors
Salvatore R Kolmetz
Kaitlin A Caldarera
Maria E Oldroyd
Claire V Darakjy
Darci F Malet
Kadeem L Darakjy
Munro E Nicka
Sinclair V Caldarera
Ivar A Venere
Maisha A Garufi
Emily H Amigon
David J Amigon
Claire D Waycott
IdCountryDate
1000Japan2026-09-28
1001Argentina2026-09-26
1002India2026-09-20
1003Spain2026-09-23
1004Germany2026-09-21
1005Italy2026-10-16
1006Japan2026-09-29
1007Germany2026-10-14
1008Japan2026-10-01
1009Argentina2026-09-22
1010Argentina2026-09-26
1011Australia2026-09-18
1012Germany2026-09-19
1013India2026-09-19
1014India2026-09-20
1015Spain2026-10-17
1016Argentina2026-09-29
1017Germany2026-10-12
1018India2026-10-09
1019India2026-10-14
1020France2026-10-14
1021Canada2026-09-19
1022India2026-10-01
1023Russia2026-09-25
1024Canada2026-09-20
1025India2026-10-15
1026Argentina2026-10-06
1027Brazil2026-09-18
1028Italy2026-10-12
1029Germany2026-09-21
1030France2026-10-15
1031Spain2026-09-21
1032France2026-10-14
1033Germany2026-10-07
1034Brazil2026-10-15
1035Australia2026-10-05
1036Russia2026-10-01
1037Brazil2026-09-28
1038Canada2026-09-21
1039United Kingdom2026-10-07
1040Germany2026-10-01
1041India2026-09-28
1042Brazil2026-10-02
1043Australia2026-10-07
1044Australia2026-09-26
1045Spain2026-09-22
1046Spain2026-09-25
1047Brazil2026-10-02
1048France2026-10-07
1049India2026-10-16

On-Demand Data

NameIdCountryDate
Aika A Tollner1000Australia2026-10-10
Wickens N Shinko1001India2026-09-19
Clifford V Amigon1002France2026-10-06
Ricardo C Glick1003France2026-10-06
Aruna U Rim1004Germany2026-09-18
Alejandro Q Vocelka1005Brazil2026-10-13
Izzy Z Darakjy1006Australia2026-10-14
Wickens E Saylors1007France2026-10-06
Aditya J Ruta1008France2026-09-26
Octavia H Rulapaugh1009Italy2026-09-23
Francesco S Rim1010Spain2026-10-03
Francesco J Stenseth1011Spain2026-10-13
Nicolas S Stockham1012Germany2026-09-28
Tony R Caldarera1013Russia2026-09-26
Morrow U Rulapaugh1014United Kingdom2026-10-13
Aditya A Kusko1015India2026-10-15
Kadeem I Doe1016United Kingdom2026-10-04
Munro E Schemmer1017France2026-09-28
Clifford X Rulapaugh1018France2026-09-25
Julie A Whobrey1019France2026-09-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair W BowleyGermanyXuxue Feng NEW
Smith I VenereSpainAmy Elsner RENEWAL
Nicolas D GlickJapanAmy Elsner QUALIFIED
Misaki F ChuiJapanBernardo Dominic NEW
Ashley C KuskoCanadaIvan Magalhaes RENEWAL
Arvin V SaylorsIndiaElwin Sharvill QUALIFIED
David O DoeBrazilBernardo Dominic NEGOTIATION
Jefferson N VenereAustraliaElwin Sharvill PROPOSAL
Nicolas Z AlbaresBrazilIoni Bowcher RENEWAL
Emily S CampainItalyIvan Magalhaes RENEWAL
Tony J OldroydCanadaAmy Elsner NEGOTIATION
Aika C GlickIndiaAsiya Javayant NEW
Claire R NickaGermanyElwin Sharvill NEW
Adams R CaudyCanadaAnna Fali NEGOTIATION
Isabel E FollerJapanAsiya Javayant RENEWAL
Costa X MacleadUnited KingdomIoni Bowcher QUALIFIED
Munro C BriddickJapanIvan Magalhaes RENEWAL
Ricardo J BologniaArgentinaIoni Bowcher NEW
Jeanfrancois O GillianSpainBernardo Dominic RENEWAL
Salvatore W SergiCanadaXuxue Feng PROPOSAL
Johnson B StockhamFranceAmy Elsner NEW
Cody U GarufiCanadaXuxue Feng PROPOSAL
Murillo T MacleadRussiaOnyama Limba NEGOTIATION
Wickens B BologniaFranceBernardo Dominic RENEWAL
Isabel V StensethJapanBernardo Dominic NEW
James J NickaIndiaAnna Fali RENEWAL
James Y RutaBrazilXuxue Feng UNQUALIFIED
Deepesh O AmigonGermanyXuxue Feng QUALIFIED
Misaki Z DilliardRussiaIvan Magalhaes NEW
Kadeem G StensethRussiaAnna Fali QUALIFIED
Emily T NickaFranceBernardo Dominic PROPOSAL
Ashley Y BriddickCanadaAmy Elsner NEGOTIATION
Antonio A StockhamJapanElwin Sharvill PROPOSAL
Antonio J AmigonItalyOnyama Limba NEW
Julie F CampainCanadaStephen Shaw QUALIFIED
Octavia Q ButtBrazilAnna Fali NEGOTIATION
Jeanfrancois R SergiCanadaBernardo Dominic QUALIFIED
Izzy U TollnerCanadaStephen Shaw UNQUALIFIED
Isabel V GlickRussiaAsiya Javayant NEW
Chavez M StensethGermanyAmy Elsner 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>