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
Alejandro M KuskoFranceAnna Fali QUALIFIED
Costa Y RulapaughRussiaIvan Magalhaes UNQUALIFIED
James C GarufiArgentinaStephen Shaw PROPOSAL
Aika H VenereCanadaStephen Shaw UNQUALIFIED
Silvio J PerinGermanyAmy Elsner PROPOSAL
Octavia O WieserCanadaAnna Fali NEW
Emily H CampainAustraliaOnyama Limba UNQUALIFIED
Aruna N StensethAustraliaElwin Sharvill UNQUALIFIED
Maria X KuskoGermanyAsiya Javayant NEGOTIATION
Maisha D MaletFranceOnyama Limba NEW
Juan L WaycottBrazilElwin Sharvill QUALIFIED
Izzy U StensethIndiaIoni Bowcher PROPOSAL
Smith X ChuiSpainAnna Fali UNQUALIFIED
Johnson U PaprockiIndiaAnna Fali UNQUALIFIED
Maisha E CaudyJapanIoni Bowcher NEGOTIATION
Jefferson X VenereItalyElwin Sharvill UNQUALIFIED
Tony N DilliardItalyBernardo Dominic QUALIFIED
Faith D ShinkoArgentinaXuxue Feng QUALIFIED
Leja U WieserBrazilIoni Bowcher PROPOSAL
Emily O RulapaughFranceOnyama Limba QUALIFIED
Silvio O SchemmerRussiaXuxue Feng NEW
Rodrigues P NickaSpainBernardo Dominic PROPOSAL
Claire Z SaylorsJapanStephen Shaw PROPOSAL
Tony J KuskoFranceXuxue Feng QUALIFIED
Kadeem I GauchoUnited KingdomIoni Bowcher UNQUALIFIED
Ivar D SchemmerFranceAnna Fali RENEWAL
Izzy W CampainSpainAmy Elsner QUALIFIED
Octavia D CaudyFranceAmy Elsner NEW
Jones D SlusarskiCanadaIoni Bowcher PROPOSAL
Rodrigues D NickaIndiaIvan Magalhaes NEGOTIATION
Octavia S GarufiCanadaAnna Fali RENEWAL
Ivar Y SergiFranceBernardo Dominic NEGOTIATION
Arvin Q MorascaUnited KingdomIoni Bowcher PROPOSAL
Stacey Z StockhamJapanElwin Sharvill NEW
Munro X CaldareraArgentinaAmy Elsner QUALIFIED
James I ShinkoFranceAmy Elsner NEW
Antonio H BriddickGermanyXuxue Feng PROPOSAL
Arvin G PoquetteArgentinaAmy Elsner RENEWAL
David F InouyeFranceBernardo Dominic NEGOTIATION
Maria J GarufiJapanIoni Bowcher UNQUALIFIED
Francesco Y GarufiAustraliaIvan Magalhaes NEGOTIATION
Leja A GlickBrazilIoni Bowcher NEGOTIATION
Adams Z FigeroaRussiaOnyama Limba PROPOSAL
Silvio H WhobreyItalyAmy Elsner RENEWAL
Ashley B ChuiCanadaXuxue Feng PROPOSAL
Deepesh K SchemmerRussiaAsiya Javayant PROPOSAL
Ashley E WieserGermanyIvan Magalhaes PROPOSAL
Nicolas O NickaBrazilBernardo Dominic RENEWAL
Salvatore K PaprockiIndiaAmy Elsner QUALIFIED
Juan T CaudyJapanXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Antonio H MacleadGermanyAnna Fali NEGOTIATION
Tony D BowleyUnited KingdomElwin Sharvill UNQUALIFIED
Nicolas V FigeroaBrazilElwin Sharvill RENEWAL
Izzy W DarakjyUnited KingdomOnyama Limba UNQUALIFIED
Claire J WieserItalyAmy Elsner PROPOSAL
Leja V ButtUnited KingdomIoni Bowcher NEW
Tony Z StockhamSpainStephen Shaw NEW
Leja O TollnerArgentinaAsiya Javayant RENEWAL
Johnson H FollerFranceStephen Shaw NEW
Mayumi L MacleadFranceOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas B RulapaughRussia2024-06-07King, Christopher A Esq NEW0Anna Fali
1001Chavez M FlosiRussia2024-05-24Rousseaux, Michael Esq UNQUALIFIED61Asiya Javayant
1002Misaki O FlosiGermany2024-06-20Rousseaux, Michael Esq UNQUALIFIED11Elwin Sharvill
1003Octavia X GillianIndia2024-05-26Feltz Printing Service RENEWAL69Bernardo Dominic
1004Stacey Z BowleyBrazil2024-06-18Morlong Associates QUALIFIED75Stephen Shaw
1005Claire F SaylorsJapan2024-06-12Feiner Bros NEGOTIATION49Bernardo Dominic
1006Jennifer A CaldareraAustralia2024-06-10Commercial Press NEGOTIATION87Asiya Javayant
1007Tony J BowleyItaly2024-06-12Benton, John B Jr QUALIFIED44Anna Fali
1008Emily D FerenczUnited Kingdom2024-06-08Morlong Associates QUALIFIED59Onyama Limba
1009Salvatore W CampainBrazil2024-06-14Chanay, Jeffrey A Esq PROPOSAL18Asiya Javayant
1010Sinclair N MaletArgentina2024-05-29Chemel, James L Cpa NEW56Asiya Javayant
1011Faith J IturbideArgentina2024-05-24Rousseaux, Michael Esq PROPOSAL79Onyama Limba
1012Antonio V CampainItaly2024-05-24Benton, John B Jr QUALIFIED84Ioni Bowcher
1013Maisha T DilliardIndia2024-06-11Dorl, James J Esq NEGOTIATION94Amy Elsner
1014Jones G BriddickArgentina2024-05-29Rousseaux, Michael Esq QUALIFIED56Anna Fali
1015Smith B FigeroaArgentina2024-05-31Rangoni Of Florence PROPOSAL63Anna Fali
1016Octavia W GarufiIndia2024-06-04Rousseaux, Michael Esq QUALIFIED74Stephen Shaw
1017Izzy G GillianBrazil2024-05-29Chanay, Jeffrey A Esq RENEWAL64Ioni Bowcher
1018Leja R StockhamJapan2024-06-04Dorl, James J Esq NEGOTIATION49Elwin Sharvill
1019Aika F SaylorsAustralia2024-05-28Rangoni Of Florence QUALIFIED42Amy Elsner
1020Nicolas Q GillianSpain2024-05-30Chemel, James L Cpa NEW41Stephen Shaw
1021Murillo A AmigonGermany2024-05-29Feiner Bros NEW0Anna Fali
1022Julie J RimFrance2024-06-13Truhlar And Truhlar Attys PROPOSAL91Amy Elsner
1023Smith R OstroskyJapan2024-06-08Benton, John B Jr NEW4Stephen Shaw
1024Julie R KolmetzSpain2024-06-21King, Christopher A Esq NEW85Stephen Shaw
1025Munro Q VocelkaAustralia2024-06-09Chemel, James L Cpa PROPOSAL52Amy Elsner
1026Maria C RoysterItaly2024-06-14King, Christopher A Esq QUALIFIED78Bernardo Dominic
1027Misaki C StockhamCanada2024-05-29Commercial Press NEW16Asiya Javayant
1028Emily M TollnerGermany2024-06-17Feltz Printing Service NEW56Bernardo Dominic
1029Adams K ChuiSpain2024-06-17Chemel, James L Cpa PROPOSAL31Xuxue Feng
1030Maisha U VocelkaItaly2024-06-13Buckley Miller Wright PROPOSAL54Xuxue Feng
1031Emily T PoquetteAustralia2024-05-29Chemel, James L Cpa RENEWAL55Bernardo Dominic
1032Salvatore R MorascaGermany2024-06-09Feiner Bros RENEWAL9Ioni Bowcher
1033Tony T MaletAustralia2024-06-04Truhlar And Truhlar Attys UNQUALIFIED22Amy Elsner
1034Mayumi Y FerenczAustralia2024-06-18Rousseaux, Michael Esq QUALIFIED48Amy Elsner
1035Kadeem H IturbideItaly2024-06-17Chapman, Ross E Esq QUALIFIED6Ioni Bowcher
1036Sinclair K ShinkoSpain2024-06-22Rangoni Of Florence QUALIFIED32Ivan Magalhaes
1037James A NickaIndia2024-05-26Benton, John B Jr UNQUALIFIED22Asiya Javayant
1038Murillo Q ChuiGermany2024-06-14Benton, John B Jr QUALIFIED15Amy Elsner
1039Octavia V AlbaresJapan2024-06-18Printing Dimensions NEW22Asiya Javayant
1040Darci U FollerCanada2024-06-02Chapman, Ross E Esq NEW89Elwin Sharvill
1041Aditya C FerenczFrance2024-06-03Commercial Press PROPOSAL70Asiya Javayant
1042Nicolas S VenereIndia2024-06-03Chanay, Jeffrey A Esq UNQUALIFIED84Anna Fali
1043Cody G RimBrazil2024-05-25Chemel, James L Cpa RENEWAL24Ivan Magalhaes
1044Mujtaba K IturbideUnited Kingdom2024-05-26King, Christopher A Esq PROPOSAL26Onyama Limba
1045Maria O InouyeFrance2024-06-18Dorl, James J Esq QUALIFIED0Asiya Javayant
1046James P DarakjyAustralia2024-06-21Buckley Miller Wright NEGOTIATION99Amy Elsner
1047Juan Q InouyeItaly2024-06-08Truhlar And Truhlar Attys UNQUALIFIED77Ivan Magalhaes
1048Ricardo D CampainSpain2024-06-22Morlong Associates RENEWAL51Xuxue Feng
1049Maria B NickaIndia2024-06-07Printing Dimensions PROPOSAL40Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Tony P BowleyRussiaOnyama Limba QUALIFIED
Rodrigues A DarakjyBrazilAnna Fali QUALIFIED
Julie R PoquetteCanadaAmy Elsner NEGOTIATION
James J WhobreySpainBernardo Dominic QUALIFIED
Clifford C FlosiAustraliaXuxue Feng NEGOTIATION
Johnson U DilliardIndiaStephen Shaw QUALIFIED
Claire V GillianItalyBernardo Dominic NEW
David T ChuiFranceOnyama Limba UNQUALIFIED
Claire J SaylorsArgentinaIvan Magalhaes PROPOSAL
Alejandro Z SergiItalyOnyama Limba NEGOTIATION
Julie N DarakjyArgentinaElwin Sharvill NEGOTIATION
Murillo O FerenczUnited KingdomBernardo Dominic QUALIFIED
Murillo E GillianGermanyBernardo Dominic RENEWAL
Francesco Y RimArgentinaAmy Elsner RENEWAL
Aruna V ButtGermanyXuxue Feng QUALIFIED
Jennifer C FigeroaJapanAnna Fali RENEWAL
Ivar D SchemmerUnited KingdomElwin Sharvill QUALIFIED
Mayumi P OstroskyJapanOnyama Limba QUALIFIED
Aika Y FollerUnited KingdomBernardo Dominic NEW
Jennifer O RimItalyAsiya Javayant QUALIFIED
Antonio S BowleyArgentinaStephen Shaw QUALIFIED
Greenwood K NickaFranceXuxue Feng NEW
Arvin I CaldareraAustraliaOnyama Limba RENEWAL
Sinclair X SaylorsJapanIoni Bowcher PROPOSAL
Aika F VenereArgentinaOnyama Limba NEGOTIATION
Chavez W OstroskyFranceAnna Fali RENEWAL
Kaitlin Z WieserRussiaAnna Fali UNQUALIFIED
Jennifer X RimItalyXuxue Feng RENEWAL
Costa M NickaGermanyAsiya Javayant QUALIFIED
Ricardo J CaldareraRussiaXuxue Feng PROPOSAL
Maria P InouyeFranceIoni Bowcher UNQUALIFIED
Julie E KuskoSpainAsiya Javayant NEW
Izzy V BologniaCanadaElwin Sharvill PROPOSAL
Ashley R VocelkaGermanyIoni Bowcher QUALIFIED
Deepesh S SergiRussiaAmy Elsner NEW
Misaki G KuskoArgentinaIoni Bowcher NEW
Leja F VocelkaCanadaOnyama Limba UNQUALIFIED
Alejandro M WaycottIndiaAsiya Javayant RENEWAL
Ivar G CampainJapanAsiya Javayant NEW
Sinclair A IturbideRussiaIvan Magalhaes RENEWAL
James A KolmetzFranceBernardo Dominic RENEWAL
Kadeem S SaylorsFranceAmy Elsner RENEWAL
Stacey I KolmetzItalyElwin Sharvill QUALIFIED
Chavez D BowleyFranceXuxue Feng PROPOSAL
Mujtaba I GarufiRussiaOnyama Limba PROPOSAL
Aika I WaycottIndiaIvan Magalhaes QUALIFIED
Leja M RimArgentinaAsiya Javayant PROPOSAL
James H PoquetteGermanyIoni Bowcher RENEWAL
Julie E KuskoGermanyElwin Sharvill RENEWAL
Jones O RutaIndiaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Claire J Morasca
Julie W Royster
Sinclair I Waycott
Adams O Malet
Jefferson Y Vocelka
Francesco Z Sergi
Chavez T Inouye
Antonio F Ruta
Aruna M Slusarski
Antonio L Albares
Aditya M Figeroa
Darci Y Chui
Aditya Z Campain
Wickens N Waycott
Greenwood G Marrier
Julie D Ostrosky
Jeanfrancois D Vocelka
Smith C Oldroyd
Jones V Stenseth
Johnson L Saylors
James W Tollner
Deepesh L Gaucho
Murillo W Rim
Rodrigues I Tollner
Greenwood W Briddick
Misaki I Whobrey
Faith S Sergi
Deepesh E Bowley
Morrow F Paprocki
Jeanfrancois C Ruta
Stacey W Poquette
Leja B Paprocki
Julie I Ostrosky
Cody O Whobrey
James T Garufi
Izzy C Malet
Smith R Marrier
Antonio J Tollner
Wickens V Darakjy
Johnson D Morasca
Jennifer L Figeroa
Aruna W Figeroa
Mayumi L Bowley
Cody H Nestle
Claire T Malet
Darci U Darakjy
Maria E Stockham
Misaki R Albares
Morrow B Ostrosky
Wickens W Morasca
IdCountryDate
1000United Kingdom2024-06-01
1001United Kingdom2024-06-11
1002Australia2024-06-13
1003Canada2024-06-07
1004Argentina2024-06-02
1005Brazil2024-06-14
1006Spain2024-06-10
1007Italy2024-06-10
1008United Kingdom2024-06-22
1009Japan2024-06-09
1010Japan2024-06-08
1011Canada2024-06-07
1012Argentina2024-06-12
1013Japan2024-05-31
1014Japan2024-06-02
1015Brazil2024-06-01
1016Canada2024-06-22
1017France2024-06-02
1018Argentina2024-06-01
1019Spain2024-06-18
1020Brazil2024-05-29
1021Australia2024-06-21
1022Italy2024-05-30
1023Brazil2024-06-21
1024India2024-06-17
1025India2024-05-27
1026Canada2024-06-14
1027Argentina2024-06-08
1028India2024-06-07
1029France2024-05-28
1030Canada2024-06-12
1031Japan2024-05-30
1032Japan2024-06-20
1033Brazil2024-06-02
1034India2024-05-24
1035France2024-06-18
1036Italy2024-06-19
1037Australia2024-06-21
1038India2024-06-13
1039Spain2024-06-04
1040France2024-06-10
1041Italy2024-05-26
1042Spain2024-06-10
1043Canada2024-06-09
1044India2024-05-31
1045Japan2024-06-06
1046United Kingdom2024-05-30
1047Japan2024-06-15
1048Germany2024-06-04
1049Spain2024-06-11

On-Demand Data

NameIdCountryDate
Stacey K Figeroa1000United Kingdom2024-06-18
Julie W Bowley1001Russia2024-06-05
Sinclair H Dilliard1002Germany2024-06-13
Kaitlin S Waycott1003India2024-06-07
Tony B Malet1004France2024-05-24
Antonio W Gaucho1005Germany2024-05-26
Francesco P Gillian1006Germany2024-06-20
Alejandro U Perin1007Germany2024-06-08
Octavia C Schemmer1008Spain2024-06-13
Silvio W Darakjy1009Japan2024-05-28
Jones P Amigon1010Brazil2024-06-09
Leon M Gillian1011Australia2024-05-27
Costa J Shinko1012India2024-06-11
Ricardo C Royster1013United Kingdom2024-06-18
Adams T Butt1014United Kingdom2024-06-11
Darci N Nestle1015Argentina2024-05-27
Wickens W Ruta1016Russia2024-06-06
Aditya X Vocelka1017Canada2024-05-29
David I Ruta1018France2024-06-13
Julie Z Darakjy1019India2024-06-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin V AlbaresCanadaBernardo Dominic RENEWAL
Leon A SchemmerCanadaXuxue Feng PROPOSAL
Rodrigues F RulapaughIndiaXuxue Feng UNQUALIFIED
Stacey X IturbideItalyAnna Fali NEGOTIATION
Juan N DarakjyItalyElwin Sharvill RENEWAL
Aditya W GauchoSpainElwin Sharvill UNQUALIFIED
Clifford J NestleBrazilBernardo Dominic RENEWAL
Stacey Q SergiItalyOnyama Limba NEW
Jeanfrancois B ShinkoAustraliaElwin Sharvill RENEWAL
Arvin T BowleyUnited KingdomXuxue Feng QUALIFIED
Leon M AlbaresSpainStephen Shaw PROPOSAL
Munro P MaletItalyIoni Bowcher QUALIFIED
Sinclair G GillianSpainIoni Bowcher PROPOSAL
Wickens F BologniaJapanIvan Magalhaes UNQUALIFIED
Juan L FollerArgentinaAmy Elsner PROPOSAL
Maisha F MorascaRussiaElwin Sharvill RENEWAL
Maisha A CaldareraCanadaIvan Magalhaes RENEWAL
Tony A ShinkoJapanIoni Bowcher UNQUALIFIED
Francesco T SaylorsItalyBernardo Dominic PROPOSAL
Leja M NestleUnited KingdomBernardo Dominic NEW
Misaki I PoquetteRussiaStephen Shaw UNQUALIFIED
Morrow W AmigonIndiaAmy Elsner NEW
Salvatore M ChuiRussiaIvan Magalhaes QUALIFIED
Julie L ButtUnited KingdomStephen Shaw NEW
Kadeem A VocelkaIndiaAsiya Javayant PROPOSAL
Isabel J StensethCanadaOnyama Limba NEGOTIATION
Mujtaba B MorascaBrazilAnna Fali PROPOSAL
Costa E NickaCanadaIvan Magalhaes UNQUALIFIED
Antonio I MacleadAustraliaBernardo Dominic NEW
Costa G TollnerSpainOnyama Limba RENEWAL
Antonio B SchemmerCanadaAmy Elsner RENEWAL
Jeanfrancois F FlosiItalyAnna Fali UNQUALIFIED
Salvatore B BologniaRussiaIoni Bowcher NEGOTIATION
Stacey R AlbaresArgentinaOnyama Limba UNQUALIFIED
Wickens X ButtRussiaElwin Sharvill RENEWAL
Wickens R WhobreySpainBernardo Dominic RENEWAL
Sinclair A RimFranceIoni Bowcher NEW
David O KolmetzRussiaAsiya Javayant RENEWAL
Sinclair Z ChuiJapanOnyama Limba RENEWAL
Kadeem W SergiSpainAmy Elsner 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>