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
Cody L DilliardIndiaBernardo Dominic RENEWAL
Francesco D RulapaughJapanIvan Magalhaes NEGOTIATION
Arvin W PaprockiItalyAnna Fali QUALIFIED
Darci Y ChuiGermanyOnyama Limba NEGOTIATION
Leon D PerinItalyAsiya Javayant QUALIFIED
Stacey Y BologniaGermanyOnyama Limba NEGOTIATION
Ivar U KuskoArgentinaBernardo Dominic PROPOSAL
Deepesh F CampainCanadaAnna Fali PROPOSAL
Munro H BowleyIndiaAmy Elsner PROPOSAL
Ivar R CampainGermanyXuxue Feng RENEWAL
Jeanfrancois V BowleyJapanBernardo Dominic NEGOTIATION
Munro F KuskoCanadaXuxue Feng PROPOSAL
Darci R OstroskySpainAsiya Javayant NEW
Rodrigues Q DilliardFranceElwin Sharvill UNQUALIFIED
Izzy D WhobreyGermanyAsiya Javayant PROPOSAL
Tony X FlosiUnited KingdomBernardo Dominic NEGOTIATION
Isabel M FollerItalyBernardo Dominic QUALIFIED
Rodrigues J MaletSpainAsiya Javayant RENEWAL
Claire I NestleUnited KingdomBernardo Dominic PROPOSAL
Claire D WhobreyArgentinaAmy Elsner NEW
Mujtaba D NickaSpainOnyama Limba QUALIFIED
Izzy U SaylorsCanadaStephen Shaw NEGOTIATION
Claire P ButtRussiaOnyama Limba RENEWAL
Stacey S KolmetzCanadaAmy Elsner NEGOTIATION
Wickens X WhobreyJapanIvan Magalhaes UNQUALIFIED
Maisha A TollnerItalyStephen Shaw NEW
Morrow H MaletGermanyElwin Sharvill QUALIFIED
Maisha Y AlbaresFranceElwin Sharvill QUALIFIED
Nicolas Z TollnerFranceElwin Sharvill NEGOTIATION
Wickens A DarakjyJapanAsiya Javayant UNQUALIFIED
Kadeem R SergiIndiaBernardo Dominic NEW
Ricardo J KolmetzCanadaAmy Elsner RENEWAL
Ashley G NestleAustraliaBernardo Dominic NEW
Isabel M AmigonSpainStephen Shaw NEGOTIATION
Isabel R RulapaughUnited KingdomAmy Elsner QUALIFIED
Francesco Y ShinkoIndiaAmy Elsner NEW
Greenwood L RimJapanBernardo Dominic QUALIFIED
Mayumi I OstroskyRussiaStephen Shaw NEW
Antonio V VocelkaSpainBernardo Dominic QUALIFIED
Adams A CaldareraCanadaElwin Sharvill PROPOSAL
Ricardo M CaldareraGermanyElwin Sharvill PROPOSAL
Faith F OstroskyIndiaAmy Elsner PROPOSAL
Aditya L DarakjyArgentinaBernardo Dominic NEW
Sinclair V MaletJapanOnyama Limba NEGOTIATION
Darci S MorascaIndiaIvan Magalhaes NEW
Tony I GarufiFranceOnyama Limba UNQUALIFIED
Isabel N MaletCanadaStephen Shaw UNQUALIFIED
Sinclair X VocelkaGermanyOnyama Limba UNQUALIFIED
Wickens J FlosiBrazilBernardo Dominic UNQUALIFIED
Cody T OstroskyItalyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Alejandro K FollerArgentinaOnyama Limba RENEWAL
Greenwood T GillianFranceIvan Magalhaes NEW
Leja O IturbideRussiaOnyama Limba NEGOTIATION
Rodrigues B GillianFranceElwin Sharvill NEW
Faith S IturbideJapanAmy Elsner PROPOSAL
Nicolas Y MarrierAustraliaIoni Bowcher UNQUALIFIED
Aditya M MorascaJapanElwin Sharvill UNQUALIFIED
Cody A AmigonAustraliaAnna Fali NEGOTIATION
Tony R ShinkoFranceAmy Elsner UNQUALIFIED
Ivar R PaprockiCanadaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues I OstroskyCanada2026-06-21Printing Dimensions RENEWAL71Elwin Sharvill
1001Jeanfrancois A GillianJapan2026-05-28Rangoni Of Florence UNQUALIFIED40Onyama Limba
1002Ricardo Z RimBrazil2026-06-19Chanay, Jeffrey A Esq RENEWAL83Anna Fali
1003Faith G CaldareraAustralia2026-05-29Benton, John B Jr QUALIFIED31Stephen Shaw
1004Aruna Z RutaUnited Kingdom2026-06-17Dorl, James J Esq NEW37Xuxue Feng
1005Nicolas C MorascaCanada2026-06-05Chemel, James L Cpa NEGOTIATION69Stephen Shaw
1006Chavez C FerenczFrance2026-06-12Chapman, Ross E Esq NEW98Bernardo Dominic
1007Clifford N MacleadItaly2026-06-18Commercial Press NEGOTIATION14Stephen Shaw
1008Antonio F VenereGermany2026-06-01Truhlar And Truhlar Attys QUALIFIED8Stephen Shaw
1009Aditya X ShinkoJapan2026-06-23Chemel, James L Cpa PROPOSAL20Stephen Shaw
1010Julie U MarrierAustralia2026-06-23Feiner Bros QUALIFIED6Bernardo Dominic
1011Ivar T ChuiUnited Kingdom2026-06-14Dorl, James J Esq QUALIFIED11Bernardo Dominic
1012Costa S InouyeIndia2026-06-08Printing Dimensions QUALIFIED69Bernardo Dominic
1013Rodrigues J OldroydJapan2026-06-23Rangoni Of Florence PROPOSAL97Stephen Shaw
1014Adams Y MorascaArgentina2026-06-01Rangoni Of Florence QUALIFIED31Ioni Bowcher
1015Jones J StensethIndia2026-06-17Dorl, James J Esq QUALIFIED22Ivan Magalhaes
1016Octavia L StensethGermany2026-06-16Morlong Associates NEW35Asiya Javayant
1017Leon W VenereFrance2026-06-04King, Christopher A Esq PROPOSAL78Amy Elsner
1018Izzy H SergiRussia2026-06-19Chemel, James L Cpa RENEWAL4Anna Fali
1019Aika G PaprockiRussia2026-06-03Chemel, James L Cpa QUALIFIED93Elwin Sharvill
1020Jefferson T IturbideArgentina2026-06-15Chemel, James L Cpa UNQUALIFIED26Ivan Magalhaes
1021Claire Z CaldareraCanada2026-06-04Truhlar And Truhlar Attys QUALIFIED27Ivan Magalhaes
1022Silvio B FollerJapan2026-05-28Truhlar And Truhlar Attys RENEWAL95Ioni Bowcher
1023Deepesh F ShinkoFrance2026-06-06Dorl, James J Esq NEW94Ioni Bowcher
1024Ashley P OldroydJapan2026-06-13Feltz Printing Service PROPOSAL44Stephen Shaw
1025Misaki J VocelkaRussia2026-06-23Chemel, James L Cpa NEGOTIATION69Stephen Shaw
1026Wickens E OldroydJapan2026-06-04Commercial Press RENEWAL80Xuxue Feng
1027Murillo L SaylorsFrance2026-05-27Buckley Miller Wright NEGOTIATION24Amy Elsner
1028Salvatore X BowleyGermany2026-05-29Dorl, James J Esq PROPOSAL10Ioni Bowcher
1029Adams A KolmetzBrazil2026-05-30King, Christopher A Esq UNQUALIFIED25Ivan Magalhaes
1030Chavez B FollerSpain2026-05-28Chemel, James L Cpa NEW4Elwin Sharvill
1031Rodrigues Q DarakjyIndia2026-06-12Buckley Miller Wright QUALIFIED82Onyama Limba
1032Costa K TollnerJapan2026-06-09Commercial Press NEGOTIATION48Elwin Sharvill
1033Mayumi E MaletArgentina2026-06-11Chanay, Jeffrey A Esq UNQUALIFIED93Xuxue Feng
1034Jennifer S MarrierIndia2026-05-31Chanay, Jeffrey A Esq PROPOSAL4Stephen Shaw
1035Jefferson J SergiSpain2026-06-03Morlong Associates PROPOSAL21Elwin Sharvill
1036James Y OldroydAustralia2026-05-29Buckley Miller Wright RENEWAL8Stephen Shaw
1037Adams E StockhamGermany2026-06-22Truhlar And Truhlar Attys NEGOTIATION80Xuxue Feng
1038Maria X MarrierAustralia2026-05-29Morlong Associates NEW74Asiya Javayant
1039Maria N VenereAustralia2026-06-01Morlong Associates QUALIFIED45Onyama Limba
1040Aditya V CampainJapan2026-05-28Commercial Press NEW39Ioni Bowcher
1041Greenwood E StockhamFrance2026-06-08Morlong Associates QUALIFIED46Ioni Bowcher
1042Sinclair Z WaycottSpain2026-06-14Benton, John B Jr NEW20Stephen Shaw
1043Ricardo V SlusarskiCanada2026-06-05Buckley Miller Wright UNQUALIFIED26Asiya Javayant
1044Claire G ShinkoIndia2026-06-12Printing Dimensions RENEWAL65Xuxue Feng
1045Jones Z MacleadCanada2026-06-20Chanay, Jeffrey A Esq RENEWAL79Anna Fali
1046Sinclair V CampainItaly2026-05-30Morlong Associates UNQUALIFIED4Stephen Shaw
1047Octavia E AlbaresCanada2026-06-22Rangoni Of Florence PROPOSAL55Xuxue Feng
1048Arvin Y FlosiFrance2026-05-28Chanay, Jeffrey A Esq QUALIFIED40Stephen Shaw
1049Julie N MarrierIndia2026-06-20Benton, John B Jr UNQUALIFIED82Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Costa B OstroskyCanadaIvan Magalhaes RENEWAL
Clifford K RimGermanyOnyama Limba QUALIFIED
Morrow Q InouyeArgentinaBernardo Dominic RENEWAL
Darci M SchemmerRussiaBernardo Dominic NEGOTIATION
Silvio P PaprockiBrazilBernardo Dominic UNQUALIFIED
Costa H CaldareraCanadaAnna Fali NEW
Tony J InouyeArgentinaIoni Bowcher PROPOSAL
Jeanfrancois O PerinUnited KingdomXuxue Feng NEW
Johnson I FigeroaFranceAnna Fali UNQUALIFIED
Leja M OstroskyItalyAnna Fali QUALIFIED
Smith D SergiBrazilBernardo Dominic PROPOSAL
Stacey D FollerAustraliaAnna Fali NEW
Maisha J TollnerSpainBernardo Dominic NEGOTIATION
Antonio D MacleadCanadaXuxue Feng NEGOTIATION
Jennifer Z MorascaJapanIvan Magalhaes PROPOSAL
Ivar O FlosiJapanIoni Bowcher QUALIFIED
Greenwood U PerinItalyIoni Bowcher NEW
David K WhobreyRussiaElwin Sharvill PROPOSAL
Salvatore U NickaItalyAmy Elsner UNQUALIFIED
Costa M StensethBrazilBernardo Dominic QUALIFIED
Greenwood I OldroydUnited KingdomXuxue Feng RENEWAL
Deepesh F BriddickUnited KingdomStephen Shaw QUALIFIED
Antonio Q RutaFranceIoni Bowcher RENEWAL
Chavez C SaylorsRussiaAnna Fali UNQUALIFIED
Adams U BowleyAustraliaOnyama Limba RENEWAL
Ricardo G FlosiIndiaElwin Sharvill QUALIFIED
Ashley E GarufiUnited KingdomXuxue Feng RENEWAL
Nicolas O RutaJapanElwin Sharvill NEGOTIATION
Juan G OldroydCanadaAmy Elsner QUALIFIED
Faith B StockhamIndiaAmy Elsner NEW
Smith O DarakjyArgentinaAnna Fali NEW
Greenwood F OstroskyArgentinaElwin Sharvill RENEWAL
Mujtaba W GarufiSpainBernardo Dominic QUALIFIED
Ashley E DilliardSpainXuxue Feng RENEWAL
Jones U PaprockiCanadaOnyama Limba UNQUALIFIED
Antonio R StockhamSpainXuxue Feng RENEWAL
Maria C SaylorsBrazilBernardo Dominic UNQUALIFIED
Antonio F SchemmerFranceOnyama Limba QUALIFIED
Johnson U CampainItalyOnyama Limba RENEWAL
Rodrigues X WieserArgentinaAmy Elsner NEGOTIATION
Chavez Q MaletRussiaBernardo Dominic NEGOTIATION
Isabel X ShinkoSpainStephen Shaw QUALIFIED
Izzy X DoeIndiaXuxue Feng QUALIFIED
Kaitlin N MaletRussiaElwin Sharvill PROPOSAL
Salvatore Q GillianFranceIoni Bowcher QUALIFIED
Alejandro W GlickIndiaIvan Magalhaes RENEWAL
Antonio K InouyeItalyIoni Bowcher NEW
Kaitlin Y DilliardRussiaBernardo Dominic PROPOSAL
Mujtaba T DoeIndiaIoni Bowcher NEGOTIATION
Jones H RimBrazilOnyama Limba QUALIFIED
Frozen Columns
Name
Jones T Sergi
Aruna O Slusarski
Smith R Morasca
Kadeem N Darakjy
Cody X Foller
Costa R Campain
Smith M Chui
Isabel T Malet
Mayumi L Nicka
Arvin M Morasca
Antonio U Bolognia
Johnson V Albares
Aruna J Malet
Stacey B Morasca
James F Nicka
Wickens K Stenseth
Sinclair J Albares
Deepesh P Garufi
Salvatore H Maclead
Leon H Oldroyd
Isabel D Stenseth
Ashley O Slusarski
Smith E Slusarski
Ivar O Ferencz
Ivar U Nestle
Maisha G Caudy
Misaki M Wieser
Costa Y Flosi
Clifford D Malet
Jeanfrancois Q Perin
Mujtaba Q Figeroa
Faith W Vocelka
Ricardo W Whobrey
James Y Slusarski
Kaitlin S Kusko
Stacey V Gaucho
Morrow T Rulapaugh
Aditya J Figeroa
David B Tollner
Leja X Ostrosky
Maisha M Glick
Sinclair E Campain
Costa B Whobrey
David Q Slusarski
Alejandro H Oldroyd
Johnson M Morasca
Maria P Morasca
Alejandro D Slusarski
Darci K Gaucho
Antonio Z Gillian
IdCountryDate
1000Japan2026-06-13
1001Australia2026-06-05
1002France2026-05-31
1003Russia2026-06-11
1004Argentina2026-06-17
1005Brazil2026-06-02
1006India2026-06-09
1007United Kingdom2026-06-04
1008Brazil2026-06-20
1009India2026-06-05
1010Brazil2026-06-08
1011Germany2026-06-18
1012United Kingdom2026-06-03
1013Canada2026-06-08
1014France2026-06-18
1015Brazil2026-06-02
1016Canada2026-06-02
1017Russia2026-06-13
1018Argentina2026-06-05
1019Russia2026-06-02
1020Italy2026-06-18
1021Australia2026-06-18
1022Japan2026-05-29
1023India2026-06-07
1024Brazil2026-06-22
1025Italy2026-06-19
1026Japan2026-06-24
1027Brazil2026-06-16
1028United Kingdom2026-05-31
1029Spain2026-06-07
1030Germany2026-06-03
1031Italy2026-06-19
1032Germany2026-06-15
1033Germany2026-06-12
1034France2026-06-08
1035Germany2026-06-21
1036Australia2026-06-07
1037Italy2026-06-23
1038Brazil2026-06-16
1039Germany2026-06-05
1040Canada2026-06-24
1041France2026-06-23
1042Germany2026-06-25
1043Argentina2026-06-12
1044India2026-06-25
1045Russia2026-06-03
1046United Kingdom2026-06-08
1047India2026-06-04
1048Canada2026-05-28
1049Italy2026-06-10

On-Demand Data

NameIdCountryDate
Johnson Q Glick1000Germany2026-06-13
Adams U Flosi1001India2026-06-03
Emily R Briddick1002Brazil2026-06-12
Maisha V Briddick1003France2026-05-27
Aditya D Waycott1004India2026-06-13
Juan A Morasca1005Germany2026-06-12
Isabel Y Flosi1006Argentina2026-06-12
Mujtaba X Ferencz1007Canada2026-06-01
Aika D Bowley1008Argentina2026-06-22
David E Saylors1009India2026-06-02
Salvatore K Saylors1010Spain2026-06-01
Ricardo F Saylors1011Brazil2026-06-01
Arvin E Campain1012Argentina2026-06-06
Octavia Q Dilliard1013India2026-06-13
Costa V Darakjy1014Japan2026-06-18
Morrow L Vocelka1015Russia2026-06-25
Francesco T Dilliard1016United Kingdom2026-06-22
Isabel G Inouye1017Canada2026-06-16
David S Tollner1018United Kingdom2026-05-30
Murillo X Nestle1019Japan2026-06-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel H GauchoCanadaAnna Fali NEGOTIATION
Leja W MacleadBrazilIoni Bowcher RENEWAL
Morrow K AmigonGermanyIvan Magalhaes NEGOTIATION
Morrow R KolmetzItalyAnna Fali NEW
Smith P GlickGermanyIoni Bowcher UNQUALIFIED
Arvin K StockhamJapanAmy Elsner RENEWAL
Maisha D WaycottItalyBernardo Dominic RENEWAL
Alejandro B MacleadBrazilIvan Magalhaes PROPOSAL
Kaitlin B NestleAustraliaOnyama Limba RENEWAL
Emily E IturbideItalyStephen Shaw RENEWAL
Mayumi J StensethItalyBernardo Dominic NEW
David N DarakjyArgentinaStephen Shaw NEW
Darci Y GillianGermanyXuxue Feng UNQUALIFIED
David K MacleadGermanyElwin Sharvill UNQUALIFIED
Silvio W MaletSpainAnna Fali RENEWAL
Juan S KuskoJapanBernardo Dominic NEW
Smith T DoeGermanyIvan Magalhaes QUALIFIED
Leon P RulapaughBrazilIvan Magalhaes RENEWAL
Jefferson Y CaudyItalyAsiya Javayant UNQUALIFIED
Mujtaba Q RimSpainAsiya Javayant NEGOTIATION
Aruna F ShinkoArgentinaXuxue Feng QUALIFIED
Maisha T AmigonJapanAnna Fali RENEWAL
Deepesh B AmigonRussiaAmy Elsner QUALIFIED
Tony Z MacleadCanadaIoni Bowcher NEW
Mujtaba G StensethItalyAmy Elsner RENEWAL
Mayumi Q SergiGermanyElwin Sharvill UNQUALIFIED
David J NestleFranceElwin Sharvill QUALIFIED
Rodrigues M WaycottUnited KingdomBernardo Dominic PROPOSAL
Izzy T FollerCanadaStephen Shaw UNQUALIFIED
Sinclair C SergiAustraliaAsiya Javayant UNQUALIFIED
Emily C KuskoGermanyOnyama Limba NEW
Stacey L PoquetteItalyAmy Elsner PROPOSAL
Ricardo C KuskoSpainXuxue Feng UNQUALIFIED
Greenwood W MaletAustraliaAmy Elsner QUALIFIED
Aditya O StockhamUnited KingdomStephen Shaw RENEWAL
Nicolas W SlusarskiCanadaAnna Fali RENEWAL
Chavez U TollnerSpainAnna Fali RENEWAL
Claire C WieserBrazilIoni Bowcher NEW
Tony Z InouyeSpainIvan Magalhaes NEW
Sinclair K GillianRussiaBernardo Dominic 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.