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

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
James Y MarrierSpainAnna Fali QUALIFIED
Jeanfrancois K RimRussiaStephen Shaw UNQUALIFIED
Arvin V DilliardIndiaOnyama Limba UNQUALIFIED
Emily T PerinBrazilAnna Fali NEGOTIATION
Murillo O GarufiGermanyStephen Shaw PROPOSAL
Greenwood E GlickAustraliaOnyama Limba QUALIFIED
Juan Z OldroydJapanStephen Shaw QUALIFIED
Nicolas S OstroskyCanadaAmy Elsner RENEWAL
Ivar N IturbideIndiaStephen Shaw RENEWAL
Murillo B PoquetteItalyAsiya Javayant UNQUALIFIED
Leon I ShinkoSpainAsiya Javayant PROPOSAL
Salvatore V BriddickRussiaAsiya Javayant UNQUALIFIED
Smith V ButtAustraliaElwin Sharvill UNQUALIFIED
Rodrigues D FlosiArgentinaIvan Magalhaes RENEWAL
Julie S MaletAustraliaIvan Magalhaes QUALIFIED
Aika J SaylorsCanadaBernardo Dominic UNQUALIFIED
Aruna Q AlbaresItalyElwin Sharvill UNQUALIFIED
Murillo K ShinkoAustraliaAnna Fali NEGOTIATION
Octavia X GillianUnited KingdomIvan Magalhaes PROPOSAL
Cody S SaylorsUnited KingdomElwin Sharvill UNQUALIFIED
Julie C RoysterBrazilOnyama Limba NEW
Greenwood W KuskoArgentinaIvan Magalhaes PROPOSAL
Arvin A SergiAustraliaIvan Magalhaes RENEWAL
James W KuskoBrazilXuxue Feng QUALIFIED
Johnson R RimArgentinaIoni Bowcher RENEWAL
Isabel Q ShinkoJapanAsiya Javayant PROPOSAL
Smith U RutaIndiaIvan Magalhaes UNQUALIFIED
Maisha R GlickGermanyAmy Elsner NEGOTIATION
Costa K GlickJapanAmy Elsner RENEWAL
Maria D RimAustraliaAsiya Javayant NEW
Emily R BriddickCanadaAsiya Javayant NEW
Octavia O PoquetteItalyBernardo Dominic QUALIFIED
Antonio S NickaIndiaXuxue Feng RENEWAL
Mujtaba O BriddickUnited KingdomAmy Elsner UNQUALIFIED
Sinclair E MaletJapanStephen Shaw RENEWAL
Alejandro E FlosiRussiaOnyama Limba RENEWAL
Izzy D StockhamGermanyOnyama Limba NEW
Maria P NestleItalyStephen Shaw NEW
Tony Y CampainGermanyIvan Magalhaes NEGOTIATION
Jones K CampainGermanyElwin Sharvill QUALIFIED
Morrow A PaprockiUnited KingdomElwin Sharvill QUALIFIED
Chavez V NestleIndiaAnna Fali RENEWAL
Morrow K CampainRussiaElwin Sharvill NEW
Misaki N WieserUnited KingdomOnyama Limba UNQUALIFIED
Tony V StockhamIndiaBernardo Dominic UNQUALIFIED
Maisha W ChuiIndiaIvan Magalhaes NEW
Francesco L FollerCanadaIoni Bowcher QUALIFIED
Darci Z MaletSpainXuxue Feng PROPOSAL
Ivar N WhobreyGermanyOnyama Limba QUALIFIED
Silvio A AlbaresJapanAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
James B RimUnited KingdomElwin Sharvill RENEWAL
Cody P FigeroaGermanyIoni Bowcher NEW
James Z MaletIndiaAnna Fali NEGOTIATION
Ashley S VocelkaBrazilAmy Elsner NEW
Maisha K ButtArgentinaAmy Elsner UNQUALIFIED
Arvin R MorascaBrazilIvan Magalhaes RENEWAL
Aditya W NickaSpainXuxue Feng RENEWAL
Tony O CampainRussiaAmy Elsner NEGOTIATION
Aika Q PaprockiRussiaIoni Bowcher RENEWAL
Mujtaba S VenereIndiaAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony B RutaGermany2024-06-13Truhlar And Truhlar Attys NEGOTIATION13Elwin Sharvill
1001Mujtaba C TollnerCanada2024-06-14Buckley Miller Wright PROPOSAL7Xuxue Feng
1002Maisha S KuskoArgentina2024-06-03Morlong Associates UNQUALIFIED46Amy Elsner
1003Isabel K FigeroaGermany2024-06-16Printing Dimensions RENEWAL50Onyama Limba
1004Deepesh X WieserCanada2024-06-07Printing Dimensions UNQUALIFIED47Xuxue Feng
1005Chavez S BriddickJapan2024-06-06Morlong Associates PROPOSAL63Anna Fali
1006Leja U AmigonSpain2024-06-15Printing Dimensions UNQUALIFIED9Ivan Magalhaes
1007Rodrigues I AmigonIndia2024-05-28Chemel, James L Cpa PROPOSAL45Onyama Limba
1008Emily X MarrierAustralia2024-06-17Dorl, James J Esq UNQUALIFIED7Amy Elsner
1009Jennifer Z ButtArgentina2024-06-10Truhlar And Truhlar Attys NEGOTIATION14Ioni Bowcher
1010Ricardo B VocelkaRussia2024-05-21Morlong Associates RENEWAL10Ioni Bowcher
1011Alejandro P GarufiJapan2024-06-10Feltz Printing Service NEW31Onyama Limba
1012Sinclair L FerenczUnited Kingdom2024-05-30Chemel, James L Cpa UNQUALIFIED39Xuxue Feng
1013Aruna F BriddickUnited Kingdom2024-06-06Morlong Associates QUALIFIED59Xuxue Feng
1014Silvio O BologniaItaly2024-05-29Benton, John B Jr NEGOTIATION72Stephen Shaw
1015Claire S AlbaresJapan2024-06-04Rangoni Of Florence RENEWAL58Amy Elsner
1016Stacey F WaycottIndia2024-05-22Chapman, Ross E Esq NEW29Ivan Magalhaes
1017Isabel I ButtRussia2024-05-21Feltz Printing Service UNQUALIFIED4Amy Elsner
1018Silvio K PerinItaly2024-06-13King, Christopher A Esq RENEWAL92Elwin Sharvill
1019Silvio E DilliardJapan2024-05-29Truhlar And Truhlar Attys PROPOSAL25Bernardo Dominic
1020Juan G TollnerSpain2024-05-31Buckley Miller Wright NEGOTIATION33Ivan Magalhaes
1021Jeanfrancois Q FerenczSpain2024-05-25Rangoni Of Florence RENEWAL45Amy Elsner
1022Morrow Y OstroskyGermany2024-06-05Chemel, James L Cpa PROPOSAL81Asiya Javayant
1023Arvin V WhobreyAustralia2024-06-12Buckley Miller Wright NEW65Anna Fali
1024Ivar H OstroskyGermany2024-06-09Commercial Press PROPOSAL93Anna Fali
1025James N ChuiUnited Kingdom2024-05-26Buckley Miller Wright QUALIFIED93Elwin Sharvill
1026Jennifer K CaldareraArgentina2024-05-31Benton, John B Jr RENEWAL8Amy Elsner
1027Stacey G ButtCanada2024-06-09Morlong Associates QUALIFIED88Amy Elsner
1028Ashley J RoysterCanada2024-06-14King, Christopher A Esq NEGOTIATION12Anna Fali
1029Darci C GillianIndia2024-06-05Feiner Bros RENEWAL22Elwin Sharvill
1030Francesco C GlickFrance2024-06-11Chapman, Ross E Esq NEGOTIATION49Onyama Limba
1031Jones H RutaIndia2024-06-07Commercial Press QUALIFIED40Anna Fali
1032Greenwood E SlusarskiFrance2024-06-10Rangoni Of Florence UNQUALIFIED95Bernardo Dominic
1033Leon J RutaArgentina2024-05-19Buckley Miller Wright NEGOTIATION81Bernardo Dominic
1034Chavez N CaudyCanada2024-06-09Buckley Miller Wright RENEWAL68Xuxue Feng
1035Murillo E MacleadAustralia2024-06-11Morlong Associates NEW28Elwin Sharvill
1036Aruna I DarakjyGermany2024-06-17Feltz Printing Service NEW20Asiya Javayant
1037Darci S MarrierJapan2024-06-11Chanay, Jeffrey A Esq NEW85Xuxue Feng
1038Silvio Y SergiBrazil2024-06-06Buckley Miller Wright QUALIFIED15Stephen Shaw
1039Kaitlin P DilliardItaly2024-06-07Printing Dimensions PROPOSAL39Asiya Javayant
1040Wickens N VocelkaItaly2024-05-31Morlong Associates NEGOTIATION80Ioni Bowcher
1041Claire K RulapaughAustralia2024-06-11Rangoni Of Florence NEW45Onyama Limba
1042Emily L ShinkoArgentina2024-06-15Rousseaux, Michael Esq PROPOSAL32Elwin Sharvill
1043Cody P MacleadIndia2024-06-11Feiner Bros UNQUALIFIED21Xuxue Feng
1044Isabel O GauchoFrance2024-05-20Dorl, James J Esq RENEWAL87Amy Elsner
1045Costa X CaldareraRussia2024-06-06King, Christopher A Esq NEW7Amy Elsner
1046Stacey N FollerUnited Kingdom2024-06-01Morlong Associates UNQUALIFIED18Amy Elsner
1047Juan B CaldareraRussia2024-06-05Chemel, James L Cpa QUALIFIED12Asiya Javayant
1048Mayumi D SchemmerItaly2024-06-05King, Christopher A Esq PROPOSAL1Anna Fali
1049Leon G TollnerJapan2024-06-02Buckley Miller Wright PROPOSAL94Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aruna E AlbaresArgentinaAnna Fali PROPOSAL
Smith U WaycottSpainStephen Shaw UNQUALIFIED
Adams H WhobreyCanadaOnyama Limba RENEWAL
Deepesh E FlosiFranceXuxue Feng PROPOSAL
Rodrigues N AmigonGermanyOnyama Limba NEGOTIATION
Ivar A OldroydGermanyAmy Elsner UNQUALIFIED
Aruna Z VenereCanadaIvan Magalhaes QUALIFIED
Cody N IturbideRussiaOnyama Limba NEW
Smith Y IturbideJapanOnyama Limba NEGOTIATION
Jones G FollerSpainAmy Elsner PROPOSAL
Murillo O NickaRussiaXuxue Feng PROPOSAL
Silvio G SaylorsCanadaXuxue Feng NEGOTIATION
Jennifer T WieserGermanyBernardo Dominic RENEWAL
Jennifer R MaletAustraliaOnyama Limba QUALIFIED
Claire Y MaletAustraliaAsiya Javayant RENEWAL
Claire D DoeGermanyBernardo Dominic QUALIFIED
Julie C StockhamFranceStephen Shaw NEW
Julie L AmigonFranceElwin Sharvill UNQUALIFIED
Ricardo I RoysterGermanyAmy Elsner RENEWAL
Leon G CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Leon S VenereSpainAmy Elsner RENEWAL
Darci O FigeroaUnited KingdomStephen Shaw UNQUALIFIED
Johnson C SlusarskiAustraliaAmy Elsner NEGOTIATION
Arvin X SlusarskiGermanyBernardo Dominic PROPOSAL
Greenwood G BologniaItalyIoni Bowcher PROPOSAL
Stacey M MacleadRussiaStephen Shaw QUALIFIED
Arvin P CaudyFranceBernardo Dominic UNQUALIFIED
Aruna H ChuiJapanIvan Magalhaes UNQUALIFIED
Izzy I GlickGermanyBernardo Dominic QUALIFIED
Misaki N WhobreyCanadaXuxue Feng RENEWAL
Johnson L TollnerUnited KingdomIvan Magalhaes PROPOSAL
Murillo F ButtAustraliaAmy Elsner QUALIFIED
Francesco I OstroskyAustraliaOnyama Limba NEW
Faith U AlbaresRussiaAnna Fali NEGOTIATION
Alejandro J StockhamGermanyIvan Magalhaes QUALIFIED
Octavia R RimSpainAnna Fali NEGOTIATION
Leon R ChuiJapanElwin Sharvill NEGOTIATION
Aika Z MaletSpainIvan Magalhaes NEGOTIATION
Munro O MarrierJapanIvan Magalhaes RENEWAL
Isabel I SlusarskiArgentinaAnna Fali QUALIFIED
Smith P SaylorsFranceAmy Elsner PROPOSAL
Nicolas K CaldareraUnited KingdomElwin Sharvill PROPOSAL
David F StockhamRussiaIoni Bowcher NEW
Deepesh U OldroydArgentinaAnna Fali NEGOTIATION
Aika U BowleyJapanIoni Bowcher RENEWAL
Faith V MacleadArgentinaElwin Sharvill UNQUALIFIED
Silvio R IturbideSpainIoni Bowcher QUALIFIED
Juan G SchemmerAustraliaIvan Magalhaes NEW
Francesco L RutaItalyAsiya Javayant UNQUALIFIED
Jennifer F CampainBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Cody G Perin
Octavia C Poquette
Emily Q Figeroa
Sinclair D Poquette
Leja L Schemmer
Maria C Ostrosky
Maisha Y Shinko
Rodrigues B Doe
Izzy V Caudy
Claire Z Bowley
Arvin V Kusko
Morrow O Nicka
Maisha U Kolmetz
Wickens B Ferencz
James U Dilliard
Leon X Flosi
Faith Q Iturbide
Isabel D Stenseth
Wickens O Perin
Morrow W Bowley
Cody E Malet
Francesco O Ferencz
Cody D Stockham
Wickens A Iturbide
Jones R Waycott
Murillo Z Marrier
Julie W Garufi
Izzy G Albares
Kaitlin Q Iturbide
Misaki I Stockham
Johnson Y Vocelka
Isabel C Rim
Arvin J Shinko
Johnson Y Whobrey
Julie V Sergi
Adams M Nicka
James N Campain
Jennifer F Poquette
Ricardo B Garufi
Kadeem H Butt
Kadeem G Oldroyd
Murillo N Waycott
Nicolas T Bolognia
Darci I Venere
Claire G Poquette
Mujtaba R Poquette
Aika C Bolognia
Arvin T Saylors
Arvin E Tollner
Emily A Paprocki
IdCountryDate
1000Italy2024-06-08
1001Spain2024-06-09
1002France2024-06-01
1003United Kingdom2024-06-16
1004Japan2024-06-12
1005United Kingdom2024-06-11
1006Brazil2024-06-13
1007Canada2024-06-11
1008Australia2024-05-21
1009Russia2024-06-09
1010United Kingdom2024-05-19
1011Australia2024-06-17
1012Spain2024-05-25
1013United Kingdom2024-05-20
1014Brazil2024-06-15
1015Spain2024-05-20
1016Brazil2024-05-20
1017Italy2024-05-19
1018Argentina2024-06-05
1019Canada2024-06-09
1020France2024-06-13
1021Brazil2024-05-20
1022India2024-06-08
1023Germany2024-05-27
1024Brazil2024-05-19
1025Australia2024-06-17
1026Spain2024-06-04
1027Argentina2024-05-29
1028Canada2024-05-30
1029Spain2024-06-14
1030Italy2024-05-23
1031Spain2024-05-30
1032Russia2024-05-30
1033France2024-06-04
1034France2024-05-26
1035Canada2024-06-08
1036Brazil2024-05-24
1037Germany2024-06-15
1038Italy2024-05-19
1039Japan2024-05-25
1040Japan2024-06-07
1041Argentina2024-06-17
1042France2024-06-13
1043Australia2024-05-22
1044France2024-05-28
1045Germany2024-06-14
1046France2024-05-19
1047United Kingdom2024-06-16
1048France2024-06-16
1049Australia2024-05-28

On-Demand Data

NameIdCountryDate
Mayumi U Malet1000India2024-06-08
Aditya O Perin1001Brazil2024-06-03
Leon A Perin1002France2024-06-16
Leon Y Tollner1003Brazil2024-06-08
Faith P Saylors1004Argentina2024-06-13
Jones K Waycott1005Australia2024-05-25
Silvio H Dilliard1006Japan2024-06-03
Tony B Garufi1007Italy2024-05-21
Arvin R Malet1008India2024-05-19
Octavia G Nestle1009Russia2024-06-10
Ashley F Albares1010India2024-05-25
Sinclair C Schemmer1011Spain2024-05-30
Darci O Tollner1012United Kingdom2024-06-04
Maria O Waycott1013India2024-05-26
Darci L Amigon1014Germany2024-05-24
Tony L Perin1015Spain2024-06-17
Wickens O Maclead1016United Kingdom2024-05-26
Salvatore T Garufi1017India2024-06-06
Kadeem A Kusko1018Germany2024-05-28
Smith K Rulapaugh1019Spain2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow Z TollnerIndiaXuxue Feng UNQUALIFIED
Aruna O NestleUnited KingdomAmy Elsner NEGOTIATION
James E MarrierSpainXuxue Feng PROPOSAL
Nicolas G NestleRussiaBernardo Dominic UNQUALIFIED
Wickens N GarufiAustraliaElwin Sharvill RENEWAL
Emily E InouyeAustraliaAnna Fali PROPOSAL
Francesco H NickaItalyBernardo Dominic NEGOTIATION
David I StockhamJapanXuxue Feng RENEWAL
Isabel U InouyeCanadaAsiya Javayant QUALIFIED
Antonio A DoeItalyOnyama Limba PROPOSAL
Maisha R BriddickIndiaStephen Shaw NEW
Smith P MarrierUnited KingdomOnyama Limba PROPOSAL
Stacey S InouyeBrazilAmy Elsner QUALIFIED
Nicolas Q FlosiSpainIvan Magalhaes PROPOSAL
Maria G CaldareraBrazilOnyama Limba NEGOTIATION
Octavia Z StensethIndiaAsiya Javayant PROPOSAL
Francesco D DilliardBrazilElwin Sharvill NEW
Darci M RutaFranceBernardo Dominic QUALIFIED
Munro H CaldareraRussiaAsiya Javayant NEGOTIATION
Kaitlin L FigeroaSpainElwin Sharvill UNQUALIFIED
Ivar E VenereArgentinaOnyama Limba UNQUALIFIED
Cody M PaprockiGermanyXuxue Feng QUALIFIED
Clifford K MaletAustraliaOnyama Limba UNQUALIFIED
Alejandro A WhobreyRussiaAsiya Javayant NEGOTIATION
Jennifer X NickaRussiaAsiya Javayant UNQUALIFIED
Chavez J StockhamBrazilBernardo Dominic RENEWAL
Isabel R PaprockiCanadaBernardo Dominic QUALIFIED
Nicolas O AmigonCanadaAnna Fali PROPOSAL
Morrow P DilliardItalyAmy Elsner NEGOTIATION
Kadeem I AmigonFranceAnna Fali NEW
Munro M BriddickArgentinaIoni Bowcher QUALIFIED
Izzy B InouyeBrazilXuxue Feng QUALIFIED
Munro A CaldareraItalyIvan Magalhaes NEW
James L PoquetteUnited KingdomStephen Shaw NEGOTIATION
Ivar H SchemmerRussiaAmy Elsner RENEWAL
Izzy Q AlbaresItalyXuxue Feng PROPOSAL
Rodrigues Q CampainBrazilBernardo Dominic QUALIFIED
Rodrigues X GlickAustraliaStephen Shaw NEW
Murillo Q FigeroaFranceElwin Sharvill NEGOTIATION
Octavia V RimBrazilXuxue Feng 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">
            <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>