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
Morrow J NickaGermanyElwin Sharvill PROPOSAL
Claire B StockhamJapanAmy Elsner NEGOTIATION
Chavez L WhobreyArgentinaAnna Fali QUALIFIED
Silvio C WaycottRussiaAmy Elsner QUALIFIED
Alejandro E PaprockiRussiaAsiya Javayant NEW
Salvatore U KolmetzGermanyAmy Elsner PROPOSAL
Emily N OstroskyCanadaStephen Shaw UNQUALIFIED
Ricardo K KolmetzArgentinaAmy Elsner PROPOSAL
Kaitlin X CaldareraJapanAmy Elsner NEW
Ivar R SergiAustraliaStephen Shaw NEW
Chavez R ChuiSpainAnna Fali NEW
Tony J MaletRussiaStephen Shaw RENEWAL
David X FollerArgentinaAmy Elsner QUALIFIED
Kaitlin H NestleArgentinaAnna Fali NEGOTIATION
Silvio Y OldroydFranceStephen Shaw NEGOTIATION
Claire W MaletJapanBernardo Dominic NEGOTIATION
Izzy Q SergiUnited KingdomStephen Shaw NEW
Morrow L DoeFranceXuxue Feng QUALIFIED
Jeanfrancois G AlbaresGermanyXuxue Feng NEW
Ivar W FlosiArgentinaElwin Sharvill NEGOTIATION
Alejandro M DilliardBrazilXuxue Feng PROPOSAL
Deepesh A RoysterAustraliaAmy Elsner UNQUALIFIED
James Q ButtAustraliaBernardo Dominic QUALIFIED
Murillo V AmigonItalyAnna Fali UNQUALIFIED
David B CaldareraGermanyOnyama Limba NEGOTIATION
Silvio A MorascaUnited KingdomXuxue Feng UNQUALIFIED
Kadeem E KuskoRussiaAmy Elsner NEGOTIATION
Adams R CaudyItalyIoni Bowcher QUALIFIED
Stacey Z BowleyUnited KingdomAsiya Javayant RENEWAL
Octavia B BologniaItalyIvan Magalhaes UNQUALIFIED
Faith X CaldareraSpainIvan Magalhaes NEGOTIATION
Jeanfrancois R SchemmerCanadaIvan Magalhaes RENEWAL
Tony H MarrierSpainAnna Fali PROPOSAL
Mujtaba A TollnerFranceElwin Sharvill PROPOSAL
Antonio D NestleIndiaAsiya Javayant PROPOSAL
Jefferson U MaletFranceXuxue Feng UNQUALIFIED
Jeanfrancois R FlosiBrazilIoni Bowcher PROPOSAL
Murillo G IturbideAustraliaStephen Shaw NEW
Misaki H MaletGermanyAnna Fali QUALIFIED
Aditya W CampainGermanyStephen Shaw RENEWAL
Maisha C SlusarskiUnited KingdomAmy Elsner RENEWAL
Chavez N RimItalyStephen Shaw PROPOSAL
Stacey K RimUnited KingdomBernardo Dominic NEGOTIATION
Isabel S StockhamGermanyElwin Sharvill UNQUALIFIED
Aditya J MaletIndiaAnna Fali UNQUALIFIED
James O ShinkoRussiaAmy Elsner UNQUALIFIED
Maria I WieserFranceStephen Shaw NEGOTIATION
Izzy R GauchoFranceBernardo Dominic NEW
Misaki C VocelkaGermanyIvan Magalhaes RENEWAL
Jefferson E DarakjyIndiaStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maisha X SaylorsSpainElwin Sharvill NEGOTIATION
Mayumi E AlbaresBrazilBernardo Dominic NEW
Stacey A OldroydIndiaIoni Bowcher UNQUALIFIED
Izzy B MaletIndiaXuxue Feng PROPOSAL
Sinclair H InouyeIndiaAnna Fali NEGOTIATION
Aruna O WieserRussiaAsiya Javayant NEGOTIATION
Leon D VocelkaJapanStephen Shaw NEW
Jennifer J RimFranceAmy Elsner RENEWAL
Kadeem O ChuiAustraliaIvan Magalhaes NEW
Aika K FlosiItalyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey C MaletFrance2024-06-14King, Christopher A Esq RENEWAL9Anna Fali
1001Chavez X MaletSpain2024-06-06Rangoni Of Florence UNQUALIFIED78Elwin Sharvill
1002Ashley C WaycottArgentina2024-05-22King, Christopher A Esq RENEWAL0Bernardo Dominic
1003Darci U DoeJapan2024-05-28Benton, John B Jr UNQUALIFIED49Onyama Limba
1004Johnson H MaletJapan2024-05-18Rangoni Of Florence QUALIFIED49Stephen Shaw
1005Greenwood N GillianGermany2024-06-07Chapman, Ross E Esq QUALIFIED40Bernardo Dominic
1006Juan F KolmetzGermany2024-05-29Morlong Associates QUALIFIED16Ivan Magalhaes
1007Aruna M DoeGermany2024-05-19Rousseaux, Michael Esq RENEWAL95Ioni Bowcher
1008Cody A BowleyBrazil2024-05-19King, Christopher A Esq UNQUALIFIED56Stephen Shaw
1009Julie D KolmetzUnited Kingdom2024-06-11Feltz Printing Service NEW95Anna Fali
1010Greenwood R FollerRussia2024-05-28King, Christopher A Esq NEGOTIATION80Xuxue Feng
1011Ricardo C ButtRussia2024-06-06Feiner Bros RENEWAL2Elwin Sharvill
1012Silvio C VocelkaCanada2024-05-25Chapman, Ross E Esq QUALIFIED84Xuxue Feng
1013Jones D StensethJapan2024-05-25Truhlar And Truhlar Attys QUALIFIED93Ioni Bowcher
1014Adams I PerinCanada2024-06-08Feiner Bros QUALIFIED88Ivan Magalhaes
1015Wickens C OldroydArgentina2024-05-20Rousseaux, Michael Esq RENEWAL49Elwin Sharvill
1016Smith V MaletFrance2024-05-25Commercial Press NEW90Amy Elsner
1017Maria Y RimSpain2024-06-10Dorl, James J Esq NEW2Bernardo Dominic
1018James Q ChuiGermany2024-06-11Printing Dimensions NEW74Ivan Magalhaes
1019Tony T MaletUnited Kingdom2024-06-02Rangoni Of Florence NEW25Bernardo Dominic
1020Jennifer G RimGermany2024-06-04Commercial Press NEGOTIATION74Amy Elsner
1021Claire B CaldareraSpain2024-06-03Chapman, Ross E Esq QUALIFIED52Xuxue Feng
1022David A AlbaresFrance2024-06-12Buckley Miller Wright RENEWAL43Elwin Sharvill
1023Jones A MaletBrazil2024-06-08Commercial Press NEW42Ivan Magalhaes
1024Johnson S PoquetteJapan2024-06-03Feltz Printing Service QUALIFIED71Amy Elsner
1025Kadeem J MaletArgentina2024-05-29Feltz Printing Service UNQUALIFIED50Xuxue Feng
1026Mayumi S WhobreyUnited Kingdom2024-05-28Chemel, James L Cpa PROPOSAL48Asiya Javayant
1027Maisha C OstroskyArgentina2024-06-04Chanay, Jeffrey A Esq PROPOSAL47Elwin Sharvill
1028Ricardo L PoquetteItaly2024-06-05Printing Dimensions RENEWAL2Anna Fali
1029Cody C BowleyItaly2024-06-02Feltz Printing Service UNQUALIFIED73Asiya Javayant
1030Morrow B OldroydIndia2024-06-11Truhlar And Truhlar Attys QUALIFIED51Xuxue Feng
1031Jefferson Q SergiIndia2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED67Amy Elsner
1032Ricardo X FollerGermany2024-05-31Truhlar And Truhlar Attys PROPOSAL74Stephen Shaw
1033Isabel R NickaFrance2024-06-08Feiner Bros PROPOSAL36Amy Elsner
1034Faith U NickaIndia2024-06-04Rangoni Of Florence QUALIFIED23Asiya Javayant
1035Faith M CampainUnited Kingdom2024-05-31Chanay, Jeffrey A Esq NEGOTIATION37Elwin Sharvill
1036Maisha J WieserIndia2024-06-11Feltz Printing Service NEGOTIATION91Stephen Shaw
1037Adams B RimArgentina2024-06-03Buckley Miller Wright NEGOTIATION56Xuxue Feng
1038Aditya X SchemmerFrance2024-05-29Chapman, Ross E Esq NEW43Elwin Sharvill
1039Julie E VocelkaBrazil2024-06-02Chapman, Ross E Esq RENEWAL0Stephen Shaw
1040Maisha Y BologniaCanada2024-06-02Chanay, Jeffrey A Esq NEGOTIATION92Ioni Bowcher
1041Clifford B PerinGermany2024-06-08Truhlar And Truhlar Attys UNQUALIFIED55Amy Elsner
1042Claire K NickaAustralia2024-05-25Rousseaux, Michael Esq PROPOSAL18Amy Elsner
1043David X MacleadIndia2024-06-07Chapman, Ross E Esq RENEWAL39Asiya Javayant
1044Morrow O RutaArgentina2024-05-25Chapman, Ross E Esq UNQUALIFIED72Xuxue Feng
1045Faith S InouyeArgentina2024-06-06Morlong Associates QUALIFIED91Elwin Sharvill
1046Rodrigues V WieserRussia2024-06-07Buckley Miller Wright RENEWAL28Amy Elsner
1047Izzy S MorascaGermany2024-06-09Rangoni Of Florence NEW39Elwin Sharvill
1048Aika D FerenczIndia2024-06-14Feltz Printing Service RENEWAL26Asiya Javayant
1049Julie M VenereJapan2024-06-06Feiner Bros NEGOTIATION61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues W SaylorsGermanyStephen Shaw UNQUALIFIED
James K RulapaughSpainAsiya Javayant RENEWAL
Stacey Z RutaArgentinaXuxue Feng NEW
Juan T SergiFranceIvan Magalhaes NEGOTIATION
Greenwood O ButtRussiaOnyama Limba UNQUALIFIED
Munro D StensethAustraliaStephen Shaw NEW
Emily K RulapaughItalyXuxue Feng QUALIFIED
Julie D RoysterArgentinaBernardo Dominic RENEWAL
Kaitlin S DarakjyRussiaAsiya Javayant NEW
Julie X VenereJapanIoni Bowcher NEGOTIATION
Kaitlin F NestleBrazilAnna Fali NEGOTIATION
Aruna R OstroskyCanadaXuxue Feng UNQUALIFIED
Faith M AlbaresItalyAmy Elsner NEGOTIATION
Jefferson M GauchoIndiaElwin Sharvill NEW
Misaki M RoysterAustraliaStephen Shaw PROPOSAL
Leja L StockhamItalyBernardo Dominic PROPOSAL
Stacey L CaudyRussiaIoni Bowcher NEGOTIATION
Tony M ChuiArgentinaXuxue Feng PROPOSAL
Antonio L AmigonSpainAsiya Javayant PROPOSAL
Nicolas Z CampainAustraliaStephen Shaw PROPOSAL
Aruna W NestleUnited KingdomIvan Magalhaes NEW
Octavia P CampainCanadaStephen Shaw PROPOSAL
Nicolas F MaletCanadaBernardo Dominic PROPOSAL
Chavez A SchemmerBrazilAnna Fali NEW
Tony X WaycottItalyIvan Magalhaes NEW
Ivar Z AmigonRussiaAsiya Javayant NEW
Ricardo Q BologniaGermanyAsiya Javayant PROPOSAL
Kaitlin E WieserRussiaXuxue Feng PROPOSAL
Faith E CampainBrazilIoni Bowcher QUALIFIED
Johnson S SlusarskiCanadaBernardo Dominic PROPOSAL
Rodrigues N FlosiCanadaIoni Bowcher UNQUALIFIED
James E AmigonAustraliaXuxue Feng QUALIFIED
Greenwood Q FerenczJapanOnyama Limba PROPOSAL
Ricardo M KuskoGermanyStephen Shaw NEGOTIATION
Stacey E CaldareraAustraliaIvan Magalhaes PROPOSAL
Claire T OstroskyAustraliaStephen Shaw UNQUALIFIED
Izzy I DilliardAustraliaAnna Fali PROPOSAL
Aika S OldroydGermanyElwin Sharvill PROPOSAL
Rodrigues P ButtAustraliaOnyama Limba QUALIFIED
Stacey P VocelkaArgentinaBernardo Dominic QUALIFIED
Faith H ChuiCanadaIoni Bowcher NEW
Wickens O NestleFranceAnna Fali UNQUALIFIED
Nicolas A SchemmerAustraliaIvan Magalhaes NEW
Izzy O MaletBrazilIoni Bowcher PROPOSAL
Tony K CampainJapanAsiya Javayant NEGOTIATION
Jefferson Y BowleyFranceAnna Fali PROPOSAL
Mayumi O BowleyItalyElwin Sharvill RENEWAL
Antonio C RoysterItalyIvan Magalhaes QUALIFIED
Aruna O MaletSpainIvan Magalhaes NEW
Maria L MacleadJapanAsiya Javayant RENEWAL
Frozen Columns
Name
Alejandro T Iturbide
Munro L Doe
Aika M Bolognia
Jefferson N Vocelka
David V Dilliard
Aruna H Morasca
Jennifer H Butt
Ashley Y Kusko
Julie G Caldarera
Antonio S Iturbide
Juan E Dilliard
Costa K Bolognia
Rodrigues O Garufi
Leon M Darakjy
Murillo U Nicka
Nicolas I Inouye
Octavia D Ostrosky
Salvatore C Campain
Silvio K Saylors
Ivar N Stenseth
Ivar G Rulapaugh
Aika N Stenseth
Darci K Morasca
Octavia B Doe
Salvatore J Flosi
Maisha B Stockham
Leon V Inouye
Arvin O Whobrey
Misaki X Dilliard
Cody R Caldarera
Aditya C Paprocki
Alejandro Z Butt
Jennifer P Bolognia
Ashley H Butt
Costa O Stenseth
Jeanfrancois Z Saylors
Faith J Whobrey
Jones C Stenseth
Maria Z Vocelka
Maria K Caudy
Leja T Perin
Wickens X Marrier
Mujtaba J Amigon
Jeanfrancois L Nicka
Julie R Gaucho
David R Venere
Darci F Inouye
Nicolas W Amigon
Leja I Rim
Cody D Malet
IdCountryDate
1000Canada2024-05-20
1001Canada2024-06-11
1002Russia2024-06-03
1003Canada2024-06-08
1004Canada2024-06-07
1005Germany2024-06-05
1006Germany2024-06-07
1007Canada2024-05-22
1008Australia2024-05-24
1009Japan2024-06-12
1010Germany2024-05-16
1011Argentina2024-06-11
1012France2024-06-06
1013Russia2024-05-25
1014Australia2024-05-31
1015Italy2024-06-05
1016Germany2024-06-10
1017United Kingdom2024-06-06
1018United Kingdom2024-05-24
1019Italy2024-05-26
1020Russia2024-05-26
1021India2024-05-26
1022Japan2024-05-30
1023Spain2024-05-30
1024France2024-06-06
1025Japan2024-05-27
1026Italy2024-06-06
1027Argentina2024-05-18
1028Germany2024-06-06
1029India2024-05-26
1030France2024-06-09
1031United Kingdom2024-06-05
1032Canada2024-06-05
1033India2024-06-05
1034Argentina2024-05-22
1035Japan2024-05-23
1036Canada2024-06-12
1037Russia2024-05-16
1038Spain2024-06-02
1039Italy2024-06-06
1040Brazil2024-05-22
1041France2024-05-18
1042Australia2024-05-24
1043Russia2024-05-17
1044Italy2024-05-23
1045Russia2024-06-07
1046Japan2024-06-03
1047Canada2024-05-21
1048Australia2024-05-27
1049Russia2024-05-27

On-Demand Data

NameIdCountryDate
Octavia N Malet1000Argentina2024-06-02
Claire I Whobrey1001France2024-06-09
Octavia J Flosi1002Russia2024-05-28
Cody C Foller1003Brazil2024-05-31
Izzy R Stenseth1004United Kingdom2024-06-02
Antonio J Sergi1005Japan2024-05-17
Chavez N Waycott1006Russia2024-06-12
Mujtaba N Oldroyd1007Germany2024-06-04
Maisha E Nestle1008Russia2024-06-13
Nicolas T Chui1009Russia2024-05-19
Johnson F Doe1010Spain2024-05-19
Aruna A Saylors1011India2024-05-28
James B Malet1012Canada2024-05-21
James R Garufi1013Spain2024-06-14
Cody M Caudy1014Australia2024-06-08
Emily F Ostrosky1015Canada2024-06-04
Octavia Z Stockham1016Russia2024-05-16
Aruna W Garufi1017Italy2024-05-29
Cody U Venere1018Australia2024-06-04
Smith A Kusko1019Argentina2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh C PerinItalyIvan Magalhaes UNQUALIFIED
Octavia M MacleadGermanyAmy Elsner UNQUALIFIED
Murillo P GillianArgentinaIvan Magalhaes NEGOTIATION
Alejandro F TollnerUnited KingdomIoni Bowcher PROPOSAL
Munro V MorascaRussiaStephen Shaw NEGOTIATION
Leon D VenereAustraliaAsiya Javayant PROPOSAL
Tony H DoeCanadaAsiya Javayant PROPOSAL
Ricardo M AlbaresGermanyElwin Sharvill PROPOSAL
Ashley J DilliardGermanyAnna Fali QUALIFIED
Maria W TollnerSpainIoni Bowcher NEW
Aruna V BologniaAustraliaIvan Magalhaes UNQUALIFIED
Chavez C NestleBrazilStephen Shaw NEW
Aruna F PaprockiFranceBernardo Dominic NEW
Jefferson M ChuiArgentinaElwin Sharvill NEW
Cody Z PerinAustraliaIoni Bowcher NEW
Mayumi X DarakjyRussiaIoni Bowcher NEW
Leon S BologniaCanadaAsiya Javayant PROPOSAL
Munro A IturbideUnited KingdomBernardo Dominic NEW
Smith M CampainBrazilXuxue Feng PROPOSAL
Munro D FlosiItalyXuxue Feng NEW
Smith C SergiArgentinaXuxue Feng QUALIFIED
Jefferson M RimItalyElwin Sharvill NEW
Jennifer X RutaArgentinaAmy Elsner QUALIFIED
Stacey U DilliardSpainIvan Magalhaes NEW
Aruna F MarrierSpainXuxue Feng NEW
Greenwood X RimIndiaElwin Sharvill PROPOSAL
Sinclair E RulapaughUnited KingdomBernardo Dominic NEW
Adams N GillianRussiaIoni Bowcher QUALIFIED
Deepesh T MarrierUnited KingdomStephen Shaw RENEWAL
Arvin Y KuskoGermanyXuxue Feng NEGOTIATION
Isabel L SchemmerSpainElwin Sharvill QUALIFIED
Greenwood Z StockhamJapanOnyama Limba NEW
Mujtaba E BologniaUnited KingdomXuxue Feng UNQUALIFIED
Clifford S CaldareraUnited KingdomBernardo Dominic QUALIFIED
Darci E VenereFranceIoni Bowcher NEW
Darci U CaudyUnited KingdomIoni Bowcher NEW
Ricardo D GlickCanadaAsiya Javayant NEW
Darci M TollnerArgentinaOnyama Limba NEGOTIATION
Clifford C DarakjyAustraliaIoni Bowcher NEGOTIATION
Jones M KolmetzJapanXuxue Feng 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>