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
Jones X FerenczSpainXuxue Feng PROPOSAL
James L MaletRussiaBernardo Dominic NEW
Kaitlin K FigeroaCanadaIoni Bowcher RENEWAL
Silvio C StockhamFranceXuxue Feng RENEWAL
Francesco F StockhamBrazilOnyama Limba RENEWAL
Kaitlin E ButtSpainXuxue Feng QUALIFIED
Rodrigues E BologniaGermanyStephen Shaw UNQUALIFIED
Kadeem U DoeUnited KingdomAmy Elsner NEGOTIATION
Claire Y MorascaFranceAnna Fali RENEWAL
Aditya P SlusarskiIndiaAsiya Javayant PROPOSAL
Smith E SergiJapanAnna Fali PROPOSAL
Greenwood P CaldareraGermanyOnyama Limba NEW
Wickens W TollnerJapanStephen Shaw NEGOTIATION
Sinclair M AlbaresBrazilStephen Shaw NEW
Jeanfrancois Q AmigonItalyXuxue Feng NEW
Kaitlin Z MorascaFranceAmy Elsner NEW
Sinclair G FlosiBrazilAsiya Javayant NEGOTIATION
Jennifer K SlusarskiAustraliaIvan Magalhaes PROPOSAL
Mujtaba J OstroskyBrazilAnna Fali RENEWAL
Izzy Z BologniaIndiaElwin Sharvill NEW
Jeanfrancois K TollnerCanadaIvan Magalhaes PROPOSAL
Wickens T AlbaresRussiaIoni Bowcher QUALIFIED
Jeanfrancois F ButtItalyIvan Magalhaes NEGOTIATION
Ivar E DilliardRussiaBernardo Dominic PROPOSAL
Aruna F StensethAustraliaBernardo Dominic RENEWAL
Johnson Z DarakjyArgentinaXuxue Feng NEW
Emily V VocelkaRussiaBernardo Dominic QUALIFIED
Wickens X StensethIndiaIvan Magalhaes QUALIFIED
Stacey U MorascaUnited KingdomAnna Fali RENEWAL
Jefferson U KolmetzRussiaAmy Elsner UNQUALIFIED
Mayumi X StensethAustraliaIvan Magalhaes NEW
Claire R InouyeIndiaIoni Bowcher NEGOTIATION
Ashley S WieserSpainIoni Bowcher RENEWAL
Emily G GlickGermanyAsiya Javayant PROPOSAL
Antonio N BologniaArgentinaIoni Bowcher PROPOSAL
Murillo G DoeIndiaXuxue Feng RENEWAL
Murillo Y DilliardFranceStephen Shaw NEGOTIATION
Rodrigues E ButtBrazilOnyama Limba RENEWAL
Aika V ButtJapanOnyama Limba NEGOTIATION
Alejandro R GlickUnited KingdomStephen Shaw RENEWAL
Ashley L GauchoAustraliaAnna Fali RENEWAL
Darci Y MorascaCanadaIoni Bowcher PROPOSAL
Aditya X NickaArgentinaStephen Shaw NEGOTIATION
Darci O NickaIndiaAsiya Javayant RENEWAL
Alejandro W RutaJapanIvan Magalhaes PROPOSAL
Mayumi H MaletCanadaElwin Sharvill QUALIFIED
Aika M WieserGermanyBernardo Dominic PROPOSAL
Octavia B PaprockiAustraliaAmy Elsner PROPOSAL
Jones W SaylorsJapanIoni Bowcher NEGOTIATION
Kadeem U BowleyFranceAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Julie U DarakjySpainOnyama Limba UNQUALIFIED
Misaki X FollerJapanElwin Sharvill NEW
Costa Q ShinkoAustraliaAnna Fali UNQUALIFIED
Murillo M GlickArgentinaAnna Fali NEGOTIATION
Leja A AlbaresAustraliaAmy Elsner RENEWAL
Aruna O WieserAustraliaAmy Elsner RENEWAL
Tony N KuskoRussiaAsiya Javayant NEGOTIATION
Adams C GlickRussiaAnna Fali NEW
Arvin B KuskoCanadaBernardo Dominic NEW
Johnson R CaldareraAustraliaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin R FollerCanada2024-05-25Feiner Bros NEW84Ivan Magalhaes
1001Munro F ShinkoUnited Kingdom2024-05-28Truhlar And Truhlar Attys NEGOTIATION19Xuxue Feng
1002Isabel H PerinRussia2024-05-27Chemel, James L Cpa QUALIFIED44Amy Elsner
1003Costa A WaycottBrazil2024-06-09Commercial Press RENEWAL46Asiya Javayant
1004Sinclair Z ShinkoCanada2024-06-20Feltz Printing Service RENEWAL4Bernardo Dominic
1005Jones N DarakjyFrance2024-06-22Truhlar And Truhlar Attys UNQUALIFIED14Elwin Sharvill
1006Morrow E KuskoCanada2024-05-29Dorl, James J Esq NEGOTIATION28Ivan Magalhaes
1007Claire C WhobreyUnited Kingdom2024-06-18Commercial Press QUALIFIED53Amy Elsner
1008Juan S TollnerIndia2024-05-27King, Christopher A Esq NEW92Bernardo Dominic
1009Claire X MarrierGermany2024-06-20Buckley Miller Wright PROPOSAL71Xuxue Feng
1010Aditya N RutaRussia2024-06-06Buckley Miller Wright PROPOSAL91Asiya Javayant
1011Octavia T ChuiGermany2024-06-11King, Christopher A Esq QUALIFIED12Ioni Bowcher
1012Aruna X PaprockiBrazil2024-06-01Feltz Printing Service NEGOTIATION92Amy Elsner
1013Tony G MaletSpain2024-06-22Rangoni Of Florence RENEWAL0Stephen Shaw
1014Ivar V NestleRussia2024-06-22Benton, John B Jr UNQUALIFIED78Anna Fali
1015Julie X SlusarskiCanada2024-06-06Benton, John B Jr RENEWAL62Bernardo Dominic
1016Chavez H DilliardArgentina2024-05-25King, Christopher A Esq PROPOSAL19Xuxue Feng
1017Kaitlin M VenereArgentina2024-06-12Truhlar And Truhlar Attys RENEWAL44Amy Elsner
1018Leja P GlickFrance2024-05-31Chanay, Jeffrey A Esq RENEWAL65Ioni Bowcher
1019Ricardo D AlbaresGermany2024-06-12Benton, John B Jr RENEWAL74Ivan Magalhaes
1020Izzy P DarakjyJapan2024-06-17Feiner Bros RENEWAL77Bernardo Dominic
1021Greenwood Q BriddickSpain2024-06-07Chanay, Jeffrey A Esq PROPOSAL5Anna Fali
1022Jones Q GauchoGermany2024-06-07King, Christopher A Esq NEW19Anna Fali
1023Julie M RulapaughBrazil2024-06-01Feiner Bros NEW97Anna Fali
1024Leja V RulapaughIndia2024-06-14Truhlar And Truhlar Attys RENEWAL59Bernardo Dominic
1025Salvatore Q BologniaFrance2024-06-22Morlong Associates NEGOTIATION1Xuxue Feng
1026Misaki T ButtArgentina2024-06-22Chapman, Ross E Esq UNQUALIFIED96Anna Fali
1027Clifford K BologniaBrazil2024-06-20Dorl, James J Esq PROPOSAL37Amy Elsner
1028Emily D BriddickGermany2024-06-18Printing Dimensions PROPOSAL11Anna Fali
1029Faith A BriddickCanada2024-06-14Feiner Bros PROPOSAL26Ioni Bowcher
1030Leja N DarakjyJapan2024-06-02Feltz Printing Service UNQUALIFIED72Asiya Javayant
1031James F FollerIndia2024-06-19Benton, John B Jr RENEWAL43Ivan Magalhaes
1032Johnson B CampainUnited Kingdom2024-06-22Rangoni Of Florence RENEWAL22Ioni Bowcher
1033Leja Z IturbideArgentina2024-06-03Chapman, Ross E Esq QUALIFIED1Ioni Bowcher
1034Emily G BriddickFrance2024-05-29Truhlar And Truhlar Attys UNQUALIFIED69Ioni Bowcher
1035Leon L MorascaRussia2024-05-24Rousseaux, Michael Esq PROPOSAL76Ivan Magalhaes
1036Antonio L OldroydRussia2024-05-24Benton, John B Jr NEW27Ivan Magalhaes
1037Emily X SaylorsBrazil2024-06-20Feiner Bros PROPOSAL33Ioni Bowcher
1038Octavia G AmigonItaly2024-06-17King, Christopher A Esq NEW36Bernardo Dominic
1039Morrow P RutaItaly2024-05-28Benton, John B Jr NEGOTIATION28Elwin Sharvill
1040Julie G FlosiCanada2024-06-16Morlong Associates RENEWAL87Asiya Javayant
1041Julie K PerinItaly2024-06-11King, Christopher A Esq NEW57Asiya Javayant
1042Deepesh U RimGermany2024-06-18Rangoni Of Florence NEGOTIATION17Asiya Javayant
1043Maria H MorascaAustralia2024-05-31Feiner Bros QUALIFIED82Bernardo Dominic
1044Chavez Q BologniaItaly2024-06-03Benton, John B Jr UNQUALIFIED78Anna Fali
1045Darci H InouyeUnited Kingdom2024-05-31Morlong Associates NEW97Xuxue Feng
1046Juan H RulapaughArgentina2024-06-09Feltz Printing Service UNQUALIFIED70Xuxue Feng
1047Ivar B ButtIndia2024-05-30Rangoni Of Florence NEGOTIATION33Bernardo Dominic
1048Clifford U RimItaly2024-05-31Chemel, James L Cpa PROPOSAL59Amy Elsner
1049Sinclair L FerenczFrance2024-05-24Benton, John B Jr NEGOTIATION18Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Leja N KuskoIndiaXuxue Feng UNQUALIFIED
Emily P GarufiGermanyOnyama Limba RENEWAL
Costa R GlickUnited KingdomXuxue Feng QUALIFIED
Wickens L MorascaSpainIvan Magalhaes NEGOTIATION
Silvio T MaletAustraliaXuxue Feng QUALIFIED
Wickens U NickaUnited KingdomAsiya Javayant PROPOSAL
Leon L SergiFranceOnyama Limba RENEWAL
Izzy X VocelkaSpainAsiya Javayant UNQUALIFIED
Nicolas E NickaCanadaOnyama Limba PROPOSAL
Mayumi N MaletItalyXuxue Feng RENEWAL
Adams S BriddickJapanAmy Elsner NEW
Aika G MorascaItalyAnna Fali RENEWAL
Ashley Q NickaIndiaElwin Sharvill UNQUALIFIED
Tony T RimAustraliaAsiya Javayant RENEWAL
Claire A BowleyIndiaAmy Elsner PROPOSAL
Misaki Z AlbaresAustraliaIoni Bowcher NEGOTIATION
Leon B FlosiAustraliaAnna Fali PROPOSAL
Ricardo Z InouyeBrazilAmy Elsner UNQUALIFIED
Rodrigues M InouyeIndiaAsiya Javayant UNQUALIFIED
Mayumi I WieserBrazilBernardo Dominic QUALIFIED
Costa C GlickCanadaAnna Fali NEGOTIATION
Murillo K GauchoGermanyElwin Sharvill PROPOSAL
Deepesh X RoysterFranceIvan Magalhaes NEW
Johnson R ShinkoFranceIoni Bowcher NEGOTIATION
Adams T DoeFranceStephen Shaw UNQUALIFIED
Darci G WieserUnited KingdomOnyama Limba UNQUALIFIED
Octavia F MarrierGermanyAmy Elsner QUALIFIED
Chavez D StockhamGermanyOnyama Limba NEGOTIATION
Johnson W OstroskyBrazilStephen Shaw QUALIFIED
Nicolas A RutaAustraliaOnyama Limba NEW
Maria G SaylorsBrazilXuxue Feng RENEWAL
Leon O RimJapanAmy Elsner NEGOTIATION
Mayumi J DarakjyFranceElwin Sharvill RENEWAL
Jones N SergiSpainElwin Sharvill QUALIFIED
Tony C SlusarskiIndiaAsiya Javayant RENEWAL
Ricardo Y SaylorsArgentinaStephen Shaw PROPOSAL
Ricardo D AmigonJapanIoni Bowcher PROPOSAL
Aruna S WhobreyJapanElwin Sharvill QUALIFIED
Ivar Y GillianArgentinaXuxue Feng NEGOTIATION
Leja I MaletFranceXuxue Feng RENEWAL
Stacey J IturbideAustraliaXuxue Feng RENEWAL
Alejandro V RimSpainStephen Shaw RENEWAL
Chavez N NestleItalyIoni Bowcher UNQUALIFIED
Faith Z PoquetteGermanyIoni Bowcher UNQUALIFIED
Emily M MaletFranceAnna Fali NEW
Silvio O StensethSpainStephen Shaw NEW
Emily C BriddickGermanyElwin Sharvill NEGOTIATION
Costa R MarrierIndiaAsiya Javayant NEW
Ricardo Q StockhamFranceIvan Magalhaes PROPOSAL
Nicolas D NickaAustraliaXuxue Feng PROPOSAL
Frozen Columns
Name
Tony R Albares
Cody P Kolmetz
Deepesh A Bowley
Aruna E Malet
Darci H Iturbide
Clifford U Caldarera
Jeanfrancois G Albares
Alejandro W Bolognia
Mayumi H Shinko
Jones K Garufi
Francesco I Schemmer
Cody M Foller
Faith I Foller
Maria V Iturbide
Tony A Malet
Ricardo K Briddick
Chavez O Rulapaugh
Francesco C Stenseth
David B Darakjy
Jeanfrancois C Campain
Jeanfrancois X Stockham
Ivar D Caudy
Aditya S Nicka
Jeanfrancois K Butt
Emily Z Shinko
Nicolas H Malet
Misaki V Stockham
Sinclair X Malet
Maisha T Ruta
Salvatore E Oldroyd
Maisha M Perin
Mujtaba E Darakjy
Clifford N Garufi
Wickens R Doe
Salvatore A Albares
Ivar H Amigon
Antonio A Garufi
Tony A Darakjy
Leja M Rulapaugh
Kadeem U Bowley
Aika I Poquette
Antonio K Darakjy
Smith W Wieser
Faith G Campain
Costa F Ruta
Jones I Campain
Misaki S Stenseth
Izzy S Slusarski
Ricardo V Slusarski
Claire K Ruta
IdCountryDate
1000India2024-06-12
1001Italy2024-06-19
1002Argentina2024-06-10
1003Russia2024-06-20
1004Australia2024-05-29
1005France2024-05-31
1006India2024-06-05
1007Italy2024-06-15
1008Germany2024-06-14
1009Australia2024-06-04
1010Russia2024-06-08
1011India2024-06-14
1012India2024-06-09
1013Brazil2024-06-10
1014United Kingdom2024-06-21
1015Brazil2024-06-06
1016United Kingdom2024-06-22
1017Russia2024-05-30
1018Japan2024-05-27
1019France2024-06-14
1020Japan2024-06-19
1021India2024-06-15
1022Italy2024-06-20
1023India2024-06-09
1024Germany2024-06-21
1025Brazil2024-05-25
1026Germany2024-05-27
1027Japan2024-06-13
1028Brazil2024-06-19
1029United Kingdom2024-06-17
1030Spain2024-05-26
1031France2024-06-20
1032Italy2024-05-25
1033India2024-06-10
1034Australia2024-06-01
1035Germany2024-06-05
1036Spain2024-06-21
1037Russia2024-06-09
1038Canada2024-06-03
1039Australia2024-06-15
1040India2024-06-08
1041Argentina2024-06-01
1042Spain2024-06-14
1043India2024-06-12
1044Australia2024-05-28
1045Italy2024-06-10
1046Germany2024-05-30
1047Italy2024-05-25
1048Argentina2024-06-11
1049United Kingdom2024-06-05

On-Demand Data

NameIdCountryDate
James P Doe1000Argentina2024-05-31
Silvio S Ostrosky1001Australia2024-06-10
Costa F Briddick1002Canada2024-06-09
Mayumi N Bowley1003India2024-06-18
Johnson K Gillian1004United Kingdom2024-06-05
Costa I Foller1005Canada2024-06-20
Jefferson V Garufi1006Brazil2024-05-25
Tony J Tollner1007Spain2024-05-25
Ricardo G Maclead1008Japan2024-06-16
Francesco Z Whobrey1009Australia2024-06-17
Maisha Z Kusko1010Spain2024-06-18
Juan U Waycott1011Spain2024-06-12
Ashley Z Ostrosky1012Australia2024-05-30
Maisha Q Tollner1013India2024-06-12
Aruna L Malet1014India2024-06-17
Sinclair T Bowley1015Germany2024-06-01
Izzy C Rim1016France2024-05-27
Emily D Slusarski1017Germany2024-06-16
Morrow A Bowley1018Spain2024-05-26
Jeanfrancois C Saylors1019Italy2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco R OldroydIndiaAsiya Javayant RENEWAL
Darci U FerenczFranceElwin Sharvill PROPOSAL
Jennifer O PoquetteCanadaBernardo Dominic UNQUALIFIED
Aditya X BriddickArgentinaElwin Sharvill UNQUALIFIED
Maria F SergiAustraliaAsiya Javayant RENEWAL
Tony H GauchoIndiaElwin Sharvill NEGOTIATION
Ashley O MorascaArgentinaBernardo Dominic NEW
Kadeem R PoquetteJapanIoni Bowcher PROPOSAL
Mujtaba T WieserAustraliaAsiya Javayant UNQUALIFIED
Ashley R DilliardSpainStephen Shaw NEW
Murillo E StensethArgentinaXuxue Feng QUALIFIED
Clifford Z PaprockiRussiaXuxue Feng RENEWAL
Ricardo V StensethIndiaXuxue Feng NEW
Antonio L FerenczRussiaElwin Sharvill NEGOTIATION
Murillo O FollerRussiaAsiya Javayant UNQUALIFIED
Faith S VenereSpainIoni Bowcher PROPOSAL
Aditya U StensethIndiaIvan Magalhaes NEGOTIATION
Jones X BologniaItalyElwin Sharvill NEW
Darci P GauchoIndiaAmy Elsner NEGOTIATION
Greenwood W KolmetzRussiaBernardo Dominic NEW
Kaitlin Z StockhamIndiaOnyama Limba QUALIFIED
Claire D DoeJapanElwin Sharvill UNQUALIFIED
Julie C CaldareraIndiaIoni Bowcher RENEWAL
Jefferson E CaudyRussiaIoni Bowcher NEW
Ricardo K MorascaCanadaOnyama Limba QUALIFIED
Maisha E MaletItalyAmy Elsner RENEWAL
Alejandro I MarrierBrazilXuxue Feng RENEWAL
Munro V RulapaughUnited KingdomElwin Sharvill PROPOSAL
Ashley P StockhamJapanElwin Sharvill NEGOTIATION
Francesco M MacleadUnited KingdomAmy Elsner QUALIFIED
Ivar D NickaUnited KingdomIvan Magalhaes NEGOTIATION
Murillo B FigeroaUnited KingdomOnyama Limba RENEWAL
Sinclair Q BriddickRussiaOnyama Limba NEGOTIATION
Maisha I FlosiIndiaBernardo Dominic PROPOSAL
Kadeem O RutaArgentinaXuxue Feng NEGOTIATION
Jones K GlickAustraliaIvan Magalhaes PROPOSAL
Munro P CampainJapanAmy Elsner QUALIFIED
Ivar Y GarufiItalyIoni Bowcher PROPOSAL
Maisha L IturbideCanadaAmy Elsner UNQUALIFIED
Sinclair J PaprockiRussiaBernardo Dominic 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">
            <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>