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
Jeanfrancois S TollnerUnited KingdomOnyama Limba NEGOTIATION
Johnson M VocelkaFranceStephen Shaw PROPOSAL
Faith M OstroskyRussiaStephen Shaw NEW
Darci Z FerenczBrazilOnyama Limba NEW
Wickens Z TollnerBrazilElwin Sharvill NEGOTIATION
Emily W MacleadRussiaStephen Shaw PROPOSAL
Francesco E SaylorsJapanElwin Sharvill NEGOTIATION
Rodrigues K BowleyBrazilAnna Fali PROPOSAL
Aruna W RimBrazilAsiya Javayant NEW
Maisha Z RoysterRussiaXuxue Feng UNQUALIFIED
Aditya C SchemmerAustraliaAsiya Javayant QUALIFIED
Misaki D RutaSpainElwin Sharvill NEW
Rodrigues I PerinIndiaAnna Fali NEGOTIATION
Adams E WaycottGermanyBernardo Dominic NEGOTIATION
Jennifer Z DilliardCanadaXuxue Feng QUALIFIED
Greenwood W OldroydUnited KingdomElwin Sharvill RENEWAL
Ashley X MarrierArgentinaAmy Elsner QUALIFIED
Antonio A GauchoJapanElwin Sharvill QUALIFIED
Kaitlin F StockhamAustraliaIoni Bowcher UNQUALIFIED
Maisha H TollnerSpainAsiya Javayant UNQUALIFIED
Mujtaba U ChuiAustraliaXuxue Feng RENEWAL
Stacey H RutaIndiaIvan Magalhaes NEW
Munro U IturbideJapanAsiya Javayant RENEWAL
Wickens I ChuiArgentinaAnna Fali PROPOSAL
Claire Y BriddickIndiaXuxue Feng NEGOTIATION
Silvio W StockhamIndiaAsiya Javayant QUALIFIED
Cody W ChuiIndiaElwin Sharvill QUALIFIED
Jennifer J DarakjyArgentinaAsiya Javayant QUALIFIED
Jefferson L MacleadRussiaBernardo Dominic NEGOTIATION
Chavez Q StensethFranceXuxue Feng NEW
Misaki P MorascaCanadaIoni Bowcher QUALIFIED
Munro U MacleadJapanBernardo Dominic RENEWAL
Maria P MarrierJapanElwin Sharvill RENEWAL
Mayumi C PaprockiRussiaIoni Bowcher RENEWAL
Aika N InouyeUnited KingdomIvan Magalhaes NEGOTIATION
Smith O AlbaresFranceIvan Magalhaes QUALIFIED
Mujtaba F BriddickArgentinaElwin Sharvill UNQUALIFIED
Antonio Q CampainUnited KingdomAnna Fali NEW
Tony D WaycottBrazilAsiya Javayant NEGOTIATION
Johnson N BologniaCanadaOnyama Limba RENEWAL
Izzy M GlickArgentinaAmy Elsner RENEWAL
Chavez A AlbaresCanadaAmy Elsner QUALIFIED
Rodrigues N GauchoItalyAnna Fali RENEWAL
Alejandro D CaudyUnited KingdomOnyama Limba QUALIFIED
Kadeem V KuskoBrazilBernardo Dominic NEW
Misaki O FlosiJapanAmy Elsner NEW
Salvatore Y KolmetzCanadaIoni Bowcher NEGOTIATION
Cody W OstroskyIndiaStephen Shaw PROPOSAL
Aika M FollerUnited KingdomAmy Elsner PROPOSAL
David R KuskoSpainAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Smith G FerenczIndiaIoni Bowcher NEGOTIATION
Munro C KuskoJapanIoni Bowcher RENEWAL
Salvatore Y StockhamBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois F FerenczAustraliaAnna Fali RENEWAL
Salvatore X MarrierGermanyXuxue Feng QUALIFIED
Mujtaba D AmigonJapanXuxue Feng PROPOSAL
Isabel U KolmetzItalyBernardo Dominic RENEWAL
Kaitlin Z ButtCanadaIoni Bowcher UNQUALIFIED
Murillo A VenereGermanyIvan Magalhaes NEGOTIATION
Izzy U PerinCanadaElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David R MorascaCanada2026-06-09Truhlar And Truhlar Attys NEGOTIATION83Xuxue Feng
1001Jones X StockhamJapan2026-05-26Chemel, James L Cpa PROPOSAL93Stephen Shaw
1002Silvio B ButtUnited Kingdom2026-05-28Benton, John B Jr PROPOSAL95Onyama Limba
1003Tony L CaldareraGermany2026-05-17Morlong Associates PROPOSAL15Anna Fali
1004Sinclair F DarakjyItaly2026-06-08King, Christopher A Esq NEGOTIATION99Asiya Javayant
1005Deepesh K PaprockiBrazil2026-05-16Truhlar And Truhlar Attys NEW73Ioni Bowcher
1006Munro X PaprockiCanada2026-06-14Feiner Bros NEW11Onyama Limba
1007Jennifer X FollerGermany2026-05-26Dorl, James J Esq UNQUALIFIED7Amy Elsner
1008Salvatore O BologniaFrance2026-05-17Printing Dimensions RENEWAL42Elwin Sharvill
1009Kaitlin R CampainUnited Kingdom2026-05-23Morlong Associates QUALIFIED56Ioni Bowcher
1010Mujtaba A AmigonArgentina2026-06-03King, Christopher A Esq NEW96Anna Fali
1011Smith K KuskoIndia2026-06-12Printing Dimensions PROPOSAL3Bernardo Dominic
1012Jefferson K GarufiFrance2026-05-20Truhlar And Truhlar Attys RENEWAL79Onyama Limba
1013Leja W PaprockiRussia2026-05-26Truhlar And Truhlar Attys NEW87Bernardo Dominic
1014James R SergiGermany2026-06-01Truhlar And Truhlar Attys QUALIFIED52Anna Fali
1015Maisha E MaletIndia2026-06-12Feltz Printing Service QUALIFIED45Xuxue Feng
1016Francesco S FerenczArgentina2026-05-22Buckley Miller Wright NEGOTIATION29Elwin Sharvill
1017Sinclair T MaletItaly2026-06-06Benton, John B Jr RENEWAL83Onyama Limba
1018Alejandro K FlosiIndia2026-05-24Chanay, Jeffrey A Esq NEW4Ioni Bowcher
1019Murillo X MaletUnited Kingdom2026-05-25Benton, John B Jr NEW81Elwin Sharvill
1020Julie I OldroydBrazil2026-06-04Chanay, Jeffrey A Esq UNQUALIFIED52Ioni Bowcher
1021Emily B IturbideArgentina2026-06-04Commercial Press PROPOSAL42Elwin Sharvill
1022Jones P SergiGermany2026-06-03Chemel, James L Cpa NEW40Ioni Bowcher
1023Jennifer B VenereBrazil2026-05-17Truhlar And Truhlar Attys UNQUALIFIED24Amy Elsner
1024Salvatore N IturbideArgentina2026-06-14Chemel, James L Cpa QUALIFIED39Xuxue Feng
1025Sinclair T AlbaresSpain2026-05-18Rangoni Of Florence RENEWAL92Ivan Magalhaes
1026Claire V DarakjyIndia2026-05-26Chanay, Jeffrey A Esq UNQUALIFIED24Ivan Magalhaes
1027Aika E StensethArgentina2026-05-22Rousseaux, Michael Esq PROPOSAL36Amy Elsner
1028Adams P FlosiGermany2026-05-25Rangoni Of Florence RENEWAL64Stephen Shaw
1029Jennifer Z SchemmerSpain2026-05-30Commercial Press NEGOTIATION4Onyama Limba
1030Silvio D RulapaughFrance2026-05-19Benton, John B Jr UNQUALIFIED46Elwin Sharvill
1031Aditya T CaldareraArgentina2026-06-13Printing Dimensions PROPOSAL74Asiya Javayant
1032Stacey V MorascaItaly2026-05-18Truhlar And Truhlar Attys NEGOTIATION49Bernardo Dominic
1033Emily C DarakjyUnited Kingdom2026-06-11Buckley Miller Wright NEGOTIATION21Anna Fali
1034Smith U WaycottFrance2026-06-05Rousseaux, Michael Esq NEGOTIATION33Xuxue Feng
1035Jennifer D DilliardItaly2026-05-18Rousseaux, Michael Esq PROPOSAL83Onyama Limba
1036Maisha S RoysterJapan2026-06-07Dorl, James J Esq UNQUALIFIED91Anna Fali
1037Murillo A CaudyAustralia2026-05-17Buckley Miller Wright NEW11Stephen Shaw
1038Darci Q StensethRussia2026-06-06Benton, John B Jr NEW59Xuxue Feng
1039Greenwood Q CaudyCanada2026-05-18Truhlar And Truhlar Attys NEW24Anna Fali
1040Cody L FerenczGermany2026-05-31Feiner Bros QUALIFIED57Ioni Bowcher
1041Munro M CaudyIndia2026-05-28Chanay, Jeffrey A Esq NEGOTIATION78Ivan Magalhaes
1042James I FlosiItaly2026-06-04Dorl, James J Esq NEGOTIATION95Anna Fali
1043Mujtaba R FlosiFrance2026-06-04Rangoni Of Florence UNQUALIFIED68Xuxue Feng
1044Jefferson O WieserArgentina2026-05-26King, Christopher A Esq PROPOSAL38Elwin Sharvill
1045Alejandro Y PerinSpain2026-05-26Commercial Press UNQUALIFIED64Onyama Limba
1046Kaitlin E NickaSpain2026-05-25Chapman, Ross E Esq QUALIFIED8Ivan Magalhaes
1047Mayumi I BowleyJapan2026-05-30Printing Dimensions UNQUALIFIED94Onyama Limba
1048Wickens C ButtUnited Kingdom2026-05-21Rousseaux, Michael Esq UNQUALIFIED95Onyama Limba
1049Izzy T TollnerArgentina2026-06-11Buckley Miller Wright QUALIFIED9Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba J GarufiArgentinaOnyama Limba NEGOTIATION
Adams D GlickJapanAnna Fali QUALIFIED
Leon P RimUnited KingdomAnna Fali UNQUALIFIED
Ashley A CaudyIndiaStephen Shaw NEGOTIATION
Darci J RoysterSpainAsiya Javayant NEW
Ivar A GarufiAustraliaStephen Shaw NEGOTIATION
Izzy Z OstroskyRussiaOnyama Limba QUALIFIED
Sinclair W MorascaItalyIoni Bowcher NEW
Silvio I DilliardArgentinaAmy Elsner QUALIFIED
Morrow Z PerinFranceAnna Fali PROPOSAL
Jeanfrancois S AmigonGermanyAnna Fali NEW
Jones N GlickItalyOnyama Limba NEW
Costa R WhobreyBrazilIoni Bowcher PROPOSAL
Arvin Y StensethGermanyXuxue Feng UNQUALIFIED
Aditya M KolmetzCanadaXuxue Feng QUALIFIED
Misaki B ChuiIndiaBernardo Dominic NEW
Ivar A OldroydGermanyIoni Bowcher RENEWAL
Rodrigues T FigeroaUnited KingdomStephen Shaw UNQUALIFIED
Arvin K RulapaughBrazilAsiya Javayant UNQUALIFIED
Greenwood S InouyeGermanyIvan Magalhaes QUALIFIED
Sinclair G SaylorsFranceIvan Magalhaes NEGOTIATION
Julie H WhobreyCanadaIvan Magalhaes PROPOSAL
Faith P MarrierFranceIoni Bowcher UNQUALIFIED
Ricardo L TollnerIndiaXuxue Feng NEGOTIATION
Ivar G VocelkaUnited KingdomIvan Magalhaes QUALIFIED
Wickens B StensethCanadaAsiya Javayant QUALIFIED
Johnson D WhobreyItalyAsiya Javayant PROPOSAL
Misaki J GillianAustraliaStephen Shaw QUALIFIED
Rodrigues Z WieserBrazilXuxue Feng QUALIFIED
Greenwood J DilliardCanadaOnyama Limba PROPOSAL
Aruna L SergiIndiaStephen Shaw UNQUALIFIED
Morrow A ShinkoJapanElwin Sharvill RENEWAL
Jefferson Q OldroydFranceStephen Shaw RENEWAL
Jeanfrancois Q SchemmerRussiaAmy Elsner RENEWAL
Silvio T AlbaresIndiaStephen Shaw PROPOSAL
Greenwood N SergiSpainBernardo Dominic PROPOSAL
Juan J BologniaUnited KingdomXuxue Feng NEGOTIATION
Aditya H MorascaJapanAmy Elsner RENEWAL
Izzy E CampainRussiaXuxue Feng UNQUALIFIED
Octavia F MarrierArgentinaIvan Magalhaes NEW
Juan G InouyeArgentinaXuxue Feng PROPOSAL
Darci Y GillianAustraliaBernardo Dominic RENEWAL
Chavez V BowleyFranceOnyama Limba RENEWAL
Stacey V IturbideSpainElwin Sharvill QUALIFIED
Faith P StockhamIndiaAnna Fali PROPOSAL
Alejandro T ShinkoSpainAnna Fali RENEWAL
Costa V NickaFranceAmy Elsner RENEWAL
Stacey S ChuiGermanyIvan Magalhaes UNQUALIFIED
Ricardo J DarakjyFranceIoni Bowcher QUALIFIED
Kaitlin S WaycottCanadaAnna Fali NEW
Frozen Columns
Name
Francesco K Kolmetz
Deepesh H Briddick
Adams S Tollner
Misaki W Chui
Jefferson A Gillian
Francesco G Kolmetz
Juan F Ferencz
Wickens U Saylors
Faith N Iturbide
Kadeem E Waycott
Octavia I Venere
Clifford M Perin
Julie U Chui
Greenwood K Nestle
Jennifer F Darakjy
Alejandro H Shinko
Silvio T Stenseth
Smith Z Ruta
Munro D Briddick
Julie L Ferencz
Johnson R Stockham
Jennifer P Kusko
Misaki L Iturbide
Murillo I Shinko
Salvatore K Caudy
Ivar J Campain
Jones F Whobrey
James K Saylors
Leon E Poquette
Smith B Ostrosky
Francesco J Bolognia
Sinclair L Garufi
James G Butt
Emily D Inouye
Stacey D Flosi
Emily O Perin
Ricardo F Inouye
Francesco L Gillian
David F Perin
Sinclair K Malet
Stacey Z Gillian
Ivar V Foller
Johnson J Caudy
Jennifer N Perin
Jones T Morasca
Johnson M Perin
Leja V Garufi
James P Morasca
Jennifer M Rulapaugh
Johnson Z Figeroa
IdCountryDate
1000France2026-06-11
1001Argentina2026-06-03
1002Canada2026-06-09
1003Russia2026-06-11
1004United Kingdom2026-06-02
1005United Kingdom2026-06-10
1006Japan2026-06-10
1007Germany2026-06-08
1008Japan2026-06-07
1009Argentina2026-05-22
1010Italy2026-05-30
1011Brazil2026-06-05
1012Germany2026-05-31
1013Spain2026-05-17
1014Russia2026-06-13
1015Germany2026-06-09
1016United Kingdom2026-05-17
1017United Kingdom2026-05-17
1018Italy2026-06-13
1019India2026-06-01
1020India2026-05-29
1021Canada2026-06-05
1022France2026-06-01
1023Germany2026-06-09
1024Spain2026-06-06
1025India2026-05-28
1026France2026-05-16
1027India2026-06-02
1028Brazil2026-06-03
1029Brazil2026-06-04
1030Italy2026-05-29
1031Spain2026-05-19
1032Russia2026-06-05
1033Russia2026-06-08
1034France2026-06-11
1035Japan2026-05-30
1036Australia2026-05-20
1037Brazil2026-05-20
1038Spain2026-05-24
1039Canada2026-06-11
1040Spain2026-05-18
1041Australia2026-05-28
1042Spain2026-06-05
1043Italy2026-06-09
1044Germany2026-05-19
1045United Kingdom2026-06-09
1046India2026-05-28
1047Italy2026-06-02
1048Japan2026-05-22
1049Germany2026-05-17

On-Demand Data

NameIdCountryDate
Octavia N Caldarera1000United Kingdom2026-05-20
David K Stenseth1001Italy2026-06-05
Jefferson P Marrier1002Italy2026-06-03
Silvio R Rim1003Spain2026-06-06
Jennifer Q Rim1004France2026-05-21
Faith Q Venere1005United Kingdom2026-05-16
Wickens Q Albares1006Australia2026-05-18
Morrow J Caldarera1007Argentina2026-05-21
Jefferson A Rulapaugh1008United Kingdom2026-05-23
James A Figeroa1009India2026-05-16
Kaitlin W Morasca1010Argentina2026-05-26
Smith W Ostrosky1011Canada2026-05-20
Francesco J Royster1012Brazil2026-05-20
Claire H Rulapaugh1013Japan2026-06-03
Julie X Inouye1014Canada2026-06-13
Tony H Perin1015Russia2026-06-09
Antonio I Waycott1016France2026-05-24
Jennifer M Whobrey1017United Kingdom2026-06-01
Aditya B Marrier1018Spain2026-05-20
Rodrigues C Dilliard1019France2026-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel K PoquetteFranceXuxue Feng NEGOTIATION
Izzy V KolmetzItalyAnna Fali RENEWAL
Adams K WhobreyArgentinaAmy Elsner UNQUALIFIED
Ricardo E KolmetzUnited KingdomAnna Fali UNQUALIFIED
David Z RutaBrazilIoni Bowcher PROPOSAL
Jennifer T TollnerIndiaIvan Magalhaes RENEWAL
Leon L VenereBrazilIvan Magalhaes QUALIFIED
Izzy Y ShinkoCanadaAnna Fali NEW
Murillo V GlickJapanIvan Magalhaes PROPOSAL
Leja R VenereGermanyBernardo Dominic NEGOTIATION
Adams P PerinUnited KingdomOnyama Limba NEGOTIATION
Salvatore L RimIndiaAmy Elsner RENEWAL
Smith T BologniaIndiaXuxue Feng NEW
Greenwood G FigeroaIndiaStephen Shaw QUALIFIED
James T WaycottItalyOnyama Limba NEW
Rodrigues J VocelkaFranceAmy Elsner NEW
Antonio O GauchoBrazilStephen Shaw RENEWAL
Aditya M KuskoItalyXuxue Feng RENEWAL
Claire R FlosiCanadaIoni Bowcher RENEWAL
Jennifer X KolmetzGermanyIoni Bowcher NEW
Jennifer Y VenereArgentinaBernardo Dominic PROPOSAL
Costa I WaycottBrazilXuxue Feng UNQUALIFIED
Juan O WaycottIndiaIvan Magalhaes UNQUALIFIED
Maisha O RulapaughRussiaAnna Fali NEW
Mujtaba C ShinkoGermanyIoni Bowcher UNQUALIFIED
Costa B WhobreyCanadaOnyama Limba NEW
Silvio Q FollerFranceAmy Elsner PROPOSAL
Adams C InouyeGermanyOnyama Limba QUALIFIED
Stacey C SlusarskiAustraliaBernardo Dominic RENEWAL
Munro Y WhobreyIndiaAmy Elsner UNQUALIFIED
Leon D ButtIndiaIoni Bowcher NEW
Antonio H RutaAustraliaBernardo Dominic NEGOTIATION
James M ShinkoUnited KingdomStephen Shaw RENEWAL
Juan H MaletItalyAsiya Javayant NEGOTIATION
Juan F InouyeFranceOnyama Limba NEGOTIATION
Juan W SchemmerItalyAnna Fali NEW
Wickens U InouyeSpainAmy Elsner NEW
Arvin D FlosiRussiaElwin Sharvill NEW
Chavez V FlosiRussiaXuxue Feng QUALIFIED
Adams H KuskoRussiaIvan Magalhaes QUALIFIED

<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.