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
Maria E ShinkoJapanIoni Bowcher RENEWAL
James R OldroydAustraliaIvan Magalhaes RENEWAL
Chavez O RulapaughAustraliaAmy Elsner RENEWAL
Alejandro V RulapaughCanadaAnna Fali RENEWAL
Tony H OldroydGermanyStephen Shaw UNQUALIFIED
Deepesh P OstroskyCanadaIoni Bowcher UNQUALIFIED
Kaitlin H DilliardSpainIoni Bowcher QUALIFIED
Munro W StockhamIndiaStephen Shaw UNQUALIFIED
Claire D SaylorsBrazilAmy Elsner RENEWAL
Morrow V VenereSpainAmy Elsner NEW
Octavia X MarrierJapanXuxue Feng NEW
Nicolas W ShinkoIndiaIvan Magalhaes NEW
Leja U TollnerCanadaElwin Sharvill QUALIFIED
Munro U GillianUnited KingdomXuxue Feng RENEWAL
Misaki J NickaBrazilBernardo Dominic NEW
Ricardo S TollnerIndiaAsiya Javayant PROPOSAL
Mujtaba Z SlusarskiSpainAsiya Javayant RENEWAL
Mujtaba V AlbaresItalyAsiya Javayant QUALIFIED
Isabel N RoysterJapanStephen Shaw PROPOSAL
Aditya G BriddickCanadaAsiya Javayant UNQUALIFIED
Stacey D StensethRussiaElwin Sharvill NEW
Izzy G DilliardRussiaOnyama Limba RENEWAL
Rodrigues O GillianBrazilBernardo Dominic NEGOTIATION
Leon O StensethBrazilStephen Shaw NEGOTIATION
Greenwood X BowleyItalyIvan Magalhaes UNQUALIFIED
Izzy Z DilliardBrazilElwin Sharvill PROPOSAL
Nicolas J MaletUnited KingdomOnyama Limba NEW
Salvatore W AmigonFranceIoni Bowcher NEGOTIATION
Maria F SergiFranceOnyama Limba QUALIFIED
Emily F InouyeIndiaElwin Sharvill RENEWAL
Adams Y OstroskySpainStephen Shaw NEW
Octavia Q MarrierArgentinaXuxue Feng NEGOTIATION
James H MorascaSpainIoni Bowcher QUALIFIED
Darci Z RoysterFranceXuxue Feng UNQUALIFIED
Faith T ChuiAustraliaXuxue Feng NEW
Claire R DarakjyAustraliaAmy Elsner NEGOTIATION
Sinclair L StockhamAustraliaIoni Bowcher RENEWAL
Alejandro S FerenczRussiaAnna Fali NEW
Cody B DarakjyArgentinaAsiya Javayant NEGOTIATION
Morrow H FigeroaCanadaIoni Bowcher QUALIFIED
Ivar U TollnerBrazilAnna Fali QUALIFIED
Leja J WieserArgentinaAnna Fali PROPOSAL
Antonio S ChuiBrazilIvan Magalhaes NEW
Rodrigues X NickaGermanyIoni Bowcher NEW
Leon Y VenereAustraliaOnyama Limba PROPOSAL
Ricardo S FigeroaAustraliaStephen Shaw QUALIFIED
Ivar L GauchoArgentinaOnyama Limba QUALIFIED
Clifford Z MacleadRussiaStephen Shaw QUALIFIED
Johnson N StensethFranceBernardo Dominic RENEWAL
Aditya L GarufiArgentinaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Misaki K FlosiSpainBernardo Dominic QUALIFIED
Isabel K ChuiCanadaStephen Shaw PROPOSAL
Francesco I AmigonSpainStephen Shaw NEGOTIATION
Silvio A KuskoCanadaIvan Magalhaes QUALIFIED
Aruna F MarrierSpainIoni Bowcher RENEWAL
Adams Q NickaCanadaIoni Bowcher PROPOSAL
Octavia R NickaCanadaIvan Magalhaes UNQUALIFIED
Izzy A BowleyItalyAsiya Javayant RENEWAL
Kaitlin U MaletBrazilIoni Bowcher NEW
Munro Q RulapaughUnited KingdomElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan U GarufiIndia2024-06-18Chanay, Jeffrey A Esq NEW21Asiya Javayant
1001Chavez G StensethArgentina2024-06-20Morlong Associates RENEWAL24Bernardo Dominic
1002Rodrigues W CaudyArgentina2024-06-17Feltz Printing Service PROPOSAL27Ioni Bowcher
1003Juan H GarufiUnited Kingdom2024-06-07Printing Dimensions RENEWAL74Bernardo Dominic
1004Jennifer V GauchoJapan2024-06-08Printing Dimensions PROPOSAL46Ioni Bowcher
1005Salvatore Z ButtIndia2024-05-31Rousseaux, Michael Esq NEW52Xuxue Feng
1006Kadeem J TollnerCanada2024-05-24Rangoni Of Florence QUALIFIED5Bernardo Dominic
1007James H MarrierSpain2024-06-04Rangoni Of Florence QUALIFIED2Anna Fali
1008Julie R InouyeJapan2024-06-12Feiner Bros NEGOTIATION13Bernardo Dominic
1009Wickens Q FigeroaFrance2024-05-26Feltz Printing Service PROPOSAL68Stephen Shaw
1010Leja Z KuskoIndia2024-05-29Chapman, Ross E Esq NEW9Ivan Magalhaes
1011Jefferson N PerinAustralia2024-06-03Truhlar And Truhlar Attys RENEWAL72Xuxue Feng
1012Silvio J StensethUnited Kingdom2024-05-28Commercial Press UNQUALIFIED39Ioni Bowcher
1013Darci Z FlosiAustralia2024-06-20Printing Dimensions NEW33Xuxue Feng
1014Stacey V WaycottSpain2024-05-25Chapman, Ross E Esq NEGOTIATION80Xuxue Feng
1015Chavez V RimUnited Kingdom2024-06-22Dorl, James J Esq QUALIFIED76Amy Elsner
1016Ashley V OldroydRussia2024-06-07Chapman, Ross E Esq PROPOSAL91Elwin Sharvill
1017Emily L WaycottUnited Kingdom2024-06-22Feiner Bros UNQUALIFIED77Ioni Bowcher
1018Greenwood F FlosiAustralia2024-06-10Morlong Associates QUALIFIED23Onyama Limba
1019Francesco U InouyeUnited Kingdom2024-05-24Benton, John B Jr QUALIFIED7Anna Fali
1020Tony E OstroskySpain2024-06-20Chemel, James L Cpa UNQUALIFIED77Onyama Limba
1021David J DilliardArgentina2024-05-24Dorl, James J Esq NEGOTIATION59Ivan Magalhaes
1022Cody H RutaBrazil2024-05-27Chapman, Ross E Esq NEGOTIATION78Bernardo Dominic
1023Chavez H NickaJapan2024-06-12King, Christopher A Esq NEGOTIATION61Bernardo Dominic
1024Aika G PoquetteSpain2024-06-17Buckley Miller Wright NEW10Ioni Bowcher
1025Salvatore L GlickBrazil2024-06-13Feltz Printing Service RENEWAL55Xuxue Feng
1026Jennifer H OstroskyGermany2024-06-21Chemel, James L Cpa RENEWAL77Asiya Javayant
1027Deepesh W RimCanada2024-06-22Morlong Associates PROPOSAL84Onyama Limba
1028Leja U ButtGermany2024-06-16Chemel, James L Cpa NEW80Bernardo Dominic
1029Mayumi E TollnerUnited Kingdom2024-06-13Buckley Miller Wright RENEWAL24Xuxue Feng
1030Tony M PerinUnited Kingdom2024-05-27Commercial Press QUALIFIED41Xuxue Feng
1031Kaitlin F CaudyGermany2024-06-06Dorl, James J Esq NEGOTIATION38Bernardo Dominic
1032Francesco W StensethBrazil2024-05-27King, Christopher A Esq NEGOTIATION54Ioni Bowcher
1033Maria X RimItaly2024-06-17Morlong Associates NEGOTIATION32Amy Elsner
1034Jennifer U RimAustralia2024-06-20Commercial Press NEGOTIATION89Anna Fali
1035David Z BologniaJapan2024-06-22Truhlar And Truhlar Attys NEW53Onyama Limba
1036Ricardo W CampainJapan2024-06-14Rangoni Of Florence PROPOSAL71Amy Elsner
1037Alejandro M AlbaresFrance2024-06-15Chapman, Ross E Esq NEW61Xuxue Feng
1038Jeanfrancois K OstroskyRussia2024-05-31Commercial Press NEW56Onyama Limba
1039Juan D GarufiItaly2024-05-24Chapman, Ross E Esq QUALIFIED56Asiya Javayant
1040Morrow B TollnerJapan2024-06-18Rousseaux, Michael Esq UNQUALIFIED85Bernardo Dominic
1041Rodrigues K StensethItaly2024-06-06Rangoni Of Florence QUALIFIED36Stephen Shaw
1042Cody A PerinJapan2024-06-07Feiner Bros PROPOSAL9Ivan Magalhaes
1043Jones G CampainRussia2024-05-31Commercial Press RENEWAL84Bernardo Dominic
1044Misaki J DarakjyItaly2024-06-18Commercial Press PROPOSAL92Asiya Javayant
1045Silvio U StockhamItaly2024-06-11Commercial Press QUALIFIED28Ivan Magalhaes
1046Sinclair J WhobreyRussia2024-05-31Rousseaux, Michael Esq RENEWAL75Onyama Limba
1047Morrow W RutaArgentina2024-06-12Morlong Associates NEW82Ivan Magalhaes
1048Jennifer B NickaAustralia2024-06-01Dorl, James J Esq RENEWAL39Stephen Shaw
1049Ivar L AmigonIndia2024-05-25Chapman, Ross E Esq NEGOTIATION82Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Francesco N CampainArgentinaElwin Sharvill UNQUALIFIED
Maisha L KuskoJapanAsiya Javayant RENEWAL
Munro S StensethIndiaIoni Bowcher RENEWAL
Jefferson K WieserUnited KingdomIvan Magalhaes NEW
Julie M PerinGermanyIoni Bowcher PROPOSAL
Leja E ButtRussiaXuxue Feng UNQUALIFIED
Leon K GarufiFranceElwin Sharvill NEGOTIATION
Johnson F NestleArgentinaXuxue Feng UNQUALIFIED
Wickens W StensethUnited KingdomXuxue Feng UNQUALIFIED
Wickens U SergiAustraliaAmy Elsner NEW
Mujtaba I RoysterRussiaElwin Sharvill UNQUALIFIED
Rodrigues T AmigonIndiaAsiya Javayant NEW
James M SchemmerIndiaAsiya Javayant QUALIFIED
James N NestleItalyStephen Shaw PROPOSAL
Misaki H FollerFranceOnyama Limba PROPOSAL
Leja L MaletBrazilIoni Bowcher NEGOTIATION
Munro L DarakjyJapanStephen Shaw NEW
Faith Q WaycottArgentinaAsiya Javayant NEW
Claire G GlickUnited KingdomXuxue Feng QUALIFIED
Aditya Y GauchoUnited KingdomAnna Fali PROPOSAL
Maria K PerinSpainIoni Bowcher PROPOSAL
Salvatore N BologniaGermanyStephen Shaw UNQUALIFIED
Antonio Y OstroskyUnited KingdomElwin Sharvill RENEWAL
Misaki Z FollerFranceBernardo Dominic RENEWAL
Julie O TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Maisha Q KuskoArgentinaStephen Shaw PROPOSAL
Mujtaba G PoquetteAustraliaOnyama Limba PROPOSAL
Arvin I SchemmerBrazilAnna Fali RENEWAL
Clifford X AmigonSpainAnna Fali NEGOTIATION
Arvin S GauchoAustraliaElwin Sharvill UNQUALIFIED
Nicolas J SchemmerItalyXuxue Feng NEW
Costa W MaletUnited KingdomStephen Shaw PROPOSAL
Chavez W GillianCanadaAmy Elsner UNQUALIFIED
Darci Z PerinItalyElwin Sharvill RENEWAL
Leja L ShinkoIndiaIoni Bowcher RENEWAL
Isabel Z WieserRussiaIoni Bowcher NEW
Juan T GarufiUnited KingdomXuxue Feng NEW
Morrow T PerinGermanyXuxue Feng NEGOTIATION
Kaitlin A FigeroaRussiaOnyama Limba QUALIFIED
Faith V VenereCanadaAsiya Javayant PROPOSAL
Octavia O NickaArgentinaIoni Bowcher NEGOTIATION
Antonio V GillianSpainIoni Bowcher PROPOSAL
Sinclair T GauchoBrazilStephen Shaw PROPOSAL
Aika R ChuiCanadaElwin Sharvill RENEWAL
Maisha R PoquetteUnited KingdomBernardo Dominic NEW
Claire O BriddickAustraliaXuxue Feng PROPOSAL
Deepesh W RimGermanyAsiya Javayant RENEWAL
Murillo E AmigonBrazilAsiya Javayant RENEWAL
Jennifer W PaprockiJapanBernardo Dominic RENEWAL
Aruna I RimSpainAsiya Javayant RENEWAL
Frozen Columns
Name
Emily W Perin
Izzy S Nestle
Aruna S Perin
Cody W Morasca
Izzy W Bowley
Smith V Schemmer
Izzy X Morasca
Octavia W Butt
Jefferson F Gaucho
Jefferson B Gaucho
Salvatore I Schemmer
Tony N Perin
Costa Y Stenseth
Jeanfrancois U Foller
Emily A Nestle
Murillo C Kolmetz
Jennifer N Venere
Kadeem J Bowley
Adams W Briddick
Alejandro L Flosi
Juan T Stockham
Aika E Maclead
Silvio F Saylors
Adams N Bowley
Clifford K Dilliard
Cody F Stockham
Wickens P Ruta
Ivar G Albares
Maria R Rulapaugh
Juan U Albares
Mayumi K Oldroyd
Jones M Waycott
Juan G Marrier
Mayumi N Ostrosky
Cody I Nicka
Chavez T Caudy
Juan X Royster
Costa U Poquette
Julie X Marrier
Misaki O Bowley
Ivar E Maclead
Nicolas H Campain
Antonio K Chui
Salvatore U Stockham
Misaki I Ruta
Kaitlin Y Royster
Clifford R Vocelka
Leja U Figeroa
Maria V Amigon
Ashley P Flosi
IdCountryDate
1000Canada2024-06-10
1001Russia2024-06-16
1002Australia2024-05-28
1003Brazil2024-06-14
1004Japan2024-06-02
1005Canada2024-06-22
1006France2024-05-29
1007Canada2024-06-11
1008Canada2024-06-04
1009Australia2024-06-21
1010Argentina2024-06-12
1011India2024-06-07
1012United Kingdom2024-05-27
1013Germany2024-06-03
1014Spain2024-06-05
1015Russia2024-06-16
1016Japan2024-06-02
1017India2024-05-28
1018Japan2024-06-19
1019Japan2024-06-10
1020United Kingdom2024-06-10
1021Canada2024-06-13
1022Germany2024-06-15
1023Japan2024-06-20
1024Japan2024-06-18
1025Canada2024-06-04
1026Spain2024-06-04
1027Brazil2024-05-31
1028India2024-06-14
1029Germany2024-06-17
1030Canada2024-05-25
1031Russia2024-06-01
1032Japan2024-06-15
1033Brazil2024-06-05
1034United Kingdom2024-06-07
1035Japan2024-06-18
1036Canada2024-06-13
1037Germany2024-06-01
1038France2024-05-25
1039Brazil2024-05-25
1040United Kingdom2024-05-27
1041India2024-06-04
1042United Kingdom2024-05-31
1043Russia2024-06-17
1044Argentina2024-06-22
1045Australia2024-05-26
1046France2024-06-09
1047Spain2024-05-24
1048Germany2024-06-15
1049Russia2024-06-02

On-Demand Data

NameIdCountryDate
Emily H Amigon1000Japan2024-06-19
Juan F Malet1001Germany2024-06-07
Aruna K Amigon1002Australia2024-06-16
Aruna R Figeroa1003Russia2024-06-04
Clifford R Kolmetz1004Japan2024-06-16
Greenwood X Gillian1005France2024-05-31
Jennifer V Ruta1006India2024-05-28
Jones F Bolognia1007Russia2024-06-09
Morrow Q Dilliard1008United Kingdom2024-06-13
Maria G Saylors1009Argentina2024-06-07
Jennifer U Bolognia1010Spain2024-05-25
Munro Z Malet1011Spain2024-06-10
Julie Z Dilliard1012Russia2024-05-26
Leon I Morasca1013Spain2024-05-29
James T Shinko1014Brazil2024-06-11
Mujtaba T Bowley1015Germany2024-06-21
Ivar C Malet1016Argentina2024-06-05
Jefferson D Flosi1017Italy2024-06-13
Mayumi G Doe1018Australia2024-06-12
Smith J Gillian1019Italy2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki R GlickRussiaAnna Fali NEW
David X WaycottAustraliaAnna Fali NEGOTIATION
Ivar G SlusarskiGermanyElwin Sharvill NEW
Rodrigues R StockhamJapanElwin Sharvill NEGOTIATION
Deepesh T BologniaCanadaIoni Bowcher QUALIFIED
Alejandro G StockhamBrazilAmy Elsner QUALIFIED
Antonio C RoysterBrazilElwin Sharvill NEGOTIATION
Mayumi M DoeRussiaOnyama Limba NEGOTIATION
Tony N FigeroaItalyAnna Fali UNQUALIFIED
Isabel E KuskoBrazilIvan Magalhaes RENEWAL
Salvatore Q OstroskyAustraliaXuxue Feng QUALIFIED
Faith D WieserRussiaAmy Elsner PROPOSAL
Smith Z CaldareraItalyBernardo Dominic RENEWAL
Tony T MacleadAustraliaAsiya Javayant NEW
Claire H InouyeIndiaStephen Shaw RENEWAL
Johnson L GarufiIndiaStephen Shaw QUALIFIED
Silvio B GauchoSpainAmy Elsner RENEWAL
Mujtaba K RutaItalyBernardo Dominic PROPOSAL
Stacey V GauchoIndiaIoni Bowcher NEW
Nicolas R ShinkoGermanyElwin Sharvill UNQUALIFIED
Octavia Y VenereIndiaStephen Shaw RENEWAL
Nicolas G DarakjyCanadaBernardo Dominic NEGOTIATION
Kaitlin H IturbideSpainAmy Elsner RENEWAL
Silvio X DilliardCanadaAsiya Javayant QUALIFIED
Costa G VenereFranceAsiya Javayant RENEWAL
Deepesh N RulapaughAustraliaElwin Sharvill NEW
Maria K WaycottCanadaIoni Bowcher PROPOSAL
Smith M BriddickSpainStephen Shaw UNQUALIFIED
Jefferson D VenereCanadaXuxue Feng PROPOSAL
Francesco Z KolmetzCanadaElwin Sharvill NEGOTIATION
Darci J VenereJapanBernardo Dominic NEW
Salvatore I GauchoCanadaAsiya Javayant NEGOTIATION
Arvin Y WieserGermanyXuxue Feng UNQUALIFIED
Munro B GillianJapanElwin Sharvill RENEWAL
Arvin F PerinIndiaStephen Shaw QUALIFIED
Julie P DoeItalyIoni Bowcher UNQUALIFIED
Silvio D WhobreyAustraliaBernardo Dominic NEGOTIATION
Faith M ShinkoAustraliaAmy Elsner NEGOTIATION
Arvin D OstroskyUnited KingdomXuxue Feng RENEWAL
Rodrigues M MacleadArgentinaIvan Magalhaes 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>