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
Greenwood Z PerinFranceStephen Shaw NEW
Kadeem F BologniaJapanXuxue Feng NEW
Isabel L ShinkoCanadaAsiya Javayant QUALIFIED
Aditya Y StensethAustraliaElwin Sharvill NEGOTIATION
Isabel F PoquetteAustraliaElwin Sharvill NEGOTIATION
Aditya F SlusarskiSpainBernardo Dominic UNQUALIFIED
Kaitlin R ShinkoGermanyAnna Fali QUALIFIED
Munro R CaudyUnited KingdomOnyama Limba RENEWAL
Smith X BowleyFranceElwin Sharvill QUALIFIED
David M WaycottJapanXuxue Feng NEGOTIATION
Costa X FigeroaFranceStephen Shaw PROPOSAL
Antonio M DilliardAustraliaBernardo Dominic UNQUALIFIED
Leja O VenereFranceXuxue Feng PROPOSAL
Ricardo Z RutaAustraliaBernardo Dominic PROPOSAL
Julie D DoeIndiaAnna Fali UNQUALIFIED
Salvatore H InouyeRussiaOnyama Limba RENEWAL
Juan E BriddickIndiaElwin Sharvill NEGOTIATION
Nicolas S DilliardIndiaIvan Magalhaes UNQUALIFIED
Emily S MaletGermanyStephen Shaw UNQUALIFIED
Maisha J NickaBrazilXuxue Feng RENEWAL
Alejandro V RoysterAustraliaAmy Elsner NEGOTIATION
Morrow J ButtBrazilElwin Sharvill RENEWAL
Costa G KuskoUnited KingdomIvan Magalhaes RENEWAL
Salvatore Q DarakjyFranceStephen Shaw UNQUALIFIED
James V MacleadGermanyAnna Fali PROPOSAL
Octavia O SchemmerSpainIoni Bowcher UNQUALIFIED
Faith K RimJapanBernardo Dominic QUALIFIED
Leon S NestleUnited KingdomOnyama Limba RENEWAL
Adams G WaycottSpainBernardo Dominic NEGOTIATION
Johnson K BowleyJapanIvan Magalhaes PROPOSAL
Salvatore M MarrierUnited KingdomBernardo Dominic NEGOTIATION
Ashley G BologniaSpainElwin Sharvill UNQUALIFIED
Ivar A KuskoSpainIvan Magalhaes RENEWAL
Smith G OldroydSpainAsiya Javayant NEGOTIATION
Arvin N MaletSpainStephen Shaw NEW
Kaitlin R KolmetzIndiaIoni Bowcher NEW
Wickens K GauchoUnited KingdomXuxue Feng NEGOTIATION
Antonio X IturbideGermanyAsiya Javayant NEW
Ivar V WieserRussiaAnna Fali UNQUALIFIED
Izzy N NickaIndiaXuxue Feng PROPOSAL
Julie A TollnerArgentinaElwin Sharvill NEGOTIATION
Maria K PerinSpainIvan Magalhaes UNQUALIFIED
Morrow X IturbideRussiaIvan Magalhaes PROPOSAL
David M PoquetteSpainAmy Elsner PROPOSAL
Jones A RimArgentinaAnna Fali NEW
Deepesh H GillianUnited KingdomIvan Magalhaes QUALIFIED
Antonio O MacleadAustraliaBernardo Dominic RENEWAL
Munro K StockhamFranceStephen Shaw NEW
Julie W RulapaughItalyIoni Bowcher RENEWAL
Clifford L DarakjyGermanyElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aditya O PerinIndiaStephen Shaw UNQUALIFIED
Smith Y GlickGermanyElwin Sharvill QUALIFIED
Nicolas H MorascaIndiaStephen Shaw QUALIFIED
Francesco B AmigonItalyStephen Shaw PROPOSAL
Jones Y FigeroaCanadaElwin Sharvill PROPOSAL
Johnson W VenereRussiaElwin Sharvill RENEWAL
James V SlusarskiSpainIvan Magalhaes NEW
Leja J GillianSpainIvan Magalhaes PROPOSAL
Greenwood A DilliardItalyAsiya Javayant RENEWAL
Jefferson Y InouyeJapanAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja E GlickIndia2024-05-31King, Christopher A Esq PROPOSAL85Xuxue Feng
1001Alejandro R GarufiFrance2024-06-05Feiner Bros UNQUALIFIED1Asiya Javayant
1002Francesco Q PaprockiAustralia2024-06-09Feltz Printing Service NEGOTIATION43Ivan Magalhaes
1003Mayumi M ShinkoJapan2024-06-18Morlong Associates NEW40Anna Fali
1004Octavia A RutaFrance2024-06-01Rangoni Of Florence UNQUALIFIED30Elwin Sharvill
1005Izzy F GarufiRussia2024-06-07Printing Dimensions PROPOSAL20Stephen Shaw
1006Tony U CaldareraUnited Kingdom2024-06-17Rangoni Of Florence NEGOTIATION56Stephen Shaw
1007Costa V GauchoRussia2024-05-28Rangoni Of Florence NEGOTIATION26Bernardo Dominic
1008Ricardo T BriddickGermany2024-06-13Truhlar And Truhlar Attys NEGOTIATION30Bernardo Dominic
1009Ivar E RutaArgentina2024-06-23Dorl, James J Esq NEW74Ioni Bowcher
1010Rodrigues F FlosiUnited Kingdom2024-06-25Buckley Miller Wright NEW76Ivan Magalhaes
1011Wickens B NickaGermany2024-06-01Truhlar And Truhlar Attys RENEWAL13Asiya Javayant
1012Maria H TollnerCanada2024-06-23Chemel, James L Cpa UNQUALIFIED4Amy Elsner
1013Chavez V CampainCanada2024-06-09Rousseaux, Michael Esq NEW88Amy Elsner
1014Ricardo U GarufiUnited Kingdom2024-06-15King, Christopher A Esq RENEWAL94Ivan Magalhaes
1015Ivar Z DoeAustralia2024-05-28Benton, John B Jr QUALIFIED89Stephen Shaw
1016Faith L CaudyFrance2024-06-03Feltz Printing Service UNQUALIFIED23Ioni Bowcher
1017Jennifer C CaudyGermany2024-06-12Chapman, Ross E Esq NEW50Bernardo Dominic
1018Alejandro R RutaArgentina2024-06-09Feltz Printing Service PROPOSAL35Stephen Shaw
1019Stacey Y ShinkoArgentina2024-05-28Printing Dimensions NEW99Amy Elsner
1020Sinclair C FerenczArgentina2024-06-01Rangoni Of Florence NEW14Amy Elsner
1021Cody V GillianArgentina2024-06-22Chanay, Jeffrey A Esq NEW37Xuxue Feng
1022Deepesh A WaycottBrazil2024-06-24Commercial Press PROPOSAL84Ivan Magalhaes
1023Nicolas E CampainRussia2024-06-03Rangoni Of Florence QUALIFIED11Elwin Sharvill
1024Mujtaba P KolmetzSpain2024-06-17Printing Dimensions PROPOSAL85Amy Elsner
1025Arvin M MaletRussia2024-06-16Chanay, Jeffrey A Esq NEW89Xuxue Feng
1026Ivar Z KuskoRussia2024-05-27Feiner Bros NEW74Onyama Limba
1027Mujtaba E WieserCanada2024-06-01Chapman, Ross E Esq RENEWAL86Stephen Shaw
1028Ivar X BologniaJapan2024-05-29Feiner Bros QUALIFIED28Asiya Javayant
1029Mujtaba P VocelkaBrazil2024-06-24King, Christopher A Esq UNQUALIFIED66Stephen Shaw
1030Cody N DilliardItaly2024-06-23Benton, John B Jr RENEWAL71Bernardo Dominic
1031Wickens U TollnerFrance2024-06-01Commercial Press QUALIFIED76Asiya Javayant
1032Octavia U NickaArgentina2024-06-10Rangoni Of Florence PROPOSAL78Anna Fali
1033Aika I ButtCanada2024-06-16Rousseaux, Michael Esq QUALIFIED15Amy Elsner
1034Nicolas F BologniaIndia2024-06-10Commercial Press QUALIFIED10Onyama Limba
1035Juan E FollerFrance2024-06-04Morlong Associates UNQUALIFIED85Anna Fali
1036Smith J BologniaAustralia2024-06-17Commercial Press NEW50Anna Fali
1037Morrow J BologniaAustralia2024-06-17Buckley Miller Wright PROPOSAL97Onyama Limba
1038Chavez F SergiItaly2024-06-19Buckley Miller Wright PROPOSAL51Asiya Javayant
1039Alejandro T GauchoCanada2024-06-14Dorl, James J Esq UNQUALIFIED17Ioni Bowcher
1040Kadeem X ButtGermany2024-06-12Benton, John B Jr NEW43Stephen Shaw
1041Sinclair H VocelkaRussia2024-06-05Chapman, Ross E Esq RENEWAL60Anna Fali
1042Smith E OldroydUnited Kingdom2024-06-07Chapman, Ross E Esq NEGOTIATION96Anna Fali
1043Misaki Y AmigonAustralia2024-06-13Dorl, James J Esq NEW12Elwin Sharvill
1044Greenwood Z SergiSpain2024-06-08Feltz Printing Service QUALIFIED54Onyama Limba
1045Isabel A FerenczIndia2024-06-09Commercial Press QUALIFIED12Ivan Magalhaes
1046Maisha N SchemmerJapan2024-06-07Morlong Associates QUALIFIED62Bernardo Dominic
1047Jennifer Q OldroydArgentina2024-06-13Feiner Bros NEW75Ivan Magalhaes
1048Deepesh M VocelkaAustralia2024-06-20Morlong Associates QUALIFIED18Asiya Javayant
1049Stacey D FlosiAustralia2024-06-22Chemel, James L Cpa PROPOSAL25Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Stacey U BologniaRussiaElwin Sharvill UNQUALIFIED
Chavez L PoquetteBrazilStephen Shaw PROPOSAL
Mayumi Q AlbaresBrazilAnna Fali QUALIFIED
Kaitlin K KolmetzGermanyAnna Fali QUALIFIED
Greenwood Y NestleAustraliaStephen Shaw NEW
David Z DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood L SergiSpainAmy Elsner NEGOTIATION
Nicolas L PoquetteSpainAmy Elsner NEGOTIATION
Faith M DarakjyCanadaIvan Magalhaes QUALIFIED
Aruna J BowleySpainBernardo Dominic QUALIFIED
Isabel S SergiSpainBernardo Dominic PROPOSAL
Misaki L MaletJapanElwin Sharvill UNQUALIFIED
Alejandro A IturbideJapanElwin Sharvill NEGOTIATION
Francesco R OldroydBrazilOnyama Limba NEW
Misaki W MorascaAustraliaOnyama Limba NEW
Adams I VenereBrazilXuxue Feng RENEWAL
Maria Z NestleArgentinaAsiya Javayant RENEWAL
Smith C SergiJapanXuxue Feng NEW
Alejandro L WieserCanadaAsiya Javayant QUALIFIED
Adams S ButtFranceElwin Sharvill PROPOSAL
Greenwood B OstroskyGermanyIoni Bowcher NEW
Cody X DarakjySpainIvan Magalhaes RENEWAL
Francesco V GauchoJapanAnna Fali NEW
Sinclair Q BologniaGermanyStephen Shaw NEGOTIATION
Smith V ChuiGermanyXuxue Feng PROPOSAL
Kaitlin K KolmetzGermanyAsiya Javayant RENEWAL
Wickens X GarufiSpainBernardo Dominic NEGOTIATION
Clifford D MaletItalyBernardo Dominic QUALIFIED
Cody Q SchemmerGermanyIvan Magalhaes NEGOTIATION
Deepesh H FigeroaItalyOnyama Limba PROPOSAL
Nicolas S CaldareraItalyIoni Bowcher PROPOSAL
Leja K DoeCanadaBernardo Dominic QUALIFIED
Adams H DoeCanadaStephen Shaw NEW
Jennifer B MacleadUnited KingdomBernardo Dominic QUALIFIED
Smith U WaycottSpainElwin Sharvill UNQUALIFIED
Faith Q RimArgentinaAsiya Javayant UNQUALIFIED
Jennifer W GillianGermanyOnyama Limba RENEWAL
Morrow M PoquetteBrazilIoni Bowcher NEGOTIATION
Ashley N FlosiJapanAnna Fali UNQUALIFIED
Alejandro E WaycottIndiaIoni Bowcher RENEWAL
Silvio N WaycottJapanBernardo Dominic PROPOSAL
Emily B KuskoSpainStephen Shaw PROPOSAL
Munro M NestleUnited KingdomAmy Elsner NEGOTIATION
Murillo N GarufiItalyXuxue Feng NEGOTIATION
Darci H ShinkoIndiaAnna Fali RENEWAL
Julie A RoysterBrazilAnna Fali UNQUALIFIED
Stacey B CaldareraIndiaIoni Bowcher PROPOSAL
Morrow N FigeroaAustraliaAsiya Javayant QUALIFIED
Isabel P RoysterCanadaAmy Elsner RENEWAL
Alejandro G DarakjyBrazilAsiya Javayant NEW
Frozen Columns
Name
Arvin O Tollner
Jeanfrancois E Chui
Francesco W Kusko
Tony F Foller
Stacey R Flosi
Cody U Briddick
Ricardo R Darakjy
Munro Z Oldroyd
Morrow G Figeroa
Darci A Rim
Juan O Iturbide
Jefferson B Saylors
Sinclair U Gillian
Jefferson V Schemmer
Costa L Albares
Tony B Stenseth
Smith N Albares
Jennifer V Gillian
Silvio T Kusko
Kadeem S Oldroyd
Ashley P Slusarski
Ivar W Darakjy
David H Poquette
Ashley D Gaucho
Juan S Chui
Ivar J Wieser
Stacey C Oldroyd
Clifford C Bowley
Jennifer X Campain
Jennifer O Campain
Leon P Rim
Adams O Figeroa
Sinclair H Foller
Leon M Flosi
Aika L Flosi
Deepesh Y Gillian
Ivar S Kolmetz
Mayumi C Nestle
Jeanfrancois C Garufi
Ashley S Inouye
Kaitlin S Gillian
Mujtaba J Chui
Leja E Kolmetz
Izzy I Butt
Munro K Amigon
Mujtaba Z Foller
James D Ferencz
Clifford R Stockham
Greenwood B Whobrey
Mujtaba J Foller
IdCountryDate
1000France2024-06-02
1001Argentina2024-06-23
1002France2024-06-16
1003Japan2024-06-06
1004Germany2024-06-20
1005India2024-06-25
1006France2024-06-13
1007United Kingdom2024-06-04
1008Australia2024-06-21
1009Canada2024-06-21
1010Russia2024-06-08
1011Australia2024-06-24
1012Spain2024-06-19
1013Brazil2024-06-05
1014United Kingdom2024-06-02
1015Canada2024-06-09
1016Italy2024-06-18
1017Argentina2024-05-29
1018Canada2024-06-08
1019France2024-06-20
1020Russia2024-06-23
1021Japan2024-06-24
1022India2024-06-16
1023Germany2024-06-23
1024Canada2024-05-31
1025Germany2024-06-16
1026United Kingdom2024-06-17
1027Germany2024-06-21
1028Argentina2024-06-22
1029Spain2024-06-24
1030Canada2024-06-09
1031United Kingdom2024-06-22
1032Italy2024-06-02
1033Spain2024-06-07
1034India2024-05-28
1035United Kingdom2024-06-04
1036Japan2024-06-13
1037Italy2024-06-13
1038Australia2024-06-15
1039Spain2024-06-20
1040Russia2024-05-30
1041Germany2024-05-27
1042Italy2024-06-15
1043United Kingdom2024-06-11
1044United Kingdom2024-06-08
1045Japan2024-05-31
1046Canada2024-06-08
1047Argentina2024-06-05
1048Canada2024-05-28
1049France2024-06-12

On-Demand Data

NameIdCountryDate
Juan G Paprocki1000Russia2024-05-30
Salvatore K Glick1001Japan2024-06-23
Wickens K Rulapaugh1002Canada2024-06-09
Francesco Z Maclead1003Germany2024-06-09
Jefferson Y Stockham1004Australia2024-06-20
Sinclair C Caudy1005Russia2024-06-15
Izzy Y Kusko1006Spain2024-06-15
Leja X Foller1007United Kingdom2024-06-15
Stacey S Slusarski1008France2024-05-31
Clifford H Malet1009France2024-06-08
Faith H Rulapaugh1010India2024-06-23
Deepesh D Poquette1011United Kingdom2024-06-23
Antonio M Rulapaugh1012Germany2024-06-19
Mayumi V Caudy1013Japan2024-06-24
Faith I Waycott1014Argentina2024-06-05
Darci Y Poquette1015Spain2024-06-14
Juan G Maclead1016Japan2024-06-20
Clifford C Oldroyd1017Brazil2024-05-29
Arvin V Sergi1018Spain2024-06-18
Cody O Nestle1019Brazil2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin J IturbideRussiaOnyama Limba PROPOSAL
Aruna I WieserGermanyOnyama Limba QUALIFIED
Juan R AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Ricardo M SlusarskiGermanyBernardo Dominic QUALIFIED
Jones Y FlosiUnited KingdomAnna Fali NEGOTIATION
Arvin T OldroydJapanBernardo Dominic QUALIFIED
Maria L OldroydIndiaXuxue Feng NEW
Aika C WhobreyGermanyXuxue Feng UNQUALIFIED
Maria D PoquetteCanadaIvan Magalhaes UNQUALIFIED
Juan Q StensethGermanyOnyama Limba RENEWAL
Darci L CaldareraBrazilIvan Magalhaes RENEWAL
Nicolas I GlickIndiaIoni Bowcher QUALIFIED
Izzy K SaylorsBrazilStephen Shaw UNQUALIFIED
Silvio Q MaletArgentinaAmy Elsner NEW
Ivar B MacleadItalyStephen Shaw QUALIFIED
Isabel B IturbideBrazilBernardo Dominic UNQUALIFIED
Alejandro N CaldareraCanadaXuxue Feng RENEWAL
Chavez J BologniaCanadaAsiya Javayant QUALIFIED
Kaitlin R IturbideUnited KingdomXuxue Feng RENEWAL
Izzy W WhobreyBrazilAnna Fali NEGOTIATION
Salvatore O ButtBrazilBernardo Dominic PROPOSAL
Jennifer V BologniaRussiaAsiya Javayant PROPOSAL
Aruna R GlickJapanAsiya Javayant PROPOSAL
Alejandro Y PoquetteBrazilBernardo Dominic PROPOSAL
Jefferson I PerinSpainAmy Elsner NEW
Mujtaba T MaletBrazilOnyama Limba QUALIFIED
Johnson P BriddickUnited KingdomOnyama Limba PROPOSAL
Deepesh U VocelkaRussiaIoni Bowcher PROPOSAL
Clifford A DoeArgentinaIvan Magalhaes PROPOSAL
Aika E DarakjyFranceIvan Magalhaes RENEWAL
Wickens P MaletGermanyBernardo Dominic RENEWAL
Mujtaba T NestleBrazilIoni Bowcher NEW
Juan F CaldareraIndiaXuxue Feng NEW
Maisha L WieserSpainOnyama Limba QUALIFIED
Darci H SaylorsFranceXuxue Feng PROPOSAL
Chavez S IturbideUnited KingdomAmy Elsner QUALIFIED
Misaki F ShinkoSpainAsiya Javayant NEGOTIATION
Mayumi I MaletBrazilAmy Elsner UNQUALIFIED
Ashley F IturbideIndiaXuxue Feng RENEWAL
Ricardo L StensethAustraliaOnyama Limba QUALIFIED

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