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
Maisha H RutaItalyXuxue Feng QUALIFIED
Nicolas U CaldareraBrazilXuxue Feng NEW
Kadeem T FollerAustraliaElwin Sharvill QUALIFIED
Maria X FigeroaUnited KingdomIvan Magalhaes RENEWAL
Rodrigues U OldroydJapanIvan Magalhaes QUALIFIED
Chavez Y KuskoItalyIoni Bowcher NEGOTIATION
Maisha G SergiAustraliaIvan Magalhaes NEGOTIATION
Kaitlin N CaldareraUnited KingdomIoni Bowcher NEGOTIATION
Ricardo W InouyeFranceXuxue Feng UNQUALIFIED
Julie Q RutaSpainElwin Sharvill QUALIFIED
Greenwood H TollnerRussiaXuxue Feng NEW
Stacey N WieserItalyAsiya Javayant NEW
Adams J FlosiRussiaElwin Sharvill UNQUALIFIED
Nicolas L SergiUnited KingdomElwin Sharvill NEGOTIATION
Juan T DarakjyUnited KingdomAsiya Javayant NEW
Mujtaba A ChuiAustraliaBernardo Dominic RENEWAL
Salvatore I GauchoArgentinaStephen Shaw NEGOTIATION
Julie T ButtJapanXuxue Feng PROPOSAL
Kaitlin K PaprockiArgentinaAmy Elsner RENEWAL
Antonio B DarakjyFranceAnna Fali UNQUALIFIED
Aruna R PoquetteCanadaAmy Elsner PROPOSAL
Tony L ButtGermanyIoni Bowcher PROPOSAL
Munro D NickaIndiaXuxue Feng RENEWAL
Clifford J FerenczCanadaXuxue Feng UNQUALIFIED
Emily F MarrierBrazilBernardo Dominic QUALIFIED
Clifford B ShinkoRussiaAmy Elsner QUALIFIED
Jones I BriddickArgentinaIoni Bowcher QUALIFIED
Salvatore J MarrierUnited KingdomIoni Bowcher NEW
Isabel X FlosiUnited KingdomStephen Shaw NEW
Jefferson R FlosiAustraliaAnna Fali QUALIFIED
Smith U MaletGermanyAmy Elsner QUALIFIED
Claire M MarrierFranceOnyama Limba UNQUALIFIED
Clifford I SaylorsUnited KingdomBernardo Dominic RENEWAL
Claire N StockhamGermanyAsiya Javayant NEW
Izzy K KolmetzFranceXuxue Feng RENEWAL
Antonio T ButtUnited KingdomOnyama Limba QUALIFIED
Emily I PaprockiIndiaBernardo Dominic PROPOSAL
Jones G MaletFranceIoni Bowcher QUALIFIED
Ricardo V CampainFranceIoni Bowcher PROPOSAL
Aruna R FlosiRussiaAmy Elsner NEW
Aditya W RoysterCanadaBernardo Dominic UNQUALIFIED
Nicolas E VenereUnited KingdomIoni Bowcher QUALIFIED
Ricardo G ShinkoJapanStephen Shaw QUALIFIED
Jefferson V ShinkoFranceElwin Sharvill QUALIFIED
James A BowleyCanadaXuxue Feng QUALIFIED
Claire R GarufiUnited KingdomElwin Sharvill QUALIFIED
Stacey P WaycottCanadaStephen Shaw NEW
Salvatore X OldroydGermanyAsiya Javayant UNQUALIFIED
Emily D MaletItalyAmy Elsner NEW
Jeanfrancois E DoeSpainAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Darci W KolmetzCanadaAnna Fali NEGOTIATION
Ivar T ButtCanadaBernardo Dominic PROPOSAL
Sinclair J ChuiRussiaIoni Bowcher NEGOTIATION
Morrow U BologniaArgentinaAnna Fali RENEWAL
Claire M DilliardRussiaElwin Sharvill NEW
Izzy N RoysterAustraliaXuxue Feng NEW
Morrow K CaldareraGermanyIvan Magalhaes PROPOSAL
Ivar L FlosiBrazilAmy Elsner PROPOSAL
Tony C SergiCanadaBernardo Dominic NEGOTIATION
Alejandro D GlickAustraliaIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore S KuskoArgentina2026-06-18King, Christopher A Esq NEW42Ioni Bowcher
1001Emily Z OstroskyUnited Kingdom2026-06-08Chemel, James L Cpa PROPOSAL18Xuxue Feng
1002Mujtaba I OldroydSpain2026-05-28Benton, John B Jr QUALIFIED71Ivan Magalhaes
1003Arvin D BriddickJapan2026-05-24Chemel, James L Cpa NEGOTIATION20Xuxue Feng
1004Rodrigues B OstroskyJapan2026-06-14Commercial Press NEGOTIATION92Bernardo Dominic
1005Arvin O AmigonSpain2026-06-13Chapman, Ross E Esq RENEWAL1Asiya Javayant
1006Clifford H OldroydJapan2026-06-19Rousseaux, Michael Esq NEW77Ioni Bowcher
1007Juan Y PaprockiSpain2026-05-25Chanay, Jeffrey A Esq NEGOTIATION81Onyama Limba
1008Wickens T SchemmerAustralia2026-06-14Morlong Associates UNQUALIFIED69Onyama Limba
1009Jeanfrancois Y IturbideSpain2026-05-27Rangoni Of Florence RENEWAL30Asiya Javayant
1010Mujtaba T BriddickFrance2026-06-12Feltz Printing Service NEW57Amy Elsner
1011Costa W RutaArgentina2026-05-31Printing Dimensions RENEWAL32Anna Fali
1012Ashley V RutaItaly2026-05-29Feiner Bros NEGOTIATION28Bernardo Dominic
1013Misaki L FerenczAustralia2026-05-23Dorl, James J Esq RENEWAL27Xuxue Feng
1014Maisha L PaprockiAustralia2026-05-23Rousseaux, Michael Esq NEW76Bernardo Dominic
1015Julie D IturbideBrazil2026-06-15Chemel, James L Cpa NEW32Amy Elsner
1016Francesco J InouyeGermany2026-05-23Benton, John B Jr UNQUALIFIED33Ivan Magalhaes
1017Chavez U CampainJapan2026-06-18Rangoni Of Florence NEW34Bernardo Dominic
1018Rodrigues C MarrierAustralia2026-05-23Buckley Miller Wright UNQUALIFIED76Asiya Javayant
1019Salvatore J AmigonGermany2026-06-10Feltz Printing Service UNQUALIFIED23Amy Elsner
1020Darci I MorascaUnited Kingdom2026-06-18Truhlar And Truhlar Attys NEGOTIATION6Elwin Sharvill
1021Aruna Y IturbideUnited Kingdom2026-06-02King, Christopher A Esq NEGOTIATION11Ioni Bowcher
1022Mujtaba E BologniaIndia2026-06-06Feltz Printing Service RENEWAL57Stephen Shaw
1023Darci T StensethIndia2026-06-06Printing Dimensions UNQUALIFIED74Bernardo Dominic
1024Mujtaba Q IturbideItaly2026-06-01Chanay, Jeffrey A Esq NEW55Bernardo Dominic
1025Izzy H WaycottUnited Kingdom2026-06-17Dorl, James J Esq RENEWAL95Elwin Sharvill
1026Francesco O PerinGermany2026-06-19Printing Dimensions UNQUALIFIED13Elwin Sharvill
1027Adams Y FollerSpain2026-05-27Feiner Bros RENEWAL2Asiya Javayant
1028Aika O RimSpain2026-06-19Printing Dimensions NEW44Ioni Bowcher
1029Leon Y OldroydUnited Kingdom2026-06-16Printing Dimensions PROPOSAL4Amy Elsner
1030Arvin C DoeJapan2026-06-18Buckley Miller Wright PROPOSAL72Ivan Magalhaes
1031Faith K RutaAustralia2026-06-10Rousseaux, Michael Esq PROPOSAL31Stephen Shaw
1032Greenwood S RimUnited Kingdom2026-06-15Dorl, James J Esq NEW56Elwin Sharvill
1033Alejandro H FollerIndia2026-06-04Morlong Associates NEGOTIATION58Elwin Sharvill
1034Maisha B RutaAustralia2026-06-01Truhlar And Truhlar Attys QUALIFIED68Xuxue Feng
1035Salvatore Z SaylorsBrazil2026-06-18Feiner Bros NEGOTIATION70Bernardo Dominic
1036Jennifer G FerenczAustralia2026-06-20Feltz Printing Service NEW76Amy Elsner
1037Munro B WhobreyArgentina2026-05-23King, Christopher A Esq UNQUALIFIED89Xuxue Feng
1038Munro T WieserJapan2026-06-17King, Christopher A Esq NEW81Anna Fali
1039Chavez C WaycottAustralia2026-06-07Rousseaux, Michael Esq NEW84Bernardo Dominic
1040James R ShinkoCanada2026-06-05Chemel, James L Cpa PROPOSAL59Bernardo Dominic
1041Cody C MaletGermany2026-06-03Commercial Press NEGOTIATION7Anna Fali
1042Aruna Y PaprockiBrazil2026-06-06Benton, John B Jr UNQUALIFIED66Anna Fali
1043Kadeem Q OldroydArgentina2026-06-16King, Christopher A Esq QUALIFIED63Elwin Sharvill
1044Antonio Q RutaFrance2026-06-20Rangoni Of Florence NEGOTIATION92Xuxue Feng
1045Silvio C SchemmerAustralia2026-06-05Commercial Press PROPOSAL75Xuxue Feng
1046Clifford Z FollerGermany2026-05-24Feiner Bros UNQUALIFIED9Bernardo Dominic
1047Mujtaba Z InouyeFrance2026-06-06Buckley Miller Wright NEW44Onyama Limba
1048Isabel G AmigonItaly2026-05-23Chapman, Ross E Esq PROPOSAL82Asiya Javayant
1049Juan L RutaBrazil2026-06-03Benton, John B Jr NEGOTIATION9Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Alejandro B AlbaresGermanyXuxue Feng RENEWAL
Aika B WieserIndiaOnyama Limba NEGOTIATION
Salvatore B GarufiBrazilOnyama Limba PROPOSAL
Wickens Z KuskoJapanStephen Shaw RENEWAL
Octavia Z FollerAustraliaBernardo Dominic NEGOTIATION
Murillo O BowleyFranceOnyama Limba RENEWAL
Aika A MaletRussiaAmy Elsner QUALIFIED
Kadeem U RulapaughAustraliaXuxue Feng PROPOSAL
Ivar M ButtBrazilOnyama Limba NEW
Costa L ButtJapanAmy Elsner UNQUALIFIED
Arvin F WieserBrazilOnyama Limba NEW
Johnson N WieserIndiaStephen Shaw NEGOTIATION
Leon U FerenczArgentinaAsiya Javayant RENEWAL
Misaki Z FollerBrazilStephen Shaw PROPOSAL
Jeanfrancois Q MarrierIndiaElwin Sharvill NEGOTIATION
Juan J OstroskyUnited KingdomOnyama Limba UNQUALIFIED
Octavia T BologniaItalyOnyama Limba NEW
Maisha I MarrierIndiaAnna Fali NEGOTIATION
Jefferson V BowleyCanadaBernardo Dominic NEW
Aika V PoquetteBrazilBernardo Dominic PROPOSAL
Julie R DoeJapanOnyama Limba NEGOTIATION
Silvio Q MaletCanadaXuxue Feng NEGOTIATION
Isabel P SchemmerSpainXuxue Feng NEW
Johnson Y BriddickIndiaAsiya Javayant NEW
Ricardo F BriddickBrazilStephen Shaw NEGOTIATION
Maisha O RutaCanadaAnna Fali NEGOTIATION
Johnson M CaudyJapanBernardo Dominic UNQUALIFIED
Aruna B GauchoArgentinaAmy Elsner NEW
Murillo Q ButtIndiaBernardo Dominic NEGOTIATION
Chavez I ShinkoItalyOnyama Limba PROPOSAL
James D SergiFranceOnyama Limba QUALIFIED
Aika E FigeroaGermanyAsiya Javayant UNQUALIFIED
Misaki D KuskoArgentinaIvan Magalhaes PROPOSAL
Morrow J CaldareraSpainIoni Bowcher PROPOSAL
Nicolas Z CampainArgentinaElwin Sharvill NEGOTIATION
Antonio C DarakjyItalyAmy Elsner PROPOSAL
Nicolas G MorascaAustraliaIvan Magalhaes QUALIFIED
Rodrigues U FigeroaRussiaXuxue Feng NEGOTIATION
Emily A AmigonIndiaIoni Bowcher NEGOTIATION
Maisha L PaprockiIndiaAsiya Javayant RENEWAL
Jefferson A StockhamArgentinaAsiya Javayant UNQUALIFIED
Costa R FerenczIndiaIoni Bowcher QUALIFIED
Maisha N AmigonBrazilOnyama Limba NEW
Kaitlin P GarufiJapanAsiya Javayant NEW
Munro R FigeroaFranceAsiya Javayant PROPOSAL
Kadeem K PaprockiCanadaXuxue Feng UNQUALIFIED
Jeanfrancois E PaprockiCanadaAsiya Javayant QUALIFIED
Jones N StensethJapanXuxue Feng QUALIFIED
Jennifer P KolmetzBrazilStephen Shaw NEGOTIATION
Antonio Y OldroydItalyXuxue Feng QUALIFIED
Frozen Columns
Name
Izzy K Butt
Adams Q Chui
Adams U Marrier
Kaitlin L Caldarera
Jennifer G Chui
Mayumi N Royster
Faith L Ferencz
Emily C Amigon
Arvin K Waycott
Emily D Saylors
Antonio L Saylors
Adams E Saylors
Deepesh R Gaucho
Isabel D Rulapaugh
Julie W Campain
Deepesh D Campain
Tony Y Amigon
Salvatore U Butt
Costa I Whobrey
Jefferson U Ferencz
Maisha W Schemmer
Johnson P Marrier
Costa J Rulapaugh
Aruna J Gaucho
Jeanfrancois Q Bolognia
Faith Z Sergi
Kaitlin Z Venere
Greenwood W Ferencz
Misaki F Dilliard
Wickens R Saylors
Darci X Stockham
Jeanfrancois O Stenseth
Chavez V Malet
Ivar S Venere
Johnson E Caldarera
Maisha F Marrier
Greenwood U Paprocki
Clifford X Tollner
Mujtaba O Campain
Aika D Bowley
Salvatore T Bolognia
Emily P Dilliard
Isabel T Vocelka
Francesco U Tollner
Wickens P Ruta
Isabel C Marrier
Julie J Figeroa
James D Flosi
Juan E Tollner
Izzy Y Tollner
IdCountryDate
1000United Kingdom2026-06-16
1001Argentina2026-05-27
1002Japan2026-06-21
1003Spain2026-06-09
1004Germany2026-06-07
1005United Kingdom2026-05-24
1006Argentina2026-06-05
1007Japan2026-05-31
1008Italy2026-06-20
1009Spain2026-05-30
1010India2026-06-13
1011Canada2026-06-02
1012Brazil2026-05-23
1013Japan2026-06-05
1014Australia2026-05-31
1015Brazil2026-06-16
1016France2026-06-06
1017Australia2026-06-06
1018Australia2026-06-06
1019Italy2026-05-29
1020United Kingdom2026-05-31
1021France2026-06-20
1022Canada2026-06-03
1023Spain2026-06-09
1024Russia2026-06-01
1025United Kingdom2026-06-03
1026Japan2026-06-17
1027Brazil2026-06-09
1028France2026-06-17
1029France2026-06-09
1030Spain2026-06-05
1031Germany2026-06-16
1032Canada2026-06-03
1033Japan2026-06-13
1034Brazil2026-06-19
1035Argentina2026-06-17
1036France2026-06-17
1037Japan2026-06-18
1038Brazil2026-06-21
1039France2026-06-20
1040Canada2026-06-02
1041Brazil2026-06-01
1042Argentina2026-05-27
1043France2026-05-23
1044Japan2026-06-21
1045Italy2026-06-09
1046United Kingdom2026-05-31
1047Germany2026-05-29
1048Germany2026-05-26
1049Australia2026-06-13

On-Demand Data

NameIdCountryDate
Aika Q Nicka1000Russia2026-05-26
Murillo X Rulapaugh1001Russia2026-06-14
Cody S Briddick1002Russia2026-06-11
Sinclair E Campain1003Germany2026-06-10
Aditya M Paprocki1004Russia2026-05-28
Stacey B Perin1005France2026-05-31
Johnson B Chui1006Italy2026-06-11
Claire C Butt1007Australia2026-05-30
Arvin I Chui1008India2026-06-09
Antonio F Schemmer1009Canada2026-05-25
Leja P Whobrey1010India2026-06-10
Alejandro Z Ostrosky1011Japan2026-06-10
Ivar O Butt1012Australia2026-05-24
Aditya C Malet1013United Kingdom2026-06-13
Arvin V Doe1014Russia2026-06-15
Ivar C Foller1015France2026-06-07
Francesco B Foller1016India2026-06-18
Rodrigues U Inouye1017Japan2026-05-27
Costa F Doe1018Spain2026-06-17
Jennifer X Venere1019Australia2026-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo Y GlickSpainStephen Shaw QUALIFIED
Jeanfrancois B VenereSpainIvan Magalhaes UNQUALIFIED
Emily G FigeroaUnited KingdomXuxue Feng UNQUALIFIED
Maria J SaylorsArgentinaXuxue Feng QUALIFIED
James D CaudyItalyElwin Sharvill UNQUALIFIED
Isabel G CampainItalyAnna Fali NEW
Claire K RutaArgentinaAnna Fali RENEWAL
Wickens E KuskoFranceIvan Magalhaes NEW
Silvio W VenereUnited KingdomStephen Shaw NEW
Smith I SergiJapanAsiya Javayant NEGOTIATION
David Z AlbaresIndiaAmy Elsner QUALIFIED
Greenwood P FlosiArgentinaElwin Sharvill NEW
Julie A KuskoFranceAnna Fali RENEWAL
Sinclair T PaprockiRussiaIoni Bowcher QUALIFIED
Mujtaba O AmigonAustraliaAmy Elsner NEW
Adams T MorascaSpainAsiya Javayant UNQUALIFIED
Aika S NestleIndiaAnna Fali UNQUALIFIED
Misaki G SlusarskiFranceElwin Sharvill NEGOTIATION
Silvio I BologniaJapanElwin Sharvill NEGOTIATION
Claire C MacleadSpainXuxue Feng PROPOSAL
Francesco S KuskoSpainOnyama Limba NEGOTIATION
Smith S TollnerJapanXuxue Feng RENEWAL
Arvin W GarufiFranceStephen Shaw RENEWAL
Greenwood Z WaycottJapanElwin Sharvill QUALIFIED
Misaki V SchemmerItalyBernardo Dominic NEGOTIATION
Adams M DarakjyCanadaXuxue Feng QUALIFIED
Deepesh C SlusarskiFranceIoni Bowcher PROPOSAL
Morrow L ButtCanadaStephen Shaw PROPOSAL
Jennifer A MaletSpainAmy Elsner UNQUALIFIED
David U RutaIndiaIvan Magalhaes PROPOSAL
Kadeem I BologniaAustraliaBernardo Dominic NEW
Leon L DilliardFranceAmy Elsner UNQUALIFIED
Antonio T AmigonGermanyXuxue Feng NEW
Ashley O DarakjyArgentinaXuxue Feng QUALIFIED
Ivar H OldroydGermanyElwin Sharvill PROPOSAL
David Z MarrierBrazilAnna Fali QUALIFIED
Murillo B SergiArgentinaElwin Sharvill UNQUALIFIED
Isabel W StockhamIndiaIvan Magalhaes RENEWAL
Mayumi U TollnerRussiaOnyama Limba NEGOTIATION
Wickens D GlickItalyIvan 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>

You are using an LTS version of PrimeFaces with an invalid license, you may either switch back to a non-LTS version or purchase a license at PrimeStore.