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
Francesco G PerinArgentinaAsiya Javayant RENEWAL
Aruna Y DoeRussiaBernardo Dominic NEW
Mujtaba Z NestleJapanElwin Sharvill NEW
Clifford E DilliardJapanElwin Sharvill NEW
Francesco X DilliardGermanyStephen Shaw RENEWAL
David X IturbideCanadaAnna Fali QUALIFIED
Antonio L VenereSpainStephen Shaw UNQUALIFIED
Jones X MacleadBrazilOnyama Limba NEW
Ivar S MarrierArgentinaXuxue Feng QUALIFIED
Julie J VocelkaGermanyIvan Magalhaes NEW
Murillo G MorascaSpainStephen Shaw NEW
Claire C DilliardItalyBernardo Dominic NEW
Mayumi U WieserAustraliaIoni Bowcher RENEWAL
Tony M FlosiCanadaAnna Fali NEGOTIATION
Nicolas T MaletAustraliaAsiya Javayant QUALIFIED
Chavez R CampainGermanyXuxue Feng NEGOTIATION
Wickens P GlickArgentinaBernardo Dominic NEW
Leon B CaldareraBrazilAmy Elsner QUALIFIED
Costa D StockhamBrazilXuxue Feng QUALIFIED
Deepesh C CampainJapanXuxue Feng PROPOSAL
Isabel M AmigonRussiaOnyama Limba UNQUALIFIED
Francesco C MacleadUnited KingdomIoni Bowcher QUALIFIED
Greenwood V SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Francesco G CaldareraRussiaXuxue Feng RENEWAL
Greenwood W CaldareraFranceStephen Shaw NEW
James A VenereCanadaBernardo Dominic NEW
Adams G MacleadItalyIoni Bowcher PROPOSAL
Mayumi B MacleadCanadaStephen Shaw RENEWAL
Ricardo W OstroskyGermanyBernardo Dominic QUALIFIED
Kaitlin U DarakjyCanadaIoni Bowcher PROPOSAL
Ashley S MaletBrazilIvan Magalhaes UNQUALIFIED
Deepesh T AmigonFranceElwin Sharvill PROPOSAL
Jefferson K OldroydAustraliaAnna Fali NEGOTIATION
Murillo Y ButtRussiaXuxue Feng NEW
Silvio Y AlbaresUnited KingdomXuxue Feng QUALIFIED
Julie W GlickUnited KingdomAnna Fali PROPOSAL
Morrow T GillianGermanyAmy Elsner NEW
David T DilliardRussiaElwin Sharvill QUALIFIED
Leja Z TollnerSpainBernardo Dominic NEW
Leja I MaletRussiaXuxue Feng NEW
Leja Q BologniaBrazilOnyama Limba QUALIFIED
Ivar Y RoysterUnited KingdomStephen Shaw NEW
Costa J CaudyFranceIoni Bowcher QUALIFIED
Faith K RutaUnited KingdomIvan Magalhaes PROPOSAL
Morrow C SlusarskiAustraliaAnna Fali NEW
Smith C TollnerCanadaOnyama Limba PROPOSAL
Aditya S GillianAustraliaAnna Fali NEW
Leja Z MorascaIndiaAmy Elsner RENEWAL
Juan A ChuiAustraliaIvan Magalhaes UNQUALIFIED
Francesco K InouyeGermanyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Murillo L NickaRussiaAnna Fali PROPOSAL
Clifford F GauchoSpainElwin Sharvill UNQUALIFIED
Jennifer V WaycottUnited KingdomAsiya Javayant UNQUALIFIED
Tony P RutaUnited KingdomOnyama Limba NEGOTIATION
Darci I VocelkaItalyIvan Magalhaes RENEWAL
Antonio K MaletRussiaAsiya Javayant RENEWAL
Ashley U ShinkoCanadaAsiya Javayant PROPOSAL
Darci C SergiAustraliaBernardo Dominic RENEWAL
Clifford I CampainItalyIvan Magalhaes QUALIFIED
Jennifer K GauchoGermanyAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair J CaldareraCanada2025-10-07Rangoni Of Florence RENEWAL17Asiya Javayant
1001Silvio O GlickUnited Kingdom2025-09-18Benton, John B Jr UNQUALIFIED7Anna Fali
1002Smith L AmigonRussia2025-09-27Feiner Bros RENEWAL4Onyama Limba
1003Greenwood E RoysterJapan2025-09-21Chapman, Ross E Esq QUALIFIED83Elwin Sharvill
1004James U MaletItaly2025-09-19Chemel, James L Cpa PROPOSAL93Ioni Bowcher
1005Morrow Y WaycottUnited Kingdom2025-10-07Commercial Press NEGOTIATION95Asiya Javayant
1006Octavia T TollnerCanada2025-09-21Feiner Bros NEGOTIATION60Asiya Javayant
1007Adams W GauchoJapan2025-10-05Commercial Press PROPOSAL73Stephen Shaw
1008Jennifer B ButtArgentina2025-10-10Buckley Miller Wright PROPOSAL40Stephen Shaw
1009Octavia M DarakjyJapan2025-10-16Rousseaux, Michael Esq NEGOTIATION81Amy Elsner
1010Izzy E RutaGermany2025-09-22Printing Dimensions QUALIFIED47Bernardo Dominic
1011Alejandro I MacleadRussia2025-09-25Commercial Press RENEWAL9Ivan Magalhaes
1012Ashley N SaylorsUnited Kingdom2025-10-12Commercial Press UNQUALIFIED35Ivan Magalhaes
1013Darci Y OstroskyItaly2025-10-14Benton, John B Jr NEW76Bernardo Dominic
1014Misaki K WieserBrazil2025-10-06Printing Dimensions QUALIFIED22Ioni Bowcher
1015Tony I GlickUnited Kingdom2025-10-15Dorl, James J Esq NEW74Elwin Sharvill
1016Silvio E RulapaughFrance2025-09-19Morlong Associates UNQUALIFIED62Ioni Bowcher
1017Jennifer E InouyeArgentina2025-10-01Chapman, Ross E Esq NEW46Elwin Sharvill
1018Costa X FigeroaJapan2025-09-27Dorl, James J Esq NEGOTIATION65Ioni Bowcher
1019Julie N RimItaly2025-10-15Morlong Associates PROPOSAL59Asiya Javayant
1020Mujtaba D SlusarskiSpain2025-09-24Rangoni Of Florence NEGOTIATION95Stephen Shaw
1021Isabel H ShinkoFrance2025-10-08King, Christopher A Esq NEGOTIATION12Anna Fali
1022Jeanfrancois K BologniaAustralia2025-10-11Rangoni Of Florence NEW56Elwin Sharvill
1023Stacey A KolmetzSpain2025-09-18Chemel, James L Cpa NEW10Xuxue Feng
1024Rodrigues F WhobreyRussia2025-10-02Buckley Miller Wright QUALIFIED27Bernardo Dominic
1025Alejandro F DarakjyItaly2025-10-15Rangoni Of Florence NEW15Onyama Limba
1026Alejandro I IturbideCanada2025-09-24Rangoni Of Florence RENEWAL16Xuxue Feng
1027Clifford L MaletArgentina2025-10-11Morlong Associates PROPOSAL38Ioni Bowcher
1028Aika W MaletRussia2025-09-18Feltz Printing Service NEGOTIATION46Ioni Bowcher
1029Leja Z DilliardJapan2025-10-14Feltz Printing Service NEGOTIATION97Amy Elsner
1030Jennifer C BowleyBrazil2025-09-20Dorl, James J Esq QUALIFIED82Xuxue Feng
1031David U PaprockiArgentina2025-10-10Feltz Printing Service UNQUALIFIED22Xuxue Feng
1032Izzy O MorascaGermany2025-10-02Dorl, James J Esq QUALIFIED17Elwin Sharvill
1033Kaitlin B FigeroaItaly2025-09-25Chapman, Ross E Esq RENEWAL59Xuxue Feng
1034Greenwood B DoeCanada2025-10-11Buckley Miller Wright RENEWAL97Bernardo Dominic
1035Juan I MacleadAustralia2025-10-08Printing Dimensions NEGOTIATION11Stephen Shaw
1036Salvatore T WieserArgentina2025-10-03Commercial Press RENEWAL17Elwin Sharvill
1037Claire A GlickJapan2025-09-25Rangoni Of Florence UNQUALIFIED64Asiya Javayant
1038Izzy G PerinUnited Kingdom2025-10-01Benton, John B Jr NEGOTIATION63Ioni Bowcher
1039Sinclair O MacleadRussia2025-10-15Chemel, James L Cpa NEW47Anna Fali
1040Aika J CaldareraIndia2025-09-26Chanay, Jeffrey A Esq UNQUALIFIED83Stephen Shaw
1041Greenwood G OstroskyAustralia2025-10-16Rousseaux, Michael Esq RENEWAL51Onyama Limba
1042Ashley W DilliardSpain2025-09-18Chapman, Ross E Esq NEGOTIATION32Asiya Javayant
1043Faith I KuskoSpain2025-10-05Chemel, James L Cpa NEW58Asiya Javayant
1044Juan A PaprockiBrazil2025-10-03Truhlar And Truhlar Attys QUALIFIED90Bernardo Dominic
1045Isabel X BriddickUnited Kingdom2025-09-29Chapman, Ross E Esq NEW8Xuxue Feng
1046Rodrigues O BologniaBrazil2025-09-28Chemel, James L Cpa NEGOTIATION80Ivan Magalhaes
1047Leja N CaldareraCanada2025-10-15Benton, John B Jr RENEWAL68Stephen Shaw
1048Arvin H OstroskyCanada2025-09-19King, Christopher A Esq RENEWAL30Anna Fali
1049Morrow S PoquetteArgentina2025-10-16Benton, John B Jr RENEWAL78Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Silvio P VocelkaRussiaElwin Sharvill QUALIFIED
Stacey I FlosiJapanIoni Bowcher QUALIFIED
Salvatore S CaudyBrazilStephen Shaw QUALIFIED
Aika Q DilliardItalyAsiya Javayant QUALIFIED
Kaitlin Y IturbideBrazilStephen Shaw QUALIFIED
Juan O KolmetzBrazilAnna Fali RENEWAL
Greenwood N FigeroaSpainAnna Fali NEW
Faith H GarufiJapanAmy Elsner PROPOSAL
Cody X ShinkoBrazilXuxue Feng RENEWAL
Darci R PerinArgentinaIvan Magalhaes RENEWAL
Clifford K RoysterJapanElwin Sharvill PROPOSAL
Francesco Q WieserFranceAmy Elsner QUALIFIED
Leon L RutaUnited KingdomBernardo Dominic PROPOSAL
Izzy I SlusarskiArgentinaIvan Magalhaes QUALIFIED
Antonio N KolmetzSpainAnna Fali NEW
Johnson K PaprockiFranceXuxue Feng RENEWAL
Darci H CampainJapanElwin Sharvill UNQUALIFIED
Murillo V DarakjyGermanyElwin Sharvill RENEWAL
Deepesh D CaldareraArgentinaIvan Magalhaes NEGOTIATION
Octavia U RoysterArgentinaElwin Sharvill RENEWAL
Johnson F BriddickRussiaBernardo Dominic QUALIFIED
Misaki U StensethSpainStephen Shaw NEW
Antonio S ButtCanadaXuxue Feng QUALIFIED
Maisha W AmigonArgentinaAmy Elsner UNQUALIFIED
Maria R AlbaresGermanyOnyama Limba UNQUALIFIED
Ashley P DoeIndiaXuxue Feng RENEWAL
Wickens U WhobreyIndiaIvan Magalhaes QUALIFIED
Octavia V NickaArgentinaIoni Bowcher RENEWAL
Aruna F NestleArgentinaBernardo Dominic PROPOSAL
Misaki A RoysterJapanElwin Sharvill PROPOSAL
Julie N ButtRussiaXuxue Feng PROPOSAL
Leon Y GarufiUnited KingdomAnna Fali RENEWAL
Nicolas Z FerenczIndiaOnyama Limba RENEWAL
Leja C VocelkaJapanAnna Fali QUALIFIED
Murillo O NestleSpainIvan Magalhaes PROPOSAL
Munro A MaletSpainAsiya Javayant UNQUALIFIED
Munro Y SlusarskiUnited KingdomAnna Fali NEGOTIATION
Aika G GarufiGermanyOnyama Limba NEGOTIATION
Johnson D NestleRussiaIvan Magalhaes QUALIFIED
Cody K NestleItalyIvan Magalhaes NEGOTIATION
Aditya S MaletJapanIoni Bowcher PROPOSAL
Ivar W RoysterItalyOnyama Limba RENEWAL
Ashley T WieserSpainIvan Magalhaes PROPOSAL
Darci R DilliardFranceOnyama Limba UNQUALIFIED
Mayumi Q PerinAustraliaIvan Magalhaes NEGOTIATION
Faith J FerenczGermanyBernardo Dominic NEGOTIATION
Emily H WaycottCanadaBernardo Dominic QUALIFIED
Chavez Z WieserItalyBernardo Dominic NEW
Smith P GarufiFranceAsiya Javayant PROPOSAL
Wickens R InouyeRussiaXuxue Feng RENEWAL
Frozen Columns
Name
Sinclair Z Bolognia
Aika M Marrier
Jones I Nicka
Faith W Chui
Misaki F Caudy
Isabel E Waycott
Ivar J Maclead
Kadeem S Foller
Jefferson G Flosi
Darci C Bowley
Julie Z Malet
Salvatore S Dilliard
Sinclair N Ostrosky
Aruna B Stockham
Izzy O Nicka
Sinclair H Maclead
Morrow T Shinko
Morrow J Poquette
Tony D Chui
Tony L Darakjy
Aika J Foller
Deepesh A Vocelka
Juan Y Kolmetz
Aika G Marrier
James J Rim
Izzy Y Nicka
Leja N Ferencz
Murillo B Ostrosky
Smith V Royster
Aruna Y Ostrosky
Faith S Venere
Morrow M Bowley
Clifford U Gaucho
Tony I Ostrosky
Johnson Q Doe
Izzy R Garufi
Kaitlin Z Schemmer
Cody U Ferencz
Izzy G Darakjy
Jones R Garufi
Sinclair U Royster
Darci P Malet
Jones L Shinko
Ricardo E Bolognia
Kaitlin B Garufi
Salvatore O Darakjy
Kaitlin K Briddick
Misaki Y Sergi
Misaki F Kusko
Jefferson U Rulapaugh
IdCountryDate
1000Argentina2025-09-22
1001Italy2025-09-24
1002Germany2025-10-14
1003Italy2025-10-14
1004Japan2025-09-27
1005France2025-10-15
1006Germany2025-10-03
1007Spain2025-10-05
1008India2025-09-19
1009Germany2025-09-18
1010Germany2025-10-02
1011France2025-09-19
1012Japan2025-10-01
1013Italy2025-09-25
1014France2025-09-29
1015Australia2025-09-27
1016Italy2025-10-05
1017Japan2025-10-01
1018Argentina2025-09-26
1019Germany2025-10-12
1020Russia2025-10-01
1021France2025-09-27
1022Canada2025-10-07
1023Brazil2025-10-17
1024Spain2025-09-23
1025France2025-09-28
1026Spain2025-10-12
1027India2025-10-10
1028Russia2025-10-02
1029Russia2025-09-28
1030Italy2025-10-09
1031Italy2025-09-20
1032Russia2025-10-11
1033Italy2025-10-01
1034India2025-10-11
1035Russia2025-10-17
1036Canada2025-09-28
1037Italy2025-10-12
1038Italy2025-10-08
1039Italy2025-10-06
1040Brazil2025-09-28
1041Italy2025-09-28
1042United Kingdom2025-09-28
1043France2025-10-10
1044Argentina2025-10-03
1045Japan2025-10-12
1046Argentina2025-09-20
1047Japan2025-09-27
1048Australia2025-09-28
1049United Kingdom2025-10-05

On-Demand Data

NameIdCountryDate
Alejandro O Rulapaugh1000Canada2025-10-04
Darci L Ferencz1001India2025-10-10
Ivar H Marrier1002United Kingdom2025-10-14
Wickens Y Kolmetz1003Argentina2025-09-19
Kadeem P Marrier1004France2025-09-29
Aditya F Whobrey1005Spain2025-10-11
Francesco N Campain1006Brazil2025-09-27
Cody W Stenseth1007United Kingdom2025-10-14
Morrow Z Caudy1008Brazil2025-10-15
Clifford A Schemmer1009Japan2025-09-24
Stacey I Wieser1010Spain2025-09-28
Juan N Whobrey1011Russia2025-10-03
Darci F Ostrosky1012India2025-10-01
Wickens U Kusko1013Russia2025-10-12
Misaki A Kolmetz1014Japan2025-09-18
Murillo G Tollner1015Spain2025-09-23
Mayumi Y Dilliard1016Russia2025-10-15
Juan A Campain1017Argentina2025-10-01
Stacey C Glick1018Spain2025-10-04
Clifford D Shinko1019Russia2025-09-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh E VenereUnited KingdomElwin Sharvill NEW
Ricardo S DilliardJapanStephen Shaw NEGOTIATION
Morrow A AmigonBrazilStephen Shaw NEW
Emily W RoysterGermanyStephen Shaw QUALIFIED
Darci G NickaCanadaIvan Magalhaes PROPOSAL
Cody R StensethJapanAnna Fali PROPOSAL
Wickens A OldroydIndiaOnyama Limba RENEWAL
Leja J RoysterIndiaAmy Elsner NEW
Tony N FerenczCanadaOnyama Limba NEW
Kadeem Y WieserAustraliaAmy Elsner PROPOSAL
Juan D MaletJapanBernardo Dominic NEGOTIATION
Ivar Y ChuiArgentinaAmy Elsner QUALIFIED
Antonio F FerenczSpainAmy Elsner PROPOSAL
Nicolas Y DarakjyGermanyElwin Sharvill NEW
Claire U IturbideFranceOnyama Limba RENEWAL
David Q CaldareraGermanyIoni Bowcher UNQUALIFIED
David R VocelkaAustraliaIoni Bowcher UNQUALIFIED
Misaki G SaylorsIndiaAmy Elsner RENEWAL
Jefferson F VenereSpainAsiya Javayant PROPOSAL
Jeanfrancois A DoeUnited KingdomIvan Magalhaes UNQUALIFIED
Maria K WhobreyGermanyAsiya Javayant NEW
David I TollnerUnited KingdomIoni Bowcher QUALIFIED
Greenwood O FerenczCanadaIvan Magalhaes NEW
Julie V FerenczIndiaIvan Magalhaes UNQUALIFIED
Aruna O FlosiUnited KingdomIvan Magalhaes RENEWAL
Misaki F WieserGermanyAsiya Javayant PROPOSAL
Munro O SaylorsSpainElwin Sharvill NEW
Ashley T StensethCanadaElwin Sharvill NEW
Smith E VocelkaCanadaAmy Elsner NEGOTIATION
David Q KolmetzItalyIoni Bowcher PROPOSAL
Misaki G VocelkaArgentinaIoni Bowcher QUALIFIED
Aruna A GillianBrazilAnna Fali QUALIFIED
Aruna H RoysterJapanElwin Sharvill QUALIFIED
Greenwood M GlickAustraliaAmy Elsner RENEWAL
Aruna K NestleCanadaAnna Fali QUALIFIED
Ivar V GlickItalyXuxue Feng UNQUALIFIED
Maisha Y KolmetzRussiaAsiya Javayant NEW
Rodrigues U StensethRussiaStephen Shaw NEGOTIATION
David R DoeArgentinaIvan Magalhaes UNQUALIFIED
Jeanfrancois Z DoeArgentinaElwin Sharvill 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>