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
Tony J WhobreyRussiaBernardo Dominic NEGOTIATION
David I RimAustraliaIoni Bowcher UNQUALIFIED
Ashley O InouyeArgentinaBernardo Dominic UNQUALIFIED
Mayumi P WhobreyJapanIvan Magalhaes UNQUALIFIED
Jones S TollnerRussiaAmy Elsner RENEWAL
Octavia N SlusarskiJapanOnyama Limba UNQUALIFIED
Greenwood A GlickRussiaAnna Fali NEGOTIATION
Ricardo Q FigeroaUnited KingdomAmy Elsner QUALIFIED
Ricardo R NickaSpainStephen Shaw PROPOSAL
Cody Q BriddickAustraliaAnna Fali PROPOSAL
Aditya K ShinkoGermanyOnyama Limba NEGOTIATION
Costa Y BriddickBrazilStephen Shaw QUALIFIED
Maisha C SaylorsBrazilStephen Shaw NEGOTIATION
Kadeem A FlosiItalyIvan Magalhaes UNQUALIFIED
Leja U VocelkaItalyAmy Elsner QUALIFIED
Octavia I FlosiItalyAmy Elsner UNQUALIFIED
Jefferson E DarakjyGermanyXuxue Feng RENEWAL
Leon R FigeroaUnited KingdomBernardo Dominic RENEWAL
Cody Q SchemmerRussiaXuxue Feng NEW
Arvin T PerinCanadaElwin Sharvill RENEWAL
Greenwood C PaprockiAustraliaIoni Bowcher RENEWAL
Ricardo V GauchoGermanyStephen Shaw NEGOTIATION
Aruna T PerinBrazilStephen Shaw PROPOSAL
Jeanfrancois W DoeAustraliaAnna Fali NEGOTIATION
Cody C SlusarskiCanadaAmy Elsner PROPOSAL
Izzy I StockhamArgentinaBernardo Dominic UNQUALIFIED
Aruna O GlickArgentinaAmy Elsner RENEWAL
Julie P TollnerRussiaStephen Shaw NEW
Jennifer I RulapaughArgentinaXuxue Feng PROPOSAL
Jeanfrancois A PerinUnited KingdomElwin Sharvill NEW
Deepesh F AmigonBrazilOnyama Limba PROPOSAL
Ricardo L WaycottSpainElwin Sharvill NEGOTIATION
Aruna P IturbideGermanyIvan Magalhaes NEGOTIATION
Smith B FerenczAustraliaStephen Shaw PROPOSAL
Nicolas H GillianCanadaAmy Elsner RENEWAL
Mujtaba B CaldareraItalyOnyama Limba UNQUALIFIED
Aika M ChuiGermanyOnyama Limba UNQUALIFIED
Maria S WhobreyCanadaAmy Elsner RENEWAL
Kadeem N InouyeRussiaIoni Bowcher NEGOTIATION
Clifford C BowleyIndiaIoni Bowcher RENEWAL
Jennifer X TollnerAustraliaAmy Elsner NEW
Smith O BriddickSpainBernardo Dominic PROPOSAL
Aika J SaylorsArgentinaAmy Elsner RENEWAL
Mujtaba K SaylorsCanadaOnyama Limba RENEWAL
Clifford N DoeUnited KingdomXuxue Feng PROPOSAL
Jeanfrancois P RoysterItalyStephen Shaw PROPOSAL
Arvin G FerenczJapanStephen Shaw UNQUALIFIED
Jeanfrancois P GillianGermanyAnna Fali NEGOTIATION
Wickens M CaudyGermanyIoni Bowcher PROPOSAL
Johnson U RoysterGermanyAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aditya F MarrierBrazilElwin Sharvill UNQUALIFIED
James A ChuiItalyXuxue Feng UNQUALIFIED
Aika V InouyeAustraliaOnyama Limba PROPOSAL
Aruna F GlickIndiaXuxue Feng NEGOTIATION
Munro B PerinBrazilBernardo Dominic UNQUALIFIED
Jeanfrancois N RoysterIndiaElwin Sharvill RENEWAL
Silvio E WieserUnited KingdomAsiya Javayant PROPOSAL
Johnson R RutaIndiaStephen Shaw UNQUALIFIED
Kadeem S GlickCanadaAnna Fali NEGOTIATION
Tony U VenereIndiaIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley S PaprockiIndia2025-07-26Feltz Printing Service QUALIFIED84Anna Fali
1001Ricardo S FlosiSpain2025-08-14Benton, John B Jr NEW17Xuxue Feng
1002Maria I BowleyAustralia2025-07-30Truhlar And Truhlar Attys UNQUALIFIED3Amy Elsner
1003Mayumi Z GarufiBrazil2025-08-08Truhlar And Truhlar Attys PROPOSAL92Elwin Sharvill
1004Emily H DilliardGermany2025-08-02Printing Dimensions UNQUALIFIED92Amy Elsner
1005Cody A MaletBrazil2025-07-30Rangoni Of Florence NEGOTIATION90Elwin Sharvill
1006Aditya A FerenczRussia2025-08-06Benton, John B Jr NEGOTIATION58Bernardo Dominic
1007Ricardo H VenereItaly2025-08-11Printing Dimensions RENEWAL59Xuxue Feng
1008Aditya D AmigonCanada2025-07-24Feiner Bros NEGOTIATION49Onyama Limba
1009Salvatore N MarrierSpain2025-07-23Truhlar And Truhlar Attys QUALIFIED35Amy Elsner
1010Johnson U InouyeUnited Kingdom2025-08-18Printing Dimensions NEGOTIATION64Elwin Sharvill
1011Stacey Y SergiCanada2025-08-09Chemel, James L Cpa NEW99Anna Fali
1012Clifford J GlickAustralia2025-08-14Morlong Associates QUALIFIED48Anna Fali
1013Arvin Y GillianBrazil2025-08-11Benton, John B Jr NEGOTIATION95Anna Fali
1014Salvatore N OldroydUnited Kingdom2025-07-27Chemel, James L Cpa PROPOSAL13Onyama Limba
1015Adams I CaldareraItaly2025-07-30Chanay, Jeffrey A Esq UNQUALIFIED29Onyama Limba
1016Adams D VenereArgentina2025-08-14Rangoni Of Florence RENEWAL68Ivan Magalhaes
1017Johnson M DarakjyJapan2025-07-22Chapman, Ross E Esq UNQUALIFIED84Onyama Limba
1018Maria S StockhamBrazil2025-08-03Benton, John B Jr QUALIFIED48Ivan Magalhaes
1019Mujtaba T AmigonJapan2025-08-09Chapman, Ross E Esq UNQUALIFIED14Bernardo Dominic
1020Silvio R InouyeUnited Kingdom2025-08-01Morlong Associates UNQUALIFIED62Elwin Sharvill
1021Johnson P NestleItaly2025-08-06Feltz Printing Service UNQUALIFIED40Stephen Shaw
1022Kadeem I NestleSpain2025-08-14Dorl, James J Esq UNQUALIFIED53Elwin Sharvill
1023Juan J FigeroaAustralia2025-08-14Feltz Printing Service NEW5Ivan Magalhaes
1024Mujtaba M DilliardIndia2025-08-06Commercial Press UNQUALIFIED24Onyama Limba
1025Deepesh P StensethSpain2025-07-31Morlong Associates NEW81Onyama Limba
1026Greenwood K PaprockiAustralia2025-08-16Buckley Miller Wright RENEWAL80Anna Fali
1027Morrow Q TollnerBrazil2025-07-31Chemel, James L Cpa PROPOSAL2Xuxue Feng
1028Munro N KuskoArgentina2025-08-11Feiner Bros NEGOTIATION35Ioni Bowcher
1029Jones O GarufiIndia2025-08-15King, Christopher A Esq RENEWAL26Ioni Bowcher
1030Aika Q GlickIndia2025-08-14Feiner Bros UNQUALIFIED53Elwin Sharvill
1031Rodrigues Y TollnerUnited Kingdom2025-07-31Chapman, Ross E Esq QUALIFIED72Xuxue Feng
1032Ricardo R WieserRussia2025-08-02Rousseaux, Michael Esq UNQUALIFIED30Onyama Limba
1033Silvio E KuskoAustralia2025-07-23Rangoni Of Florence QUALIFIED58Elwin Sharvill
1034Tony L NestleFrance2025-07-21Morlong Associates RENEWAL55Xuxue Feng
1035Tony S SaylorsAustralia2025-08-06Dorl, James J Esq PROPOSAL71Anna Fali
1036Rodrigues S BowleyJapan2025-08-13Benton, John B Jr QUALIFIED82Ioni Bowcher
1037Kaitlin F MarrierFrance2025-07-29Feiner Bros QUALIFIED1Ivan Magalhaes
1038Leon J WhobreyUnited Kingdom2025-07-22Morlong Associates UNQUALIFIED92Ioni Bowcher
1039Isabel W BriddickJapan2025-08-13Buckley Miller Wright RENEWAL25Ioni Bowcher
1040Aditya R CampainBrazil2025-08-02King, Christopher A Esq RENEWAL13Ioni Bowcher
1041David E FerenczBrazil2025-07-22Dorl, James J Esq UNQUALIFIED64Ivan Magalhaes
1042Julie F AlbaresRussia2025-07-28Truhlar And Truhlar Attys RENEWAL49Onyama Limba
1043Tony B SchemmerAustralia2025-08-04Feltz Printing Service UNQUALIFIED21Onyama Limba
1044Stacey W CaudyCanada2025-08-01Feltz Printing Service RENEWAL16Stephen Shaw
1045Juan H VocelkaSpain2025-08-17Buckley Miller Wright UNQUALIFIED1Ivan Magalhaes
1046Jennifer L RulapaughAustralia2025-08-11Feltz Printing Service PROPOSAL30Asiya Javayant
1047Aruna Z InouyeSpain2025-07-21Buckley Miller Wright QUALIFIED98Asiya Javayant
1048Johnson G DoeRussia2025-07-24Dorl, James J Esq NEGOTIATION76Bernardo Dominic
1049Chavez P DoeJapan2025-08-16Feiner Bros RENEWAL32Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Faith C DoeGermanyIvan Magalhaes QUALIFIED
Jeanfrancois L DarakjySpainStephen Shaw QUALIFIED
Ricardo G FlosiGermanyIoni Bowcher NEGOTIATION
Smith J SlusarskiArgentinaOnyama Limba PROPOSAL
Misaki X ChuiGermanyIoni Bowcher UNQUALIFIED
David B NestleAustraliaStephen Shaw QUALIFIED
Salvatore M RimCanadaOnyama Limba NEGOTIATION
Ricardo V ButtFranceIvan Magalhaes NEGOTIATION
Izzy P CaudyBrazilAnna Fali NEW
Sinclair M WhobreyJapanBernardo Dominic NEGOTIATION
Leja S FigeroaJapanStephen Shaw UNQUALIFIED
Misaki U CampainArgentinaBernardo Dominic UNQUALIFIED
Mayumi E PoquetteCanadaAsiya Javayant RENEWAL
Julie X RoysterCanadaAmy Elsner RENEWAL
Alejandro N WaycottAustraliaAsiya Javayant RENEWAL
Emily E MorascaRussiaElwin Sharvill PROPOSAL
Ricardo S KuskoArgentinaXuxue Feng NEW
Greenwood Y DilliardAustraliaAmy Elsner QUALIFIED
Johnson W IturbideFranceElwin Sharvill NEW
Cody K GauchoBrazilAnna Fali NEGOTIATION
James G StockhamJapanAnna Fali QUALIFIED
Ivar G CampainArgentinaElwin Sharvill PROPOSAL
Leja V SaylorsJapanAmy Elsner UNQUALIFIED
Silvio L VenereGermanyStephen Shaw RENEWAL
James Z CaudyGermanyAnna Fali PROPOSAL
James K GillianJapanBernardo Dominic PROPOSAL
Jefferson X SchemmerIndiaAmy Elsner PROPOSAL
Silvio V BowleyRussiaIvan Magalhaes RENEWAL
Deepesh U ChuiBrazilAnna Fali NEGOTIATION
Misaki V KolmetzUnited KingdomStephen Shaw UNQUALIFIED
Ricardo W ButtBrazilElwin Sharvill NEGOTIATION
Wickens E SlusarskiRussiaIvan Magalhaes NEW
Aditya A DoeAustraliaOnyama Limba NEGOTIATION
Misaki Q MorascaJapanOnyama Limba NEGOTIATION
Isabel B TollnerSpainAmy Elsner NEGOTIATION
James K PoquetteGermanyAsiya Javayant QUALIFIED
Francesco J InouyeArgentinaIoni Bowcher NEW
Wickens I PoquetteCanadaXuxue Feng NEW
David H InouyeIndiaIoni Bowcher RENEWAL
Nicolas F KolmetzArgentinaXuxue Feng PROPOSAL
Ricardo Y MorascaBrazilAmy Elsner UNQUALIFIED
Isabel G GarufiUnited KingdomAsiya Javayant RENEWAL
Alejandro Q FigeroaAustraliaOnyama Limba QUALIFIED
Aika L TollnerFranceIoni Bowcher UNQUALIFIED
Ricardo Y BologniaGermanyIvan Magalhaes RENEWAL
Cody P MarrierSpainAmy Elsner NEGOTIATION
Leja Z RoysterJapanBernardo Dominic RENEWAL
Darci I DarakjyAustraliaStephen Shaw NEGOTIATION
Darci C SergiJapanIvan Magalhaes RENEWAL
David I MorascaArgentinaBernardo Dominic QUALIFIED
Frozen Columns
Name
Octavia N Schemmer
Mujtaba T Nicka
Maria O Ruta
Aika V Amigon
Francesco V Kusko
Mujtaba U Gillian
Greenwood J Glick
Antonio A Saylors
Morrow T Ostrosky
Isabel J Malet
Misaki G Stenseth
David J Tollner
Misaki F Shinko
Jefferson Y Butt
Clifford N Figeroa
Maisha L Saylors
Smith K Royster
Munro K Glick
Deepesh Z Bowley
Greenwood O Butt
Greenwood Y Gaucho
Leon J Garufi
Deepesh J Doe
Ashley Q Gaucho
Kaitlin M Maclead
Johnson P Kusko
Sinclair T Albares
Ricardo H Foller
Antonio X Saylors
Deepesh C Campain
Jones A Gillian
Octavia O Morasca
Leja J Campain
Aditya N Wieser
Clifford O Flosi
Juan L Kolmetz
Adams B Vocelka
Faith T Campain
Aika T Morasca
Isabel K Sergi
Ricardo U Caudy
Alejandro U Ostrosky
Julie B Slusarski
Chavez U Malet
Nicolas O Whobrey
Morrow P Perin
Kadeem O Vocelka
Jeanfrancois U Iturbide
Francesco M Morasca
Jones F Vocelka
IdCountryDate
1000France2025-08-01
1001Argentina2025-08-04
1002Italy2025-07-28
1003Germany2025-08-16
1004Russia2025-08-14
1005Japan2025-08-13
1006Russia2025-07-22
1007United Kingdom2025-08-04
1008Australia2025-07-28
1009Italy2025-08-10
1010Japan2025-08-09
1011Australia2025-07-20
1012Canada2025-08-06
1013Russia2025-08-15
1014Canada2025-07-26
1015Spain2025-07-21
1016United Kingdom2025-07-31
1017Japan2025-08-12
1018Italy2025-08-17
1019Germany2025-08-16
1020France2025-08-12
1021Brazil2025-07-21
1022India2025-07-20
1023Spain2025-07-25
1024United Kingdom2025-07-23
1025Russia2025-08-03
1026Japan2025-07-29
1027France2025-08-01
1028Spain2025-07-31
1029Australia2025-07-25
1030Canada2025-08-16
1031Japan2025-07-30
1032Italy2025-08-11
1033Brazil2025-08-01
1034Brazil2025-08-10
1035Argentina2025-08-13
1036Argentina2025-08-09
1037Brazil2025-08-15
1038India2025-08-14
1039Brazil2025-08-01
1040Canada2025-08-12
1041Australia2025-07-29
1042Spain2025-08-18
1043India2025-08-03
1044Germany2025-08-15
1045Russia2025-08-14
1046Japan2025-08-16
1047India2025-08-05
1048Russia2025-08-13
1049Brazil2025-08-12

On-Demand Data

NameIdCountryDate
Maria K Butt1000Canada2025-08-06
Mayumi S Glick1001Brazil2025-07-28
Jefferson Y Whobrey1002Australia2025-08-03
David V Rim1003Germany2025-08-11
Izzy V Flosi1004Canada2025-08-17
Johnson L Venere1005Germany2025-07-26
Murillo I Gaucho1006Argentina2025-08-13
Adams R Figeroa1007Brazil2025-08-14
Morrow V Gillian1008United Kingdom2025-08-09
Silvio X Inouye1009France2025-08-12
Darci J Nestle1010United Kingdom2025-08-01
Antonio T Chui1011Russia2025-07-25
Clifford F Chui1012Australia2025-07-30
Francesco E Glick1013Canada2025-07-21
Salvatore N Gillian1014Spain2025-08-13
Aruna R Royster1015Argentina2025-08-15
Maria Q Briddick1016Germany2025-08-14
Octavia K Bowley1017Canada2025-07-31
Smith U Schemmer1018Italy2025-07-30
James F Paprocki1019Brazil2025-08-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David T IturbideSpainOnyama Limba RENEWAL
Darci L GarufiAustraliaAmy Elsner RENEWAL
Isabel H DarakjyRussiaElwin Sharvill QUALIFIED
Jefferson Y NestleRussiaAnna Fali RENEWAL
Isabel E NickaRussiaAsiya Javayant PROPOSAL
Murillo A DarakjyJapanElwin Sharvill PROPOSAL
Faith A WhobreyUnited KingdomAmy Elsner PROPOSAL
Ricardo F TollnerUnited KingdomAmy Elsner PROPOSAL
Morrow M VocelkaCanadaIoni Bowcher UNQUALIFIED
Darci M KolmetzAustraliaBernardo Dominic RENEWAL
Murillo D DilliardBrazilElwin Sharvill RENEWAL
Juan R BriddickIndiaAnna Fali NEW
Aika V TollnerItalyIvan Magalhaes RENEWAL
Kaitlin I PaprockiIndiaStephen Shaw NEW
Wickens L TollnerGermanyElwin Sharvill UNQUALIFIED
Kaitlin Q WhobreyItalyStephen Shaw RENEWAL
Smith K RoysterRussiaIoni Bowcher NEGOTIATION
Greenwood H MarrierCanadaAsiya Javayant UNQUALIFIED
Munro N GauchoJapanBernardo Dominic PROPOSAL
Jennifer B FollerFranceStephen Shaw PROPOSAL
Chavez T SaylorsCanadaXuxue Feng NEGOTIATION
Salvatore I MacleadCanadaAnna Fali RENEWAL
Salvatore Y SlusarskiArgentinaAmy Elsner NEW
Nicolas N FlosiBrazilXuxue Feng PROPOSAL
Munro F SlusarskiRussiaAmy Elsner NEGOTIATION
Octavia Q GillianGermanyElwin Sharvill RENEWAL
Isabel X FollerCanadaAmy Elsner NEGOTIATION
Kaitlin L FollerRussiaStephen Shaw NEW
Jeanfrancois O RulapaughGermanyAsiya Javayant QUALIFIED
Morrow T ChuiItalyAnna Fali RENEWAL
Wickens L PoquetteBrazilIvan Magalhaes RENEWAL
Kaitlin A CaldareraJapanAsiya Javayant UNQUALIFIED
Clifford H GillianRussiaAsiya Javayant RENEWAL
Aika I BowleyBrazilIoni Bowcher QUALIFIED
David P VocelkaJapanIoni Bowcher NEGOTIATION
Stacey E BowleyIndiaStephen Shaw PROPOSAL
Arvin V MarrierAustraliaXuxue Feng RENEWAL
Silvio U CampainItalyIvan Magalhaes UNQUALIFIED
Francesco G GauchoRussiaAsiya Javayant QUALIFIED
Emily D BowleyIndiaIoni Bowcher NEW

<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>