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
Ricardo D GarufiAustraliaAnna Fali NEW
Arvin A PoquetteRussiaAnna Fali NEW
Kadeem D ChuiIndiaAsiya Javayant UNQUALIFIED
Cody B BowleyItalyIvan Magalhaes QUALIFIED
Emily C SergiUnited KingdomAnna Fali UNQUALIFIED
Chavez X SlusarskiFranceAnna Fali NEW
Morrow V RimIndiaElwin Sharvill QUALIFIED
Wickens S WaycottGermanyStephen Shaw UNQUALIFIED
Ivar S FigeroaIndiaElwin Sharvill NEW
Adams F CampainArgentinaAmy Elsner NEW
Jones Z StensethJapanXuxue Feng RENEWAL
Kadeem D AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Isabel A WaycottGermanyAmy Elsner NEW
Kadeem I FollerCanadaElwin Sharvill UNQUALIFIED
Tony H RutaSpainElwin Sharvill NEGOTIATION
Francesco N GlickGermanyOnyama Limba RENEWAL
Sinclair O WaycottUnited KingdomAnna Fali PROPOSAL
Jones R NickaFranceIoni Bowcher PROPOSAL
Aruna P ButtAustraliaBernardo Dominic QUALIFIED
David Z ChuiAustraliaAsiya Javayant NEGOTIATION
Costa W FigeroaArgentinaOnyama Limba PROPOSAL
Rodrigues G MacleadCanadaAsiya Javayant UNQUALIFIED
Francesco I DoeCanadaStephen Shaw NEW
Ashley T PaprockiFranceAmy Elsner PROPOSAL
Jones D GauchoArgentinaElwin Sharvill PROPOSAL
Ricardo A PoquetteBrazilAsiya Javayant RENEWAL
Silvio N FlosiBrazilAmy Elsner QUALIFIED
Alejandro D MaletCanadaAmy Elsner RENEWAL
Sinclair C NestleCanadaXuxue Feng UNQUALIFIED
Chavez C SchemmerIndiaAnna Fali QUALIFIED
Ashley X GauchoCanadaIoni Bowcher NEGOTIATION
Leon Z StockhamGermanyAnna Fali NEGOTIATION
Leja W FollerFranceIvan Magalhaes QUALIFIED
Jennifer L DarakjyGermanyAsiya Javayant NEW
Mujtaba E MaletBrazilXuxue Feng PROPOSAL
Julie I ChuiJapanXuxue Feng NEW
Misaki Q MarrierAustraliaElwin Sharvill NEGOTIATION
Jeanfrancois E ChuiSpainAnna Fali RENEWAL
Salvatore W BowleyIndiaIvan Magalhaes RENEWAL
Antonio D RoysterSpainIvan Magalhaes UNQUALIFIED
Aika N KuskoCanadaStephen Shaw NEW
Rodrigues W SergiUnited KingdomElwin Sharvill UNQUALIFIED
Chavez I WaycottSpainAnna Fali NEGOTIATION
Jones C GlickAustraliaAmy Elsner PROPOSAL
Mujtaba A FerenczFranceElwin Sharvill QUALIFIED
Francesco K BriddickRussiaAnna Fali QUALIFIED
Chavez P GillianFranceStephen Shaw UNQUALIFIED
Kaitlin P CampainBrazilIoni Bowcher QUALIFIED
Chavez B CaudyItalyXuxue Feng PROPOSAL
Aika C IturbideItalyStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Munro H SchemmerUnited KingdomElwin Sharvill NEW
Faith G FerenczFranceAmy Elsner PROPOSAL
Maisha A StockhamJapanAsiya Javayant UNQUALIFIED
Greenwood J RoysterItalyAnna Fali RENEWAL
Aditya K GlickCanadaXuxue Feng UNQUALIFIED
Aditya T NickaSpainXuxue Feng RENEWAL
Maria G StensethAustraliaAsiya Javayant UNQUALIFIED
Emily H BologniaBrazilIoni Bowcher UNQUALIFIED
Arvin U IturbideArgentinaElwin Sharvill RENEWAL
Faith U StensethUnited KingdomIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy F FigeroaArgentina2025-04-20Truhlar And Truhlar Attys RENEWAL18Ioni Bowcher
1001Greenwood O MarrierBrazil2025-04-15Truhlar And Truhlar Attys RENEWAL24Onyama Limba
1002Mujtaba C ChuiArgentina2025-04-14Benton, John B Jr RENEWAL85Amy Elsner
1003Mujtaba R ChuiAustralia2025-04-27Benton, John B Jr RENEWAL10Xuxue Feng
1004Claire J DilliardCanada2025-04-04Chemel, James L Cpa QUALIFIED27Stephen Shaw
1005Jones V SlusarskiUnited Kingdom2025-04-23Commercial Press NEW91Ivan Magalhaes
1006Kadeem A RutaCanada2025-04-16Chemel, James L Cpa PROPOSAL33Amy Elsner
1007Costa L MaletGermany2025-04-26Benton, John B Jr QUALIFIED96Xuxue Feng
1008Kadeem E VocelkaGermany2025-04-10Chemel, James L Cpa RENEWAL39Ioni Bowcher
1009Jeanfrancois L BologniaRussia2025-04-27Buckley Miller Wright PROPOSAL56Elwin Sharvill
1010Isabel J AlbaresSpain2025-04-25Rangoni Of Florence NEGOTIATION23Asiya Javayant
1011Ashley M PaprockiItaly2025-04-30Morlong Associates RENEWAL17Elwin Sharvill
1012Leon Z NestleBrazil2025-04-14Feltz Printing Service PROPOSAL71Asiya Javayant
1013Alejandro G MaletJapan2025-04-03Commercial Press QUALIFIED45Asiya Javayant
1014Arvin G NestleGermany2025-04-24Chemel, James L Cpa UNQUALIFIED35Ivan Magalhaes
1015Maria A OstroskyCanada2025-04-28Chapman, Ross E Esq UNQUALIFIED19Onyama Limba
1016Ricardo K PoquetteRussia2025-04-14Feiner Bros RENEWAL18Onyama Limba
1017Maisha L WhobreyUnited Kingdom2025-04-18Feiner Bros RENEWAL21Stephen Shaw
1018Johnson S BologniaIndia2025-04-20Rousseaux, Michael Esq UNQUALIFIED91Ioni Bowcher
1019Arvin M SlusarskiBrazil2025-04-09Truhlar And Truhlar Attys NEW40Elwin Sharvill
1020Isabel Y FollerCanada2025-04-29Rangoni Of Florence QUALIFIED86Onyama Limba
1021Kaitlin Y IturbideBrazil2025-04-30Benton, John B Jr QUALIFIED45Anna Fali
1022Aditya N NickaGermany2025-04-16Buckley Miller Wright NEW7Amy Elsner
1023Deepesh P FigeroaFrance2025-04-12Feltz Printing Service QUALIFIED9Ioni Bowcher
1024Claire S IturbideJapan2025-04-15Buckley Miller Wright UNQUALIFIED6Anna Fali
1025Munro G TollnerUnited Kingdom2025-04-20Chemel, James L Cpa NEGOTIATION98Bernardo Dominic
1026Ricardo D BowleyUnited Kingdom2025-04-04Chemel, James L Cpa NEGOTIATION33Anna Fali
1027Tony K CaudyIndia2025-04-28Morlong Associates NEGOTIATION95Elwin Sharvill
1028Alejandro A BriddickRussia2025-04-03Benton, John B Jr RENEWAL9Amy Elsner
1029Ricardo K NickaGermany2025-04-26Benton, John B Jr PROPOSAL21Anna Fali
1030Jennifer J SchemmerJapan2025-04-15Chanay, Jeffrey A Esq UNQUALIFIED25Stephen Shaw
1031Cody S InouyeBrazil2025-04-30Printing Dimensions NEGOTIATION25Ivan Magalhaes
1032Juan G DarakjyAustralia2025-04-13Chapman, Ross E Esq NEW66Amy Elsner
1033Julie G KuskoCanada2025-04-28Commercial Press NEGOTIATION9Asiya Javayant
1034Mayumi F PerinFrance2025-04-09Feiner Bros RENEWAL74Stephen Shaw
1035Aruna V VocelkaRussia2025-04-20Chemel, James L Cpa RENEWAL29Stephen Shaw
1036Arvin K BriddickGermany2025-04-02Truhlar And Truhlar Attys PROPOSAL66Ivan Magalhaes
1037Ivar A MaletRussia2025-04-18Truhlar And Truhlar Attys QUALIFIED80Anna Fali
1038Chavez L DarakjyBrazil2025-04-15Dorl, James J Esq QUALIFIED65Ioni Bowcher
1039Octavia T GlickBrazil2025-04-03Truhlar And Truhlar Attys UNQUALIFIED74Asiya Javayant
1040Maisha P StockhamAustralia2025-04-29Feltz Printing Service NEW5Ioni Bowcher
1041Maria O WaycottRussia2025-04-24Printing Dimensions QUALIFIED78Xuxue Feng
1042Darci V SchemmerFrance2025-04-26Chanay, Jeffrey A Esq PROPOSAL24Bernardo Dominic
1043Ivar P ShinkoGermany2025-04-06Feiner Bros RENEWAL62Ivan Magalhaes
1044Costa A OstroskySpain2025-04-09Commercial Press UNQUALIFIED29Onyama Limba
1045Jeanfrancois M RimAustralia2025-04-18Feltz Printing Service PROPOSAL8Xuxue Feng
1046Izzy J CaudyAustralia2025-04-11Rousseaux, Michael Esq QUALIFIED86Asiya Javayant
1047Johnson C VocelkaBrazil2025-04-01Morlong Associates PROPOSAL60Ivan Magalhaes
1048Kadeem B WaycottFrance2025-04-04Truhlar And Truhlar Attys PROPOSAL9Stephen Shaw
1049Stacey V MacleadJapan2025-04-12Morlong Associates NEW77Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
James A SergiJapanBernardo Dominic NEGOTIATION
Mujtaba G OstroskyItalyAsiya Javayant NEW
Francesco H DilliardAustraliaElwin Sharvill NEW
Costa E PoquetteAustraliaIvan Magalhaes QUALIFIED
Alejandro O BowleyBrazilIvan Magalhaes NEW
Rodrigues R AlbaresSpainAsiya Javayant RENEWAL
Kaitlin M MaletJapanElwin Sharvill PROPOSAL
Costa S SergiRussiaOnyama Limba QUALIFIED
Sinclair H DilliardBrazilIvan Magalhaes NEGOTIATION
Leon B ButtCanadaAsiya Javayant NEGOTIATION
Kadeem B SergiFranceIoni Bowcher NEGOTIATION
Kadeem F ButtIndiaBernardo Dominic NEW
Kadeem K StensethJapanIoni Bowcher PROPOSAL
Alejandro C StensethIndiaXuxue Feng UNQUALIFIED
Chavez W GillianFranceIvan Magalhaes NEW
Maria P RimBrazilBernardo Dominic NEW
Kadeem H GlickBrazilOnyama Limba QUALIFIED
Octavia F FerenczFranceBernardo Dominic QUALIFIED
Kadeem I StensethItalyElwin Sharvill PROPOSAL
Aika O MacleadSpainStephen Shaw NEW
Rodrigues L WhobreyUnited KingdomBernardo Dominic NEW
Jennifer T GlickIndiaIoni Bowcher QUALIFIED
Stacey F GarufiGermanyIvan Magalhaes UNQUALIFIED
Isabel Q GauchoIndiaStephen Shaw RENEWAL
Sinclair Q IturbideFranceAmy Elsner NEW
Jefferson M FlosiJapanOnyama Limba NEW
Adams A PoquetteRussiaXuxue Feng PROPOSAL
Aditya U AmigonArgentinaOnyama Limba QUALIFIED
Costa O RutaCanadaIvan Magalhaes QUALIFIED
Ivar I ButtArgentinaOnyama Limba NEW
Salvatore H VocelkaBrazilAsiya Javayant NEW
Costa N NestleCanadaOnyama Limba RENEWAL
Ricardo F KolmetzIndiaIoni Bowcher NEGOTIATION
Ricardo G GillianAustraliaIoni Bowcher PROPOSAL
Mayumi J WieserJapanElwin Sharvill QUALIFIED
Juan N OstroskySpainIoni Bowcher QUALIFIED
Ivar V KuskoFranceAnna Fali RENEWAL
Silvio R WaycottArgentinaOnyama Limba QUALIFIED
Clifford P DarakjyBrazilAmy Elsner QUALIFIED
Alejandro S InouyeGermanyStephen Shaw RENEWAL
Stacey S GlickArgentinaAmy Elsner RENEWAL
Leon S KuskoBrazilOnyama Limba QUALIFIED
Leja Z MaletGermanyIoni Bowcher RENEWAL
Izzy V DoeRussiaXuxue Feng RENEWAL
Maria O DarakjyGermanyElwin Sharvill PROPOSAL
Clifford D WaycottArgentinaIoni Bowcher PROPOSAL
Cody D PaprockiArgentinaIoni Bowcher PROPOSAL
Leja R SergiJapanAsiya Javayant NEW
Jefferson C SlusarskiBrazilIoni Bowcher UNQUALIFIED
Emily M SaylorsBrazilIoni Bowcher RENEWAL
Frozen Columns
Name
Sinclair W Wieser
Stacey L Waycott
Octavia K Foller
Kadeem L Briddick
Mayumi W Vocelka
Jefferson A Chui
Wickens V Gaucho
Aruna V Slusarski
Stacey F Ostrosky
Jones L Oldroyd
Aika G Waycott
Darci Y Nicka
Ashley H Whobrey
Arvin R Venere
Juan W Schemmer
Ashley V Ruta
Juan T Ruta
Smith K Tollner
Darci J Amigon
Faith T Nicka
Kadeem J Flosi
Sinclair F Wieser
Leon J Vocelka
Jefferson W Doe
Antonio W Butt
Maria N Inouye
Kaitlin P Ferencz
Juan S Stenseth
Wickens V Vocelka
Aika K Malet
Isabel B Gillian
Emily G Bowley
Clifford S Doe
Deepesh K Amigon
Leon C Stenseth
Alejandro A Butt
Jeanfrancois U Rim
Jeanfrancois B Morasca
Kadeem V Doe
Claire X Darakjy
Faith N Stenseth
Morrow G Briddick
Kadeem V Inouye
Isabel I Stenseth
James H Bolognia
David U Ostrosky
Leon Z Kusko
Antonio C Doe
Jefferson I Kusko
Greenwood D Butt
IdCountryDate
1000United Kingdom2025-04-17
1001Japan2025-04-18
1002Italy2025-04-02
1003Italy2025-04-20
1004Australia2025-04-22
1005Spain2025-04-20
1006Canada2025-04-30
1007Canada2025-04-12
1008Canada2025-04-09
1009Germany2025-04-16
1010Spain2025-04-25
1011Brazil2025-04-03
1012Argentina2025-04-25
1013France2025-04-28
1014Brazil2025-04-11
1015Argentina2025-04-29
1016India2025-04-10
1017Germany2025-04-10
1018United Kingdom2025-04-23
1019Argentina2025-04-06
1020Argentina2025-04-12
1021Japan2025-04-30
1022Italy2025-04-15
1023India2025-04-14
1024Australia2025-04-27
1025Germany2025-04-29
1026France2025-04-08
1027Spain2025-04-01
1028India2025-04-23
1029United Kingdom2025-04-24
1030Russia2025-04-27
1031United Kingdom2025-04-14
1032Canada2025-04-03
1033Argentina2025-04-18
1034Spain2025-04-04
1035Australia2025-04-07
1036Australia2025-04-14
1037Australia2025-04-21
1038France2025-04-22
1039Spain2025-04-09
1040Brazil2025-04-14
1041Italy2025-04-13
1042Argentina2025-04-14
1043France2025-04-17
1044Russia2025-04-11
1045Canada2025-04-21
1046Australia2025-04-26
1047Canada2025-04-27
1048Russia2025-04-03
1049Brazil2025-04-12

On-Demand Data

NameIdCountryDate
Darci W Venere1000Spain2025-04-15
Arvin U Caldarera1001Russia2025-04-06
Misaki J Amigon1002Russia2025-04-11
Maisha X Waycott1003Canada2025-04-28
Clifford E Chui1004Argentina2025-04-10
Mujtaba F Chui1005United Kingdom2025-04-08
Julie L Perin1006Spain2025-04-13
Ricardo B Waycott1007United Kingdom2025-04-06
Francesco T Stockham1008Russia2025-04-14
Mayumi H Morasca1009Australia2025-04-17
Emily U Caudy1010United Kingdom2025-04-28
Jefferson D Wieser1011Germany2025-04-15
Claire S Chui1012United Kingdom2025-04-25
Silvio M Stenseth1013Spain2025-04-12
Johnson F Campain1014Japan2025-04-21
Morrow A Rulapaugh1015United Kingdom2025-04-14
Mujtaba G Flosi1016Russia2025-04-16
Isabel R Garufi1017Spain2025-04-20
Cody A Oldroyd1018Canada2025-04-16
Ivar E Kusko1019Australia2025-04-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika O RoysterGermanyBernardo Dominic UNQUALIFIED
Ivar O GlickGermanyXuxue Feng RENEWAL
Salvatore G OldroydFranceXuxue Feng NEGOTIATION
Antonio B BriddickSpainOnyama Limba UNQUALIFIED
Silvio T MarrierSpainAmy Elsner UNQUALIFIED
Faith F GauchoIndiaAsiya Javayant RENEWAL
Mujtaba H BologniaFranceIoni Bowcher RENEWAL
Costa R VenereRussiaBernardo Dominic NEGOTIATION
Salvatore J ButtArgentinaAnna Fali QUALIFIED
Maisha A BologniaArgentinaOnyama Limba QUALIFIED
Sinclair Y BologniaSpainAmy Elsner QUALIFIED
Aditya U OldroydUnited KingdomElwin Sharvill UNQUALIFIED
Jefferson O BologniaGermanyBernardo Dominic NEGOTIATION
Faith B OldroydIndiaIvan Magalhaes QUALIFIED
Emily I MarrierArgentinaAnna Fali RENEWAL
Maisha T PerinCanadaBernardo Dominic NEW
Adams X PerinAustraliaXuxue Feng NEW
Salvatore S NickaItalyStephen Shaw PROPOSAL
David N ChuiAustraliaAsiya Javayant QUALIFIED
Chavez Q NestleGermanyBernardo Dominic QUALIFIED
Leon K BriddickBrazilAnna Fali NEGOTIATION
Mayumi K SergiJapanXuxue Feng QUALIFIED
Stacey I OldroydFranceAnna Fali NEW
Leon H FlosiFranceAmy Elsner RENEWAL
Juan N BowleyBrazilElwin Sharvill NEW
Leja C BriddickJapanIoni Bowcher UNQUALIFIED
Maisha D InouyeFranceAmy Elsner NEGOTIATION
Izzy Y MaletRussiaStephen Shaw PROPOSAL
Jeanfrancois G TollnerUnited KingdomStephen Shaw NEGOTIATION
Morrow Z MacleadArgentinaAmy Elsner RENEWAL
Aika J MaletItalyBernardo Dominic NEW
Ashley T KolmetzJapanAmy Elsner UNQUALIFIED
Maria U FlosiJapanBernardo Dominic RENEWAL
Murillo H PoquetteArgentinaStephen Shaw NEW
Nicolas S FlosiSpainAmy Elsner QUALIFIED
Faith O BriddickCanadaElwin Sharvill NEW
Faith A MarrierBrazilAnna Fali UNQUALIFIED
Misaki U KolmetzJapanStephen Shaw NEGOTIATION
Leja D ChuiGermanyIvan Magalhaes UNQUALIFIED
Wickens A MacleadCanadaAnna Fali RENEWAL

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