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
Tony G RimRussiaAmy Elsner NEW
Misaki H NestleArgentinaAnna Fali RENEWAL
Ricardo O FollerIndiaIoni Bowcher NEGOTIATION
Julie D MorascaUnited KingdomAsiya Javayant NEW
Munro R RoysterGermanyStephen Shaw NEGOTIATION
Jefferson U FerenczAustraliaXuxue Feng NEW
Faith A FollerBrazilAmy Elsner QUALIFIED
Kaitlin H OstroskySpainOnyama Limba NEGOTIATION
Emily V StockhamUnited KingdomAsiya Javayant QUALIFIED
Kaitlin T BologniaAustraliaIoni Bowcher RENEWAL
Aika Q SaylorsAustraliaOnyama Limba QUALIFIED
Deepesh E BriddickAustraliaXuxue Feng NEW
Julie X BowleyFranceAsiya Javayant UNQUALIFIED
Clifford R IturbideItalyAmy Elsner NEGOTIATION
Arvin C SaylorsJapanStephen Shaw RENEWAL
Wickens G SchemmerFranceAnna Fali RENEWAL
Antonio G DoeUnited KingdomIvan Magalhaes RENEWAL
Octavia Y RulapaughIndiaBernardo Dominic PROPOSAL
Stacey U ButtGermanyXuxue Feng NEGOTIATION
Stacey G FollerArgentinaAmy Elsner PROPOSAL
Rodrigues I PaprockiRussiaElwin Sharvill NEGOTIATION
Tony R MaletSpainAmy Elsner NEW
Morrow D OstroskyRussiaOnyama Limba PROPOSAL
Juan B WaycottItalyXuxue Feng QUALIFIED
Wickens Q KolmetzRussiaXuxue Feng UNQUALIFIED
Faith S PoquetteArgentinaXuxue Feng QUALIFIED
Emily W TollnerBrazilAsiya Javayant NEW
Wickens N ShinkoBrazilAmy Elsner NEGOTIATION
Francesco A RimJapanXuxue Feng RENEWAL
Jennifer L AlbaresUnited KingdomIvan Magalhaes RENEWAL
Sinclair C StensethRussiaStephen Shaw PROPOSAL
Nicolas G PaprockiJapanStephen Shaw RENEWAL
Ivar Y SergiIndiaXuxue Feng NEW
Maisha C CaldareraUnited KingdomIoni Bowcher UNQUALIFIED
Cody S IturbideAustraliaBernardo Dominic RENEWAL
Alejandro F DoeCanadaElwin Sharvill UNQUALIFIED
Kaitlin P PerinBrazilAnna Fali RENEWAL
Tony Z ButtFranceAnna Fali NEGOTIATION
Leja R DoeCanadaAmy Elsner NEGOTIATION
Aruna W BologniaArgentinaIvan Magalhaes RENEWAL
Mujtaba X MaletAustraliaElwin Sharvill PROPOSAL
Smith Z FlosiGermanyIvan Magalhaes NEGOTIATION
Morrow E RimSpainAmy Elsner NEW
Morrow J BologniaItalyXuxue Feng NEGOTIATION
Morrow K AmigonRussiaBernardo Dominic NEW
Leja C BowleyJapanBernardo Dominic PROPOSAL
Julie P CampainAustraliaBernardo Dominic RENEWAL
Ashley L MarrierCanadaBernardo Dominic PROPOSAL
Juan R RimCanadaOnyama Limba PROPOSAL
Misaki Z CampainUnited KingdomStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Maisha C FollerItalyIoni Bowcher PROPOSAL
Antonio L RoysterItalyXuxue Feng UNQUALIFIED
Nicolas W BriddickRussiaAnna Fali PROPOSAL
Jones P SchemmerGermanyAsiya Javayant NEW
Emily P KuskoArgentinaBernardo Dominic NEGOTIATION
Misaki S BriddickUnited KingdomIvan Magalhaes PROPOSAL
Stacey O SchemmerRussiaIoni Bowcher UNQUALIFIED
James C VocelkaSpainBernardo Dominic PROPOSAL
Emily G GarufiArgentinaElwin Sharvill NEW
Rodrigues V CaudyGermanyStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar I InouyeArgentina2024-06-14Chapman, Ross E Esq NEGOTIATION97Asiya Javayant
1001Aditya F CaudySpain2024-05-27Chemel, James L Cpa NEW0Xuxue Feng
1002Aditya R VenereCanada2024-05-31Printing Dimensions RENEWAL71Stephen Shaw
1003Francesco W DarakjyArgentina2024-05-30Feltz Printing Service NEGOTIATION62Amy Elsner
1004Kadeem R KolmetzSpain2024-06-04Truhlar And Truhlar Attys NEGOTIATION86Ioni Bowcher
1005Greenwood J StensethArgentina2024-06-06Commercial Press UNQUALIFIED7Anna Fali
1006Emily M WhobreyCanada2024-06-12Commercial Press NEW18Amy Elsner
1007Chavez I CaudySpain2024-06-20Morlong Associates NEW24Anna Fali
1008Emily M IturbideItaly2024-05-27Dorl, James J Esq PROPOSAL7Ioni Bowcher
1009Isabel P RimItaly2024-05-28Chemel, James L Cpa RENEWAL55Anna Fali
1010Darci C PerinSpain2024-06-07Commercial Press QUALIFIED66Ivan Magalhaes
1011Misaki R StensethCanada2024-05-28Rangoni Of Florence RENEWAL44Onyama Limba
1012Jeanfrancois N SaylorsBrazil2024-05-25Dorl, James J Esq PROPOSAL0Amy Elsner
1013Ivar T GarufiIndia2024-06-19Chapman, Ross E Esq RENEWAL9Amy Elsner
1014Francesco C BologniaRussia2024-06-12Rangoni Of Florence NEGOTIATION8Ioni Bowcher
1015Deepesh L NickaBrazil2024-06-21Buckley Miller Wright UNQUALIFIED75Xuxue Feng
1016Salvatore R DoeArgentina2024-06-06Morlong Associates UNQUALIFIED86Bernardo Dominic
1017Nicolas W RimRussia2024-06-19Morlong Associates RENEWAL55Bernardo Dominic
1018Ricardo O SergiAustralia2024-06-02Feltz Printing Service QUALIFIED84Ivan Magalhaes
1019Faith Y NestleRussia2024-05-29Morlong Associates NEGOTIATION14Stephen Shaw
1020Emily X MarrierAustralia2024-06-08Truhlar And Truhlar Attys NEW40Asiya Javayant
1021Cody Q GlickUnited Kingdom2024-05-31Feiner Bros QUALIFIED15Anna Fali
1022Kaitlin U BowleyArgentina2024-06-11Buckley Miller Wright NEGOTIATION16Onyama Limba
1023Darci Y BologniaGermany2024-05-29King, Christopher A Esq RENEWAL17Onyama Limba
1024Mujtaba I IturbideCanada2024-06-10Dorl, James J Esq PROPOSAL73Asiya Javayant
1025Stacey A MacleadFrance2024-06-08Commercial Press UNQUALIFIED25Bernardo Dominic
1026Antonio U PaprockiIndia2024-06-15Dorl, James J Esq NEW68Stephen Shaw
1027Aruna U AlbaresArgentina2024-06-17Chemel, James L Cpa NEW18Ivan Magalhaes
1028Isabel G PerinArgentina2024-06-09Rangoni Of Florence UNQUALIFIED90Asiya Javayant
1029Stacey P RimRussia2024-06-11Buckley Miller Wright UNQUALIFIED50Xuxue Feng
1030Leja G PaprockiJapan2024-06-21Chemel, James L Cpa UNQUALIFIED4Asiya Javayant
1031Jennifer Q ShinkoIndia2024-06-20Commercial Press NEGOTIATION97Anna Fali
1032Cody G CaldareraAustralia2024-06-04Morlong Associates NEW81Ivan Magalhaes
1033Misaki C GlickUnited Kingdom2024-05-26Feltz Printing Service PROPOSAL54Anna Fali
1034Alejandro P AmigonAustralia2024-06-20Rangoni Of Florence NEGOTIATION11Amy Elsner
1035Costa Q BriddickCanada2024-05-29King, Christopher A Esq NEGOTIATION83Xuxue Feng
1036Salvatore O PaprockiFrance2024-05-28Rousseaux, Michael Esq QUALIFIED63Stephen Shaw
1037Kaitlin Q FollerAustralia2024-06-05Chemel, James L Cpa NEW66Onyama Limba
1038Maria W FerenczSpain2024-05-23Dorl, James J Esq QUALIFIED57Stephen Shaw
1039Clifford I BologniaFrance2024-06-03Benton, John B Jr RENEWAL37Onyama Limba
1040Mayumi O SchemmerItaly2024-06-03Chanay, Jeffrey A Esq RENEWAL49Stephen Shaw
1041Francesco R GarufiFrance2024-05-31Feltz Printing Service RENEWAL18Ioni Bowcher
1042Tony H DoeCanada2024-06-01Feltz Printing Service PROPOSAL19Stephen Shaw
1043Juan X PaprockiCanada2024-06-14Morlong Associates QUALIFIED30Xuxue Feng
1044Francesco P AmigonSpain2024-06-17Feiner Bros RENEWAL58Bernardo Dominic
1045Chavez A AlbaresGermany2024-06-19Commercial Press NEGOTIATION68Anna Fali
1046Chavez Z StockhamUnited Kingdom2024-06-01Buckley Miller Wright RENEWAL67Bernardo Dominic
1047Chavez M FollerSpain2024-05-29Printing Dimensions PROPOSAL87Anna Fali
1048Ricardo Z FerenczGermany2024-06-11Chemel, James L Cpa NEGOTIATION53Onyama Limba
1049Julie O AmigonSpain2024-06-02Commercial Press QUALIFIED98Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Antonio G VocelkaRussiaStephen Shaw RENEWAL
James C SlusarskiRussiaOnyama Limba QUALIFIED
James M OldroydRussiaAmy Elsner PROPOSAL
David R AmigonCanadaStephen Shaw NEGOTIATION
Johnson T MaletUnited KingdomAnna Fali PROPOSAL
Morrow A MaletUnited KingdomBernardo Dominic RENEWAL
Aika U RutaItalyAnna Fali QUALIFIED
Clifford V KuskoItalyAsiya Javayant NEW
Smith D PoquetteBrazilIoni Bowcher NEGOTIATION
Nicolas Q ShinkoFranceBernardo Dominic NEGOTIATION
Tony A OldroydBrazilElwin Sharvill PROPOSAL
Leja T PoquetteRussiaAnna Fali PROPOSAL
Ashley M SlusarskiRussiaAmy Elsner NEW
Mayumi Q SaylorsRussiaAnna Fali NEW
Murillo J BologniaJapanAmy Elsner NEGOTIATION
Maria M InouyeRussiaAmy Elsner PROPOSAL
James U KolmetzGermanyElwin Sharvill QUALIFIED
Ricardo B GauchoUnited KingdomAsiya Javayant PROPOSAL
Costa K GarufiArgentinaAnna Fali NEGOTIATION
Munro P MorascaRussiaIvan Magalhaes UNQUALIFIED
Leon C AlbaresArgentinaBernardo Dominic NEGOTIATION
Mujtaba E InouyeJapanAnna Fali RENEWAL
Emily Q CaudyArgentinaElwin Sharvill PROPOSAL
Wickens N SaylorsAustraliaAnna Fali UNQUALIFIED
Chavez O RimIndiaOnyama Limba NEGOTIATION
Adams K VocelkaArgentinaBernardo Dominic PROPOSAL
Jones R DarakjyRussiaAsiya Javayant NEW
Kaitlin B ChuiBrazilStephen Shaw QUALIFIED
Ricardo Y RulapaughSpainElwin Sharvill PROPOSAL
Mayumi G VocelkaRussiaAmy Elsner UNQUALIFIED
Aditya F MorascaRussiaStephen Shaw QUALIFIED
Kaitlin Y MaletRussiaAsiya Javayant QUALIFIED
Emily N WaycottCanadaAmy Elsner UNQUALIFIED
Jones I InouyeFranceElwin Sharvill RENEWAL
Jeanfrancois L InouyeFranceIoni Bowcher QUALIFIED
Arvin Q MaletFranceIoni Bowcher NEW
Adams L WaycottGermanyBernardo Dominic PROPOSAL
Munro Q GauchoJapanAsiya Javayant RENEWAL
Deepesh N SlusarskiGermanyBernardo Dominic UNQUALIFIED
Mujtaba Z DilliardFranceAnna Fali NEW
Arvin Q FlosiAustraliaIoni Bowcher PROPOSAL
Jefferson I MorascaAustraliaOnyama Limba NEGOTIATION
Jefferson J DarakjyBrazilIoni Bowcher UNQUALIFIED
Deepesh V WaycottSpainIvan Magalhaes NEW
Cody U SchemmerBrazilAnna Fali PROPOSAL
Claire Y WhobreyIndiaXuxue Feng NEGOTIATION
Francesco B BologniaUnited KingdomElwin Sharvill QUALIFIED
Jennifer L DarakjyFranceOnyama Limba NEGOTIATION
Jefferson R TollnerJapanXuxue Feng RENEWAL
Juan G InouyeJapanBernardo Dominic NEW
Frozen Columns
Name
Aditya N Poquette
Julie P Oldroyd
Izzy T Nicka
Tony S Wieser
Juan C Briddick
Aika E Maclead
Aruna F Dilliard
James Z Venere
Isabel H Flosi
Salvatore Y Ruta
Faith A Gaucho
Isabel O Paprocki
Aditya T Poquette
Aruna R Albares
Smith S Kolmetz
Cody C Shinko
Mujtaba Z Chui
Johnson T Inouye
Cody I Campain
Mujtaba L Ferencz
Johnson L Caudy
Maisha N Morasca
Nicolas D Bolognia
Izzy R Stockham
David H Bolognia
Mujtaba U Garufi
Isabel M Ruta
Smith W Foller
Leja M Perin
Faith Y Iturbide
Kadeem L Rulapaugh
Octavia Z Bowley
Ashley Z Albares
Aditya T Dilliard
Izzy Y Tollner
Maisha B Flosi
Antonio Z Nestle
Costa R Kusko
Claire H Malet
Aika A Sergi
Leja F Nestle
Ivar L Garufi
Sinclair J Waycott
Alejandro X Maclead
Adams C Garufi
Jeanfrancois K Vocelka
Munro L Poquette
Aika F Nestle
Antonio M Venere
Octavia Y Sergi
IdCountryDate
1000Australia2024-05-25
1001Argentina2024-06-19
1002Canada2024-06-17
1003Brazil2024-05-25
1004United Kingdom2024-05-25
1005Russia2024-06-06
1006Russia2024-06-21
1007Brazil2024-05-29
1008Argentina2024-06-06
1009Australia2024-06-01
1010Russia2024-05-30
1011France2024-06-18
1012Argentina2024-05-29
1013Russia2024-05-23
1014Russia2024-06-14
1015United Kingdom2024-06-13
1016United Kingdom2024-05-26
1017Brazil2024-05-23
1018United Kingdom2024-06-06
1019Canada2024-06-20
1020India2024-05-24
1021Italy2024-06-03
1022Spain2024-05-25
1023Brazil2024-06-05
1024Japan2024-06-13
1025India2024-06-10
1026United Kingdom2024-06-15
1027Australia2024-05-31
1028India2024-05-24
1029United Kingdom2024-05-29
1030Japan2024-06-03
1031Italy2024-05-27
1032Germany2024-06-19
1033France2024-05-31
1034Brazil2024-05-25
1035Germany2024-06-15
1036Russia2024-05-23
1037India2024-06-09
1038Australia2024-05-25
1039United Kingdom2024-06-20
1040Italy2024-06-18
1041Italy2024-06-07
1042United Kingdom2024-05-31
1043India2024-05-23
1044Argentina2024-06-11
1045Italy2024-06-19
1046Japan2024-06-02
1047India2024-06-21
1048Spain2024-06-01
1049Brazil2024-06-15

On-Demand Data

NameIdCountryDate
Maisha L Flosi1000Canada2024-06-15
Aika N Iturbide1001France2024-06-13
Ashley O Kolmetz1002United Kingdom2024-06-09
Adams W Foller1003United Kingdom2024-05-31
Murillo C Schemmer1004Japan2024-05-24
Maisha L Ruta1005Australia2024-06-11
Ricardo M Bowley1006Brazil2024-05-28
Aruna S Iturbide1007Canada2024-06-12
Jones P Venere1008Italy2024-05-30
Deepesh M Nicka1009Argentina2024-05-29
Salvatore G Doe1010France2024-06-08
Aruna W Rim1011Brazil2024-06-18
Aika W Kusko1012Brazil2024-06-08
Sinclair X Morasca1013Japan2024-05-27
Munro U Iturbide1014India2024-06-10
Claire B Tollner1015Argentina2024-05-29
Alejandro D Nestle1016India2024-06-13
Aika S Saylors1017Germany2024-06-12
Johnson P Albares1018United Kingdom2024-06-07
Johnson C Doe1019Italy2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair F ChuiRussiaElwin Sharvill NEW
Jefferson R CaudyUnited KingdomOnyama Limba QUALIFIED
Emily V StockhamUnited KingdomXuxue Feng NEW
Maisha Q RoysterRussiaIoni Bowcher PROPOSAL
Darci C FlosiFranceAmy Elsner NEW
Maisha P BowleyRussiaAnna Fali RENEWAL
Cody V VenereIndiaOnyama Limba UNQUALIFIED
James V GillianAustraliaStephen Shaw RENEWAL
Jones N MacleadGermanyXuxue Feng UNQUALIFIED
Tony W AlbaresAustraliaStephen Shaw PROPOSAL
Wickens L WaycottIndiaStephen Shaw RENEWAL
Munro A MorascaSpainAnna Fali PROPOSAL
Claire U PoquetteAustraliaXuxue Feng UNQUALIFIED
Silvio P CampainJapanElwin Sharvill NEW
Maisha Y DarakjySpainAmy Elsner QUALIFIED
Stacey P NickaBrazilXuxue Feng QUALIFIED
Aika H FerenczArgentinaOnyama Limba UNQUALIFIED
Arvin Z NickaArgentinaAnna Fali NEGOTIATION
Clifford F ButtJapanAmy Elsner NEGOTIATION
Jeanfrancois A CaudyAustraliaBernardo Dominic PROPOSAL
Deepesh M GlickCanadaOnyama Limba QUALIFIED
Greenwood C AmigonGermanyIoni Bowcher NEW
Antonio G NestleUnited KingdomBernardo Dominic RENEWAL
Arvin I SlusarskiSpainAnna Fali NEGOTIATION
Rodrigues V VenereSpainIvan Magalhaes RENEWAL
David M MorascaFranceAsiya Javayant NEGOTIATION
Francesco B PoquetteRussiaAsiya Javayant QUALIFIED
Jennifer B FollerCanadaStephen Shaw RENEWAL
Jeanfrancois N TollnerGermanyIvan Magalhaes RENEWAL
Johnson U KuskoSpainAsiya Javayant PROPOSAL
Kaitlin S DilliardUnited KingdomOnyama Limba NEW
Alejandro V NestleAustraliaStephen Shaw NEGOTIATION
Rodrigues X RutaAustraliaOnyama Limba RENEWAL
Izzy H SaylorsFranceAmy Elsner RENEWAL
Stacey D TollnerAustraliaXuxue Feng NEW
Emily G CaldareraSpainXuxue Feng UNQUALIFIED
Maria O MaletItalyAsiya Javayant NEW
Izzy K FlosiRussiaIoni Bowcher UNQUALIFIED
Chavez K ChuiUnited KingdomIvan Magalhaes PROPOSAL
Ivar B BologniaArgentinaXuxue Feng 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>