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
Arvin J KolmetzJapanAsiya Javayant NEGOTIATION
Aruna C WhobreyBrazilElwin Sharvill RENEWAL
Morrow Y CaudySpainXuxue Feng QUALIFIED
Misaki F NestleCanadaAmy Elsner RENEWAL
Francesco R SlusarskiUnited KingdomBernardo Dominic NEW
Greenwood O RutaBrazilAnna Fali RENEWAL
Leon P StockhamCanadaAnna Fali PROPOSAL
Smith F VocelkaGermanyBernardo Dominic UNQUALIFIED
Ashley M MacleadUnited KingdomBernardo Dominic NEGOTIATION
Kadeem Y RulapaughRussiaStephen Shaw QUALIFIED
Jefferson K StockhamCanadaStephen Shaw RENEWAL
Salvatore J GarufiCanadaXuxue Feng NEW
Nicolas S FerenczIndiaIvan Magalhaes UNQUALIFIED
Aditya W ShinkoRussiaAsiya Javayant NEGOTIATION
Ashley R SlusarskiBrazilAsiya Javayant NEW
Juan H PoquetteItalyBernardo Dominic RENEWAL
Murillo A ShinkoFranceOnyama Limba PROPOSAL
Mujtaba E GillianAustraliaOnyama Limba NEW
Isabel B WieserFranceXuxue Feng NEW
Munro Z StockhamItalyStephen Shaw RENEWAL
Izzy X DoeItalyIoni Bowcher QUALIFIED
Ricardo C MaletAustraliaAmy Elsner QUALIFIED
Adams I MaletSpainIoni Bowcher RENEWAL
Ashley W AmigonArgentinaAsiya Javayant QUALIFIED
Maria Y ShinkoItalyElwin Sharvill NEGOTIATION
Kaitlin A VocelkaItalyIoni Bowcher RENEWAL
Arvin V AmigonFranceOnyama Limba NEW
Johnson K BriddickGermanyOnyama Limba QUALIFIED
Jefferson R WhobreyCanadaBernardo Dominic UNQUALIFIED
Stacey B DilliardJapanStephen Shaw QUALIFIED
Ricardo S WhobreyGermanyAsiya Javayant PROPOSAL
Kadeem Z AlbaresIndiaBernardo Dominic QUALIFIED
Maria R PerinAustraliaAnna Fali PROPOSAL
Octavia I SaylorsAustraliaBernardo Dominic RENEWAL
Wickens Z ButtItalyIoni Bowcher QUALIFIED
Johnson G StockhamAustraliaAsiya Javayant NEGOTIATION
Deepesh C PerinCanadaXuxue Feng PROPOSAL
Isabel Z SlusarskiArgentinaStephen Shaw PROPOSAL
Nicolas T ButtBrazilAnna Fali PROPOSAL
Emily M WhobreySpainOnyama Limba NEW
Johnson X CaudyItalyXuxue Feng PROPOSAL
Silvio O TollnerSpainElwin Sharvill NEW
Murillo L ChuiSpainAsiya Javayant NEW
Stacey V AlbaresUnited KingdomXuxue Feng RENEWAL
Johnson P MorascaArgentinaElwin Sharvill RENEWAL
David U DoeBrazilAsiya Javayant RENEWAL
Greenwood K BriddickJapanIoni Bowcher NEW
Smith C AmigonBrazilOnyama Limba UNQUALIFIED
Rodrigues Z BriddickItalyAmy Elsner NEGOTIATION
James C SergiBrazilIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Murillo H TollnerCanadaOnyama Limba PROPOSAL
Alejandro Z BowleyAustraliaAmy Elsner NEW
Adams M MaletGermanyAmy Elsner RENEWAL
Emily C MaletFranceAsiya Javayant RENEWAL
Jeanfrancois A CampainGermanyAnna Fali QUALIFIED
Jeanfrancois O PaprockiItalyOnyama Limba UNQUALIFIED
Alejandro C SergiUnited KingdomAnna Fali NEW
Isabel Z DilliardJapanBernardo Dominic PROPOSAL
Chavez L WieserRussiaAmy Elsner UNQUALIFIED
Faith Z GarufiRussiaAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair Z RulapaughJapan2026-06-01Commercial Press PROPOSAL12Amy Elsner
1001Darci S StockhamBrazil2026-06-10Feiner Bros RENEWAL5Amy Elsner
1002Izzy H VenereGermany2026-06-19Benton, John B Jr PROPOSAL59Amy Elsner
1003Costa Q WaycottUnited Kingdom2026-06-19Feiner Bros PROPOSAL22Anna Fali
1004Sinclair M KolmetzFrance2026-06-07Chanay, Jeffrey A Esq UNQUALIFIED93Bernardo Dominic
1005Octavia H MaletIndia2026-06-17Dorl, James J Esq PROPOSAL72Xuxue Feng
1006Adams E StensethItaly2026-06-05Printing Dimensions UNQUALIFIED79Anna Fali
1007Cody C RimJapan2026-06-07Chanay, Jeffrey A Esq PROPOSAL47Amy Elsner
1008Adams C MaletUnited Kingdom2026-06-11Chemel, James L Cpa NEGOTIATION34Anna Fali
1009Claire M CampainCanada2026-05-25Buckley Miller Wright QUALIFIED78Amy Elsner
1010Francesco K InouyeArgentina2026-05-29Dorl, James J Esq UNQUALIFIED70Ioni Bowcher
1011Maisha B FlosiGermany2026-06-02King, Christopher A Esq RENEWAL99Onyama Limba
1012Costa F FollerJapan2026-06-05Morlong Associates RENEWAL20Anna Fali
1013Jennifer Y ChuiGermany2026-05-27Feltz Printing Service UNQUALIFIED84Ioni Bowcher
1014Julie H RimUnited Kingdom2026-06-16Buckley Miller Wright NEW28Stephen Shaw
1015Emily W IturbideRussia2026-05-24Chemel, James L Cpa NEW31Amy Elsner
1016Jones H MaletFrance2026-05-24Chemel, James L Cpa PROPOSAL0Onyama Limba
1017Jefferson G WhobreyItaly2026-06-08Rangoni Of Florence QUALIFIED44Stephen Shaw
1018Isabel Y MaletIndia2026-06-04Rangoni Of Florence UNQUALIFIED56Amy Elsner
1019Maisha W BriddickSpain2026-05-27Benton, John B Jr PROPOSAL12Stephen Shaw
1020Isabel X OldroydRussia2026-06-05Rangoni Of Florence RENEWAL36Anna Fali
1021James Q MarrierIndia2026-05-30Rangoni Of Florence QUALIFIED59Ioni Bowcher
1022Clifford Z VenereGermany2026-06-15Chemel, James L Cpa NEW74Elwin Sharvill
1023Stacey B SlusarskiIndia2026-06-18Benton, John B Jr QUALIFIED84Ivan Magalhaes
1024Octavia D DarakjyCanada2026-05-27Printing Dimensions NEGOTIATION8Ioni Bowcher
1025Smith K MorascaJapan2026-06-04Rangoni Of Florence UNQUALIFIED78Asiya Javayant
1026Jefferson U StockhamRussia2026-06-17Chemel, James L Cpa PROPOSAL54Ivan Magalhaes
1027Ivar Y KolmetzBrazil2026-06-01Rangoni Of Florence RENEWAL57Ioni Bowcher
1028Nicolas V FlosiItaly2026-06-02Chemel, James L Cpa PROPOSAL30Elwin Sharvill
1029Cody T RimUnited Kingdom2026-06-16Feiner Bros QUALIFIED65Ivan Magalhaes
1030Jennifer P PaprockiGermany2026-05-30Feiner Bros PROPOSAL91Onyama Limba
1031Costa M RoysterRussia2026-05-27Dorl, James J Esq QUALIFIED59Ioni Bowcher
1032Clifford U BriddickJapan2026-05-28Benton, John B Jr UNQUALIFIED16Ivan Magalhaes
1033Nicolas J GauchoSpain2026-05-29Morlong Associates RENEWAL22Xuxue Feng
1034Ricardo G TollnerGermany2026-06-05Feiner Bros QUALIFIED70Asiya Javayant
1035Aruna A PoquetteGermany2026-06-13Morlong Associates NEW12Onyama Limba
1036Wickens Q VocelkaBrazil2026-06-20Chemel, James L Cpa NEGOTIATION27Elwin Sharvill
1037Tony A DarakjySpain2026-05-26Rousseaux, Michael Esq NEW70Ivan Magalhaes
1038Adams H RimJapan2026-06-08Chemel, James L Cpa PROPOSAL64Anna Fali
1039Smith E ChuiIndia2026-06-11Rangoni Of Florence QUALIFIED65Asiya Javayant
1040Octavia B ChuiAustralia2026-05-23Printing Dimensions NEW66Ioni Bowcher
1041Johnson C DilliardAustralia2026-06-10Buckley Miller Wright RENEWAL33Xuxue Feng
1042Stacey O MaletGermany2026-05-28Chemel, James L Cpa NEGOTIATION13Ioni Bowcher
1043Mujtaba C ShinkoGermany2026-06-18Morlong Associates PROPOSAL31Bernardo Dominic
1044Stacey U PoquetteSpain2026-06-09Rousseaux, Michael Esq NEGOTIATION92Anna Fali
1045Misaki N PerinRussia2026-06-01Dorl, James J Esq NEGOTIATION30Ioni Bowcher
1046Sinclair W ButtItaly2026-05-27Commercial Press RENEWAL25Bernardo Dominic
1047Francesco E RoysterAustralia2026-05-31Chemel, James L Cpa NEGOTIATION55Ioni Bowcher
1048Faith I WaycottItaly2026-06-07Printing Dimensions UNQUALIFIED80Onyama Limba
1049Adams N StensethAustralia2026-06-04Commercial Press PROPOSAL32Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Juan P BologniaFranceAsiya Javayant NEGOTIATION
Aditya G PoquetteIndiaIvan Magalhaes PROPOSAL
Clifford L MaletUnited KingdomOnyama Limba RENEWAL
Emily J GillianFranceOnyama Limba RENEWAL
Emily G BologniaSpainAnna Fali NEGOTIATION
Claire Q SaylorsGermanyOnyama Limba NEW
David L OstroskyJapanStephen Shaw NEGOTIATION
Claire E VocelkaGermanyXuxue Feng NEGOTIATION
Emily E InouyeRussiaOnyama Limba NEW
Izzy L FerenczSpainXuxue Feng UNQUALIFIED
James B CampainJapanIvan Magalhaes QUALIFIED
Tony Q FlosiIndiaStephen Shaw NEGOTIATION
Emily X BriddickCanadaOnyama Limba QUALIFIED
Ricardo V SchemmerItalyBernardo Dominic NEGOTIATION
Izzy G PoquetteSpainStephen Shaw NEGOTIATION
Clifford Y SergiUnited KingdomAnna Fali RENEWAL
Aditya N MacleadBrazilAnna Fali UNQUALIFIED
Jennifer F MaletItalyStephen Shaw QUALIFIED
Silvio H MorascaArgentinaXuxue Feng UNQUALIFIED
Silvio A BowleyItalyElwin Sharvill UNQUALIFIED
Mayumi L GlickBrazilBernardo Dominic QUALIFIED
Smith S DarakjyJapanOnyama Limba UNQUALIFIED
Maisha U MaletSpainAnna Fali RENEWAL
Jeanfrancois F SchemmerJapanStephen Shaw UNQUALIFIED
Deepesh Q WhobreyArgentinaBernardo Dominic UNQUALIFIED
Maria C InouyeJapanAsiya Javayant QUALIFIED
Morrow F MorascaUnited KingdomBernardo Dominic NEW
Francesco D MaletJapanBernardo Dominic UNQUALIFIED
Silvio L WieserItalyAnna Fali UNQUALIFIED
Francesco Q WaycottJapanOnyama Limba QUALIFIED
David G PaprockiRussiaAnna Fali RENEWAL
Jones G AlbaresArgentinaStephen Shaw UNQUALIFIED
Smith W ShinkoRussiaElwin Sharvill RENEWAL
Ashley D BriddickCanadaAmy Elsner PROPOSAL
Murillo A MacleadAustraliaAmy Elsner NEW
Izzy Q GarufiAustraliaXuxue Feng NEGOTIATION
Greenwood B MaletBrazilAmy Elsner PROPOSAL
Mayumi W FerenczSpainAnna Fali NEW
Julie Z BologniaAustraliaIvan Magalhaes UNQUALIFIED
Kaitlin D VocelkaJapanBernardo Dominic RENEWAL
Antonio Q FerenczRussiaIvan Magalhaes UNQUALIFIED
Maria J RoysterBrazilAsiya Javayant NEW
Darci J CaudyIndiaAsiya Javayant RENEWAL
Tony S ChuiJapanAmy Elsner UNQUALIFIED
Leon L StockhamCanadaIvan Magalhaes UNQUALIFIED
Greenwood R GauchoItalyStephen Shaw NEW
Clifford V TollnerGermanyBernardo Dominic NEGOTIATION
Johnson P RutaGermanyAmy Elsner NEW
Clifford W MorascaIndiaOnyama Limba QUALIFIED
David V SlusarskiUnited KingdomAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Johnson L Ostrosky
Ricardo G Ferencz
Murillo J Doe
Izzy A Tollner
Rodrigues N Caldarera
Munro H Gillian
Darci K Caldarera
Isabel D Stenseth
Deepesh Q Marrier
Antonio H Shinko
Isabel V Slusarski
Stacey U Malet
Mayumi X Poquette
Smith G Malet
Smith A Rulapaugh
Antonio N Bowley
Misaki S Glick
Clifford K Dilliard
Sinclair X Flosi
Maisha I Ruta
Arvin H Maclead
Clifford U Bowley
Ivar A Marrier
Arvin X Poquette
Jennifer C Glick
Chavez D Flosi
Ricardo Z Malet
Johnson P Foller
Cody Q Whobrey
Munro C Stockham
Jones K Figeroa
Ivar Y Morasca
Johnson U Gaucho
Izzy Y Inouye
Kaitlin A Tollner
Munro H Bowley
Juan W Dilliard
Mayumi Z Saylors
Leon O Perin
Leja G Shinko
Claire P Royster
Emily E Ruta
Adams D Stenseth
Kaitlin J Stenseth
Ashley I Gillian
Aditya S Figeroa
Isabel R Waycott
Emily N Caldarera
Salvatore J Gillian
Murillo L Maclead
IdCountryDate
1000India2026-05-26
1001Brazil2026-06-18
1002Brazil2026-05-22
1003Argentina2026-06-04
1004Russia2026-05-26
1005Japan2026-05-27
1006France2026-06-12
1007Russia2026-06-13
1008France2026-06-13
1009Australia2026-05-28
1010United Kingdom2026-05-26
1011France2026-05-23
1012Brazil2026-06-18
1013United Kingdom2026-06-15
1014India2026-06-20
1015Argentina2026-06-04
1016France2026-06-14
1017Canada2026-05-29
1018Spain2026-05-25
1019United Kingdom2026-06-18
1020Canada2026-05-30
1021Australia2026-05-29
1022Argentina2026-06-13
1023Canada2026-06-17
1024Australia2026-06-09
1025India2026-06-07
1026Germany2026-06-01
1027Canada2026-06-04
1028Italy2026-06-08
1029Australia2026-06-11
1030Spain2026-05-27
1031France2026-06-19
1032Japan2026-06-08
1033United Kingdom2026-06-10
1034Brazil2026-05-24
1035Australia2026-05-28
1036Canada2026-06-11
1037Canada2026-06-17
1038Argentina2026-05-29
1039France2026-06-13
1040France2026-06-16
1041India2026-06-19
1042Brazil2026-06-07
1043Spain2026-05-27
1044Russia2026-06-13
1045Australia2026-06-15
1046Japan2026-05-28
1047Argentina2026-05-22
1048Russia2026-05-25
1049France2026-05-25

On-Demand Data

NameIdCountryDate
Aruna T Tollner1000United Kingdom2026-05-27
Smith K Saylors1001Germany2026-06-01
David Q Malet1002Australia2026-06-10
Kadeem I Flosi1003France2026-05-31
Maisha E Dilliard1004India2026-05-27
Johnson L Iturbide1005Italy2026-06-01
James C Inouye1006United Kingdom2026-06-10
Antonio Q Butt1007India2026-06-05
Rodrigues U Waycott1008Japan2026-06-08
Murillo N Caldarera1009Russia2026-05-29
Nicolas S Iturbide1010India2026-06-10
Greenwood N Caudy1011India2026-06-12
Faith Z Venere1012Germany2026-05-30
Johnson Q Briddick1013Japan2026-05-25
Jones P Foller1014Australia2026-05-26
Tony Z Rulapaugh1015Australia2026-06-14
Deepesh V Flosi1016Canada2026-06-03
Misaki E Caudy1017Spain2026-05-25
Morrow W Gaucho1018India2026-06-17
Mujtaba O Bolognia1019Japan2026-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon B FerenczAustraliaBernardo Dominic QUALIFIED
Darci R CaldareraSpainAmy Elsner UNQUALIFIED
Deepesh B FigeroaIndiaElwin Sharvill NEGOTIATION
Murillo L DilliardFranceIvan Magalhaes PROPOSAL
David O OldroydSpainIoni Bowcher UNQUALIFIED
Juan B ChuiItalyIoni Bowcher PROPOSAL
Mujtaba S FollerAustraliaAmy Elsner UNQUALIFIED
Deepesh V ShinkoBrazilXuxue Feng RENEWAL
Clifford F DarakjyFranceIvan Magalhaes NEGOTIATION
Emily E StockhamArgentinaBernardo Dominic NEGOTIATION
Sinclair A DoeJapanStephen Shaw NEW
Nicolas H WieserCanadaStephen Shaw NEGOTIATION
Ivar Y StensethFranceAnna Fali RENEWAL
Ashley G DarakjyArgentinaBernardo Dominic UNQUALIFIED
Aditya Z DoeGermanyElwin Sharvill RENEWAL
Deepesh I GillianSpainAnna Fali NEW
Octavia W BriddickRussiaStephen Shaw NEGOTIATION
James O FerenczGermanyIvan Magalhaes RENEWAL
Francesco F BologniaBrazilElwin Sharvill UNQUALIFIED
Kadeem N RoysterAustraliaElwin Sharvill RENEWAL
Aika A StensethUnited KingdomElwin Sharvill PROPOSAL
Jeanfrancois S MacleadFranceBernardo Dominic QUALIFIED
Salvatore N TollnerAustraliaAmy Elsner PROPOSAL
Isabel Z GillianUnited KingdomXuxue Feng PROPOSAL
Murillo L ButtGermanyBernardo Dominic NEGOTIATION
Smith B VocelkaAustraliaOnyama Limba UNQUALIFIED
Silvio A ButtGermanyStephen Shaw PROPOSAL
Adams H IturbideUnited KingdomXuxue Feng NEGOTIATION
Mayumi Q SergiRussiaStephen Shaw NEW
Deepesh L BriddickCanadaAnna Fali NEGOTIATION
Alejandro C PerinGermanyXuxue Feng NEW
Izzy Y FerenczArgentinaIvan Magalhaes RENEWAL
Antonio S MacleadAustraliaXuxue Feng NEW
Julie G FigeroaItalyIoni Bowcher NEW
Maisha B CaldareraGermanyStephen Shaw QUALIFIED
Izzy Z MarrierBrazilAsiya Javayant RENEWAL
Costa A CampainIndiaAnna Fali QUALIFIED
Aika U IturbideItalyAsiya Javayant NEGOTIATION
Ashley G IturbideItalyIvan Magalhaes NEW
Johnson U AlbaresJapanXuxue 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>

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.