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
Nicolas S SaylorsFranceStephen Shaw RENEWAL
David U SlusarskiBrazilBernardo Dominic QUALIFIED
Salvatore G NestleFranceElwin Sharvill RENEWAL
Murillo L FlosiItalyIvan Magalhaes NEGOTIATION
Morrow T WhobreyJapanBernardo Dominic UNQUALIFIED
Tony T ButtRussiaAmy Elsner QUALIFIED
Misaki K CaldareraCanadaAsiya Javayant UNQUALIFIED
Jeanfrancois W CaldareraArgentinaBernardo Dominic PROPOSAL
Wickens G OstroskyRussiaAnna Fali NEGOTIATION
Kaitlin M AmigonRussiaOnyama Limba RENEWAL
Ashley Y PerinRussiaIvan Magalhaes NEGOTIATION
Jefferson X CaudyUnited KingdomAmy Elsner RENEWAL
Maisha Y MaletArgentinaXuxue Feng QUALIFIED
Stacey T BriddickSpainBernardo Dominic NEGOTIATION
Maisha Z GlickCanadaBernardo Dominic QUALIFIED
Maisha J PerinAustraliaOnyama Limba NEW
Alejandro O MorascaSpainAsiya Javayant UNQUALIFIED
Ricardo T MaletUnited KingdomIvan Magalhaes RENEWAL
Jennifer M KuskoItalyIoni Bowcher RENEWAL
Ivar O InouyeArgentinaBernardo Dominic UNQUALIFIED
Leja V GlickGermanyAmy Elsner UNQUALIFIED
Smith Q FerenczGermanyIvan Magalhaes RENEWAL
Mayumi F KolmetzAustraliaBernardo Dominic PROPOSAL
Mujtaba F DarakjyFranceXuxue Feng UNQUALIFIED
Morrow B InouyeFranceElwin Sharvill NEW
Antonio P MorascaSpainIvan Magalhaes RENEWAL
Smith Q DilliardUnited KingdomXuxue Feng RENEWAL
Misaki A MorascaJapanAnna Fali NEW
Faith P MaletRussiaElwin Sharvill NEGOTIATION
Johnson G BriddickIndiaBernardo Dominic NEGOTIATION
Kadeem X ButtUnited KingdomAnna Fali PROPOSAL
Jefferson U DoeRussiaIvan Magalhaes UNQUALIFIED
Maria D WaycottAustraliaXuxue Feng RENEWAL
Antonio U InouyeGermanyElwin Sharvill UNQUALIFIED
Maria E MacleadItalyOnyama Limba PROPOSAL
Julie K FlosiFranceBernardo Dominic QUALIFIED
Arvin M MaletJapanAmy Elsner RENEWAL
Deepesh E FigeroaItalyOnyama Limba NEW
Isabel Z RoysterSpainBernardo Dominic QUALIFIED
Claire T ChuiUnited KingdomIvan Magalhaes PROPOSAL
Adams J WieserFranceIoni Bowcher NEW
Morrow C BriddickAustraliaXuxue Feng NEGOTIATION
James R DarakjyJapanElwin Sharvill QUALIFIED
Claire L CampainGermanyAsiya Javayant NEW
Jennifer W FollerRussiaIvan Magalhaes NEW
Clifford Y BowleyArgentinaIoni Bowcher RENEWAL
Stacey J RutaAustraliaBernardo Dominic PROPOSAL
Aruna T WieserArgentinaAnna Fali QUALIFIED
Tony T CampainGermanyXuxue Feng NEW
Izzy R FollerBrazilOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Smith E VenereIndiaAmy Elsner NEW
Sinclair L GlickJapanElwin Sharvill UNQUALIFIED
Misaki P WaycottItalyIoni Bowcher NEW
Clifford N StockhamGermanyOnyama Limba UNQUALIFIED
Leja Z BologniaSpainXuxue Feng NEGOTIATION
Alejandro A WaycottUnited KingdomXuxue Feng QUALIFIED
Ashley V AlbaresAustraliaIoni Bowcher NEGOTIATION
Aruna D NickaGermanyIoni Bowcher QUALIFIED
Murillo R PoquetteItalyXuxue Feng NEW
Sinclair C GlickRussiaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha S NestleArgentina2024-06-04Feltz Printing Service RENEWAL11Stephen Shaw
1001Greenwood Y AmigonSpain2024-05-24Morlong Associates QUALIFIED93Ivan Magalhaes
1002Adams Y IturbideItaly2024-06-17Morlong Associates QUALIFIED70Stephen Shaw
1003David W MacleadCanada2024-05-27Dorl, James J Esq RENEWAL70Bernardo Dominic
1004Rodrigues E DarakjyJapan2024-06-08Chapman, Ross E Esq PROPOSAL55Elwin Sharvill
1005Adams H RoysterUnited Kingdom2024-06-01Rangoni Of Florence RENEWAL93Bernardo Dominic
1006Arvin F WaycottFrance2024-06-04Commercial Press QUALIFIED52Bernardo Dominic
1007Julie H PoquetteGermany2024-05-29Feltz Printing Service QUALIFIED47Onyama Limba
1008Julie R CaudyBrazil2024-05-25King, Christopher A Esq NEGOTIATION76Stephen Shaw
1009David O KolmetzSpain2024-06-05Rangoni Of Florence PROPOSAL40Bernardo Dominic
1010Ivar S RulapaughRussia2024-06-07Chemel, James L Cpa NEGOTIATION86Amy Elsner
1011Murillo V SchemmerBrazil2024-06-02Benton, John B Jr PROPOSAL53Xuxue Feng
1012Mujtaba Y OldroydIndia2024-06-07King, Christopher A Esq QUALIFIED90Anna Fali
1013Costa V IturbideBrazil2024-06-04Commercial Press NEGOTIATION61Bernardo Dominic
1014Nicolas I KolmetzJapan2024-05-31Rousseaux, Michael Esq UNQUALIFIED15Elwin Sharvill
1015David I SlusarskiSpain2024-06-15Rousseaux, Michael Esq QUALIFIED30Elwin Sharvill
1016Aruna Z IturbideUnited Kingdom2024-06-14Benton, John B Jr NEW19Bernardo Dominic
1017Aditya Z ChuiItaly2024-06-06Printing Dimensions UNQUALIFIED49Elwin Sharvill
1018Stacey U DoeArgentina2024-06-11Feiner Bros QUALIFIED28Amy Elsner
1019Salvatore G OstroskyCanada2024-06-14Benton, John B Jr UNQUALIFIED58Elwin Sharvill
1020Faith D MaletUnited Kingdom2024-06-07Feiner Bros UNQUALIFIED52Xuxue Feng
1021Maisha M FlosiFrance2024-05-23Printing Dimensions NEGOTIATION8Amy Elsner
1022David T StockhamArgentina2024-06-15King, Christopher A Esq QUALIFIED60Ivan Magalhaes
1023Mayumi P OstroskyGermany2024-05-23Printing Dimensions PROPOSAL34Anna Fali
1024Octavia V CampainIndia2024-06-12Commercial Press PROPOSAL35Onyama Limba
1025Murillo J VenereJapan2024-05-26Feiner Bros QUALIFIED63Bernardo Dominic
1026Murillo J CaldareraGermany2024-06-20King, Christopher A Esq NEW4Xuxue Feng
1027Kadeem Y RoysterBrazil2024-05-31Feltz Printing Service QUALIFIED91Bernardo Dominic
1028Jennifer K DoeJapan2024-05-30Rangoni Of Florence PROPOSAL27Elwin Sharvill
1029Adams T PerinIndia2024-06-10Commercial Press RENEWAL55Anna Fali
1030Murillo A SaylorsCanada2024-05-31Printing Dimensions PROPOSAL48Xuxue Feng
1031Arvin T DoeRussia2024-05-26Truhlar And Truhlar Attys NEW64Ivan Magalhaes
1032Sinclair Y VenereAustralia2024-06-21Printing Dimensions PROPOSAL39Asiya Javayant
1033Maisha D VocelkaCanada2024-06-03Benton, John B Jr NEW44Ioni Bowcher
1034Rodrigues Y MaletJapan2024-05-25King, Christopher A Esq QUALIFIED72Ivan Magalhaes
1035Ricardo G SlusarskiFrance2024-05-28Feiner Bros QUALIFIED86Ioni Bowcher
1036James I ShinkoIndia2024-05-25Buckley Miller Wright PROPOSAL74Elwin Sharvill
1037Clifford U GillianRussia2024-06-08Commercial Press QUALIFIED33Elwin Sharvill
1038David Z VenereBrazil2024-06-14Chemel, James L Cpa NEW89Elwin Sharvill
1039Smith E BowleyBrazil2024-05-29Feltz Printing Service QUALIFIED37Ioni Bowcher
1040Faith J FerenczJapan2024-06-10Truhlar And Truhlar Attys RENEWAL44Onyama Limba
1041Faith U MarrierBrazil2024-05-30Dorl, James J Esq NEGOTIATION22Ivan Magalhaes
1042Deepesh A DarakjyAustralia2024-06-08Rousseaux, Michael Esq UNQUALIFIED52Amy Elsner
1043James T FollerCanada2024-05-29Chemel, James L Cpa UNQUALIFIED23Xuxue Feng
1044Misaki U DoeUnited Kingdom2024-05-27Benton, John B Jr UNQUALIFIED40Ivan Magalhaes
1045Mayumi O DilliardAustralia2024-05-26Chanay, Jeffrey A Esq QUALIFIED93Ioni Bowcher
1046Jones V NestleGermany2024-05-29Rangoni Of Florence NEGOTIATION89Stephen Shaw
1047Jeanfrancois B TollnerCanada2024-06-05Chemel, James L Cpa NEW49Xuxue Feng
1048Smith V BowleyUnited Kingdom2024-05-29Feiner Bros NEW80Bernardo Dominic
1049Jennifer U NickaJapan2024-06-19Printing Dimensions QUALIFIED34Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Kadeem Y WaycottJapanXuxue Feng PROPOSAL
Julie P OldroydAustraliaBernardo Dominic RENEWAL
Mujtaba M BologniaGermanyStephen Shaw PROPOSAL
Emily V IturbideIndiaXuxue Feng QUALIFIED
Darci E StockhamArgentinaIoni Bowcher RENEWAL
Claire U BriddickBrazilIoni Bowcher QUALIFIED
Nicolas G RoysterGermanyIvan Magalhaes RENEWAL
Octavia G DoeIndiaStephen Shaw QUALIFIED
Murillo M ShinkoFranceBernardo Dominic UNQUALIFIED
Emily Y SergiArgentinaStephen Shaw NEW
Alejandro E RoysterJapanAmy Elsner QUALIFIED
Cody P SergiSpainIvan Magalhaes NEGOTIATION
Jennifer S GlickCanadaAnna Fali NEW
Emily L RoysterUnited KingdomIoni Bowcher QUALIFIED
Ashley N GauchoArgentinaStephen Shaw PROPOSAL
Claire E GauchoCanadaStephen Shaw NEGOTIATION
Smith U FerenczIndiaBernardo Dominic NEW
Jennifer J CampainFranceIvan Magalhaes NEGOTIATION
Francesco Z RoysterArgentinaElwin Sharvill NEW
Mayumi C PoquetteIndiaAmy Elsner NEW
Rodrigues C SchemmerCanadaIvan Magalhaes UNQUALIFIED
Isabel R FigeroaBrazilStephen Shaw UNQUALIFIED
Izzy J WaycottJapanBernardo Dominic NEW
Aika J NickaFranceBernardo Dominic NEW
Alejandro W RulapaughSpainIvan Magalhaes UNQUALIFIED
Maisha J GauchoRussiaIoni Bowcher NEGOTIATION
Maria B StockhamIndiaAnna Fali NEGOTIATION
James X WaycottSpainAmy Elsner PROPOSAL
Antonio I ChuiCanadaXuxue Feng UNQUALIFIED
Nicolas K StockhamUnited KingdomOnyama Limba RENEWAL
Rodrigues E BologniaSpainElwin Sharvill NEW
Leja H TollnerAustraliaElwin Sharvill QUALIFIED
Darci S WaycottJapanIvan Magalhaes UNQUALIFIED
Salvatore P RutaAustraliaAsiya Javayant RENEWAL
Rodrigues J SchemmerAustraliaOnyama Limba NEGOTIATION
Munro A StockhamJapanXuxue Feng PROPOSAL
James F FerenczAustraliaAmy Elsner RENEWAL
Murillo E GarufiItalyAsiya Javayant PROPOSAL
Jeanfrancois F DarakjyJapanAsiya Javayant PROPOSAL
Clifford N GillianBrazilIvan Magalhaes PROPOSAL
David M IturbideSpainAmy Elsner RENEWAL
Stacey I CaldareraBrazilStephen Shaw UNQUALIFIED
Faith I ShinkoArgentinaAsiya Javayant NEW
Morrow U MaletSpainIvan Magalhaes RENEWAL
Alejandro Q SchemmerBrazilIvan Magalhaes PROPOSAL
Isabel I DoeFranceIoni Bowcher PROPOSAL
Antonio W FigeroaFranceXuxue Feng NEGOTIATION
Clifford V GlickCanadaAmy Elsner RENEWAL
Ashley D VocelkaAustraliaAnna Fali QUALIFIED
Greenwood N RimGermanyElwin Sharvill QUALIFIED
Frozen Columns
Name
Jennifer M Saylors
Costa O Marrier
Emily B Rim
Leon N Glick
Maisha Z Maclead
Kadeem T Poquette
Kadeem L Caudy
Alejandro O Figeroa
Aditya E Royster
Ricardo Q Sergi
Darci T Doe
Greenwood J Butt
Kadeem I Caldarera
Leon T Bolognia
Aika L Whobrey
Julie U Iturbide
Leja Y Flosi
Stacey G Stenseth
Claire K Stenseth
Nicolas N Gaucho
Arvin L Tollner
Antonio Q Gillian
Kadeem G Ostrosky
Emily K Tollner
Francesco T Nestle
Tony E Vocelka
Alejandro H Iturbide
Cody W Tollner
Maisha R Briddick
Mayumi O Royster
Maisha S Bolognia
Murillo N Ruta
Maria U Darakjy
Emily U Iturbide
Cody T Shinko
Octavia W Malet
Kadeem F Kusko
Leja E Doe
Arvin A Glick
Nicolas A Glick
Julie T Chui
Darci B Rim
Octavia L Iturbide
Deepesh X Whobrey
Stacey Z Maclead
Morrow T Stockham
Francesco K Ruta
Jeanfrancois B Wieser
Isabel L Caldarera
Aditya F Caudy
IdCountryDate
1000Argentina2024-05-28
1001India2024-06-03
1002France2024-06-05
1003Brazil2024-06-16
1004Canada2024-05-27
1005Japan2024-06-19
1006Brazil2024-06-20
1007United Kingdom2024-06-21
1008Argentina2024-05-24
1009Australia2024-05-23
1010Japan2024-06-01
1011Japan2024-05-31
1012United Kingdom2024-06-04
1013Germany2024-06-09
1014India2024-06-20
1015India2024-06-03
1016Spain2024-05-29
1017Canada2024-05-30
1018Japan2024-05-27
1019Canada2024-06-02
1020Japan2024-06-17
1021Italy2024-06-16
1022Japan2024-06-19
1023Japan2024-05-25
1024Japan2024-06-01
1025Italy2024-05-27
1026Russia2024-06-08
1027Canada2024-06-06
1028Brazil2024-05-24
1029Japan2024-05-30
1030India2024-06-11
1031Australia2024-06-13
1032Germany2024-06-07
1033United Kingdom2024-06-20
1034Italy2024-06-07
1035France2024-05-24
1036Canada2024-05-25
1037Spain2024-05-27
1038Australia2024-06-19
1039France2024-06-13
1040Brazil2024-06-06
1041Spain2024-06-19
1042United Kingdom2024-05-29
1043Australia2024-06-07
1044Germany2024-05-27
1045Italy2024-05-28
1046France2024-06-10
1047Spain2024-06-14
1048Argentina2024-06-17
1049France2024-05-31

On-Demand Data

NameIdCountryDate
Emily Y Tollner1000Germany2024-06-09
Rodrigues P Caldarera1001France2024-06-10
Kaitlin D Darakjy1002Spain2024-06-10
Jennifer R Caldarera1003France2024-06-20
Costa M Butt1004Japan2024-05-23
James U Dilliard1005Italy2024-06-12
Izzy W Caudy1006Argentina2024-06-04
Mujtaba J Royster1007Spain2024-06-21
Adams Z Marrier1008Spain2024-05-31
Wickens W Waycott1009Australia2024-06-20
Cody P Paprocki1010India2024-05-24
Chavez L Ruta1011Australia2024-06-20
Silvio E Chui1012Canada2024-06-19
Cody Z Ruta1013Argentina2024-06-15
Nicolas N Bolognia1014Russia2024-05-26
Ivar L Darakjy1015India2024-06-04
Jeanfrancois S Schemmer1016Brazil2024-06-09
Claire D Slusarski1017Brazil2024-06-09
Juan O Oldroyd1018Russia2024-06-14
Cody K Kusko1019Argentina2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony V KolmetzIndiaAnna Fali UNQUALIFIED
Jennifer W IturbideUnited KingdomAsiya Javayant NEW
Silvio N SchemmerItalyAmy Elsner NEW
Chavez H InouyeIndiaBernardo Dominic QUALIFIED
Kadeem N BowleyRussiaAnna Fali NEW
Silvio Q RulapaughAustraliaOnyama Limba UNQUALIFIED
James P SlusarskiFranceAnna Fali PROPOSAL
Francesco Y DoeBrazilIoni Bowcher NEW
Arvin B KuskoRussiaStephen Shaw NEW
Leja H DarakjyAustraliaXuxue Feng PROPOSAL
Johnson A NestleCanadaBernardo Dominic QUALIFIED
Aruna E MarrierRussiaAnna Fali NEW
Aruna X AlbaresGermanyIoni Bowcher NEGOTIATION
Emily R GlickFranceAsiya Javayant NEW
James D MacleadCanadaIoni Bowcher PROPOSAL
Johnson Z NickaCanadaStephen Shaw PROPOSAL
Jeanfrancois Q WieserBrazilElwin Sharvill UNQUALIFIED
Chavez S PerinArgentinaOnyama Limba NEW
Aditya J SergiCanadaAsiya Javayant UNQUALIFIED
Morrow Y FollerJapanAnna Fali NEW
Alejandro T FerenczSpainXuxue Feng QUALIFIED
Munro R VocelkaArgentinaOnyama Limba NEW
James P MorascaIndiaStephen Shaw UNQUALIFIED
Deepesh D DarakjyFranceXuxue Feng NEW
Kaitlin S MacleadAustraliaAsiya Javayant UNQUALIFIED
Ricardo P MarrierArgentinaAsiya Javayant NEGOTIATION
Tony O SchemmerRussiaElwin Sharvill RENEWAL
Jones R MarrierRussiaElwin Sharvill RENEWAL
David N SergiCanadaAmy Elsner UNQUALIFIED
Costa B CaudyAustraliaStephen Shaw NEW
Ricardo T GarufiItalyStephen Shaw QUALIFIED
Aditya D CampainFranceIoni Bowcher PROPOSAL
Kaitlin K StensethAustraliaAnna Fali RENEWAL
Misaki F CaldareraSpainStephen Shaw RENEWAL
Julie M FerenczItalyIvan Magalhaes PROPOSAL
Leon Q WhobreyFranceStephen Shaw RENEWAL
Adams J AmigonArgentinaIvan Magalhaes NEGOTIATION
Alejandro E StockhamRussiaIvan Magalhaes PROPOSAL
Antonio U TollnerArgentinaOnyama Limba NEW
Aditya Q KuskoRussiaAsiya Javayant 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>