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
Leon J WaycottItalyAmy Elsner NEW
Greenwood S MaletUnited KingdomAnna Fali NEW
Maisha P WhobreyUnited KingdomAnna Fali PROPOSAL
Jones P FollerJapanAmy Elsner RENEWAL
Mayumi M FerenczRussiaBernardo Dominic NEW
Julie C MaletUnited KingdomAnna Fali NEGOTIATION
Misaki P WhobreyCanadaIoni Bowcher RENEWAL
Clifford A VenereAustraliaXuxue Feng UNQUALIFIED
Julie E RulapaughGermanyIvan Magalhaes NEGOTIATION
Silvio N BriddickBrazilAmy Elsner QUALIFIED
Jefferson H CampainJapanIoni Bowcher QUALIFIED
Francesco W BowleyIndiaElwin Sharvill NEW
Murillo V DoeSpainElwin Sharvill NEW
Costa G StensethIndiaAsiya Javayant PROPOSAL
David P CampainGermanyIvan Magalhaes QUALIFIED
Munro I GarufiRussiaIoni Bowcher NEW
Tony Z AlbaresCanadaOnyama Limba NEGOTIATION
Juan T MarrierItalyStephen Shaw NEGOTIATION
Darci K StockhamGermanyAsiya Javayant UNQUALIFIED
Leja V IturbideArgentinaAsiya Javayant UNQUALIFIED
Alejandro G BriddickIndiaIvan Magalhaes NEW
Silvio J GillianFranceStephen Shaw QUALIFIED
Silvio A SergiItalyAmy Elsner QUALIFIED
Isabel S OstroskyAustraliaIvan Magalhaes UNQUALIFIED
Octavia P IturbideIndiaAnna Fali UNQUALIFIED
Jefferson F VocelkaFranceIoni Bowcher NEW
Aruna K RimIndiaElwin Sharvill NEW
Munro Z DilliardArgentinaAnna Fali NEW
Leja L MaletRussiaElwin Sharvill NEGOTIATION
Aruna H BriddickJapanElwin Sharvill QUALIFIED
Faith Y KolmetzUnited KingdomOnyama Limba QUALIFIED
Mujtaba Z SlusarskiFranceIvan Magalhaes NEGOTIATION
Mayumi R VocelkaJapanXuxue Feng UNQUALIFIED
Sinclair Y RoysterJapanOnyama Limba NEW
Kadeem C GarufiSpainAsiya Javayant QUALIFIED
Chavez B MaletCanadaStephen Shaw UNQUALIFIED
Claire P GauchoIndiaStephen Shaw RENEWAL
Izzy F OldroydAustraliaStephen Shaw NEGOTIATION
Jones T IturbideUnited KingdomOnyama Limba UNQUALIFIED
Mayumi H GauchoCanadaElwin Sharvill PROPOSAL
Jennifer G CaudyRussiaXuxue Feng QUALIFIED
Antonio K MaletUnited KingdomIoni Bowcher NEW
Mujtaba S WaycottArgentinaAmy Elsner UNQUALIFIED
Cody L RimRussiaIvan Magalhaes NEGOTIATION
Stacey G AmigonRussiaAmy Elsner PROPOSAL
Leja N GillianJapanXuxue Feng NEGOTIATION
Mujtaba V MaletAustraliaStephen Shaw UNQUALIFIED
Silvio L ChuiAustraliaBernardo Dominic UNQUALIFIED
Faith X PerinAustraliaAnna Fali PROPOSAL
Costa R BowleyArgentinaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Jennifer W StensethArgentinaAsiya Javayant NEW
Johnson L KolmetzJapanBernardo Dominic PROPOSAL
Chavez O VenereCanadaBernardo Dominic PROPOSAL
Salvatore Q SergiRussiaBernardo Dominic RENEWAL
Kaitlin D RutaCanadaOnyama Limba NEGOTIATION
Claire I OstroskyRussiaAsiya Javayant NEW
Smith P NickaGermanyBernardo Dominic RENEWAL
Costa O OldroydBrazilAsiya Javayant QUALIFIED
Claire O RutaBrazilOnyama Limba QUALIFIED
David E CaldareraUnited KingdomIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow O StensethSpain2024-06-06Buckley Miller Wright QUALIFIED11Amy Elsner
1001Maisha U AlbaresCanada2024-06-11Feltz Printing Service NEGOTIATION52Ioni Bowcher
1002Aditya W PoquetteItaly2024-05-29Morlong Associates UNQUALIFIED98Onyama Limba
1003Clifford M GlickIndia2024-05-30Buckley Miller Wright NEGOTIATION69Xuxue Feng
1004Antonio T InouyeUnited Kingdom2024-06-09Chemel, James L Cpa NEW94Bernardo Dominic
1005Ashley J MaletAustralia2024-06-17Chapman, Ross E Esq PROPOSAL39Elwin Sharvill
1006Faith D OldroydGermany2024-05-31Benton, John B Jr NEW36Bernardo Dominic
1007Claire Y PaprockiAustralia2024-06-17Rangoni Of Florence NEW81Amy Elsner
1008Ashley K SlusarskiIndia2024-06-06Chapman, Ross E Esq NEGOTIATION43Ioni Bowcher
1009Clifford T SergiJapan2024-06-18Chanay, Jeffrey A Esq UNQUALIFIED77Bernardo Dominic
1010Mujtaba R RutaGermany2024-05-29Printing Dimensions NEW13Stephen Shaw
1011Francesco C WhobreyAustralia2024-05-24Truhlar And Truhlar Attys NEW82Asiya Javayant
1012Rodrigues P FollerAustralia2024-06-05Buckley Miller Wright PROPOSAL85Bernardo Dominic
1013Jones J KolmetzRussia2024-05-31Truhlar And Truhlar Attys UNQUALIFIED99Onyama Limba
1014Aditya V RutaGermany2024-06-21Truhlar And Truhlar Attys NEW45Onyama Limba
1015Faith U AlbaresIndia2024-06-10King, Christopher A Esq UNQUALIFIED13Bernardo Dominic
1016Octavia S GlickSpain2024-06-10Chanay, Jeffrey A Esq PROPOSAL93Elwin Sharvill
1017Sinclair D DoeItaly2024-05-24Truhlar And Truhlar Attys QUALIFIED57Anna Fali
1018Jennifer T PoquetteGermany2024-06-03Buckley Miller Wright PROPOSAL45Xuxue Feng
1019Johnson T AmigonBrazil2024-06-04Feltz Printing Service QUALIFIED10Amy Elsner
1020Ivar N RimUnited Kingdom2024-06-08King, Christopher A Esq UNQUALIFIED54Amy Elsner
1021Cody F ButtItaly2024-06-01Feltz Printing Service UNQUALIFIED48Ioni Bowcher
1022Maisha R GillianBrazil2024-06-20Rangoni Of Florence RENEWAL3Onyama Limba
1023Costa K RimBrazil2024-05-24Chemel, James L Cpa NEGOTIATION17Asiya Javayant
1024James T SlusarskiUnited Kingdom2024-06-02Commercial Press UNQUALIFIED1Stephen Shaw
1025Aruna H FollerAustralia2024-05-26Dorl, James J Esq PROPOSAL41Ivan Magalhaes
1026Chavez F GarufiArgentina2024-06-10King, Christopher A Esq NEGOTIATION94Ivan Magalhaes
1027James J DilliardItaly2024-06-13Feiner Bros QUALIFIED51Ioni Bowcher
1028Ivar U PaprockiIndia2024-06-15Benton, John B Jr NEGOTIATION21Stephen Shaw
1029Francesco E DilliardFrance2024-05-26King, Christopher A Esq NEW55Amy Elsner
1030Claire S RimGermany2024-05-27Chemel, James L Cpa UNQUALIFIED9Amy Elsner
1031Octavia L StockhamBrazil2024-06-08Chemel, James L Cpa PROPOSAL43Ivan Magalhaes
1032Adams F MaletRussia2024-06-21Benton, John B Jr RENEWAL66Onyama Limba
1033Octavia H NickaItaly2024-05-29Chemel, James L Cpa RENEWAL53Elwin Sharvill
1034Isabel J SergiFrance2024-06-17Commercial Press NEW43Elwin Sharvill
1035Clifford T InouyeIndia2024-05-29Benton, John B Jr PROPOSAL53Amy Elsner
1036Costa Z VocelkaIndia2024-06-13Buckley Miller Wright QUALIFIED7Stephen Shaw
1037Octavia U VocelkaItaly2024-06-12Morlong Associates QUALIFIED38Ivan Magalhaes
1038Stacey G FerenczItaly2024-06-20Chanay, Jeffrey A Esq NEW32Stephen Shaw
1039Jennifer V CaldareraItaly2024-06-10Feiner Bros NEW7Asiya Javayant
1040Kadeem V RulapaughFrance2024-06-06Chapman, Ross E Esq PROPOSAL7Amy Elsner
1041Maria B KuskoUnited Kingdom2024-06-05Rangoni Of Florence NEGOTIATION51Ioni Bowcher
1042Leja K RimUnited Kingdom2024-06-14Dorl, James J Esq NEGOTIATION77Onyama Limba
1043Costa G VenereCanada2024-06-03Rousseaux, Michael Esq NEW7Ioni Bowcher
1044Greenwood G OldroydBrazil2024-05-25Rangoni Of Florence PROPOSAL12Xuxue Feng
1045Costa D CaudyItaly2024-05-23Rangoni Of Florence PROPOSAL3Ivan Magalhaes
1046Maria Y AlbaresCanada2024-06-16Commercial Press UNQUALIFIED7Ivan Magalhaes
1047Ivar P RimAustralia2024-05-25Feiner Bros QUALIFIED87Anna Fali
1048Octavia X VocelkaSpain2024-05-26Rangoni Of Florence UNQUALIFIED85Asiya Javayant
1049Julie J MaletRussia2024-05-28Feltz Printing Service RENEWAL24Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Tony H NickaJapanAmy Elsner NEGOTIATION
Claire O FollerUnited KingdomIoni Bowcher QUALIFIED
Adams V WaycottJapanIvan Magalhaes NEGOTIATION
Aika I ButtAustraliaIvan Magalhaes QUALIFIED
Antonio Z GillianSpainOnyama Limba NEGOTIATION
Misaki E BriddickCanadaElwin Sharvill PROPOSAL
Wickens T PaprockiIndiaAnna Fali PROPOSAL
Ivar Q SchemmerIndiaAnna Fali NEGOTIATION
Chavez W FigeroaRussiaIoni Bowcher PROPOSAL
Greenwood Q KolmetzJapanXuxue Feng QUALIFIED
Darci I MacleadFranceAmy Elsner NEW
Smith P DoeRussiaBernardo Dominic PROPOSAL
Emily N NestleIndiaBernardo Dominic PROPOSAL
Aruna N GauchoSpainAnna Fali UNQUALIFIED
Claire I RoysterJapanStephen Shaw NEGOTIATION
Smith U ChuiFranceAnna Fali QUALIFIED
Ricardo K PoquetteCanadaXuxue Feng PROPOSAL
Silvio G OldroydIndiaOnyama Limba QUALIFIED
Silvio F VenereFranceXuxue Feng NEW
Jeanfrancois X IturbideGermanyAnna Fali RENEWAL
Alejandro O DarakjySpainIoni Bowcher RENEWAL
Claire A MaletItalyAmy Elsner QUALIFIED
Aditya Q DilliardFranceAnna Fali RENEWAL
Claire V RoysterIndiaStephen Shaw NEGOTIATION
Maria O VenereGermanyIvan Magalhaes NEW
Aika H FigeroaGermanyAsiya Javayant RENEWAL
Sinclair U WieserArgentinaStephen Shaw UNQUALIFIED
Rodrigues K PerinArgentinaStephen Shaw QUALIFIED
Isabel J FlosiCanadaAsiya Javayant QUALIFIED
Kadeem I GarufiFranceOnyama Limba RENEWAL
Emily O PoquetteSpainAmy Elsner QUALIFIED
Ricardo A AlbaresCanadaXuxue Feng NEW
David Y SchemmerGermanyIvan Magalhaes PROPOSAL
Izzy P RoysterBrazilOnyama Limba QUALIFIED
Isabel D TollnerIndiaAmy Elsner NEGOTIATION
Smith F PoquetteCanadaIoni Bowcher RENEWAL
Leon X AmigonArgentinaIoni Bowcher UNQUALIFIED
Adams X SchemmerRussiaOnyama Limba PROPOSAL
Emily I MarrierJapanBernardo Dominic RENEWAL
Tony V PerinAustraliaStephen Shaw PROPOSAL
Salvatore N SchemmerRussiaAmy Elsner RENEWAL
David B GlickFranceAmy Elsner RENEWAL
Silvio R KuskoSpainStephen Shaw NEGOTIATION
Greenwood F WieserSpainIvan Magalhaes RENEWAL
Maria V AlbaresItalyBernardo Dominic RENEWAL
Silvio Y PoquetteAustraliaElwin Sharvill RENEWAL
Emily G GauchoUnited KingdomBernardo Dominic NEW
Nicolas F OstroskySpainStephen Shaw RENEWAL
Stacey J FerenczArgentinaXuxue Feng NEGOTIATION
Leja K PoquetteAustraliaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Jennifer D Morasca
Kadeem Z Ostrosky
Francesco I Kusko
Leja F Sergi
David B Butt
Nicolas F Marrier
Antonio Z Chui
Deepesh C Albares
Alejandro Q Tollner
Jones A Vocelka
Sinclair O Gillian
Jeanfrancois J Oldroyd
David E Slusarski
Ivar G Venere
Salvatore U Figeroa
Deepesh T Bolognia
David U Rulapaugh
Cody F Wieser
Morrow P Rulapaugh
Ashley Y Malet
Morrow E Nicka
Faith D Campain
Tony H Saylors
Arvin K Caldarera
Julie H Darakjy
Kadeem U Waycott
James O Gaucho
Leon T Poquette
James Q Stenseth
James W Marrier
Smith G Kusko
Costa O Foller
Francesco A Butt
Leja E Waycott
Faith O Vocelka
Sinclair J Darakjy
Ivar L Schemmer
Kaitlin C Schemmer
Aditya D Darakjy
Smith O Garufi
Greenwood P Poquette
Isabel M Nicka
Adams R Stockham
Jeanfrancois I Rim
Greenwood D Gillian
Francesco G Nestle
Morrow K Shinko
Darci G Rulapaugh
Maria R Poquette
Adams I Schemmer
IdCountryDate
1000Italy2024-05-30
1001India2024-06-07
1002France2024-05-24
1003India2024-05-26
1004United Kingdom2024-05-31
1005India2024-06-03
1006Canada2024-06-13
1007France2024-06-11
1008United Kingdom2024-05-28
1009Spain2024-06-05
1010United Kingdom2024-05-23
1011Spain2024-06-16
1012India2024-05-25
1013India2024-06-09
1014Canada2024-06-12
1015Canada2024-06-21
1016India2024-05-25
1017Italy2024-06-01
1018Australia2024-06-16
1019Australia2024-06-18
1020Australia2024-06-01
1021Canada2024-06-04
1022Brazil2024-05-25
1023Spain2024-06-17
1024Argentina2024-05-29
1025Russia2024-06-21
1026Germany2024-06-11
1027France2024-06-14
1028Spain2024-06-19
1029Italy2024-06-14
1030Brazil2024-05-31
1031France2024-05-24
1032Japan2024-06-14
1033United Kingdom2024-05-29
1034Russia2024-06-13
1035France2024-06-14
1036Argentina2024-06-15
1037Japan2024-06-15
1038Japan2024-06-10
1039Russia2024-06-10
1040Spain2024-05-29
1041Argentina2024-06-18
1042India2024-06-17
1043Germany2024-05-24
1044Russia2024-06-21
1045Brazil2024-05-23
1046Brazil2024-06-01
1047Canada2024-06-02
1048India2024-06-09
1049Canada2024-06-21

On-Demand Data

NameIdCountryDate
Chavez U Garufi1000United Kingdom2024-06-05
Munro W Caldarera1001Brazil2024-06-14
Greenwood A Rim1002Italy2024-05-30
Leja D Darakjy1003Italy2024-06-09
Misaki L Amigon1004Japan2024-06-15
Mujtaba H Oldroyd1005Russia2024-06-08
Nicolas V Whobrey1006Spain2024-06-14
Leon Y Chui1007Spain2024-05-31
Smith G Morasca1008France2024-05-26
Isabel W Ostrosky1009India2024-06-06
Nicolas U Garufi1010Australia2024-05-30
Faith T Ferencz1011Russia2024-05-25
Francesco G Figeroa1012Russia2024-05-31
Jeanfrancois L Nestle1013India2024-05-27
Munro M Kusko1014Russia2024-06-08
David A Figeroa1015Spain2024-05-25
Greenwood T Kusko1016Australia2024-06-14
Misaki O Malet1017United Kingdom2024-05-25
Greenwood U Ferencz1018United Kingdom2024-06-05
Kaitlin G Gaucho1019Italy2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody G FlosiJapanAnna Fali RENEWAL
Stacey O FlosiUnited KingdomIoni Bowcher PROPOSAL
Adams X BowleyBrazilAsiya Javayant QUALIFIED
Misaki M PaprockiJapanAnna Fali PROPOSAL
Deepesh W DilliardArgentinaIoni Bowcher NEGOTIATION
Ivar U FigeroaGermanyElwin Sharvill PROPOSAL
Octavia H KuskoGermanyIvan Magalhaes RENEWAL
Johnson J DarakjyCanadaStephen Shaw NEGOTIATION
Darci V KuskoRussiaIoni Bowcher NEW
Nicolas O StockhamFranceElwin Sharvill UNQUALIFIED
Leja U OstroskyIndiaXuxue Feng NEGOTIATION
Maria G StockhamRussiaStephen Shaw RENEWAL
Salvatore F ChuiIndiaStephen Shaw UNQUALIFIED
Julie L IturbideFranceBernardo Dominic RENEWAL
Sinclair G AmigonRussiaOnyama Limba PROPOSAL
Francesco M BriddickAustraliaXuxue Feng NEW
David B SchemmerBrazilElwin Sharvill RENEWAL
Misaki Z MacleadSpainStephen Shaw PROPOSAL
Mujtaba I PaprockiRussiaStephen Shaw NEW
Juan X CaldareraFranceElwin Sharvill QUALIFIED
Jennifer X WieserUnited KingdomElwin Sharvill RENEWAL
Sinclair O GillianRussiaBernardo Dominic UNQUALIFIED
Ashley P RoysterUnited KingdomAmy Elsner PROPOSAL
Mujtaba B ButtBrazilIvan Magalhaes NEGOTIATION
Jeanfrancois B DarakjyRussiaElwin Sharvill QUALIFIED
Maisha N RulapaughArgentinaOnyama Limba RENEWAL
Emily R KuskoItalyAnna Fali PROPOSAL
Kaitlin U GauchoRussiaIvan Magalhaes PROPOSAL
Kadeem I BowleyGermanyIvan Magalhaes PROPOSAL
Izzy C NickaRussiaAnna Fali RENEWAL
Johnson Q FollerBrazilIvan Magalhaes PROPOSAL
Adams R FlosiItalyIoni Bowcher QUALIFIED
Emily T DarakjyRussiaAnna Fali NEGOTIATION
Silvio Q FerenczIndiaAsiya Javayant UNQUALIFIED
Claire W CampainSpainAsiya Javayant PROPOSAL
Deepesh E PerinArgentinaBernardo Dominic QUALIFIED
Morrow J ButtCanadaStephen Shaw NEW
Silvio X ChuiRussiaXuxue Feng NEGOTIATION
Sinclair C GauchoCanadaOnyama Limba NEW
Izzy H DilliardBrazilBernardo Dominic 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>