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
Julie T WhobreySpainIvan Magalhaes QUALIFIED
Leon W AmigonItalyAsiya Javayant QUALIFIED
Maria X KolmetzItalyOnyama Limba QUALIFIED
Stacey B GillianUnited KingdomElwin Sharvill QUALIFIED
Francesco G GauchoUnited KingdomOnyama Limba UNQUALIFIED
Izzy B FigeroaCanadaAnna Fali NEW
Murillo O MacleadGermanyElwin Sharvill NEGOTIATION
Maisha L MarrierBrazilStephen Shaw PROPOSAL
Misaki L PaprockiGermanyAnna Fali UNQUALIFIED
Salvatore Y KuskoItalyAmy Elsner RENEWAL
Costa D OstroskyBrazilXuxue Feng QUALIFIED
Cody Y CampainArgentinaBernardo Dominic PROPOSAL
Aditya K CaudyArgentinaIoni Bowcher QUALIFIED
Johnson E BologniaRussiaAmy Elsner QUALIFIED
Ashley O BologniaFranceOnyama Limba PROPOSAL
Nicolas O WhobreyGermanyBernardo Dominic NEW
Cody W StockhamUnited KingdomAmy Elsner UNQUALIFIED
Jeanfrancois F MarrierItalyOnyama Limba NEGOTIATION
Francesco P ChuiItalyElwin Sharvill UNQUALIFIED
Ricardo G VenereFranceIoni Bowcher NEW
Murillo O CaldareraSpainBernardo Dominic RENEWAL
Izzy T FlosiJapanAnna Fali PROPOSAL
Murillo D PerinSpainAsiya Javayant RENEWAL
Jones G SaylorsBrazilAsiya Javayant NEGOTIATION
Aika Z RimFranceIoni Bowcher PROPOSAL
Misaki T FollerItalyAsiya Javayant PROPOSAL
Morrow P GlickGermanyIoni Bowcher NEGOTIATION
Maisha O WaycottSpainElwin Sharvill QUALIFIED
Munro Y SaylorsIndiaIoni Bowcher PROPOSAL
Wickens X GarufiFranceIoni Bowcher QUALIFIED
Alejandro A GauchoGermanyIoni Bowcher NEW
Smith R BologniaBrazilIvan Magalhaes UNQUALIFIED
Adams J ButtFranceElwin Sharvill QUALIFIED
Salvatore M AmigonRussiaOnyama Limba PROPOSAL
Mayumi X GarufiAustraliaAsiya Javayant RENEWAL
Mayumi U MaletGermanyAnna Fali QUALIFIED
Rodrigues B PerinArgentinaBernardo Dominic PROPOSAL
Octavia N TollnerRussiaAsiya Javayant QUALIFIED
Aruna M IturbideAustraliaBernardo Dominic QUALIFIED
Nicolas M NickaBrazilXuxue Feng PROPOSAL
Juan Q FigeroaGermanyElwin Sharvill PROPOSAL
Sinclair V MaletFranceIvan Magalhaes QUALIFIED
Costa E RulapaughJapanIoni Bowcher NEW
Claire V GarufiGermanyAnna Fali UNQUALIFIED
Clifford H FlosiItalyElwin Sharvill QUALIFIED
Smith U PaprockiSpainXuxue Feng PROPOSAL
Aruna K DoeBrazilAnna Fali NEW
James E CaldareraUnited KingdomIvan Magalhaes RENEWAL
Claire F RulapaughFranceAnna Fali PROPOSAL
Rodrigues X RimIndiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ivar V FigeroaBrazilAnna Fali RENEWAL
Chavez E WaycottGermanyElwin Sharvill NEW
Adams I IturbideAustraliaElwin Sharvill NEW
Cody B AlbaresGermanyOnyama Limba UNQUALIFIED
Kaitlin C KuskoJapanXuxue Feng PROPOSAL
Tony Z AmigonAustraliaBernardo Dominic NEW
Ivar S StockhamGermanyAsiya Javayant RENEWAL
Stacey G VocelkaBrazilStephen Shaw QUALIFIED
Smith F OstroskyFranceIoni Bowcher RENEWAL
Antonio G WaycottArgentinaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas V DoeUnited Kingdom2024-06-23Feiner Bros RENEWAL37Ivan Magalhaes
1001Chavez T GillianGermany2024-06-14Feiner Bros PROPOSAL45Onyama Limba
1002Smith S AmigonJapan2024-06-06Chanay, Jeffrey A Esq QUALIFIED3Asiya Javayant
1003Darci B CaldareraJapan2024-06-11Chapman, Ross E Esq NEGOTIATION28Xuxue Feng
1004Munro K SlusarskiGermany2024-06-14King, Christopher A Esq RENEWAL56Anna Fali
1005Izzy S BowleyCanada2024-06-23Rousseaux, Michael Esq NEW95Ioni Bowcher
1006Sinclair A CaldareraCanada2024-05-28Printing Dimensions NEW44Onyama Limba
1007Clifford L GarufiBrazil2024-06-06Feltz Printing Service QUALIFIED26Elwin Sharvill
1008Mujtaba J BriddickBrazil2024-06-12Chapman, Ross E Esq NEW70Elwin Sharvill
1009Juan H NickaItaly2024-05-31Feiner Bros PROPOSAL59Amy Elsner
1010Clifford G FlosiArgentina2024-06-17Feltz Printing Service RENEWAL6Elwin Sharvill
1011Arvin I MaletBrazil2024-05-26Commercial Press PROPOSAL90Anna Fali
1012Leon H KuskoFrance2024-06-14Dorl, James J Esq RENEWAL24Ioni Bowcher
1013Deepesh W AmigonUnited Kingdom2024-06-22Truhlar And Truhlar Attys RENEWAL92Onyama Limba
1014Greenwood D SergiIndia2024-06-20Dorl, James J Esq PROPOSAL83Elwin Sharvill
1015Emily V PoquetteBrazil2024-05-26Printing Dimensions PROPOSAL63Onyama Limba
1016Greenwood Q FerenczJapan2024-06-01Chanay, Jeffrey A Esq QUALIFIED40Asiya Javayant
1017Stacey F MacleadAustralia2024-06-06Benton, John B Jr UNQUALIFIED82Stephen Shaw
1018Isabel U BologniaJapan2024-06-21Rangoni Of Florence NEGOTIATION20Asiya Javayant
1019Misaki O FlosiFrance2024-06-24Feiner Bros NEW36Amy Elsner
1020Ivar T VocelkaFrance2024-06-16Commercial Press NEW53Anna Fali
1021David F SergiAustralia2024-06-01Feiner Bros RENEWAL38Asiya Javayant
1022Stacey U PaprockiBrazil2024-05-30Printing Dimensions QUALIFIED70Elwin Sharvill
1023Julie X NestleBrazil2024-05-28Printing Dimensions UNQUALIFIED53Asiya Javayant
1024Julie V MaletBrazil2024-05-29Chemel, James L Cpa NEW96Ivan Magalhaes
1025Sinclair T SlusarskiJapan2024-06-16King, Christopher A Esq QUALIFIED90Ivan Magalhaes
1026Adams V RulapaughAustralia2024-06-23Dorl, James J Esq NEW67Ioni Bowcher
1027Julie S SergiGermany2024-06-16Chanay, Jeffrey A Esq NEW82Asiya Javayant
1028Maria R DarakjyFrance2024-06-15Benton, John B Jr UNQUALIFIED35Bernardo Dominic
1029Mayumi H CampainBrazil2024-06-23Feiner Bros PROPOSAL7Elwin Sharvill
1030Mujtaba U TollnerRussia2024-05-30Rousseaux, Michael Esq NEGOTIATION85Bernardo Dominic
1031Emily F AmigonArgentina2024-06-21Chapman, Ross E Esq NEW55Ivan Magalhaes
1032Jeanfrancois G GauchoCanada2024-05-26Rangoni Of Florence NEW42Bernardo Dominic
1033Silvio C RimIndia2024-05-30Printing Dimensions NEGOTIATION39Xuxue Feng
1034Murillo O TollnerGermany2024-06-19Feltz Printing Service UNQUALIFIED74Ivan Magalhaes
1035Stacey Q SchemmerGermany2024-06-03Buckley Miller Wright UNQUALIFIED93Asiya Javayant
1036Aditya G WaycottBrazil2024-06-17Feiner Bros NEGOTIATION9Anna Fali
1037Ivar I BriddickRussia2024-06-09Feiner Bros QUALIFIED14Anna Fali
1038Cody D FollerIndia2024-06-13Printing Dimensions QUALIFIED74Amy Elsner
1039Sinclair O RulapaughGermany2024-06-23Dorl, James J Esq QUALIFIED89Elwin Sharvill
1040Jennifer J GillianIndia2024-06-23Buckley Miller Wright RENEWAL94Elwin Sharvill
1041Arvin G MacleadAustralia2024-06-17Printing Dimensions NEW43Stephen Shaw
1042Jefferson B GlickRussia2024-06-17Feiner Bros UNQUALIFIED86Onyama Limba
1043Nicolas S VenereAustralia2024-06-23Commercial Press NEGOTIATION74Anna Fali
1044Antonio M TollnerFrance2024-06-02Feltz Printing Service NEW99Bernardo Dominic
1045Ricardo M ShinkoBrazil2024-06-21Rangoni Of Florence NEGOTIATION21Xuxue Feng
1046Murillo O NickaBrazil2024-06-12Feltz Printing Service QUALIFIED39Asiya Javayant
1047Jeanfrancois Z CaudyGermany2024-06-21Rousseaux, Michael Esq RENEWAL86Ivan Magalhaes
1048Greenwood S InouyeSpain2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED5Ivan Magalhaes
1049Maisha F PoquetteUnited Kingdom2024-06-23Rangoni Of Florence PROPOSAL9Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Ricardo M NestleArgentinaAsiya Javayant NEGOTIATION
Aditya E GarufiAustraliaXuxue Feng RENEWAL
Juan R VocelkaBrazilStephen Shaw NEW
Silvio X DilliardGermanyAsiya Javayant NEGOTIATION
David Q ChuiRussiaAnna Fali UNQUALIFIED
Wickens O TollnerItalyElwin Sharvill NEGOTIATION
Darci Q FerenczUnited KingdomElwin Sharvill NEW
Leon C CaudySpainAnna Fali UNQUALIFIED
Munro Y MacleadJapanAsiya Javayant NEGOTIATION
Jennifer E MarrierAustraliaOnyama Limba NEW
Cody J OstroskyJapanStephen Shaw QUALIFIED
Jeanfrancois E CaldareraAustraliaOnyama Limba QUALIFIED
Leja W ChuiIndiaIvan Magalhaes UNQUALIFIED
Francesco V GarufiBrazilAsiya Javayant NEW
Smith H AlbaresSpainIvan Magalhaes UNQUALIFIED
Jones M SaylorsBrazilBernardo Dominic NEW
Murillo B WaycottBrazilBernardo Dominic UNQUALIFIED
Darci S InouyeArgentinaOnyama Limba PROPOSAL
Aruna J NickaItalyBernardo Dominic QUALIFIED
Aruna M SchemmerIndiaAsiya Javayant NEW
Isabel X SlusarskiItalyAmy Elsner RENEWAL
Salvatore D RulapaughArgentinaAmy Elsner PROPOSAL
James O SaylorsArgentinaIoni Bowcher QUALIFIED
Ivar Z MacleadRussiaIoni Bowcher RENEWAL
Wickens N SchemmerSpainOnyama Limba PROPOSAL
Chavez A AlbaresAustraliaAnna Fali NEGOTIATION
Kadeem L WieserArgentinaIoni Bowcher UNQUALIFIED
Aditya V SaylorsJapanIvan Magalhaes NEW
Juan W WieserArgentinaXuxue Feng NEW
Aditya P PerinItalyXuxue Feng QUALIFIED
Kadeem M GillianFranceAsiya Javayant NEW
Smith I IturbideItalyXuxue Feng UNQUALIFIED
Leja D SaylorsCanadaStephen Shaw QUALIFIED
Johnson F VenereCanadaAnna Fali PROPOSAL
Chavez X KuskoIndiaBernardo Dominic PROPOSAL
Francesco X RulapaughIndiaBernardo Dominic RENEWAL
Francesco Z MaletAustraliaAnna Fali UNQUALIFIED
Isabel A VocelkaFranceXuxue Feng PROPOSAL
Kadeem W PaprockiJapanIvan Magalhaes QUALIFIED
Isabel J TollnerBrazilXuxue Feng PROPOSAL
Kadeem B ChuiBrazilElwin Sharvill NEW
Clifford F CaldareraIndiaStephen Shaw PROPOSAL
Mujtaba L SlusarskiSpainBernardo Dominic UNQUALIFIED
Adams M VenereIndiaBernardo Dominic RENEWAL
Adams W DilliardGermanyElwin Sharvill UNQUALIFIED
Silvio E AlbaresIndiaXuxue Feng RENEWAL
Maria W GlickAustraliaAnna Fali NEW
Ashley V DoeFranceAmy Elsner NEGOTIATION
Maisha U VenereItalyAsiya Javayant RENEWAL
Rodrigues S CampainBrazilXuxue Feng QUALIFIED
Frozen Columns
Name
Nicolas A Morasca
Leja C Caldarera
Nicolas I Gaucho
Wickens G Caudy
Wickens B Gaucho
Ashley R Bolognia
Octavia P Glick
Ivar F Iturbide
Jennifer I Kolmetz
Ivar Z Perin
Jeanfrancois A Caudy
James Q Darakjy
Clifford E Figeroa
James Z Maclead
Alejandro Y Morasca
Francesco E Ruta
Mayumi O Stenseth
Arvin T Ferencz
Aika D Ruta
Antonio R Kusko
Claire C Venere
David V Ferencz
Nicolas Z Nicka
Rodrigues M Briddick
Claire W Nestle
Juan P Marrier
Maria A Bowley
Aruna F Royster
Ivar O Garufi
James M Gaucho
Murillo X Maclead
Jones Q Perin
Arvin R Chui
Stacey C Nicka
Jeanfrancois W Marrier
Antonio U Glick
Costa N Darakjy
Wickens I Sergi
Kadeem I Shinko
Isabel I Malet
Salvatore O Paprocki
Rodrigues W Gillian
Stacey G Perin
Ricardo K Kusko
Maisha G Nicka
Johnson E Wieser
Arvin K Ostrosky
Ashley X Doe
Misaki I Briddick
Salvatore T Poquette
IdCountryDate
1000Brazil2024-06-22
1001Germany2024-06-08
1002Spain2024-06-18
1003United Kingdom2024-06-09
1004Russia2024-06-18
1005Russia2024-06-10
1006India2024-06-03
1007Canada2024-06-09
1008Argentina2024-06-08
1009Argentina2024-06-14
1010France2024-05-26
1011Brazil2024-06-16
1012Russia2024-06-08
1013Australia2024-05-30
1014Italy2024-06-18
1015Canada2024-06-12
1016Italy2024-06-20
1017Italy2024-06-19
1018United Kingdom2024-05-31
1019France2024-06-05
1020India2024-06-07
1021Brazil2024-05-31
1022Italy2024-06-15
1023Spain2024-06-17
1024Italy2024-06-22
1025India2024-06-24
1026United Kingdom2024-06-20
1027Brazil2024-06-08
1028Canada2024-06-01
1029Japan2024-05-26
1030Russia2024-06-19
1031Japan2024-05-26
1032Canada2024-06-13
1033Italy2024-05-28
1034Brazil2024-06-19
1035Australia2024-06-06
1036United Kingdom2024-06-16
1037Japan2024-06-12
1038Brazil2024-06-17
1039Italy2024-06-23
1040Canada2024-06-24
1041India2024-06-16
1042Japan2024-06-14
1043France2024-05-27
1044Canada2024-06-14
1045Australia2024-06-16
1046France2024-06-03
1047France2024-06-04
1048Canada2024-06-07
1049Brazil2024-06-24

On-Demand Data

NameIdCountryDate
Adams Z Caudy1000Italy2024-06-23
Octavia K Slusarski1001Australia2024-06-06
Jennifer N Malet1002Australia2024-06-24
Aika K Oldroyd1003United Kingdom2024-05-26
Jefferson O Kusko1004Italy2024-06-07
Alejandro H Dilliard1005Canada2024-06-04
Johnson M Nicka1006India2024-06-12
Jones R Venere1007France2024-06-15
Alejandro Q Chui1008Germany2024-06-06
Leja T Garufi1009France2024-06-07
Faith L Rim1010United Kingdom2024-05-28
Faith V Shinko1011Brazil2024-05-27
Nicolas O Dilliard1012Russia2024-06-24
Ivar T Maclead1013Italy2024-06-11
Francesco F Glick1014Germany2024-05-29
Smith M Foller1015France2024-06-16
Chavez O Glick1016Canada2024-05-26
Jones X Marrier1017France2024-06-08
Chavez H Foller1018Argentina2024-06-20
Faith A Schemmer1019Russia2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan N AmigonFranceBernardo Dominic UNQUALIFIED
Morrow T SaylorsItalyIvan Magalhaes PROPOSAL
Isabel M RutaRussiaAnna Fali NEW
Faith F PoquetteRussiaAnna Fali NEW
Darci Z GillianBrazilElwin Sharvill NEW
Morrow D CaudyCanadaStephen Shaw PROPOSAL
Maria N BriddickAustraliaStephen Shaw NEW
Aika J BologniaJapanStephen Shaw RENEWAL
Darci S ChuiBrazilAsiya Javayant PROPOSAL
Octavia Q RutaSpainXuxue Feng PROPOSAL
Aika E AmigonUnited KingdomAnna Fali NEGOTIATION
Kadeem Q FigeroaBrazilStephen Shaw NEGOTIATION
Tony F NickaRussiaAmy Elsner RENEWAL
Jeanfrancois K GillianFranceBernardo Dominic NEGOTIATION
Aruna D SchemmerItalyAmy Elsner NEW
Faith B MaletIndiaXuxue Feng QUALIFIED
David S VenereGermanyOnyama Limba NEW
Johnson L FollerBrazilBernardo Dominic NEGOTIATION
Francesco M AlbaresIndiaAmy Elsner NEW
Tony I GarufiRussiaAnna Fali NEGOTIATION
Chavez I MacleadRussiaIoni Bowcher RENEWAL
Jefferson W GarufiSpainAmy Elsner UNQUALIFIED
Julie S SchemmerSpainAsiya Javayant QUALIFIED
Silvio Q GarufiItalyIvan Magalhaes PROPOSAL
Adams I DoeFranceElwin Sharvill NEGOTIATION
Jennifer M WaycottFranceAsiya Javayant UNQUALIFIED
Ivar N KolmetzSpainXuxue Feng UNQUALIFIED
Darci Z GarufiRussiaAsiya Javayant NEGOTIATION
Rodrigues A VenereJapanOnyama Limba UNQUALIFIED
Izzy K RulapaughRussiaElwin Sharvill NEW
Deepesh L WieserArgentinaStephen Shaw RENEWAL
Salvatore K GarufiItalyElwin Sharvill NEW
Julie G WaycottJapanIvan Magalhaes RENEWAL
Aika F StockhamRussiaXuxue Feng RENEWAL
Ricardo K RulapaughIndiaAnna Fali QUALIFIED
Julie C FlosiRussiaStephen Shaw QUALIFIED
Chavez P RoysterSpainElwin Sharvill QUALIFIED
Munro J WaycottBrazilAmy Elsner PROPOSAL
Maria W StockhamRussiaOnyama Limba RENEWAL
Wickens G FerenczAustraliaIvan Magalhaes 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>