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
Mayumi L RutaGermanyOnyama Limba QUALIFIED
Ivar R PerinBrazilStephen Shaw PROPOSAL
Murillo F GarufiBrazilAmy Elsner PROPOSAL
Ashley V GlickBrazilStephen Shaw QUALIFIED
Misaki C NestleFranceBernardo Dominic NEW
Aruna G SlusarskiUnited KingdomIvan Magalhaes RENEWAL
Jones C NickaArgentinaIvan Magalhaes NEGOTIATION
Sinclair Y NestleBrazilAmy Elsner QUALIFIED
Ashley T IturbideAustraliaXuxue Feng NEW
Julie K RulapaughSpainAmy Elsner PROPOSAL
Alejandro J WhobreyGermanyIoni Bowcher UNQUALIFIED
Mujtaba A CaldareraArgentinaAsiya Javayant RENEWAL
Aruna N SlusarskiIndiaBernardo Dominic UNQUALIFIED
Darci P GlickBrazilOnyama Limba RENEWAL
Ricardo Y MaletFranceAsiya Javayant NEGOTIATION
Salvatore R PaprockiJapanIoni Bowcher RENEWAL
Kadeem Y RimItalyAsiya Javayant PROPOSAL
Smith N RoysterGermanyXuxue Feng UNQUALIFIED
Chavez E RulapaughItalyXuxue Feng NEGOTIATION
Kaitlin G ButtArgentinaXuxue Feng NEW
Kadeem L DoeAustraliaAnna Fali UNQUALIFIED
Aika W FollerGermanyAmy Elsner PROPOSAL
Julie B DoeFranceAsiya Javayant RENEWAL
Octavia Y KolmetzArgentinaElwin Sharvill RENEWAL
Arvin Q AlbaresGermanyIvan Magalhaes NEGOTIATION
James E ButtCanadaAsiya Javayant RENEWAL
Rodrigues X CampainIndiaIvan Magalhaes RENEWAL
Leja C FollerSpainAmy Elsner PROPOSAL
Arvin R MacleadUnited KingdomIoni Bowcher QUALIFIED
Murillo S VocelkaGermanyAsiya Javayant PROPOSAL
Chavez Z OldroydCanadaAnna Fali QUALIFIED
Izzy D GauchoJapanAnna Fali UNQUALIFIED
Arvin H SergiItalyXuxue Feng NEGOTIATION
Munro E PaprockiFranceAmy Elsner PROPOSAL
Jennifer A StockhamIndiaOnyama Limba NEW
Salvatore G SergiGermanyBernardo Dominic NEGOTIATION
Faith I VocelkaSpainAsiya Javayant PROPOSAL
Sinclair S SergiAustraliaXuxue Feng NEW
Nicolas H KuskoBrazilAmy Elsner QUALIFIED
Morrow H DoeArgentinaAmy Elsner NEGOTIATION
Sinclair S NestleJapanIoni Bowcher NEW
Deepesh V PaprockiAustraliaElwin Sharvill RENEWAL
Leon F ButtRussiaIoni Bowcher QUALIFIED
Wickens N OstroskySpainAsiya Javayant NEGOTIATION
Jones R SaylorsSpainAnna Fali QUALIFIED
Leja K AlbaresIndiaOnyama Limba UNQUALIFIED
Munro U InouyeBrazilAsiya Javayant QUALIFIED
Morrow U FigeroaCanadaAmy Elsner RENEWAL
Stacey V StockhamIndiaXuxue Feng UNQUALIFIED
Juan N GillianItalyIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Munro A SchemmerItalyStephen Shaw PROPOSAL
Aruna Z DoeIndiaAmy Elsner NEGOTIATION
Aika L StockhamAustraliaXuxue Feng PROPOSAL
Salvatore B FlosiIndiaAsiya Javayant RENEWAL
Nicolas D FerenczGermanyStephen Shaw QUALIFIED
Wickens J DarakjyFranceOnyama Limba QUALIFIED
Juan X OldroydJapanAsiya Javayant QUALIFIED
Arvin D RulapaughCanadaAnna Fali PROPOSAL
Chavez L GarufiFranceBernardo Dominic NEW
Aruna C FerenczBrazilBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh L WaycottBrazil2024-05-27Commercial Press NEGOTIATION22Onyama Limba
1001Isabel N SlusarskiIndia2024-06-18Benton, John B Jr NEGOTIATION74Ivan Magalhaes
1002Aika B GauchoJapan2024-05-28Printing Dimensions QUALIFIED78Anna Fali
1003Leja Y RimJapan2024-05-25Feltz Printing Service NEW74Asiya Javayant
1004Smith S GillianIndia2024-06-19Rangoni Of Florence UNQUALIFIED36Stephen Shaw
1005Leon X FigeroaFrance2024-05-25Rousseaux, Michael Esq RENEWAL70Ioni Bowcher
1006Wickens T NickaCanada2024-06-01Truhlar And Truhlar Attys NEGOTIATION74Bernardo Dominic
1007Maisha W OstroskyUnited Kingdom2024-06-03Rangoni Of Florence QUALIFIED67Xuxue Feng
1008Izzy U GarufiItaly2024-05-27Printing Dimensions UNQUALIFIED42Onyama Limba
1009Costa Z BriddickIndia2024-06-04Rangoni Of Florence QUALIFIED3Ivan Magalhaes
1010Izzy X GillianAustralia2024-06-16Printing Dimensions NEW6Ivan Magalhaes
1011Antonio W DarakjyIndia2024-05-27Morlong Associates UNQUALIFIED17Xuxue Feng
1012Cody E PerinBrazil2024-06-09Printing Dimensions NEGOTIATION25Anna Fali
1013Silvio B OldroydJapan2024-06-10Rousseaux, Michael Esq NEGOTIATION73Stephen Shaw
1014Maisha T BologniaFrance2024-06-10King, Christopher A Esq QUALIFIED22Bernardo Dominic
1015Aruna W BriddickSpain2024-05-25Rangoni Of Florence QUALIFIED53Ivan Magalhaes
1016Costa D KuskoAustralia2024-05-28Benton, John B Jr NEGOTIATION50Ioni Bowcher
1017Maisha C SchemmerGermany2024-06-18Printing Dimensions NEGOTIATION9Ivan Magalhaes
1018Octavia F VocelkaSpain2024-05-26Buckley Miller Wright NEW42Xuxue Feng
1019David U SchemmerSpain2024-06-19Printing Dimensions UNQUALIFIED85Amy Elsner
1020Sinclair I GauchoGermany2024-05-31Printing Dimensions UNQUALIFIED4Bernardo Dominic
1021Leja O GarufiIndia2024-06-09Rousseaux, Michael Esq QUALIFIED33Xuxue Feng
1022Antonio V SergiCanada2024-05-25Morlong Associates RENEWAL84Anna Fali
1023Izzy A CaldareraRussia2024-06-19Truhlar And Truhlar Attys RENEWAL84Onyama Limba
1024Silvio I OstroskyFrance2024-06-02Commercial Press RENEWAL38Amy Elsner
1025Mayumi V RutaItaly2024-05-27King, Christopher A Esq NEGOTIATION59Elwin Sharvill
1026Cody A KolmetzAustralia2024-05-24Feltz Printing Service QUALIFIED92Stephen Shaw
1027Silvio E NickaGermany2024-05-24Truhlar And Truhlar Attys UNQUALIFIED84Xuxue Feng
1028Aruna H FerenczCanada2024-06-03Dorl, James J Esq RENEWAL74Elwin Sharvill
1029Adams Z RutaAustralia2024-06-14King, Christopher A Esq QUALIFIED30Asiya Javayant
1030James R BriddickUnited Kingdom2024-06-10Feiner Bros RENEWAL74Elwin Sharvill
1031Alejandro S PaprockiBrazil2024-06-12Benton, John B Jr NEW26Stephen Shaw
1032Antonio J OldroydAustralia2024-06-09Benton, John B Jr QUALIFIED39Ioni Bowcher
1033Jennifer M WieserUnited Kingdom2024-06-05Rousseaux, Michael Esq QUALIFIED69Asiya Javayant
1034Aika M InouyeItaly2024-05-31Rangoni Of Florence NEGOTIATION48Stephen Shaw
1035Wickens A OldroydUnited Kingdom2024-05-26Feltz Printing Service NEGOTIATION86Amy Elsner
1036Rodrigues T ButtArgentina2024-06-21Chapman, Ross E Esq RENEWAL57Elwin Sharvill
1037Adams T WieserFrance2024-05-29Chanay, Jeffrey A Esq RENEWAL9Xuxue Feng
1038Stacey A VocelkaUnited Kingdom2024-05-27Chemel, James L Cpa NEGOTIATION21Xuxue Feng
1039Faith Q SaylorsBrazil2024-05-25Printing Dimensions RENEWAL82Anna Fali
1040Aruna N SergiSpain2024-05-28Rangoni Of Florence NEW44Anna Fali
1041Arvin F NickaCanada2024-06-04Commercial Press UNQUALIFIED58Elwin Sharvill
1042Darci U MorascaCanada2024-05-26Printing Dimensions NEW9Stephen Shaw
1043Murillo Z OldroydBrazil2024-05-28Rousseaux, Michael Esq NEW99Anna Fali
1044Jennifer M GlickRussia2024-05-30Feltz Printing Service NEW45Stephen Shaw
1045Mujtaba H MaletGermany2024-06-15Commercial Press UNQUALIFIED39Xuxue Feng
1046Jefferson E BowleyItaly2024-06-01Feltz Printing Service RENEWAL49Stephen Shaw
1047Antonio W BowleyGermany2024-06-06Benton, John B Jr RENEWAL91Onyama Limba
1048Kaitlin N MaletJapan2024-05-28Benton, John B Jr NEW65Ivan Magalhaes
1049Jefferson O OstroskyArgentina2024-05-29Morlong Associates NEGOTIATION20Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aika A FerenczItalyAsiya Javayant PROPOSAL
Juan L GauchoRussiaIoni Bowcher QUALIFIED
Ashley H MaletGermanyAnna Fali QUALIFIED
Alejandro H ButtUnited KingdomAsiya Javayant QUALIFIED
Antonio Y MarrierAustraliaXuxue Feng NEGOTIATION
Octavia O CaldareraSpainAsiya Javayant NEGOTIATION
Rodrigues J PaprockiAustraliaElwin Sharvill NEW
Johnson G InouyeRussiaAsiya Javayant RENEWAL
Aruna T FlosiAustraliaOnyama Limba QUALIFIED
Rodrigues N DilliardItalyIoni Bowcher NEW
Kadeem L ButtJapanAmy Elsner RENEWAL
Arvin G BologniaItalyBernardo Dominic NEW
Claire V ChuiJapanIoni Bowcher NEW
Salvatore R SlusarskiAustraliaBernardo Dominic QUALIFIED
Tony F RutaAustraliaStephen Shaw NEW
Mayumi B GillianFranceStephen Shaw PROPOSAL
Morrow Q CaudyCanadaAsiya Javayant NEW
Costa W RutaGermanyAmy Elsner PROPOSAL
Silvio W FigeroaFranceElwin Sharvill PROPOSAL
Salvatore X KolmetzJapanIoni Bowcher UNQUALIFIED
Claire R GarufiItalyAsiya Javayant QUALIFIED
Jeanfrancois Z InouyeIndiaStephen Shaw QUALIFIED
Jefferson A RutaRussiaElwin Sharvill NEW
Cody W CaldareraBrazilElwin Sharvill QUALIFIED
Salvatore X FlosiGermanyIvan Magalhaes PROPOSAL
Nicolas D KolmetzAustraliaStephen Shaw UNQUALIFIED
Aika S KuskoJapanIvan Magalhaes RENEWAL
Cody Q WaycottItalyElwin Sharvill UNQUALIFIED
Clifford G CampainUnited KingdomAsiya Javayant NEW
Aruna Y DilliardRussiaStephen Shaw PROPOSAL
Jones O GarufiGermanyElwin Sharvill NEW
Mujtaba N ChuiItalyStephen Shaw NEGOTIATION
Maria R BowleyGermanyOnyama Limba NEW
Arvin W InouyeSpainIvan Magalhaes QUALIFIED
Claire N KuskoUnited KingdomAmy Elsner NEGOTIATION
Aika N RutaRussiaXuxue Feng NEW
Leon K KuskoJapanElwin Sharvill UNQUALIFIED
Alejandro D CaldareraArgentinaAmy Elsner RENEWAL
Darci I MacleadRussiaAsiya Javayant PROPOSAL
Kaitlin P DoeJapanAsiya Javayant PROPOSAL
Emily Q TollnerIndiaElwin Sharvill PROPOSAL
Ashley B GlickGermanyXuxue Feng NEGOTIATION
Sinclair N OstroskyRussiaIvan Magalhaes NEGOTIATION
Ashley P DarakjyAustraliaAmy Elsner NEGOTIATION
Emily P RoysterBrazilXuxue Feng PROPOSAL
Arvin L CaudyCanadaAsiya Javayant NEW
Clifford L FlosiUnited KingdomIvan Magalhaes NEW
Smith M WhobreyCanadaIoni Bowcher UNQUALIFIED
Juan J RutaIndiaXuxue Feng NEW
Aruna J FlosiRussiaAsiya Javayant PROPOSAL
Frozen Columns
Name
James A Glick
Stacey D Caudy
Greenwood V Whobrey
Darci G Waycott
Isabel S Saylors
Mujtaba F Darakjy
Jones J Gaucho
Wickens U Rulapaugh
Darci N Slusarski
Arvin V Chui
Francesco A Flosi
Silvio T Morasca
Adams J Perin
Smith U Kolmetz
Aditya N Paprocki
Mayumi P Kolmetz
Chavez J Caudy
Francesco Q Figeroa
Salvatore N Doe
Ashley T Perin
Aika T Ferencz
Aditya R Albares
Jeanfrancois U Iturbide
Aruna N Campain
Jeanfrancois Q Albares
Jefferson B Venere
Jones A Paprocki
Deepesh V Caudy
Leja Q Bowley
Darci Q Malet
Isabel Z Malet
Morrow E Royster
Wickens N Paprocki
Jones Z Rim
Nicolas O Albares
Mayumi U Nicka
Cody Q Ostrosky
Jeanfrancois B Gaucho
Misaki A Perin
Leja I Saylors
Isabel V Oldroyd
David G Albares
Kaitlin G Oldroyd
David J Ostrosky
Aika O Schemmer
Jennifer A Chui
Stacey S Slusarski
Sinclair K Malet
Greenwood P Nestle
Murillo P Gaucho
IdCountryDate
1000Brazil2024-05-31
1001United Kingdom2024-06-12
1002Spain2024-05-29
1003Australia2024-06-21
1004Japan2024-05-29
1005Japan2024-06-19
1006France2024-06-02
1007Russia2024-06-04
1008Canada2024-05-27
1009Italy2024-06-14
1010France2024-06-11
1011Russia2024-06-17
1012Spain2024-06-22
1013India2024-06-22
1014France2024-05-29
1015Italy2024-06-10
1016Spain2024-06-16
1017Australia2024-06-09
1018India2024-06-11
1019Russia2024-06-01
1020Australia2024-06-21
1021Brazil2024-05-27
1022Germany2024-06-16
1023Argentina2024-06-22
1024Spain2024-06-21
1025Japan2024-06-11
1026Russia2024-06-04
1027Germany2024-06-03
1028Brazil2024-05-27
1029France2024-06-02
1030Russia2024-05-24
1031Australia2024-06-08
1032Italy2024-06-09
1033Russia2024-06-10
1034India2024-05-30
1035Australia2024-06-15
1036Japan2024-06-13
1037India2024-06-10
1038France2024-05-29
1039Canada2024-05-26
1040Spain2024-06-22
1041Russia2024-06-19
1042France2024-06-09
1043France2024-06-17
1044United Kingdom2024-06-06
1045Argentina2024-05-30
1046Brazil2024-06-04
1047United Kingdom2024-06-10
1048Brazil2024-06-07
1049India2024-06-14

On-Demand Data

NameIdCountryDate
Juan W Shinko1000United Kingdom2024-06-20
Stacey X Nestle1001United Kingdom2024-06-17
Cody G Rim1002France2024-05-27
Kaitlin K Morasca1003United Kingdom2024-05-26
Chavez F Glick1004Italy2024-06-19
Ivar G Kusko1005Italy2024-06-08
Kadeem F Ostrosky1006Brazil2024-06-17
Jeanfrancois N Foller1007United Kingdom2024-06-01
Jeanfrancois S Shinko1008France2024-06-11
Adams M Inouye1009Australia2024-06-20
Jones P Chui1010France2024-06-10
Jones Q Malet1011Spain2024-05-26
Stacey R Rim1012Brazil2024-05-30
Cody C Kusko1013Spain2024-06-13
Sinclair M Sergi1014Italy2024-06-16
Kadeem X Malet1015Germany2024-06-08
Emily A Bolognia1016India2024-06-07
Stacey L Tollner1017Argentina2024-06-10
Rodrigues J Flosi1018United Kingdom2024-06-18
Jennifer O Shinko1019France2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel I PaprockiFranceStephen Shaw QUALIFIED
Aruna O CaldareraSpainXuxue Feng RENEWAL
Cody D DarakjyJapanAmy Elsner RENEWAL
Misaki N KolmetzIndiaIoni Bowcher PROPOSAL
Clifford T GarufiArgentinaElwin Sharvill UNQUALIFIED
David G MaletBrazilIoni Bowcher UNQUALIFIED
Kaitlin F OstroskyBrazilStephen Shaw PROPOSAL
Jefferson H NestleCanadaIoni Bowcher NEW
Ivar V RutaRussiaAmy Elsner QUALIFIED
Kaitlin M ChuiRussiaStephen Shaw UNQUALIFIED
Maria H AlbaresCanadaXuxue Feng NEGOTIATION
Julie Q OstroskyGermanyIoni Bowcher NEW
Jones X PaprockiAustraliaIoni Bowcher NEGOTIATION
Salvatore E DilliardArgentinaIvan Magalhaes RENEWAL
Maria X GarufiJapanElwin Sharvill UNQUALIFIED
Jefferson F PaprockiRussiaOnyama Limba QUALIFIED
Chavez W StensethFranceAsiya Javayant PROPOSAL
Maria V RulapaughIndiaBernardo Dominic PROPOSAL
Aditya D SlusarskiJapanBernardo Dominic NEW
Mujtaba O SergiItalyXuxue Feng PROPOSAL
Salvatore I DarakjyArgentinaElwin Sharvill NEGOTIATION
Clifford P GauchoArgentinaOnyama Limba PROPOSAL
Emily H StockhamBrazilXuxue Feng NEW
Arvin J GillianJapanAmy Elsner NEGOTIATION
Nicolas N FollerArgentinaStephen Shaw NEGOTIATION
Aruna M PerinFranceAsiya Javayant RENEWAL
Faith J IturbideGermanyStephen Shaw RENEWAL
Juan W MacleadJapanBernardo Dominic RENEWAL
Costa I MaletGermanyAnna Fali NEGOTIATION
Silvio E FigeroaBrazilIvan Magalhaes NEGOTIATION
Mayumi E WaycottRussiaAnna Fali QUALIFIED
Clifford A MacleadUnited KingdomIvan Magalhaes NEGOTIATION
Claire H CaudyAustraliaAnna Fali RENEWAL
Aditya D VocelkaItalyIvan Magalhaes QUALIFIED
Francesco L MaletSpainOnyama Limba PROPOSAL
Arvin E StensethFranceAmy Elsner NEGOTIATION
Wickens Y TollnerArgentinaXuxue Feng NEW
Juan D SlusarskiArgentinaOnyama Limba UNQUALIFIED
Clifford O SaylorsItalyAmy Elsner NEGOTIATION
Smith H StockhamItalyAmy Elsner NEGOTIATION

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