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
Juan D PerinFranceAmy Elsner NEGOTIATION
Wickens W RimAustraliaAmy Elsner PROPOSAL
David S FollerFranceBernardo Dominic RENEWAL
Deepesh X FigeroaItalyAmy Elsner NEGOTIATION
Arvin C FigeroaItalyIoni Bowcher NEGOTIATION
Ashley K StensethRussiaStephen Shaw QUALIFIED
Kadeem Z DoeArgentinaAmy Elsner NEGOTIATION
Cody P RimIndiaAmy Elsner QUALIFIED
Julie T PoquetteItalyElwin Sharvill NEGOTIATION
Faith U AmigonSpainIoni Bowcher PROPOSAL
Kaitlin K TollnerUnited KingdomStephen Shaw RENEWAL
Julie J NestleFranceOnyama Limba QUALIFIED
Leja P DilliardBrazilAnna Fali NEGOTIATION
Wickens M MacleadItalyAnna Fali RENEWAL
Kaitlin R MaletAustraliaIoni Bowcher RENEWAL
David A SergiJapanAsiya Javayant UNQUALIFIED
Darci F GillianUnited KingdomElwin Sharvill UNQUALIFIED
Isabel N ShinkoSpainIvan Magalhaes NEW
Darci I DilliardSpainXuxue Feng NEW
Antonio W TollnerRussiaIoni Bowcher NEW
Mujtaba O SlusarskiBrazilIoni Bowcher RENEWAL
Darci F PoquetteBrazilAmy Elsner PROPOSAL
Sinclair J CampainFranceElwin Sharvill UNQUALIFIED
Jeanfrancois M MaletSpainElwin Sharvill NEGOTIATION
Ashley I MarrierGermanyAsiya Javayant QUALIFIED
Isabel R OstroskySpainAnna Fali RENEWAL
Adams K DarakjyItalyAsiya Javayant UNQUALIFIED
Julie M SchemmerSpainXuxue Feng UNQUALIFIED
Jefferson Q SaylorsArgentinaAsiya Javayant PROPOSAL
Costa G PoquetteBrazilStephen Shaw NEGOTIATION
Johnson A DarakjyJapanIoni Bowcher RENEWAL
Wickens Q MarrierSpainAmy Elsner RENEWAL
Clifford W SchemmerJapanAnna Fali NEW
Clifford X ShinkoUnited KingdomAsiya Javayant RENEWAL
Jefferson W InouyeArgentinaIvan Magalhaes QUALIFIED
Rodrigues E NestleJapanIvan Magalhaes NEW
Deepesh L GlickItalyAmy Elsner NEW
David G SchemmerItalyElwin Sharvill NEW
David D GillianCanadaIoni Bowcher NEW
Clifford C FigeroaBrazilXuxue Feng NEW
Chavez N DilliardSpainOnyama Limba QUALIFIED
Aditya C FlosiGermanyXuxue Feng RENEWAL
Morrow P DarakjyAustraliaElwin Sharvill QUALIFIED
Ricardo W NickaItalyXuxue Feng UNQUALIFIED
Jefferson K AmigonItalyAnna Fali QUALIFIED
Ivar M GillianAustraliaAsiya Javayant PROPOSAL
Ashley M OldroydUnited KingdomOnyama Limba RENEWAL
Leja Z KuskoUnited KingdomAmy Elsner PROPOSAL
Antonio V AmigonGermanyAsiya Javayant PROPOSAL
Adams R SlusarskiBrazilAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Leja R InouyeRussiaStephen Shaw NEW
Salvatore Z SaylorsGermanyStephen Shaw UNQUALIFIED
Greenwood P PoquetteItalyAnna Fali UNQUALIFIED
Juan S SaylorsRussiaElwin Sharvill NEW
Ivar I WieserRussiaStephen Shaw NEGOTIATION
David F StensethIndiaBernardo Dominic UNQUALIFIED
Claire Y FerenczRussiaAsiya Javayant RENEWAL
Adams Q ChuiSpainXuxue Feng QUALIFIED
Jeanfrancois U WhobreyBrazilBernardo Dominic PROPOSAL
Kaitlin Y FerenczItalyAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens Z FollerSpain2025-04-09Benton, John B Jr NEGOTIATION36Ivan Magalhaes
1001Jeanfrancois X MorascaArgentina2025-04-04King, Christopher A Esq NEGOTIATION28Ioni Bowcher
1002Kaitlin Y DilliardItaly2025-04-05Morlong Associates NEGOTIATION43Elwin Sharvill
1003Jefferson K BriddickFrance2025-04-26King, Christopher A Esq NEGOTIATION83Ivan Magalhaes
1004Ashley W SergiSpain2025-04-06Commercial Press NEW51Anna Fali
1005Jeanfrancois T AlbaresJapan2025-04-28Benton, John B Jr RENEWAL35Anna Fali
1006Johnson S VenereIndia2025-03-31Feltz Printing Service NEW60Anna Fali
1007Aruna N AmigonArgentina2025-04-01King, Christopher A Esq PROPOSAL22Ivan Magalhaes
1008Costa J GillianGermany2025-04-08Morlong Associates QUALIFIED88Stephen Shaw
1009Salvatore D DarakjyFrance2025-04-28Chemel, James L Cpa RENEWAL98Bernardo Dominic
1010Kadeem H FlosiRussia2025-04-16Chemel, James L Cpa PROPOSAL3Bernardo Dominic
1011Kadeem D WaycottArgentina2025-04-29Commercial Press QUALIFIED82Ivan Magalhaes
1012Izzy O GlickGermany2025-04-29Feltz Printing Service NEW93Ivan Magalhaes
1013Johnson I VocelkaSpain2025-04-01Chapman, Ross E Esq NEW13Xuxue Feng
1014Costa L MaletBrazil2025-04-25Rangoni Of Florence NEGOTIATION38Xuxue Feng
1015Leja P DoeFrance2025-04-05King, Christopher A Esq NEW32Amy Elsner
1016Emily H GlickGermany2025-04-03Printing Dimensions QUALIFIED45Asiya Javayant
1017Cody M GillianSpain2025-04-24Chapman, Ross E Esq PROPOSAL2Anna Fali
1018Faith Q GarufiIndia2025-04-24Feltz Printing Service NEGOTIATION85Elwin Sharvill
1019James O WieserArgentina2025-04-18Chemel, James L Cpa QUALIFIED74Onyama Limba
1020Francesco K RulapaughCanada2025-04-07King, Christopher A Esq RENEWAL57Stephen Shaw
1021Maisha R FerenczAustralia2025-04-08Dorl, James J Esq NEW51Onyama Limba
1022James X StockhamCanada2025-04-26Chanay, Jeffrey A Esq PROPOSAL26Asiya Javayant
1023Leja I MaletItaly2025-04-03Rangoni Of Florence UNQUALIFIED88Elwin Sharvill
1024Adams E CaudyCanada2025-04-01Truhlar And Truhlar Attys PROPOSAL54Asiya Javayant
1025Chavez O SchemmerArgentina2025-04-20Commercial Press UNQUALIFIED41Bernardo Dominic
1026Chavez M WaycottBrazil2025-04-23Dorl, James J Esq PROPOSAL91Xuxue Feng
1027Julie X StensethUnited Kingdom2025-04-21King, Christopher A Esq QUALIFIED51Anna Fali
1028James X WaycottGermany2025-04-13Feiner Bros NEW46Anna Fali
1029Julie G ShinkoArgentina2025-04-20Printing Dimensions NEW81Bernardo Dominic
1030Greenwood F SchemmerRussia2025-04-23Morlong Associates QUALIFIED3Amy Elsner
1031Ricardo X DoeIndia2025-04-17Benton, John B Jr UNQUALIFIED92Stephen Shaw
1032Munro P CaudyCanada2025-04-11Commercial Press UNQUALIFIED8Bernardo Dominic
1033Smith F RulapaughArgentina2025-04-21Truhlar And Truhlar Attys NEW37Asiya Javayant
1034Ivar C SchemmerFrance2025-04-17Chanay, Jeffrey A Esq QUALIFIED1Stephen Shaw
1035Silvio Y GarufiFrance2025-04-03King, Christopher A Esq NEW32Bernardo Dominic
1036David Z IturbideFrance2025-04-10Rousseaux, Michael Esq NEW29Ivan Magalhaes
1037James R SchemmerSpain2025-04-23Rangoni Of Florence UNQUALIFIED50Stephen Shaw
1038Mayumi T RimIndia2025-04-03Printing Dimensions PROPOSAL29Elwin Sharvill
1039Nicolas Y SergiAustralia2025-04-24Feiner Bros NEW21Amy Elsner
1040Cody K StensethSpain2025-04-09Rangoni Of Florence RENEWAL59Xuxue Feng
1041Aruna Z TollnerGermany2025-04-12Morlong Associates RENEWAL48Bernardo Dominic
1042Juan J RoysterRussia2025-04-10Printing Dimensions NEW1Onyama Limba
1043Ashley C NickaFrance2025-04-04Morlong Associates NEGOTIATION55Anna Fali
1044Clifford M ButtIndia2025-04-24Chanay, Jeffrey A Esq QUALIFIED43Xuxue Feng
1045Mujtaba T PoquetteSpain2025-04-20Commercial Press UNQUALIFIED19Asiya Javayant
1046Stacey Y AlbaresJapan2025-04-12Commercial Press QUALIFIED99Ivan Magalhaes
1047Jefferson F FlosiUnited Kingdom2025-04-03Buckley Miller Wright UNQUALIFIED54Elwin Sharvill
1048Salvatore T BowleyIndia2025-04-17Commercial Press RENEWAL97Asiya Javayant
1049Darci Z GauchoBrazil2025-04-10Morlong Associates NEGOTIATION45Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ricardo F KolmetzUnited KingdomStephen Shaw NEGOTIATION
Mujtaba O ShinkoJapanIoni Bowcher PROPOSAL
Munro F OldroydUnited KingdomIvan Magalhaes PROPOSAL
Izzy Q RimCanadaStephen Shaw NEW
Morrow M FigeroaArgentinaBernardo Dominic PROPOSAL
Adams J KolmetzBrazilIvan Magalhaes NEW
Juan M ShinkoBrazilBernardo Dominic NEW
Mujtaba I ChuiGermanyAsiya Javayant QUALIFIED
David C RimItalyAsiya Javayant QUALIFIED
Jones B FollerSpainOnyama Limba RENEWAL
Jeanfrancois V GillianItalyBernardo Dominic RENEWAL
Mayumi X OstroskyGermanyXuxue Feng NEW
Mayumi O OldroydCanadaElwin Sharvill RENEWAL
Kaitlin H WieserRussiaBernardo Dominic NEW
Arvin C SlusarskiBrazilStephen Shaw PROPOSAL
Claire O BologniaRussiaOnyama Limba QUALIFIED
Johnson T InouyeItalyXuxue Feng RENEWAL
Mujtaba K AlbaresItalyElwin Sharvill NEW
Silvio J AlbaresGermanyStephen Shaw QUALIFIED
James O StockhamBrazilIoni Bowcher PROPOSAL
Stacey X AlbaresCanadaXuxue Feng UNQUALIFIED
Smith I DilliardIndiaIoni Bowcher QUALIFIED
Ivar X PoquetteSpainAmy Elsner NEW
David H NickaJapanStephen Shaw NEW
Leja I BowleySpainXuxue Feng NEGOTIATION
Isabel H FlosiArgentinaIvan Magalhaes NEGOTIATION
Juan I FlosiAustraliaXuxue Feng UNQUALIFIED
Alejandro N IturbideSpainOnyama Limba NEW
Tony B RulapaughCanadaAsiya Javayant NEGOTIATION
Munro Y RimGermanyXuxue Feng RENEWAL
Chavez H NickaIndiaXuxue Feng PROPOSAL
Salvatore S SaylorsRussiaAsiya Javayant NEGOTIATION
Rodrigues L WaycottAustraliaOnyama Limba NEGOTIATION
Tony S ButtFranceStephen Shaw PROPOSAL
Maria K VenereJapanOnyama Limba PROPOSAL
Emily N CampainArgentinaOnyama Limba UNQUALIFIED
Rodrigues R BologniaUnited KingdomIoni Bowcher NEW
Ivar W RoysterGermanyXuxue Feng RENEWAL
Sinclair K CampainArgentinaAsiya Javayant QUALIFIED
Leja H CaudyCanadaIoni Bowcher NEW
Greenwood M FlosiGermanyStephen Shaw PROPOSAL
Francesco C GauchoCanadaStephen Shaw NEW
Rodrigues T BologniaArgentinaIvan Magalhaes RENEWAL
Costa D TollnerJapanIvan Magalhaes UNQUALIFIED
Adams Q KuskoFranceBernardo Dominic PROPOSAL
Ivar N CaldareraJapanAnna Fali RENEWAL
Misaki Y OldroydIndiaAsiya Javayant QUALIFIED
Maria R DarakjyCanadaStephen Shaw RENEWAL
Jefferson G PaprockiGermanyElwin Sharvill RENEWAL
Aditya E WieserRussiaXuxue Feng PROPOSAL
Frozen Columns
Name
Izzy A Darakjy
Salvatore Q Whobrey
Ivar H Ostrosky
David D Glick
Kaitlin T Malet
Maisha T Bolognia
Wickens A Nestle
James D Vocelka
Tony D Kolmetz
Morrow K Maclead
Isabel W Caudy
Costa E Garufi
David N Malet
Faith Y Sergi
Tony U Tollner
Maisha D Chui
Cody S Saylors
Nicolas K Iturbide
Sinclair O Paprocki
Deepesh M Malet
Claire K Poquette
Darci G Malet
Rodrigues V Garufi
Ivar I Malet
Deepesh T Campain
Claire L Flosi
Adams N Flosi
Murillo W Caudy
Darci T Oldroyd
Antonio P Stenseth
Murillo B Stenseth
Julie B Glick
Leja L Inouye
Aruna N Gillian
Ricardo Z Flosi
Ashley R Paprocki
Jennifer R Stockham
Antonio X Rim
Maria U Caudy
Clifford V Waycott
Munro V Doe
Kadeem H Sergi
Murillo K Sergi
Johnson C Dilliard
Kaitlin P Stenseth
Mujtaba L Paprocki
Mujtaba U Nestle
Greenwood G Perin
David W Oldroyd
Kadeem C Sergi
IdCountryDate
1000Australia2025-04-28
1001United Kingdom2025-04-26
1002Brazil2025-04-14
1003Italy2025-04-16
1004Germany2025-04-28
1005France2025-04-18
1006India2025-04-04
1007India2025-04-23
1008Australia2025-04-01
1009United Kingdom2025-04-02
1010Russia2025-04-06
1011Brazil2025-04-01
1012Spain2025-04-09
1013Brazil2025-04-09
1014India2025-04-26
1015Spain2025-04-24
1016France2025-04-05
1017Spain2025-04-03
1018France2025-04-22
1019India2025-04-29
1020Spain2025-04-03
1021Germany2025-04-17
1022Spain2025-04-04
1023France2025-03-31
1024Canada2025-04-08
1025India2025-04-14
1026India2025-04-20
1027Australia2025-04-07
1028Russia2025-04-10
1029United Kingdom2025-04-29
1030Australia2025-04-14
1031Germany2025-04-10
1032Japan2025-04-21
1033India2025-04-27
1034Russia2025-04-23
1035Japan2025-04-05
1036United Kingdom2025-04-05
1037Spain2025-04-01
1038United Kingdom2025-04-07
1039Brazil2025-03-31
1040Spain2025-04-14
1041Germany2025-04-12
1042United Kingdom2025-04-12
1043Japan2025-04-25
1044France2025-04-25
1045Japan2025-03-31
1046Italy2025-04-19
1047Australia2025-04-06
1048Russia2025-04-14
1049Canada2025-04-05

On-Demand Data

NameIdCountryDate
Mayumi N Slusarski1000United Kingdom2025-04-23
Jennifer K Caudy1001Spain2025-04-01
Jeanfrancois E Morasca1002Russia2025-03-31
Francesco G Perin1003Canada2025-04-20
Costa S Stenseth1004Russia2025-04-10
Nicolas B Wieser1005United Kingdom2025-04-13
Salvatore F Morasca1006United Kingdom2025-04-08
Cody M Darakjy1007France2025-04-23
Jones H Waycott1008India2025-04-20
Murillo R Figeroa1009Japan2025-04-18
Ivar A Royster1010Germany2025-04-25
Jones U Waycott1011Spain2025-04-21
Aruna R Briddick1012France2025-04-07
Claire U Dilliard1013Canada2025-04-10
Faith X Amigon1014United Kingdom2025-04-12
Wickens U Saylors1015Australia2025-04-08
Julie M Rim1016Spain2025-04-10
Juan N Slusarski1017France2025-04-10
Aditya U Ostrosky1018India2025-04-05
Francesco H Morasca1019Italy2025-04-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford C SaylorsBrazilStephen Shaw NEW
Jeanfrancois E RutaFranceStephen Shaw UNQUALIFIED
Juan U BriddickUnited KingdomElwin Sharvill NEW
Isabel O GillianFranceOnyama Limba NEW
Smith B VocelkaSpainIvan Magalhaes NEW
Arvin N FollerArgentinaStephen Shaw RENEWAL
Wickens I ChuiFranceAsiya Javayant PROPOSAL
Tony J ButtIndiaBernardo Dominic PROPOSAL
Alejandro T BologniaAustraliaAsiya Javayant QUALIFIED
Emily W WieserJapanXuxue Feng NEGOTIATION
Darci S BowleyArgentinaOnyama Limba RENEWAL
Maria C PoquetteRussiaStephen Shaw NEW
Clifford E MaletUnited KingdomBernardo Dominic NEGOTIATION
Clifford K StockhamJapanStephen Shaw NEGOTIATION
Wickens U BriddickRussiaIoni Bowcher QUALIFIED
David Z ChuiBrazilAmy Elsner NEGOTIATION
Jennifer Y CaldareraJapanAnna Fali NEGOTIATION
Deepesh Y AmigonGermanyAmy Elsner NEW
Emily P AmigonJapanIoni Bowcher NEW
Maisha Z ShinkoGermanyAmy Elsner NEGOTIATION
Murillo J VocelkaCanadaAnna Fali NEGOTIATION
Salvatore G CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Clifford N PerinIndiaBernardo Dominic RENEWAL
Jones N MaletAustraliaAsiya Javayant QUALIFIED
Adams M GauchoJapanOnyama Limba RENEWAL
Arvin Y DoeRussiaOnyama Limba QUALIFIED
Aditya T RimUnited KingdomIvan Magalhaes QUALIFIED
Darci B DilliardUnited KingdomBernardo Dominic NEGOTIATION
James S NickaGermanyAmy Elsner PROPOSAL
Mayumi G FlosiFranceIvan Magalhaes PROPOSAL
Arvin B WhobreyArgentinaBernardo Dominic QUALIFIED
Tony J AmigonArgentinaIvan Magalhaes NEGOTIATION
Jennifer V MaletBrazilAmy Elsner RENEWAL
James Z GauchoFranceIvan Magalhaes RENEWAL
Deepesh T IturbideCanadaXuxue Feng QUALIFIED
Chavez U GlickAustraliaIoni Bowcher NEGOTIATION
Aditya Y MaletJapanIvan Magalhaes QUALIFIED
Francesco U CaudyIndiaStephen Shaw QUALIFIED
Smith P RimFranceOnyama Limba UNQUALIFIED
Leon D RutaArgentinaIvan Magalhaes 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>