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
Maria J GillianIndiaElwin Sharvill NEGOTIATION
Morrow R FollerBrazilAnna Fali NEW
Octavia N SchemmerCanadaAmy Elsner NEW
David G GillianGermanyAmy Elsner NEGOTIATION
Greenwood B PaprockiSpainIvan Magalhaes RENEWAL
Francesco C VocelkaAustraliaAnna Fali PROPOSAL
Rodrigues S MacleadUnited KingdomAmy Elsner RENEWAL
Morrow P FlosiBrazilElwin Sharvill UNQUALIFIED
Mujtaba V GillianFranceAmy Elsner UNQUALIFIED
Misaki O VocelkaRussiaBernardo Dominic NEW
Arvin X FerenczRussiaAnna Fali NEGOTIATION
Faith V SchemmerGermanyOnyama Limba QUALIFIED
Sinclair T ChuiIndiaOnyama Limba PROPOSAL
Isabel Q VenereUnited KingdomBernardo Dominic UNQUALIFIED
Munro N RoysterIndiaAnna Fali NEGOTIATION
Murillo U KolmetzBrazilIvan Magalhaes PROPOSAL
Leon U StensethArgentinaIvan Magalhaes PROPOSAL
Maisha U WaycottItalyStephen Shaw RENEWAL
Mujtaba H DarakjySpainIoni Bowcher NEGOTIATION
Alejandro Y FigeroaGermanyXuxue Feng QUALIFIED
Aika N CaudySpainElwin Sharvill UNQUALIFIED
Mayumi B StockhamAustraliaAnna Fali UNQUALIFIED
Morrow Y ShinkoAustraliaIoni Bowcher QUALIFIED
Misaki H MorascaJapanBernardo Dominic RENEWAL
Faith E MarrierUnited KingdomElwin Sharvill RENEWAL
Wickens O KuskoJapanIoni Bowcher RENEWAL
Adams G FigeroaJapanIvan Magalhaes QUALIFIED
Izzy K RoysterAustraliaBernardo Dominic NEGOTIATION
Clifford I StockhamJapanElwin Sharvill PROPOSAL
Izzy D PerinUnited KingdomBernardo Dominic NEW
Antonio L WaycottRussiaIvan Magalhaes NEW
Johnson Q MaletUnited KingdomElwin Sharvill QUALIFIED
Francesco B FerenczFranceXuxue Feng PROPOSAL
Izzy A FollerJapanBernardo Dominic UNQUALIFIED
Cody J NestleSpainXuxue Feng UNQUALIFIED
Claire R OldroydSpainStephen Shaw NEW
Cody I MaletItalyElwin Sharvill UNQUALIFIED
Isabel G TollnerCanadaStephen Shaw PROPOSAL
Morrow U ButtItalyIvan Magalhaes NEGOTIATION
Ashley Q TollnerBrazilAmy Elsner NEGOTIATION
Mujtaba N GauchoRussiaAsiya Javayant NEGOTIATION
Nicolas A PerinFranceBernardo Dominic PROPOSAL
Aruna W PerinJapanIvan Magalhaes NEW
Adams N PoquetteBrazilIvan Magalhaes QUALIFIED
James B StockhamArgentinaStephen Shaw RENEWAL
Tony T VocelkaUnited KingdomOnyama Limba NEGOTIATION
Aruna G SlusarskiRussiaAsiya Javayant NEW
Kadeem R ButtBrazilOnyama Limba NEW
Munro D RulapaughRussiaAmy Elsner PROPOSAL
Costa U PaprockiArgentinaOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Clifford E AmigonUnited KingdomIvan Magalhaes NEGOTIATION
James J CampainArgentinaAmy Elsner NEGOTIATION
Octavia O GillianRussiaXuxue Feng UNQUALIFIED
Johnson X WhobreyIndiaStephen Shaw UNQUALIFIED
Greenwood L KolmetzCanadaElwin Sharvill QUALIFIED
Izzy T SlusarskiJapanElwin Sharvill NEGOTIATION
Jeanfrancois Z RulapaughArgentinaXuxue Feng NEGOTIATION
Jennifer T BologniaJapanAnna Fali RENEWAL
Alejandro S MorascaCanadaAmy Elsner NEGOTIATION
Chavez L SchemmerGermanyElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer E SaylorsCanada2025-04-03Printing Dimensions NEW51Amy Elsner
1001Murillo I SchemmerAustralia2025-04-30Benton, John B Jr PROPOSAL49Anna Fali
1002Morrow C CaldareraRussia2025-04-26Feltz Printing Service RENEWAL60Bernardo Dominic
1003Chavez V FerenczArgentina2025-04-15Chemel, James L Cpa QUALIFIED32Ioni Bowcher
1004Tony Z WhobreyJapan2025-04-09Chemel, James L Cpa QUALIFIED31Elwin Sharvill
1005Morrow O WaycottIndia2025-04-15Rangoni Of Florence PROPOSAL20Ivan Magalhaes
1006Sinclair F VenereUnited Kingdom2025-04-06Feltz Printing Service PROPOSAL6Onyama Limba
1007Deepesh E CampainUnited Kingdom2025-04-22Printing Dimensions QUALIFIED14Ivan Magalhaes
1008Francesco W SaylorsBrazil2025-04-20King, Christopher A Esq QUALIFIED56Anna Fali
1009Kaitlin S NestleSpain2025-04-22Chanay, Jeffrey A Esq RENEWAL46Xuxue Feng
1010Greenwood W BologniaArgentina2025-04-17Morlong Associates UNQUALIFIED37Amy Elsner
1011Juan Z PerinBrazil2025-04-01Commercial Press QUALIFIED97Anna Fali
1012Morrow C BriddickCanada2025-04-08Dorl, James J Esq NEGOTIATION50Stephen Shaw
1013Salvatore V BowleyRussia2025-04-17Commercial Press NEW76Anna Fali
1014James W IturbideCanada2025-04-10Rangoni Of Florence NEW88Xuxue Feng
1015Jones N FlosiIndia2025-04-03Rangoni Of Florence PROPOSAL81Xuxue Feng
1016Munro H DarakjyUnited Kingdom2025-04-08Morlong Associates QUALIFIED75Stephen Shaw
1017Wickens X OldroydItaly2025-04-29Feiner Bros QUALIFIED79Asiya Javayant
1018Munro O RutaBrazil2025-04-06Rousseaux, Michael Esq NEW98Bernardo Dominic
1019Silvio F FerenczSpain2025-04-17King, Christopher A Esq UNQUALIFIED50Anna Fali
1020Johnson L ChuiFrance2025-04-27Buckley Miller Wright NEW28Amy Elsner
1021Francesco K PerinIndia2025-04-23Feltz Printing Service NEW48Stephen Shaw
1022Kaitlin H KuskoItaly2025-04-14Morlong Associates PROPOSAL98Asiya Javayant
1023Octavia D DarakjySpain2025-04-21Commercial Press NEGOTIATION20Ivan Magalhaes
1024Octavia I BologniaRussia2025-04-14Feiner Bros PROPOSAL22Ioni Bowcher
1025Mayumi R VenereArgentina2025-04-16Rangoni Of Florence QUALIFIED23Bernardo Dominic
1026Claire U PerinSpain2025-04-16Truhlar And Truhlar Attys NEGOTIATION7Asiya Javayant
1027Aika Y SergiArgentina2025-04-15Morlong Associates NEGOTIATION40Ioni Bowcher
1028Rodrigues V GauchoFrance2025-04-07Rangoni Of Florence NEW49Asiya Javayant
1029Faith E NickaBrazil2025-04-04Commercial Press PROPOSAL59Elwin Sharvill
1030Smith M PerinSpain2025-04-05Truhlar And Truhlar Attys UNQUALIFIED12Bernardo Dominic
1031Maisha O ChuiCanada2025-04-16Chemel, James L Cpa QUALIFIED3Ivan Magalhaes
1032Kadeem G InouyeGermany2025-04-20Buckley Miller Wright UNQUALIFIED16Elwin Sharvill
1033Alejandro P DilliardIndia2025-04-08Benton, John B Jr NEGOTIATION5Ivan Magalhaes
1034Arvin K MarrierRussia2025-04-18Truhlar And Truhlar Attys NEW73Ioni Bowcher
1035Maisha W RutaJapan2025-04-22Feiner Bros NEGOTIATION97Asiya Javayant
1036Deepesh U RoysterJapan2025-04-24Morlong Associates NEGOTIATION93Bernardo Dominic
1037Faith F BologniaCanada2025-04-02Dorl, James J Esq NEGOTIATION72Ioni Bowcher
1038Alejandro X WieserArgentina2025-04-13Truhlar And Truhlar Attys UNQUALIFIED52Anna Fali
1039Johnson J FerenczItaly2025-04-30Morlong Associates QUALIFIED2Bernardo Dominic
1040Nicolas I OstroskyCanada2025-04-30Rousseaux, Michael Esq NEW13Xuxue Feng
1041Leon N AlbaresCanada2025-04-15Feltz Printing Service RENEWAL70Onyama Limba
1042Francesco A VenereArgentina2025-04-05King, Christopher A Esq PROPOSAL24Ivan Magalhaes
1043Jeanfrancois B SaylorsGermany2025-04-08Feiner Bros RENEWAL18Amy Elsner
1044Smith N DilliardAustralia2025-04-20Rousseaux, Michael Esq PROPOSAL11Ivan Magalhaes
1045Maria L StensethCanada2025-04-08Chemel, James L Cpa NEGOTIATION36Amy Elsner
1046Kaitlin P WhobreyGermany2025-04-03Printing Dimensions NEGOTIATION40Onyama Limba
1047Leon I VenereArgentina2025-04-04Feltz Printing Service PROPOSAL88Amy Elsner
1048Maisha Z OstroskyArgentina2025-04-29Commercial Press PROPOSAL58Ioni Bowcher
1049Claire C PoquetteArgentina2025-04-07Chemel, James L Cpa QUALIFIED50Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Sinclair X RulapaughAustraliaIoni Bowcher NEW
Emily B PaprockiRussiaIoni Bowcher UNQUALIFIED
Kaitlin Z WhobreyItalyStephen Shaw RENEWAL
Clifford D RutaArgentinaXuxue Feng PROPOSAL
Claire E DarakjyAustraliaOnyama Limba NEGOTIATION
Darci R GlickFranceIvan Magalhaes RENEWAL
Salvatore S VenereFranceBernardo Dominic UNQUALIFIED
Salvatore B RoysterItalyElwin Sharvill NEGOTIATION
Maisha A RulapaughFranceBernardo Dominic NEGOTIATION
Izzy X GarufiRussiaStephen Shaw QUALIFIED
Nicolas G StensethGermanyXuxue Feng NEGOTIATION
Sinclair A CaldareraAustraliaAnna Fali PROPOSAL
Aruna G KuskoAustraliaOnyama Limba NEW
Jennifer U GarufiRussiaElwin Sharvill RENEWAL
Smith N NickaJapanStephen Shaw QUALIFIED
Isabel W FerenczArgentinaIvan Magalhaes NEW
Ashley K KuskoRussiaAnna Fali PROPOSAL
Murillo Q RoysterCanadaElwin Sharvill NEGOTIATION
Izzy F GlickJapanOnyama Limba RENEWAL
Clifford I FollerItalyIoni Bowcher QUALIFIED
Rodrigues L RimUnited KingdomXuxue Feng RENEWAL
Deepesh N RimArgentinaOnyama Limba UNQUALIFIED
Octavia M FollerBrazilStephen Shaw UNQUALIFIED
Emily J PoquetteRussiaAmy Elsner PROPOSAL
Nicolas P BriddickFranceOnyama Limba UNQUALIFIED
Deepesh U FerenczIndiaElwin Sharvill NEGOTIATION
Darci E WhobreyItalyAnna Fali QUALIFIED
Leja L VenereRussiaOnyama Limba RENEWAL
Mujtaba T TollnerFranceXuxue Feng UNQUALIFIED
Jefferson C DilliardSpainIoni Bowcher RENEWAL
Mujtaba S MacleadJapanOnyama Limba NEW
Murillo V MarrierIndiaStephen Shaw UNQUALIFIED
Alejandro Y RimGermanyXuxue Feng UNQUALIFIED
Sinclair G VocelkaAustraliaXuxue Feng NEGOTIATION
Octavia B SergiSpainAmy Elsner UNQUALIFIED
Tony F FollerFranceElwin Sharvill NEW
Maisha Z KuskoRussiaIoni Bowcher PROPOSAL
Darci S MarrierItalyIoni Bowcher QUALIFIED
Leja G InouyeBrazilIoni Bowcher PROPOSAL
Izzy E GauchoBrazilIoni Bowcher PROPOSAL
Misaki U MaletAustraliaIvan Magalhaes RENEWAL
Darci O GauchoGermanyElwin Sharvill NEW
James D WhobreyGermanyElwin Sharvill RENEWAL
Francesco V DoeUnited KingdomAnna Fali PROPOSAL
Mujtaba L CampainBrazilIvan Magalhaes RENEWAL
Jennifer O NickaJapanXuxue Feng PROPOSAL
Silvio F SergiItalyIoni Bowcher PROPOSAL
Darci F WaycottArgentinaAsiya Javayant NEW
Faith P FlosiAustraliaOnyama Limba UNQUALIFIED
Emily X GillianSpainAsiya Javayant QUALIFIED
Frozen Columns
Name
Cody M Oldroyd
Aruna W Nicka
Deepesh J Albares
Jeanfrancois C Poquette
Munro H Venere
Tony G Dilliard
Maria W Royster
Chavez X Marrier
Antonio K Caldarera
James B Maclead
Aika H Nestle
Claire E Stenseth
Jones O Darakjy
James B Vocelka
Emily L Stenseth
Antonio S Bowley
Stacey X Caldarera
Kaitlin U Bowley
Aruna D Rulapaugh
Tony Y Paprocki
Nicolas K Royster
Arvin I Caldarera
Jeanfrancois A Chui
Maria W Chui
Mujtaba Q Malet
Emily O Chui
Leon F Nestle
Wickens X Tollner
Kadeem E Doe
Deepesh S Garufi
Wickens F Bolognia
Murillo B Bowley
Isabel U Albares
James Q Royster
Aruna G Tollner
Smith J Rulapaugh
Kadeem V Oldroyd
Clifford D Malet
Ricardo X Inouye
Kadeem N Bowley
Clifford U Wieser
Ashley F Royster
Isabel M Venere
Antonio A Bolognia
Jefferson D Royster
Juan D Butt
Tony O Bowley
Adams H Ferencz
Misaki H Gaucho
Octavia A Bowley
IdCountryDate
1000Spain2025-04-08
1001Russia2025-04-28
1002Argentina2025-04-03
1003Spain2025-04-09
1004Russia2025-04-29
1005Australia2025-04-25
1006Italy2025-04-09
1007Australia2025-04-14
1008France2025-04-12
1009Argentina2025-04-26
1010Brazil2025-04-02
1011United Kingdom2025-04-21
1012Spain2025-04-25
1013Germany2025-04-18
1014France2025-04-01
1015Argentina2025-04-10
1016Spain2025-04-06
1017Brazil2025-04-16
1018India2025-04-24
1019Brazil2025-04-15
1020Australia2025-04-08
1021United Kingdom2025-04-02
1022United Kingdom2025-04-30
1023Canada2025-04-04
1024Canada2025-04-10
1025Spain2025-04-04
1026Germany2025-04-19
1027Japan2025-04-19
1028United Kingdom2025-04-16
1029Brazil2025-04-25
1030Canada2025-04-20
1031Australia2025-04-10
1032Italy2025-04-23
1033Russia2025-04-17
1034Germany2025-04-04
1035Argentina2025-04-14
1036Brazil2025-04-10
1037Australia2025-04-03
1038Japan2025-04-19
1039Spain2025-04-11
1040United Kingdom2025-04-13
1041Japan2025-04-14
1042France2025-04-23
1043Argentina2025-04-25
1044Spain2025-04-21
1045Australia2025-04-21
1046India2025-04-11
1047India2025-04-30
1048Argentina2025-04-02
1049Argentina2025-04-17

On-Demand Data

NameIdCountryDate
Antonio W Butt1000Germany2025-04-20
Costa V Schemmer1001Japan2025-04-06
Smith H Malet1002Canada2025-04-25
Jefferson J Nicka1003Canada2025-04-14
Misaki A Doe1004India2025-04-10
Cody Z Malet1005Russia2025-04-06
Jeanfrancois I Ruta1006Brazil2025-04-01
Ashley V Paprocki1007Germany2025-04-06
Nicolas B Gaucho1008Italy2025-04-27
Greenwood H Schemmer1009Italy2025-04-09
Tony J Stenseth1010Brazil2025-04-07
Aditya K Gaucho1011India2025-04-08
Silvio L Sergi1012Australia2025-04-01
James P Vocelka1013India2025-04-03
Jones E Maclead1014Italy2025-04-06
Maisha P Ostrosky1015Russia2025-04-02
Arvin J Kolmetz1016Argentina2025-04-19
Kadeem T Kolmetz1017Italy2025-04-06
Stacey G Poquette1018Canada2025-04-30
Jennifer U Whobrey1019France2025-04-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa U MarrierArgentinaAsiya Javayant NEGOTIATION
Faith U OldroydBrazilIvan Magalhaes RENEWAL
Aika D GarufiRussiaAmy Elsner UNQUALIFIED
Jefferson P ChuiSpainAmy Elsner RENEWAL
Ivar O ButtGermanyAnna Fali RENEWAL
Octavia G SergiUnited KingdomAmy Elsner RENEWAL
Chavez M StensethItalyElwin Sharvill RENEWAL
Misaki X VenereJapanBernardo Dominic NEW
Maisha U ChuiItalyOnyama Limba RENEWAL
Emily S BologniaFranceStephen Shaw NEW
Maisha Z MaletAustraliaAsiya Javayant QUALIFIED
Silvio R FigeroaCanadaIoni Bowcher NEW
Deepesh P KuskoSpainBernardo Dominic NEGOTIATION
Smith Y OstroskyFranceXuxue Feng NEW
Kadeem U FigeroaUnited KingdomBernardo Dominic RENEWAL
Kaitlin S VocelkaSpainOnyama Limba PROPOSAL
Jones L DoeArgentinaBernardo Dominic PROPOSAL
Izzy L AlbaresAustraliaXuxue Feng PROPOSAL
Sinclair B MarrierAustraliaOnyama Limba UNQUALIFIED
Maisha N DilliardRussiaBernardo Dominic NEW
Aditya X IturbideSpainIoni Bowcher RENEWAL
Cody W BriddickGermanyIoni Bowcher NEW
Francesco Q DoeItalyAmy Elsner UNQUALIFIED
Octavia J IturbideBrazilAsiya Javayant NEW
Aditya M PerinRussiaStephen Shaw RENEWAL
Costa Q DilliardAustraliaOnyama Limba PROPOSAL
Deepesh O CaldareraFranceAnna Fali RENEWAL
Greenwood S StockhamAustraliaElwin Sharvill QUALIFIED
Johnson L SlusarskiRussiaAnna Fali NEW
Octavia X NestleBrazilXuxue Feng PROPOSAL
Smith C SlusarskiAustraliaStephen Shaw NEGOTIATION
Maria Y ButtJapanIoni Bowcher PROPOSAL
Faith U VocelkaFranceStephen Shaw RENEWAL
Isabel F WhobreyUnited KingdomBernardo Dominic PROPOSAL
Stacey S MaletBrazilAmy Elsner NEGOTIATION
David Y WaycottUnited KingdomStephen Shaw NEW
Aika I FollerJapanBernardo Dominic RENEWAL
Ashley H StockhamIndiaXuxue Feng NEW
Wickens B CaudyCanadaAsiya Javayant NEGOTIATION
Leja J NickaUnited KingdomBernardo Dominic PROPOSAL

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