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
Costa E SchemmerFranceElwin Sharvill RENEWAL
Nicolas P ChuiArgentinaOnyama Limba NEGOTIATION
Ivar C SlusarskiRussiaBernardo Dominic NEGOTIATION
Murillo Y PerinJapanAnna Fali NEW
Clifford I AlbaresSpainBernardo Dominic QUALIFIED
Deepesh J MacleadGermanyIoni Bowcher RENEWAL
Deepesh B KuskoCanadaIvan Magalhaes UNQUALIFIED
Rodrigues G MorascaBrazilBernardo Dominic QUALIFIED
Jennifer G SchemmerRussiaOnyama Limba UNQUALIFIED
Deepesh D GarufiBrazilStephen Shaw NEW
Maria T FerenczGermanyAnna Fali UNQUALIFIED
David U KuskoGermanyOnyama Limba UNQUALIFIED
Francesco G PaprockiGermanyAnna Fali NEGOTIATION
Jones Z StensethUnited KingdomIvan Magalhaes NEW
David Z WieserUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois G FerenczUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba X WieserItalyElwin Sharvill PROPOSAL
Jennifer Z RulapaughUnited KingdomAmy Elsner RENEWAL
Juan R CampainItalyStephen Shaw UNQUALIFIED
Kadeem P FigeroaItalyElwin Sharvill QUALIFIED
Jones H InouyeJapanAmy Elsner NEGOTIATION
Darci J RimRussiaAsiya Javayant QUALIFIED
Maria R PerinRussiaOnyama Limba UNQUALIFIED
Kaitlin B PaprockiBrazilIvan Magalhaes PROPOSAL
Smith O WieserArgentinaIvan Magalhaes NEW
Munro I FigeroaJapanElwin Sharvill NEGOTIATION
Octavia D AmigonUnited KingdomAnna Fali UNQUALIFIED
Ricardo G BriddickArgentinaAsiya Javayant NEGOTIATION
Jefferson E NestleIndiaAsiya Javayant NEGOTIATION
David R StockhamUnited KingdomBernardo Dominic QUALIFIED
Darci V KolmetzAustraliaXuxue Feng QUALIFIED
Kadeem R StensethFranceIvan Magalhaes RENEWAL
Johnson W MarrierArgentinaAmy Elsner UNQUALIFIED
Morrow N StockhamAustraliaAnna Fali NEW
Rodrigues E StockhamSpainElwin Sharvill UNQUALIFIED
Isabel F StockhamCanadaIvan Magalhaes NEW
Izzy D VocelkaCanadaStephen Shaw UNQUALIFIED
Chavez I PerinAustraliaOnyama Limba RENEWAL
Aruna R SaylorsAustraliaElwin Sharvill PROPOSAL
Munro B AlbaresFranceElwin Sharvill PROPOSAL
Ashley C MaletCanadaBernardo Dominic UNQUALIFIED
Nicolas U DarakjyRussiaBernardo Dominic NEGOTIATION
Aika B SchemmerCanadaXuxue Feng QUALIFIED
James R InouyeIndiaIoni Bowcher RENEWAL
Sinclair F KolmetzFranceIvan Magalhaes RENEWAL
Cody R CampainJapanIoni Bowcher UNQUALIFIED
Jones F RoysterArgentinaIoni Bowcher NEGOTIATION
Cody T NestleBrazilAnna Fali UNQUALIFIED
Alejandro B InouyeSpainAsiya Javayant UNQUALIFIED
Jeanfrancois I MaletSpainAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Darci O InouyeItalyIoni Bowcher UNQUALIFIED
Isabel D PaprockiArgentinaStephen Shaw QUALIFIED
Ashley W CaudyFranceXuxue Feng RENEWAL
Adams K CaudyCanadaIoni Bowcher NEGOTIATION
Sinclair G InouyeBrazilIoni Bowcher NEGOTIATION
Antonio B AmigonRussiaElwin Sharvill RENEWAL
Leon C BologniaUnited KingdomAmy Elsner NEW
Faith J PoquetteFranceElwin Sharvill NEGOTIATION
Clifford D GauchoSpainOnyama Limba RENEWAL
Deepesh P DoeArgentinaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon Q WaycottUnited Kingdom2024-05-15Rangoni Of Florence UNQUALIFIED80Elwin Sharvill
1001Jones D RimBrazil2024-04-30Morlong Associates PROPOSAL9Ivan Magalhaes
1002Smith M MarrierUnited Kingdom2024-05-09Dorl, James J Esq UNQUALIFIED57Ivan Magalhaes
1003Sinclair V GillianArgentina2024-05-08Chapman, Ross E Esq NEGOTIATION97Ivan Magalhaes
1004Adams I StockhamBrazil2024-05-18Commercial Press NEGOTIATION93Amy Elsner
1005Clifford E DilliardArgentina2024-04-29Printing Dimensions QUALIFIED55Amy Elsner
1006Ivar W GauchoGermany2024-05-09Chemel, James L Cpa NEGOTIATION46Anna Fali
1007Aika H GillianJapan2024-05-05Rousseaux, Michael Esq NEGOTIATION39Ioni Bowcher
1008Rodrigues R KuskoItaly2024-05-23Benton, John B Jr NEGOTIATION63Amy Elsner
1009David O ShinkoBrazil2024-05-14Chanay, Jeffrey A Esq QUALIFIED30Stephen Shaw
1010James Y OldroydIndia2024-05-04Chapman, Ross E Esq RENEWAL87Elwin Sharvill
1011Maria L GauchoAustralia2024-05-22Feltz Printing Service NEGOTIATION76Ivan Magalhaes
1012Smith P BriddickItaly2024-04-28Printing Dimensions PROPOSAL81Ivan Magalhaes
1013Morrow D CaudyArgentina2024-04-29Commercial Press PROPOSAL57Stephen Shaw
1014Greenwood X DilliardAustralia2024-05-10Rangoni Of Florence NEGOTIATION57Stephen Shaw
1015Aika O StensethFrance2024-05-06Chemel, James L Cpa NEGOTIATION66Elwin Sharvill
1016Antonio D WaycottAustralia2024-05-16Rousseaux, Michael Esq NEGOTIATION33Elwin Sharvill
1017Aruna P GlickSpain2024-04-30Commercial Press UNQUALIFIED70Stephen Shaw
1018Arvin C OldroydJapan2024-05-23Buckley Miller Wright NEW73Ioni Bowcher
1019Emily P FerenczItaly2024-05-13Chapman, Ross E Esq NEW8Anna Fali
1020Izzy Z VenereGermany2024-05-15Rangoni Of Florence PROPOSAL25Bernardo Dominic
1021Leja P ShinkoUnited Kingdom2024-05-23Feiner Bros RENEWAL50Stephen Shaw
1022Adams B AlbaresCanada2024-05-19Truhlar And Truhlar Attys RENEWAL85Stephen Shaw
1023Salvatore C OldroydUnited Kingdom2024-05-20King, Christopher A Esq UNQUALIFIED58Xuxue Feng
1024Cody U NestleItaly2024-05-13Feiner Bros UNQUALIFIED0Xuxue Feng
1025Jeanfrancois X BowleyRussia2024-05-18Morlong Associates NEW72Bernardo Dominic
1026Salvatore F PoquetteAustralia2024-05-24Chemel, James L Cpa PROPOSAL61Elwin Sharvill
1027Isabel T BologniaUnited Kingdom2024-04-25Printing Dimensions RENEWAL62Elwin Sharvill
1028Jones U BologniaUnited Kingdom2024-05-20Truhlar And Truhlar Attys QUALIFIED72Anna Fali
1029Antonio R TollnerJapan2024-05-23King, Christopher A Esq UNQUALIFIED51Bernardo Dominic
1030Greenwood P BriddickRussia2024-04-27King, Christopher A Esq PROPOSAL16Ioni Bowcher
1031Clifford Y DoeItaly2024-05-08Morlong Associates UNQUALIFIED56Elwin Sharvill
1032Misaki G FigeroaSpain2024-05-11Chapman, Ross E Esq NEW37Ioni Bowcher
1033Octavia M BowleyIndia2024-05-15Morlong Associates QUALIFIED12Ivan Magalhaes
1034Sinclair C RimUnited Kingdom2024-05-22Chanay, Jeffrey A Esq QUALIFIED67Ivan Magalhaes
1035Adams H KolmetzGermany2024-05-12Commercial Press PROPOSAL71Stephen Shaw
1036Francesco L CampainArgentina2024-05-22Dorl, James J Esq PROPOSAL15Bernardo Dominic
1037Jeanfrancois N OstroskyIndia2024-05-13Truhlar And Truhlar Attys QUALIFIED42Amy Elsner
1038Isabel W KuskoSpain2024-05-10Commercial Press NEW24Xuxue Feng
1039Maria O MaletJapan2024-05-23Feltz Printing Service UNQUALIFIED90Onyama Limba
1040Silvio K WhobreyUnited Kingdom2024-04-30Printing Dimensions RENEWAL6Stephen Shaw
1041Francesco E ChuiItaly2024-04-28Chemel, James L Cpa UNQUALIFIED82Ioni Bowcher
1042Smith T NickaFrance2024-05-21Printing Dimensions NEW32Amy Elsner
1043Mayumi D DilliardJapan2024-05-03Printing Dimensions QUALIFIED91Stephen Shaw
1044Misaki H MaletJapan2024-05-18Rangoni Of Florence NEGOTIATION35Asiya Javayant
1045Antonio C PoquetteUnited Kingdom2024-05-22Printing Dimensions NEW51Onyama Limba
1046Mujtaba C DilliardRussia2024-05-13Buckley Miller Wright PROPOSAL18Amy Elsner
1047Costa Q NickaUnited Kingdom2024-05-03Printing Dimensions RENEWAL39Ivan Magalhaes
1048Jennifer Y FerenczFrance2024-05-11Chemel, James L Cpa QUALIFIED51Xuxue Feng
1049David H StensethSpain2024-04-29Chapman, Ross E Esq NEW28Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Octavia V ChuiGermanyBernardo Dominic QUALIFIED
Maisha I StensethCanadaBernardo Dominic QUALIFIED
Jones Q WieserBrazilBernardo Dominic NEGOTIATION
Maria V CaudyJapanIoni Bowcher NEW
Nicolas X DilliardArgentinaOnyama Limba QUALIFIED
Nicolas G CaudyUnited KingdomAmy Elsner NEW
Tony U CaldareraRussiaAsiya Javayant RENEWAL
Aruna U NestleIndiaIvan Magalhaes RENEWAL
Leon G ButtJapanIoni Bowcher RENEWAL
Morrow V InouyeItalyElwin Sharvill RENEWAL
Aditya Z SchemmerItalyStephen Shaw PROPOSAL
Maria W StensethFranceOnyama Limba PROPOSAL
Deepesh G MarrierAustraliaElwin Sharvill NEW
Faith E WieserGermanyAsiya Javayant NEW
Stacey U GarufiAustraliaAmy Elsner QUALIFIED
Johnson E TollnerFranceIvan Magalhaes NEW
Murillo N MorascaFranceElwin Sharvill UNQUALIFIED
Clifford O WaycottCanadaStephen Shaw NEGOTIATION
Tony V SergiItalyIoni Bowcher NEGOTIATION
Adams E DarakjyIndiaStephen Shaw QUALIFIED
Jones M FollerIndiaIvan Magalhaes QUALIFIED
Aditya W BriddickFranceIoni Bowcher UNQUALIFIED
Izzy Y GauchoIndiaElwin Sharvill PROPOSAL
Munro X StockhamCanadaAmy Elsner UNQUALIFIED
Kaitlin F StockhamIndiaAnna Fali NEGOTIATION
Aika S BologniaRussiaAmy Elsner UNQUALIFIED
Aditya E StensethFranceXuxue Feng PROPOSAL
Wickens Z BologniaJapanXuxue Feng QUALIFIED
Mayumi Q FerenczGermanyStephen Shaw NEW
Greenwood O KolmetzUnited KingdomAnna Fali RENEWAL
Izzy T InouyeAustraliaStephen Shaw NEGOTIATION
Mayumi B SlusarskiSpainBernardo Dominic QUALIFIED
Emily I PerinAustraliaStephen Shaw UNQUALIFIED
Johnson A MarrierAustraliaXuxue Feng QUALIFIED
Nicolas O DilliardArgentinaOnyama Limba PROPOSAL
Jeanfrancois V BriddickFranceOnyama Limba QUALIFIED
Cody G InouyeJapanAnna Fali PROPOSAL
Francesco O BowleyJapanStephen Shaw RENEWAL
Aruna N VocelkaIndiaAmy Elsner RENEWAL
Antonio N IturbideSpainXuxue Feng NEGOTIATION
Wickens D KolmetzFranceIoni Bowcher RENEWAL
Sinclair A RulapaughFranceOnyama Limba QUALIFIED
Claire S RutaAustraliaAmy Elsner NEW
Sinclair F RulapaughCanadaIoni Bowcher RENEWAL
Claire Q RulapaughUnited KingdomAsiya Javayant UNQUALIFIED
Ivar D StensethCanadaElwin Sharvill NEW
Deepesh R StockhamSpainOnyama Limba NEGOTIATION
Leon T DoeRussiaAmy Elsner QUALIFIED
Deepesh K WaycottBrazilAnna Fali UNQUALIFIED
Adams W MarrierIndiaBernardo Dominic QUALIFIED
Frozen Columns
Name
Ashley N Paprocki
Rodrigues R Shinko
Smith F Morasca
Kadeem J Marrier
Maria O Rim
Costa F Campain
Jones F Nicka
Cody C Doe
Cody I Schemmer
Silvio F Albares
Sinclair F Whobrey
Ivar M Bolognia
Costa D Slusarski
Stacey O Tollner
Ivar U Kolmetz
Aruna G Nicka
Mujtaba H Paprocki
Silvio I Paprocki
Ivar E Venere
Costa C Royster
Greenwood P Gaucho
Ricardo D Inouye
Clifford G Ruta
Adams F Saylors
Aika P Paprocki
Johnson M Rim
Mayumi Q Paprocki
Munro I Stockham
Rodrigues X Flosi
Aditya J Morasca
Izzy B Rulapaugh
Deepesh U Poquette
David X Maclead
Misaki P Waycott
Kadeem W Foller
Morrow X Chui
Izzy G Wieser
Murillo S Perin
Aditya R Oldroyd
Jennifer S Maclead
Murillo Q Glick
James Y Ruta
Stacey O Iturbide
Darci X Inouye
Emily R Flosi
Ivar M Malet
Kadeem R Morasca
Sinclair U Kusko
Costa G Ruta
Adams Y Malet
IdCountryDate
1000Japan2024-04-30
1001India2024-05-18
1002Italy2024-05-22
1003Brazil2024-05-20
1004Spain2024-04-26
1005Russia2024-05-23
1006Canada2024-05-16
1007Canada2024-05-20
1008Russia2024-05-17
1009Japan2024-04-29
1010Australia2024-05-11
1011Australia2024-04-25
1012France2024-05-07
1013United Kingdom2024-04-27
1014Argentina2024-05-18
1015Germany2024-05-12
1016United Kingdom2024-05-06
1017United Kingdom2024-05-12
1018Australia2024-05-03
1019Spain2024-05-05
1020Canada2024-05-12
1021Australia2024-05-13
1022Australia2024-05-10
1023India2024-05-05
1024Brazil2024-05-10
1025Australia2024-04-26
1026Argentina2024-05-09
1027Germany2024-04-29
1028France2024-05-15
1029Brazil2024-05-13
1030Canada2024-05-22
1031France2024-05-13
1032Spain2024-04-28
1033Italy2024-05-06
1034India2024-04-28
1035India2024-05-10
1036Germany2024-05-04
1037United Kingdom2024-05-06
1038Italy2024-05-04
1039United Kingdom2024-05-14
1040Russia2024-05-09
1041Australia2024-05-04
1042Russia2024-05-16
1043Australia2024-05-01
1044Germany2024-05-23
1045India2024-04-28
1046India2024-05-09
1047India2024-05-14
1048Germany2024-04-25
1049Canada2024-05-24

On-Demand Data

NameIdCountryDate
Ricardo F Waycott1000Argentina2024-05-09
Ricardo N Foller1001United Kingdom2024-05-07
Emily W Darakjy1002India2024-05-18
Isabel O Flosi1003United Kingdom2024-05-13
Ricardo F Tollner1004Germany2024-05-16
Tony U Kusko1005Canada2024-05-23
Jennifer U Bolognia1006Australia2024-05-15
Jones Z Wieser1007Japan2024-04-29
Isabel F Marrier1008Italy2024-05-01
Ashley D Iturbide1009India2024-05-11
Misaki G Foller1010Australia2024-05-17
Mayumi L Campain1011Argentina2024-05-02
Munro S Gillian1012Spain2024-05-10
Leon V Venere1013United Kingdom2024-04-30
Stacey V Doe1014Italy2024-05-17
Leja L Doe1015Italy2024-05-13
Munro B Briddick1016Brazil2024-04-29
Aruna H Tollner1017Russia2024-05-04
Chavez E Darakjy1018Australia2024-05-18
Rodrigues L Perin1019Japan2024-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith R AlbaresBrazilElwin Sharvill UNQUALIFIED
Chavez R VenereRussiaElwin Sharvill RENEWAL
Munro W GauchoAustraliaIvan Magalhaes PROPOSAL
Juan M FerenczIndiaStephen Shaw PROPOSAL
Claire N FigeroaBrazilIvan Magalhaes QUALIFIED
Alejandro U MorascaItalyStephen Shaw NEW
Greenwood T PaprockiAustraliaStephen Shaw UNQUALIFIED
Izzy E CaldareraAustraliaIvan Magalhaes NEGOTIATION
Leon V OstroskySpainIoni Bowcher UNQUALIFIED
Sinclair Q CaudyCanadaXuxue Feng NEW
Jones W CampainArgentinaElwin Sharvill NEW
Deepesh T StockhamRussiaBernardo Dominic QUALIFIED
Francesco K MarrierFranceOnyama Limba NEGOTIATION
Costa W IturbideJapanElwin Sharvill NEW
Maisha T KolmetzArgentinaOnyama Limba UNQUALIFIED
Misaki A AmigonGermanyBernardo Dominic NEGOTIATION
Aruna F WhobreyItalyIoni Bowcher NEW
Emily X MarrierFranceAnna Fali QUALIFIED
Arvin H WaycottRussiaElwin Sharvill QUALIFIED
Jeanfrancois F NestleBrazilBernardo Dominic QUALIFIED
Izzy L KolmetzCanadaStephen Shaw RENEWAL
Jefferson N TollnerJapanAsiya Javayant QUALIFIED
Ivar X GauchoJapanIvan Magalhaes RENEWAL
Isabel D GillianArgentinaAsiya Javayant QUALIFIED
Rodrigues B CaudyAustraliaBernardo Dominic QUALIFIED
Chavez K AmigonAustraliaOnyama Limba UNQUALIFIED
Jones L RoysterArgentinaIoni Bowcher NEW
Cody M VenereCanadaXuxue Feng QUALIFIED
Jeanfrancois Y NickaUnited KingdomAsiya Javayant RENEWAL
Chavez H RoysterBrazilBernardo Dominic UNQUALIFIED
Darci D GillianIndiaBernardo Dominic NEGOTIATION
Misaki X SchemmerRussiaIoni Bowcher NEW
Rodrigues P BowleyItalyAnna Fali QUALIFIED
Izzy J RulapaughRussiaOnyama Limba UNQUALIFIED
Jones S DarakjyFranceBernardo Dominic RENEWAL
Greenwood Z FigeroaCanadaOnyama Limba UNQUALIFIED
Arvin Q RimBrazilAsiya Javayant UNQUALIFIED
Jones E DilliardAustraliaAsiya Javayant RENEWAL
Ashley W NickaCanadaIoni Bowcher NEGOTIATION
David X RulapaughBrazilXuxue Feng UNQUALIFIED

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