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
Smith Y OldroydItalyOnyama Limba QUALIFIED
Faith U MarrierArgentinaAmy Elsner UNQUALIFIED
Cody T StockhamJapanIvan Magalhaes RENEWAL
Jeanfrancois L ShinkoGermanyIvan Magalhaes NEW
Aruna Z FlosiCanadaBernardo Dominic RENEWAL
Leja I OstroskyItalyIvan Magalhaes QUALIFIED
Morrow D GillianJapanStephen Shaw QUALIFIED
Jennifer H PoquetteFranceStephen Shaw NEGOTIATION
Antonio M GauchoBrazilXuxue Feng NEW
Claire A StensethRussiaIoni Bowcher NEW
Leon U VenereAustraliaBernardo Dominic RENEWAL
James X WaycottArgentinaAsiya Javayant QUALIFIED
Aditya C FlosiIndiaElwin Sharvill NEGOTIATION
Mayumi L MarrierItalyElwin Sharvill RENEWAL
Aruna Y MacleadIndiaStephen Shaw RENEWAL
Morrow Z FerenczCanadaAsiya Javayant RENEWAL
Maisha A FlosiRussiaIoni Bowcher NEW
Aruna L ShinkoJapanIoni Bowcher PROPOSAL
Cody W PerinAustraliaElwin Sharvill NEW
Izzy Q FlosiUnited KingdomIoni Bowcher RENEWAL
Arvin L GillianBrazilElwin Sharvill UNQUALIFIED
Cody B WhobreyAustraliaStephen Shaw QUALIFIED
Salvatore C NestleJapanElwin Sharvill PROPOSAL
Chavez S RimItalyAmy Elsner UNQUALIFIED
Jeanfrancois G SchemmerFranceBernardo Dominic PROPOSAL
Claire F ChuiCanadaAmy Elsner PROPOSAL
Ashley S RutaAustraliaAmy Elsner RENEWAL
Alejandro A DoeFranceAsiya Javayant UNQUALIFIED
Adams N CaldareraAustraliaAmy Elsner RENEWAL
Emily X TollnerIndiaAsiya Javayant RENEWAL
Salvatore A StensethAustraliaAsiya Javayant PROPOSAL
Sinclair W FlosiItalyBernardo Dominic NEW
Misaki D InouyeAustraliaAmy Elsner QUALIFIED
Munro X VocelkaIndiaAsiya Javayant RENEWAL
Jeanfrancois C RulapaughSpainBernardo Dominic QUALIFIED
Juan Y RoysterBrazilOnyama Limba QUALIFIED
Maria K OldroydCanadaXuxue Feng QUALIFIED
Sinclair S SlusarskiAustraliaStephen Shaw RENEWAL
Jeanfrancois A OldroydJapanStephen Shaw UNQUALIFIED
Silvio D VenereArgentinaElwin Sharvill RENEWAL
Ashley H GillianGermanyElwin Sharvill NEGOTIATION
Leja W SaylorsItalyIvan Magalhaes RENEWAL
Claire I FlosiItalyStephen Shaw NEGOTIATION
Ashley I MacleadItalyIoni Bowcher QUALIFIED
Claire R InouyeBrazilIoni Bowcher RENEWAL
Octavia T RutaIndiaIvan Magalhaes PROPOSAL
Leja W CampainSpainIoni Bowcher NEW
Smith E GillianUnited KingdomElwin Sharvill QUALIFIED
Deepesh K StensethItalyIvan Magalhaes NEW
Aika Q SlusarskiGermanyElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Ricardo E VocelkaRussiaAsiya Javayant NEW
Claire G FerenczBrazilAnna Fali QUALIFIED
Costa K MaletJapanIvan Magalhaes PROPOSAL
James C StensethArgentinaAsiya Javayant PROPOSAL
Jefferson J GillianSpainElwin Sharvill NEW
Aruna M AlbaresItalyOnyama Limba PROPOSAL
David D OstroskyItalyAmy Elsner UNQUALIFIED
Nicolas F NickaIndiaAmy Elsner NEGOTIATION
Leon A NickaItalyXuxue Feng RENEWAL
Emily V MorascaUnited KingdomOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin N ChuiUnited Kingdom2024-05-16Benton, John B Jr NEGOTIATION48Ivan Magalhaes
1001Jennifer S FerenczJapan2024-05-26Dorl, James J Esq UNQUALIFIED71Elwin Sharvill
1002David G VocelkaUnited Kingdom2024-06-05King, Christopher A Esq NEW57Anna Fali
1003Salvatore K OstroskyAustralia2024-06-13Printing Dimensions PROPOSAL74Asiya Javayant
1004Nicolas E VenereRussia2024-06-12Rousseaux, Michael Esq RENEWAL27Amy Elsner
1005Jennifer J FollerCanada2024-06-14Rangoni Of Florence RENEWAL19Ivan Magalhaes
1006Nicolas Q StockhamJapan2024-06-03Chapman, Ross E Esq QUALIFIED37Onyama Limba
1007Jefferson Z SchemmerIndia2024-05-28Chemel, James L Cpa QUALIFIED58Stephen Shaw
1008Jefferson W BologniaAustralia2024-05-17Dorl, James J Esq QUALIFIED25Anna Fali
1009Salvatore B SchemmerAustralia2024-05-28Rousseaux, Michael Esq PROPOSAL45Stephen Shaw
1010James T KolmetzUnited Kingdom2024-05-30Feltz Printing Service PROPOSAL74Onyama Limba
1011Johnson O RutaAustralia2024-06-01King, Christopher A Esq RENEWAL92Amy Elsner
1012Claire P InouyeArgentina2024-06-07Benton, John B Jr RENEWAL49Anna Fali
1013Julie G DoeJapan2024-06-13Buckley Miller Wright QUALIFIED33Elwin Sharvill
1014Aika P ButtAustralia2024-05-29Truhlar And Truhlar Attys NEGOTIATION22Ivan Magalhaes
1015Costa E GillianSpain2024-05-18King, Christopher A Esq NEGOTIATION94Anna Fali
1016Costa E RoysterSpain2024-05-26Chanay, Jeffrey A Esq NEGOTIATION39Asiya Javayant
1017Wickens W NickaGermany2024-06-04Chanay, Jeffrey A Esq RENEWAL61Asiya Javayant
1018Chavez J VocelkaItaly2024-05-19Rangoni Of Florence RENEWAL31Bernardo Dominic
1019Antonio T DoeJapan2024-06-03Chapman, Ross E Esq QUALIFIED11Bernardo Dominic
1020Clifford E DoeArgentina2024-05-19Benton, John B Jr PROPOSAL90Amy Elsner
1021Leon A MaletIndia2024-05-30Rousseaux, Michael Esq UNQUALIFIED14Asiya Javayant
1022Jennifer I RimIndia2024-06-13King, Christopher A Esq NEW93Xuxue Feng
1023David I GillianItaly2024-05-22Buckley Miller Wright PROPOSAL10Onyama Limba
1024Kadeem K RulapaughCanada2024-06-11Feltz Printing Service UNQUALIFIED80Asiya Javayant
1025Tony B FerenczIndia2024-06-13Benton, John B Jr NEW65Bernardo Dominic
1026Emily N MacleadIndia2024-06-06Feltz Printing Service UNQUALIFIED90Onyama Limba
1027Maria D StockhamBrazil2024-06-13Benton, John B Jr QUALIFIED96Ivan Magalhaes
1028Sinclair G ButtIndia2024-06-06Chapman, Ross E Esq RENEWAL15Xuxue Feng
1029Maria Q SergiCanada2024-06-03Printing Dimensions RENEWAL80Xuxue Feng
1030Adams X WhobreyBrazil2024-05-30Dorl, James J Esq QUALIFIED51Bernardo Dominic
1031Jennifer V NickaFrance2024-05-22Feiner Bros RENEWAL74Stephen Shaw
1032Salvatore U CampainUnited Kingdom2024-05-26Commercial Press NEW47Asiya Javayant
1033Ricardo E CaudyBrazil2024-06-11Rangoni Of Florence UNQUALIFIED1Stephen Shaw
1034Isabel D VenereArgentina2024-06-14Chapman, Ross E Esq NEGOTIATION76Xuxue Feng
1035Izzy T ChuiCanada2024-05-24Morlong Associates RENEWAL26Amy Elsner
1036Leon V ChuiSpain2024-06-08Commercial Press UNQUALIFIED69Anna Fali
1037Wickens J SchemmerIndia2024-06-01Buckley Miller Wright UNQUALIFIED54Xuxue Feng
1038Munro H GlickCanada2024-05-18Truhlar And Truhlar Attys NEW80Ivan Magalhaes
1039Julie W KolmetzAustralia2024-06-09Feiner Bros QUALIFIED64Bernardo Dominic
1040Maria T ShinkoUnited Kingdom2024-06-05Feiner Bros NEGOTIATION11Anna Fali
1041Adams X AlbaresArgentina2024-05-24Chapman, Ross E Esq RENEWAL59Stephen Shaw
1042Nicolas I FigeroaFrance2024-06-11Rangoni Of Florence RENEWAL35Ioni Bowcher
1043Jennifer L BologniaGermany2024-05-26Benton, John B Jr PROPOSAL13Amy Elsner
1044Johnson M RimIndia2024-05-16Chemel, James L Cpa NEW47Xuxue Feng
1045Darci Y GarufiCanada2024-05-30Chanay, Jeffrey A Esq NEW82Asiya Javayant
1046Jennifer W StockhamAustralia2024-06-04Morlong Associates PROPOSAL27Ioni Bowcher
1047David N MacleadAustralia2024-05-24Rangoni Of Florence NEGOTIATION70Stephen Shaw
1048Greenwood T ShinkoGermany2024-06-09Rangoni Of Florence NEGOTIATION59Stephen Shaw
1049Leja O WaycottIndia2024-05-24Feiner Bros UNQUALIFIED14Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Wickens B KolmetzIndiaStephen Shaw PROPOSAL
Adams Z ButtCanadaIvan Magalhaes NEW
Jones Q SaylorsArgentinaXuxue Feng NEGOTIATION
Francesco I GillianArgentinaIoni Bowcher RENEWAL
Claire Q GarufiArgentinaIoni Bowcher NEW
Isabel S KuskoUnited KingdomAnna Fali NEGOTIATION
Alejandro V SaylorsIndiaAmy Elsner QUALIFIED
Mujtaba D FerenczBrazilXuxue Feng NEGOTIATION
Wickens X BowleyRussiaIoni Bowcher NEGOTIATION
Alejandro X CaudyJapanAnna Fali PROPOSAL
David J SchemmerAustraliaAmy Elsner PROPOSAL
James Z GarufiGermanyIvan Magalhaes NEW
Deepesh A BologniaJapanAmy Elsner NEGOTIATION
Jefferson D WaycottAustraliaAnna Fali UNQUALIFIED
Adams N MorascaGermanyAmy Elsner NEW
Wickens J ButtCanadaElwin Sharvill NEW
Jefferson E OstroskyGermanyXuxue Feng NEW
Ivar V BowleyAustraliaIvan Magalhaes QUALIFIED
Kadeem W GarufiRussiaAsiya Javayant RENEWAL
Nicolas G StockhamSpainAnna Fali NEW
Alejandro M GarufiBrazilAnna Fali NEGOTIATION
Isabel Z CampainSpainIvan Magalhaes UNQUALIFIED
Isabel Y VocelkaSpainXuxue Feng RENEWAL
Kadeem F SergiBrazilAmy Elsner QUALIFIED
Mayumi M StockhamIndiaOnyama Limba QUALIFIED
Ashley G NickaCanadaIvan Magalhaes NEGOTIATION
Silvio Y KolmetzItalyStephen Shaw UNQUALIFIED
Tony H FlosiBrazilAmy Elsner NEW
Cody G SaylorsItalyAnna Fali NEW
Faith D PoquetteJapanIvan Magalhaes NEW
David L DarakjyBrazilXuxue Feng PROPOSAL
Johnson L GauchoGermanyBernardo Dominic NEGOTIATION
Wickens N WieserCanadaElwin Sharvill NEGOTIATION
Stacey T ChuiCanadaIvan Magalhaes PROPOSAL
Maisha N AmigonItalyOnyama Limba PROPOSAL
Aditya P TollnerJapanOnyama Limba RENEWAL
Faith U CaudyFranceXuxue Feng RENEWAL
Greenwood O WhobreyCanadaIvan Magalhaes NEW
Alejandro S AmigonRussiaAmy Elsner QUALIFIED
Leon T CaldareraUnited KingdomOnyama Limba NEGOTIATION
Rodrigues A VocelkaItalyElwin Sharvill NEGOTIATION
Aika O DarakjySpainIvan Magalhaes NEGOTIATION
Rodrigues E MaletCanadaXuxue Feng NEGOTIATION
Arvin D SergiIndiaOnyama Limba NEGOTIATION
Aruna W GillianSpainOnyama Limba NEW
Deepesh P AmigonGermanyIoni Bowcher QUALIFIED
Jones S DarakjyItalyElwin Sharvill NEW
Jones G AlbaresAustraliaAnna Fali QUALIFIED
Tony U SlusarskiFranceBernardo Dominic UNQUALIFIED
Isabel O CampainGermanyXuxue Feng NEGOTIATION
Frozen Columns
Name
Ashley C Morasca
Cody H Stockham
Aruna E Waycott
Cody T Ferencz
Mayumi G Wieser
Juan K Figeroa
Julie Q Garufi
Jennifer C Glick
Darci B Ostrosky
Munro Z Iturbide
Sinclair Y Morasca
Mayumi K Amigon
Julie Q Bowley
Antonio G Chui
Ashley K Ferencz
Sinclair K Nestle
Wickens R Rim
Nicolas P Ferencz
Faith P Slusarski
Faith P Wieser
Octavia T Ostrosky
Misaki Q Stenseth
Jeanfrancois B Tollner
Kaitlin U Slusarski
Jefferson S Garufi
Clifford D Bowley
Clifford D Tollner
Leja F Butt
Faith A Doe
Rodrigues I Stockham
Tony I Chui
Arvin X Stockham
Morrow Z Oldroyd
Jefferson R Bolognia
Aruna W Whobrey
Aika P Iturbide
Chavez L Stockham
James A Caldarera
Juan G Rulapaugh
Sinclair K Waycott
Julie D Amigon
Jefferson U Venere
Kaitlin Q Kusko
Aruna S Butt
Aditya K Stenseth
Mujtaba B Oldroyd
Sinclair Z Caudy
Cody J Oldroyd
Salvatore Q Nicka
Julie F Rulapaugh
IdCountryDate
1000Russia2024-05-27
1001Russia2024-05-20
1002Germany2024-06-01
1003Argentina2024-05-29
1004Canada2024-06-14
1005Japan2024-06-01
1006Australia2024-06-02
1007Russia2024-06-06
1008France2024-05-24
1009Germany2024-05-23
1010France2024-05-25
1011Brazil2024-05-17
1012India2024-05-27
1013Japan2024-05-22
1014Argentina2024-06-05
1015India2024-05-30
1016Germany2024-06-05
1017Brazil2024-06-12
1018Australia2024-05-28
1019Australia2024-05-17
1020Canada2024-06-08
1021Russia2024-06-05
1022Australia2024-06-01
1023Spain2024-06-09
1024Argentina2024-05-30
1025Germany2024-05-19
1026Russia2024-06-11
1027Germany2024-06-02
1028United Kingdom2024-06-13
1029Spain2024-06-03
1030Germany2024-05-21
1031Australia2024-06-07
1032Australia2024-05-21
1033United Kingdom2024-05-16
1034Canada2024-05-27
1035Germany2024-05-17
1036Canada2024-05-20
1037Argentina2024-06-04
1038Germany2024-05-16
1039Canada2024-06-03
1040Australia2024-06-04
1041United Kingdom2024-05-17
1042France2024-06-01
1043United Kingdom2024-05-18
1044Australia2024-06-07
1045Russia2024-05-29
1046Italy2024-05-24
1047Argentina2024-06-09
1048Argentina2024-05-28
1049India2024-05-26

On-Demand Data

NameIdCountryDate
Silvio D Rulapaugh1000United Kingdom2024-05-29
Alejandro A Marrier1001Brazil2024-05-16
Aika X Paprocki1002United Kingdom2024-06-09
James F Malet1003Canada2024-05-31
Ashley X Royster1004Australia2024-05-20
Jeanfrancois I Sergi1005Italy2024-06-14
Adams W Ruta1006Canada2024-06-10
Misaki H Tollner1007Australia2024-06-08
Aika B Marrier1008Australia2024-05-18
Adams X Kusko1009United Kingdom2024-06-12
Octavia K Chui1010Australia2024-06-06
Salvatore C Bowley1011United Kingdom2024-05-24
Wickens C Inouye1012France2024-05-29
Clifford J Chui1013United Kingdom2024-06-12
Aika G Ruta1014India2024-05-26
Aditya S Albares1015Japan2024-05-20
Smith U Bowley1016Russia2024-05-17
Leja D Saylors1017France2024-06-01
Claire F Foller1018Brazil2024-05-25
Isabel X Maclead1019Japan2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika B TollnerGermanyStephen Shaw RENEWAL
Jones B AlbaresIndiaStephen Shaw PROPOSAL
Johnson V RoysterItalyAmy Elsner QUALIFIED
Darci N OldroydCanadaOnyama Limba NEW
Jennifer R AmigonJapanBernardo Dominic NEW
Costa A NickaGermanyOnyama Limba RENEWAL
Deepesh R WieserGermanyIoni Bowcher RENEWAL
Aditya L KuskoGermanyOnyama Limba PROPOSAL
Deepesh O IturbideItalyAnna Fali NEGOTIATION
Aika S GauchoJapanXuxue Feng NEGOTIATION
Nicolas O FerenczUnited KingdomIvan Magalhaes RENEWAL
Emily X VenereItalyAnna Fali UNQUALIFIED
Emily G PerinFranceIvan Magalhaes RENEWAL
Julie H MacleadGermanyOnyama Limba NEGOTIATION
Emily F ButtArgentinaAnna Fali PROPOSAL
Silvio A IturbideUnited KingdomBernardo Dominic NEW
Kaitlin K MaletGermanyOnyama Limba QUALIFIED
Mujtaba S AmigonFranceElwin Sharvill NEW
Cody Z WieserGermanyIvan Magalhaes NEW
Rodrigues S AmigonJapanIvan Magalhaes RENEWAL
Chavez U WhobreyAustraliaXuxue Feng UNQUALIFIED
Izzy R GlickCanadaOnyama Limba RENEWAL
Mayumi M AmigonGermanyAsiya Javayant QUALIFIED
Antonio H SaylorsSpainStephen Shaw UNQUALIFIED
Leon I FlosiJapanAsiya Javayant NEW
Leja T VocelkaUnited KingdomIoni Bowcher NEW
Kaitlin T CampainJapanBernardo Dominic PROPOSAL
Octavia O BologniaAustraliaAsiya Javayant NEGOTIATION
David X WhobreyArgentinaIoni Bowcher RENEWAL
Aruna N DarakjyIndiaElwin Sharvill NEW
Maisha F KolmetzFranceAnna Fali RENEWAL
Francesco J OldroydFranceIvan Magalhaes NEW
Julie L TollnerCanadaAmy Elsner QUALIFIED
Emily Q NestleFranceIoni Bowcher UNQUALIFIED
Cody P SchemmerSpainIvan Magalhaes PROPOSAL
Smith V ChuiIndiaBernardo Dominic NEW
Faith P StensethGermanyElwin Sharvill PROPOSAL
Adams A MaletBrazilStephen Shaw UNQUALIFIED
Jones P MaletArgentinaIoni Bowcher PROPOSAL
Sinclair Y InouyeBrazilOnyama Limba UNQUALIFIED

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