Summer Sale is here 🏖️ Get 50% off with code PRSM25 Learn More

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
Wickens W PaprockiGermanyAsiya Javayant NEW
Juan A MaletFranceElwin Sharvill PROPOSAL
Aditya R SchemmerFranceAmy Elsner UNQUALIFIED
Salvatore Z FlosiCanadaAnna Fali UNQUALIFIED
Greenwood P CaldareraJapanAmy Elsner NEGOTIATION
Leja E DoeSpainXuxue Feng QUALIFIED
Isabel R WhobreyIndiaIoni Bowcher NEW
Claire P CaudyGermanyStephen Shaw UNQUALIFIED
Murillo S StensethRussiaAnna Fali QUALIFIED
Wickens N FerenczRussiaStephen Shaw QUALIFIED
Emily S BowleyAustraliaXuxue Feng QUALIFIED
Aruna R PerinUnited KingdomBernardo Dominic QUALIFIED
Isabel B InouyeUnited KingdomOnyama Limba NEGOTIATION
Faith Q MaletArgentinaAnna Fali NEW
Costa L MaletFranceOnyama Limba QUALIFIED
Clifford E MacleadFranceIoni Bowcher NEW
Ashley Q SlusarskiFranceAnna Fali UNQUALIFIED
Sinclair L VocelkaCanadaIoni Bowcher NEW
Johnson L RulapaughSpainIoni Bowcher UNQUALIFIED
Aruna A SaylorsRussiaXuxue Feng RENEWAL
Johnson L KuskoItalyAnna Fali UNQUALIFIED
Maisha S GarufiUnited KingdomElwin Sharvill QUALIFIED
Misaki V KuskoJapanElwin Sharvill RENEWAL
Claire Z IturbideIndiaIvan Magalhaes RENEWAL
Claire E PoquetteCanadaAmy Elsner NEW
Kadeem J SaylorsCanadaElwin Sharvill QUALIFIED
Sinclair X VenereArgentinaBernardo Dominic NEW
Faith J DilliardJapanXuxue Feng UNQUALIFIED
Ashley S ButtIndiaStephen Shaw RENEWAL
Maisha O RulapaughJapanIvan Magalhaes NEW
Costa B TollnerFranceElwin Sharvill RENEWAL
Greenwood I ButtSpainElwin Sharvill RENEWAL
Claire J KolmetzFranceIoni Bowcher UNQUALIFIED
Ashley Z WaycottCanadaBernardo Dominic PROPOSAL
Sinclair L MacleadJapanBernardo Dominic NEW
Misaki T ChuiIndiaAmy Elsner RENEWAL
Tony N DilliardBrazilStephen Shaw UNQUALIFIED
Aruna F MaletRussiaElwin Sharvill NEW
Stacey K BriddickUnited KingdomIvan Magalhaes RENEWAL
Jefferson K WaycottItalyIoni Bowcher NEGOTIATION
Chavez D CampainIndiaIvan Magalhaes NEW
Mayumi S ShinkoGermanyStephen Shaw PROPOSAL
Mujtaba O RimAustraliaAmy Elsner UNQUALIFIED
Wickens Y StensethUnited KingdomElwin Sharvill PROPOSAL
Morrow O OldroydGermanyAsiya Javayant PROPOSAL
Jefferson A CampainAustraliaAnna Fali NEGOTIATION
Jones P OstroskyBrazilIvan Magalhaes QUALIFIED
Octavia A PerinCanadaAnna Fali PROPOSAL
Alejandro L ChuiGermanyIoni Bowcher PROPOSAL
Jeanfrancois K KuskoRussiaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Arvin S GlickAustraliaAmy Elsner QUALIFIED
Arvin Q PerinRussiaStephen Shaw NEGOTIATION
Mayumi T GauchoAustraliaXuxue Feng NEGOTIATION
Chavez L RulapaughBrazilIvan Magalhaes NEW
Aruna P MarrierFranceAmy Elsner PROPOSAL
Smith D ChuiJapanIvan Magalhaes UNQUALIFIED
Aika C FollerFranceAmy Elsner NEGOTIATION
Silvio D WieserRussiaIvan Magalhaes UNQUALIFIED
Tony X BriddickFranceOnyama Limba RENEWAL
Jeanfrancois K MacleadRussiaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba E RutaCanada2025-10-02Commercial Press NEW79Ioni Bowcher
1001Kadeem N OldroydUnited Kingdom2025-09-26Rousseaux, Michael Esq RENEWAL79Asiya Javayant
1002Greenwood W PerinRussia2025-09-24Commercial Press NEGOTIATION67Xuxue Feng
1003Rodrigues C VenereAustralia2025-09-10Chanay, Jeffrey A Esq NEGOTIATION97Ioni Bowcher
1004Francesco C InouyeFrance2025-09-27Rousseaux, Michael Esq PROPOSAL89Onyama Limba
1005Costa Q MacleadGermany2025-09-30Rousseaux, Michael Esq PROPOSAL94Stephen Shaw
1006Wickens U VocelkaAustralia2025-09-16Rangoni Of Florence NEGOTIATION89Anna Fali
1007Costa N OstroskyUnited Kingdom2025-09-16King, Christopher A Esq RENEWAL13Onyama Limba
1008Jones G GlickCanada2025-10-08Chemel, James L Cpa NEW51Ivan Magalhaes
1009Chavez O RoysterFrance2025-09-14Rangoni Of Florence RENEWAL74Anna Fali
1010Aruna J GillianCanada2025-10-07Chanay, Jeffrey A Esq QUALIFIED13Onyama Limba
1011Nicolas S GlickArgentina2025-09-25Chapman, Ross E Esq QUALIFIED89Bernardo Dominic
1012Sinclair W VocelkaRussia2025-10-07Truhlar And Truhlar Attys NEW57Xuxue Feng
1013Adams X KuskoAustralia2025-09-24Chapman, Ross E Esq NEGOTIATION54Xuxue Feng
1014Francesco U RulapaughUnited Kingdom2025-09-20Morlong Associates NEW57Anna Fali
1015Darci H PoquetteGermany2025-09-11Chapman, Ross E Esq PROPOSAL77Ioni Bowcher
1016Leon M AmigonIndia2025-09-18Truhlar And Truhlar Attys NEGOTIATION1Ioni Bowcher
1017Jennifer T BologniaGermany2025-09-28Feiner Bros NEGOTIATION22Onyama Limba
1018Maisha Z MaletBrazil2025-10-01Feiner Bros UNQUALIFIED87Xuxue Feng
1019Francesco S GillianGermany2025-09-14Chanay, Jeffrey A Esq NEGOTIATION25Stephen Shaw
1020Clifford E AmigonAustralia2025-09-15Truhlar And Truhlar Attys QUALIFIED67Xuxue Feng
1021Jeanfrancois I MarrierArgentina2025-10-07Chanay, Jeffrey A Esq QUALIFIED19Stephen Shaw
1022Julie J ChuiUnited Kingdom2025-09-15Rousseaux, Michael Esq QUALIFIED31Amy Elsner
1023Izzy K CaldareraIndia2025-10-06Rangoni Of Florence NEW38Amy Elsner
1024Misaki C OldroydItaly2025-09-13Rousseaux, Michael Esq NEW17Stephen Shaw
1025Tony D PerinItaly2025-09-13Commercial Press NEW63Ivan Magalhaes
1026Silvio O KuskoArgentina2025-09-09Commercial Press PROPOSAL4Amy Elsner
1027Clifford M FollerFrance2025-09-15Morlong Associates UNQUALIFIED97Asiya Javayant
1028Ricardo L DarakjyJapan2025-09-13Feiner Bros NEGOTIATION27Stephen Shaw
1029Jeanfrancois O ChuiBrazil2025-09-15Truhlar And Truhlar Attys RENEWAL15Stephen Shaw
1030Cody Y InouyeItaly2025-09-21Feiner Bros QUALIFIED56Ivan Magalhaes
1031Clifford K RulapaughGermany2025-09-10Chapman, Ross E Esq RENEWAL84Elwin Sharvill
1032Johnson B MaletAustralia2025-10-08King, Christopher A Esq QUALIFIED5Amy Elsner
1033Sinclair B KuskoSpain2025-09-14Buckley Miller Wright QUALIFIED66Asiya Javayant
1034Tony D GlickUnited Kingdom2025-09-12Commercial Press NEW9Onyama Limba
1035Sinclair N StensethSpain2025-09-17King, Christopher A Esq PROPOSAL18Ivan Magalhaes
1036Chavez Z BriddickUnited Kingdom2025-09-28Dorl, James J Esq UNQUALIFIED1Elwin Sharvill
1037Nicolas P WhobreyAustralia2025-09-10Chapman, Ross E Esq UNQUALIFIED68Anna Fali
1038Ashley M DilliardIndia2025-09-13Chemel, James L Cpa NEW70Anna Fali
1039Maria S MarrierIndia2025-10-02Rousseaux, Michael Esq UNQUALIFIED77Stephen Shaw
1040Munro R ChuiGermany2025-09-21Benton, John B Jr UNQUALIFIED26Xuxue Feng
1041Murillo W RimFrance2025-09-28Feiner Bros QUALIFIED21Xuxue Feng
1042Cody J InouyeCanada2025-09-11Chemel, James L Cpa RENEWAL32Xuxue Feng
1043Deepesh G FlosiFrance2025-09-12Printing Dimensions QUALIFIED90Xuxue Feng
1044Jefferson R GlickJapan2025-09-25Commercial Press RENEWAL80Asiya Javayant
1045Isabel L OstroskyCanada2025-09-24Morlong Associates RENEWAL57Ioni Bowcher
1046Faith W NestleAustralia2025-09-24Chapman, Ross E Esq RENEWAL78Bernardo Dominic
1047David P FlosiFrance2025-09-19Chemel, James L Cpa PROPOSAL15Bernardo Dominic
1048Johnson I TollnerRussia2025-09-26Dorl, James J Esq RENEWAL80Stephen Shaw
1049James Q DoeIndia2025-09-09King, Christopher A Esq UNQUALIFIED46Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Johnson D FerenczGermanyBernardo Dominic NEW
Mujtaba X RutaItalyIoni Bowcher NEGOTIATION
Murillo O FigeroaJapanIoni Bowcher UNQUALIFIED
Costa M TollnerCanadaXuxue Feng QUALIFIED
Cody M FollerBrazilAsiya Javayant NEGOTIATION
Salvatore S MorascaCanadaAmy Elsner RENEWAL
Alejandro A IturbideJapanXuxue Feng QUALIFIED
Deepesh Q SchemmerItalyIvan Magalhaes PROPOSAL
Juan N BriddickRussiaElwin Sharvill NEW
Antonio N IturbideFranceAmy Elsner QUALIFIED
Ricardo J WieserGermanyBernardo Dominic RENEWAL
Isabel T RimJapanAmy Elsner NEW
Kadeem V GauchoBrazilIoni Bowcher PROPOSAL
Kaitlin Y PoquetteJapanStephen Shaw PROPOSAL
Izzy W GlickSpainAnna Fali NEW
Mayumi C StensethJapanStephen Shaw QUALIFIED
Arvin H SergiAustraliaStephen Shaw UNQUALIFIED
Kaitlin M VenereArgentinaAnna Fali PROPOSAL
Wickens E RulapaughItalyBernardo Dominic NEW
Darci C WieserIndiaAmy Elsner RENEWAL
Aika M MarrierItalyOnyama Limba NEGOTIATION
Johnson Q FigeroaUnited KingdomIvan Magalhaes UNQUALIFIED
Aruna D ButtGermanyAmy Elsner QUALIFIED
Francesco S BowleyFranceOnyama Limba RENEWAL
Faith B WaycottAustraliaOnyama Limba NEGOTIATION
Aika T MacleadItalyAnna Fali RENEWAL
Munro M CaudyIndiaBernardo Dominic NEW
Claire D WhobreySpainElwin Sharvill PROPOSAL
Chavez D AmigonSpainAmy Elsner PROPOSAL
Maisha N FollerUnited KingdomIoni Bowcher NEGOTIATION
Smith X FlosiFranceXuxue Feng RENEWAL
Mujtaba I DilliardJapanStephen Shaw RENEWAL
Mayumi Q RoysterFranceElwin Sharvill QUALIFIED
Jefferson W FlosiSpainOnyama Limba QUALIFIED
Leon D ChuiUnited KingdomXuxue Feng NEGOTIATION
Rodrigues Z GlickAustraliaAsiya Javayant NEW
Jefferson P OldroydRussiaAmy Elsner NEW
Chavez W SchemmerArgentinaIvan Magalhaes NEGOTIATION
Ricardo V WhobreyIndiaAsiya Javayant NEW
Chavez N DoeCanadaElwin Sharvill PROPOSAL
Costa W IturbideFranceIoni Bowcher RENEWAL
Johnson L CaldareraItalyAmy Elsner NEGOTIATION
Salvatore Q RimJapanOnyama Limba UNQUALIFIED
Adams P GauchoItalyOnyama Limba NEW
James M AlbaresUnited KingdomElwin Sharvill NEW
Jeanfrancois W ShinkoRussiaBernardo Dominic QUALIFIED
Aruna Q GarufiAustraliaXuxue Feng PROPOSAL
Stacey V SlusarskiSpainIoni Bowcher RENEWAL
Aika I OstroskyBrazilElwin Sharvill NEGOTIATION
Alejandro Z SlusarskiJapanBernardo Dominic NEGOTIATION
Frozen Columns
Name
Nicolas B Ferencz
Tony U Maclead
Izzy K Nicka
Ivar O Garufi
Chavez U Malet
Faith Y Malet
Salvatore U Waycott
Jeanfrancois U Saylors
Leon O Ostrosky
Faith V Tollner
Emily L Albares
Alejandro K Stockham
Leon J Darakjy
Leon D Kusko
Wickens U Bowley
Claire R Foller
Maisha I Ferencz
Stacey C Perin
Kadeem C Perin
Greenwood N Rulapaugh
Juan Q Royster
Kaitlin W Morasca
Izzy G Stenseth
Kaitlin S Glick
Rodrigues D Doe
Ricardo R Schemmer
Murillo L Rim
Adams S Oldroyd
Silvio G Ruta
Mayumi Y Royster
Claire D Gaucho
Clifford H Ruta
Aruna F Glick
Octavia R Nestle
Aruna Y Garufi
Greenwood F Maclead
Stacey N Malet
Maria M Perin
Maria A Chui
Leon K Marrier
Deepesh G Vocelka
Emily G Dilliard
Jennifer Q Maclead
James T Rulapaugh
Wickens B Caudy
Smith C Waycott
Kaitlin G Venere
Mayumi B Albares
Wickens N Royster
Ivar T Maclead
IdCountryDate
1000India2025-10-04
1001Canada2025-09-26
1002Russia2025-09-16
1003Germany2025-09-13
1004Australia2025-09-14
1005France2025-09-20
1006United Kingdom2025-09-10
1007Brazil2025-10-02
1008Japan2025-09-17
1009Australia2025-10-03
1010Canada2025-09-14
1011Japan2025-09-18
1012Italy2025-09-11
1013Australia2025-09-11
1014India2025-09-21
1015Japan2025-10-01
1016United Kingdom2025-10-08
1017Russia2025-09-20
1018Canada2025-10-03
1019France2025-09-28
1020Argentina2025-09-09
1021France2025-09-12
1022Australia2025-09-27
1023Australia2025-09-18
1024Argentina2025-09-27
1025United Kingdom2025-09-21
1026Brazil2025-09-17
1027Spain2025-10-07
1028France2025-10-01
1029Russia2025-09-13
1030Russia2025-09-22
1031Canada2025-09-27
1032Spain2025-09-21
1033Italy2025-09-26
1034India2025-09-13
1035India2025-10-04
1036Italy2025-09-14
1037Russia2025-10-05
1038Germany2025-10-08
1039Germany2025-09-20
1040Canada2025-09-12
1041Canada2025-09-25
1042United Kingdom2025-09-23
1043Spain2025-09-28
1044Spain2025-10-07
1045Canada2025-09-11
1046Argentina2025-10-05
1047Brazil2025-09-24
1048Argentina2025-09-16
1049France2025-09-12

On-Demand Data

NameIdCountryDate
Jeanfrancois F Briddick1000Brazil2025-09-18
Deepesh Q Perin1001Russia2025-09-14
Greenwood T Marrier1002India2025-09-16
Jones B Sergi1003France2025-09-24
Tony X Foller1004Australia2025-09-09
Claire K Doe1005France2025-09-24
Octavia A Slusarski1006France2025-09-09
Aruna G Albares1007Australia2025-09-16
Deepesh T Flosi1008France2025-09-15
Faith R Albares1009Canada2025-09-29
Julie S Slusarski1010Canada2025-09-28
Jefferson G Whobrey1011Russia2025-09-25
Ricardo C Iturbide1012Brazil2025-09-10
Ricardo Z Gillian1013Brazil2025-09-14
Maisha Z Kusko1014Spain2025-10-05
Antonio X Waycott1015Spain2025-09-18
David H Poquette1016Brazil2025-09-17
Kadeem G Bowley1017Japan2025-09-20
Francesco M Malet1018Australia2025-10-05
Aika U Tollner1019Japan2025-09-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith H GarufiJapanAmy Elsner RENEWAL
Cody D SergiFranceIoni Bowcher PROPOSAL
Darci B MorascaFranceElwin Sharvill QUALIFIED
Emily M PoquetteArgentinaIvan Magalhaes RENEWAL
Claire J TollnerIndiaAsiya Javayant NEGOTIATION
Julie O GillianIndiaIoni Bowcher RENEWAL
Emily P MorascaBrazilBernardo Dominic QUALIFIED
Maisha C FollerItalyOnyama Limba RENEWAL
Tony I GlickRussiaOnyama Limba UNQUALIFIED
Maisha A SergiJapanElwin Sharvill RENEWAL
Jennifer Z SchemmerBrazilAsiya Javayant PROPOSAL
Rodrigues N CaldareraRussiaBernardo Dominic NEW
Faith H MacleadCanadaXuxue Feng PROPOSAL
Leon R KolmetzRussiaElwin Sharvill RENEWAL
Johnson I WhobreyAustraliaAnna Fali PROPOSAL
Ashley W ButtFranceStephen Shaw PROPOSAL
Stacey T CaldareraGermanyAmy Elsner UNQUALIFIED
Darci B SaylorsAustraliaAnna Fali PROPOSAL
Mayumi K GarufiUnited KingdomAmy Elsner RENEWAL
Ricardo P BowleyAustraliaStephen Shaw NEGOTIATION
Wickens Z CaldareraAustraliaXuxue Feng NEW
Antonio J FlosiCanadaAsiya Javayant NEGOTIATION
Ashley B SaylorsArgentinaElwin Sharvill UNQUALIFIED
Silvio G DilliardFranceOnyama Limba NEW
Claire N MacleadItalyXuxue Feng NEGOTIATION
Darci J BowleyJapanBernardo Dominic RENEWAL
Ashley W IturbideJapanElwin Sharvill NEGOTIATION
Ricardo P PoquetteItalyBernardo Dominic NEGOTIATION
Greenwood V StockhamIndiaOnyama Limba RENEWAL
Maisha Z StensethBrazilBernardo Dominic NEW
Aditya S RutaBrazilIoni Bowcher UNQUALIFIED
Chavez O DarakjyJapanIoni Bowcher UNQUALIFIED
Morrow K RutaJapanBernardo Dominic UNQUALIFIED
Francesco S RoysterRussiaStephen Shaw QUALIFIED
Antonio M WhobreyRussiaXuxue Feng QUALIFIED
Aika X KolmetzCanadaAsiya Javayant QUALIFIED
Aditya X VocelkaAustraliaIoni Bowcher RENEWAL
Isabel Z FollerItalyAsiya Javayant QUALIFIED
Maisha W DilliardGermanyAsiya Javayant NEGOTIATION
Aruna R WaycottSpainIoni Bowcher 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>