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
Aditya U CampainSpainStephen Shaw QUALIFIED
Morrow V WaycottItalyAsiya Javayant QUALIFIED
Smith A VenereFranceIoni Bowcher UNQUALIFIED
Nicolas D PerinRussiaBernardo Dominic UNQUALIFIED
Misaki R RulapaughJapanAsiya Javayant NEGOTIATION
Aika B WhobreyRussiaXuxue Feng NEW
Deepesh P IturbideUnited KingdomIvan Magalhaes QUALIFIED
Octavia F PoquetteArgentinaXuxue Feng NEW
Juan Y WhobreyAustraliaXuxue Feng QUALIFIED
Alejandro L OldroydArgentinaIvan Magalhaes RENEWAL
Ricardo L DoeSpainIvan Magalhaes NEW
Ivar J StensethSpainBernardo Dominic UNQUALIFIED
Juan U InouyeIndiaOnyama Limba UNQUALIFIED
Wickens S CaudyJapanXuxue Feng QUALIFIED
Murillo Q SchemmerAustraliaElwin Sharvill QUALIFIED
Jennifer F ChuiRussiaStephen Shaw RENEWAL
Wickens W BologniaGermanyXuxue Feng PROPOSAL
Julie H MarrierArgentinaIvan Magalhaes QUALIFIED
Aditya N RutaJapanElwin Sharvill NEGOTIATION
Salvatore Q TollnerRussiaBernardo Dominic QUALIFIED
Aditya Q RutaUnited KingdomAsiya Javayant RENEWAL
Costa N SlusarskiIndiaIvan Magalhaes RENEWAL
Stacey Q AmigonRussiaAmy Elsner NEGOTIATION
David Y MaletJapanElwin Sharvill RENEWAL
Cody A FollerAustraliaElwin Sharvill NEGOTIATION
Izzy U KolmetzSpainBernardo Dominic PROPOSAL
Stacey P GauchoArgentinaIoni Bowcher NEGOTIATION
Murillo Y DarakjyItalyIoni Bowcher QUALIFIED
Murillo V VenereBrazilOnyama Limba PROPOSAL
Jones P WaycottGermanyXuxue Feng UNQUALIFIED
Stacey J RutaBrazilOnyama Limba UNQUALIFIED
Jennifer E PoquetteGermanyXuxue Feng NEW
Stacey Q GillianIndiaIoni Bowcher QUALIFIED
Isabel W ChuiAustraliaBernardo Dominic NEGOTIATION
Aika O GlickCanadaIoni Bowcher PROPOSAL
Arvin L BologniaItalyAsiya Javayant NEW
Deepesh B OstroskyGermanyElwin Sharvill NEW
Johnson P PerinAustraliaOnyama Limba QUALIFIED
Octavia F KuskoSpainOnyama Limba PROPOSAL
Isabel S WhobreyCanadaElwin Sharvill NEGOTIATION
Salvatore Y OldroydBrazilAnna Fali NEW
Salvatore O PoquetteUnited KingdomStephen Shaw RENEWAL
Johnson E WaycottJapanOnyama Limba RENEWAL
Johnson R VocelkaItalyElwin Sharvill QUALIFIED
Julie M FlosiAustraliaElwin Sharvill PROPOSAL
Leon D WieserRussiaStephen Shaw RENEWAL
Jeanfrancois C OstroskyUnited KingdomElwin Sharvill RENEWAL
Tony Z IturbideIndiaElwin Sharvill RENEWAL
Emily W SlusarskiItalyAsiya Javayant UNQUALIFIED
Leon S RutaCanadaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Darci U BologniaAustraliaAmy Elsner NEGOTIATION
Deepesh B AmigonItalyOnyama Limba NEW
Salvatore F SaylorsItalyElwin Sharvill PROPOSAL
Deepesh J ButtSpainStephen Shaw NEW
Silvio A GauchoUnited KingdomElwin Sharvill NEGOTIATION
Stacey Q MaletFranceXuxue Feng RENEWAL
Costa O PoquetteItalyStephen Shaw PROPOSAL
David W FollerUnited KingdomOnyama Limba PROPOSAL
Izzy H FlosiIndiaBernardo Dominic NEGOTIATION
Claire I SaylorsItalyOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki T CaldareraFrance2024-05-28Buckley Miller Wright RENEWAL64Bernardo Dominic
1001Kadeem V MorascaCanada2024-06-12Feltz Printing Service NEW25Bernardo Dominic
1002Tony F MarrierJapan2024-06-17Rousseaux, Michael Esq PROPOSAL46Stephen Shaw
1003Clifford U IturbideFrance2024-06-02Rousseaux, Michael Esq NEW23Ivan Magalhaes
1004Nicolas E CampainGermany2024-06-15Buckley Miller Wright PROPOSAL68Stephen Shaw
1005Greenwood Y NestleCanada2024-06-17Chemel, James L Cpa NEGOTIATION93Asiya Javayant
1006Leja Q DarakjyBrazil2024-06-07Benton, John B Jr NEW61Asiya Javayant
1007Munro V OldroydItaly2024-05-27King, Christopher A Esq PROPOSAL14Bernardo Dominic
1008Johnson K DilliardCanada2024-06-18Printing Dimensions UNQUALIFIED77Xuxue Feng
1009Aditya C FollerBrazil2024-06-02Commercial Press NEW75Bernardo Dominic
1010Sinclair U PerinBrazil2024-05-28Feiner Bros PROPOSAL53Amy Elsner
1011Silvio A MorascaJapan2024-05-26Rousseaux, Michael Esq RENEWAL81Amy Elsner
1012Cody Y RulapaughArgentina2024-06-09Buckley Miller Wright QUALIFIED56Anna Fali
1013Salvatore C FerenczJapan2024-06-09King, Christopher A Esq NEGOTIATION42Elwin Sharvill
1014Smith W ButtCanada2024-06-01Feiner Bros QUALIFIED39Onyama Limba
1015Sinclair W CampainSpain2024-06-11Chanay, Jeffrey A Esq RENEWAL1Asiya Javayant
1016Alejandro B ShinkoIndia2024-06-08Truhlar And Truhlar Attys UNQUALIFIED72Ivan Magalhaes
1017Silvio U RimSpain2024-05-25Chapman, Ross E Esq UNQUALIFIED8Xuxue Feng
1018Aruna X GarufiRussia2024-06-19Feiner Bros PROPOSAL56Amy Elsner
1019Clifford R ShinkoCanada2024-05-30Rangoni Of Florence QUALIFIED66Anna Fali
1020Darci R WieserAustralia2024-06-16Rangoni Of Florence RENEWAL35Onyama Limba
1021Ashley V SchemmerJapan2024-05-27Morlong Associates PROPOSAL30Amy Elsner
1022Aruna J PoquetteIndia2024-05-26Commercial Press NEW35Bernardo Dominic
1023Aika U KolmetzArgentina2024-06-18Feiner Bros NEGOTIATION55Asiya Javayant
1024Ivar T CaldareraRussia2024-06-10Chemel, James L Cpa RENEWAL73Elwin Sharvill
1025Stacey Y PerinUnited Kingdom2024-06-05Commercial Press QUALIFIED50Elwin Sharvill
1026Aditya F RimRussia2024-06-03Dorl, James J Esq QUALIFIED88Onyama Limba
1027Francesco K BowleyIndia2024-06-15Chanay, Jeffrey A Esq UNQUALIFIED33Asiya Javayant
1028Cody O RoysterIndia2024-06-14Printing Dimensions NEGOTIATION95Onyama Limba
1029Maria F PaprockiUnited Kingdom2024-06-03Chemel, James L Cpa QUALIFIED41Stephen Shaw
1030Leon Y SlusarskiSpain2024-05-27Chemel, James L Cpa UNQUALIFIED73Ioni Bowcher
1031Clifford B SergiRussia2024-06-12Rousseaux, Michael Esq RENEWAL56Asiya Javayant
1032Jones G DoeGermany2024-06-02Truhlar And Truhlar Attys QUALIFIED11Amy Elsner
1033Leon P CaldareraJapan2024-06-07Rousseaux, Michael Esq QUALIFIED63Bernardo Dominic
1034Izzy A NestleGermany2024-05-25Rousseaux, Michael Esq QUALIFIED89Bernardo Dominic
1035Mayumi Y CampainBrazil2024-06-10Dorl, James J Esq PROPOSAL94Elwin Sharvill
1036Julie R WaycottIndia2024-06-07Chanay, Jeffrey A Esq QUALIFIED49Onyama Limba
1037Wickens A WaycottItaly2024-06-01King, Christopher A Esq QUALIFIED79Ivan Magalhaes
1038Ivar F RoysterUnited Kingdom2024-05-24Buckley Miller Wright QUALIFIED0Elwin Sharvill
1039Maisha Q MorascaFrance2024-06-10Rousseaux, Michael Esq PROPOSAL82Amy Elsner
1040Misaki T MaletSpain2024-05-30Buckley Miller Wright PROPOSAL75Bernardo Dominic
1041Jennifer B CaudySpain2024-05-23King, Christopher A Esq PROPOSAL47Ivan Magalhaes
1042Johnson W VocelkaSpain2024-06-08Printing Dimensions QUALIFIED21Ioni Bowcher
1043Aruna Y NickaSpain2024-06-09Feltz Printing Service PROPOSAL24Onyama Limba
1044Aditya U RutaIndia2024-06-06Feltz Printing Service NEGOTIATION21Ioni Bowcher
1045David Z AmigonJapan2024-05-24Dorl, James J Esq NEW26Bernardo Dominic
1046Ivar V FerenczFrance2024-06-12Morlong Associates QUALIFIED23Stephen Shaw
1047Jefferson P OstroskyAustralia2024-06-15Morlong Associates PROPOSAL91Xuxue Feng
1048James K ShinkoJapan2024-06-11Chanay, Jeffrey A Esq UNQUALIFIED8Elwin Sharvill
1049Jeanfrancois F KolmetzGermany2024-06-13Commercial Press NEW72Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Alejandro T DilliardSpainAmy Elsner NEGOTIATION
Greenwood A CaldareraSpainBernardo Dominic RENEWAL
Darci P OstroskyAustraliaAmy Elsner NEW
James O KolmetzIndiaBernardo Dominic RENEWAL
Kaitlin N VenereItalyAnna Fali PROPOSAL
Faith O PoquetteSpainXuxue Feng NEW
Munro A RulapaughFranceAmy Elsner RENEWAL
Greenwood L FlosiRussiaXuxue Feng RENEWAL
David G WaycottIndiaBernardo Dominic RENEWAL
Greenwood C NestleBrazilElwin Sharvill PROPOSAL
Cody J TollnerArgentinaStephen Shaw QUALIFIED
Smith T MaletSpainIoni Bowcher PROPOSAL
Salvatore X PoquetteItalyIvan Magalhaes RENEWAL
Tony C MaletGermanyIvan Magalhaes NEW
Kaitlin H InouyeUnited KingdomElwin Sharvill NEW
Chavez K GauchoJapanIoni Bowcher RENEWAL
Ricardo M GarufiRussiaBernardo Dominic PROPOSAL
Leja N BriddickIndiaBernardo Dominic NEGOTIATION
Costa S ButtBrazilAsiya Javayant QUALIFIED
Kaitlin Y PoquetteGermanyXuxue Feng UNQUALIFIED
Misaki S PoquetteUnited KingdomAnna Fali NEGOTIATION
Chavez L MaletIndiaAnna Fali RENEWAL
Tony H NickaGermanyStephen Shaw RENEWAL
David J FlosiGermanyIvan Magalhaes QUALIFIED
Aditya G StockhamUnited KingdomElwin Sharvill RENEWAL
Tony E FerenczCanadaIvan Magalhaes QUALIFIED
Antonio S FlosiFranceElwin Sharvill PROPOSAL
Jones R PaprockiUnited KingdomXuxue Feng RENEWAL
Smith T BriddickArgentinaXuxue Feng PROPOSAL
Salvatore T NestleArgentinaOnyama Limba PROPOSAL
Leja T CampainSpainIvan Magalhaes PROPOSAL
Faith E SchemmerArgentinaXuxue Feng RENEWAL
Stacey J ChuiFranceAsiya Javayant NEW
Ivar K ChuiCanadaStephen Shaw RENEWAL
Stacey Y VenereUnited KingdomAmy Elsner RENEWAL
Leon P SergiUnited KingdomBernardo Dominic NEW
Morrow I AmigonIndiaIvan Magalhaes NEW
Cody T FlosiFranceStephen Shaw PROPOSAL
Mujtaba V AmigonArgentinaOnyama Limba QUALIFIED
Sinclair J AlbaresRussiaXuxue Feng UNQUALIFIED
Arvin X GauchoCanadaBernardo Dominic RENEWAL
Antonio Z BriddickFranceElwin Sharvill QUALIFIED
Rodrigues K CaudyCanadaIvan Magalhaes PROPOSAL
Misaki L KuskoArgentinaAmy Elsner PROPOSAL
Jennifer V MaletGermanyAnna Fali RENEWAL
Clifford X CampainGermanyIvan Magalhaes PROPOSAL
Salvatore G WaycottAustraliaAnna Fali RENEWAL
Salvatore P FollerJapanAmy Elsner NEW
Costa V CaudyGermanyXuxue Feng QUALIFIED
Kadeem Z VenereItalyIoni Bowcher RENEWAL
Frozen Columns
Name
Misaki Q Vocelka
Faith I Maclead
Misaki U Shinko
Jennifer P Dilliard
Darci P Nicka
Izzy A Darakjy
Silvio H Foller
Jefferson Z Nestle
Maisha B Perin
Aruna Z Kusko
Francesco E Albares
Jeanfrancois F Schemmer
Octavia Q Whobrey
Misaki Z Garufi
David T Dilliard
Juan Y Stockham
Johnson P Oldroyd
Claire J Kusko
Mayumi D Slusarski
Jefferson E Marrier
Ashley V Morasca
Alejandro W Royster
Rodrigues V Tollner
Aika E Glick
Clifford V Shinko
Ricardo O Chui
Juan Y Saylors
Salvatore A Wieser
Alejandro M Waycott
Greenwood R Tollner
Smith X Sergi
Kadeem D Morasca
Alejandro L Bolognia
Costa M Poquette
Chavez N Darakjy
Sinclair P Inouye
Jeanfrancois K Maclead
Ashley A Stenseth
Kaitlin I Darakjy
Murillo G Nicka
Ivar K Rim
Mayumi R Caldarera
Salvatore I Paprocki
Maria W Saylors
Emily D Caudy
Deepesh A Rulapaugh
Claire H Rim
Salvatore U Paprocki
David R Kusko
Greenwood I Kolmetz
IdCountryDate
1000Germany2024-05-26
1001Australia2024-06-05
1002Spain2024-06-18
1003Russia2024-06-18
1004Russia2024-06-04
1005United Kingdom2024-05-26
1006France2024-06-12
1007Italy2024-06-18
1008Japan2024-06-19
1009Japan2024-06-15
1010Spain2024-06-08
1011Germany2024-05-28
1012Russia2024-06-07
1013India2024-06-07
1014Germany2024-06-01
1015Japan2024-06-16
1016Italy2024-06-02
1017Spain2024-05-23
1018Canada2024-06-21
1019Spain2024-06-14
1020Spain2024-05-31
1021Canada2024-06-03
1022Spain2024-06-17
1023Canada2024-06-16
1024Canada2024-05-31
1025Japan2024-06-03
1026Argentina2024-06-18
1027Canada2024-05-28
1028Canada2024-05-24
1029France2024-06-17
1030Japan2024-05-25
1031Canada2024-06-17
1032Argentina2024-05-28
1033Argentina2024-06-10
1034Australia2024-06-20
1035Brazil2024-06-01
1036India2024-06-14
1037United Kingdom2024-05-31
1038India2024-06-18
1039Brazil2024-06-14
1040Italy2024-06-16
1041Brazil2024-06-07
1042Japan2024-06-21
1043United Kingdom2024-05-23
1044India2024-06-20
1045India2024-05-27
1046Australia2024-06-19
1047Argentina2024-06-10
1048France2024-06-14
1049Brazil2024-05-28

On-Demand Data

NameIdCountryDate
Johnson S Oldroyd1000Germany2024-06-17
Leja F Kolmetz1001Italy2024-06-10
James U Kolmetz1002Spain2024-05-28
Rodrigues X Kolmetz1003Canada2024-06-09
Ricardo D Garufi1004Germany2024-06-06
Sinclair R Whobrey1005Japan2024-06-07
Tony X Saylors1006France2024-06-09
Isabel L Bowley1007Argentina2024-06-19
Jefferson M Paprocki1008France2024-05-23
Ashley U Kolmetz1009France2024-06-19
Rodrigues Q Figeroa1010Canada2024-06-13
Costa R Ferencz1011Spain2024-06-11
Kadeem H Paprocki1012France2024-06-05
Kadeem Q Vocelka1013France2024-06-18
Mayumi W Saylors1014Russia2024-05-28
Greenwood Q Flosi1015Japan2024-06-20
Silvio W Maclead1016Russia2024-06-20
Rodrigues H Oldroyd1017Germany2024-06-06
Sinclair L Flosi1018Brazil2024-06-07
Izzy S Amigon1019Brazil2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo C ShinkoArgentinaOnyama Limba RENEWAL
Ricardo C SchemmerBrazilIoni Bowcher PROPOSAL
Chavez T MorascaBrazilIoni Bowcher QUALIFIED
Emily C OldroydRussiaAnna Fali PROPOSAL
Francesco Y GlickCanadaXuxue Feng UNQUALIFIED
Arvin T RoysterBrazilAmy Elsner NEGOTIATION
Ashley G CampainJapanXuxue Feng UNQUALIFIED
Alejandro N NestleGermanyStephen Shaw PROPOSAL
Aika I CampainItalyXuxue Feng QUALIFIED
Smith C GlickRussiaOnyama Limba NEW
Costa P GauchoJapanAnna Fali RENEWAL
Kaitlin L VenereIndiaBernardo Dominic RENEWAL
Ashley C SlusarskiSpainIvan Magalhaes QUALIFIED
Aruna S SergiArgentinaXuxue Feng UNQUALIFIED
Rodrigues Z FlosiFranceElwin Sharvill NEGOTIATION
Sinclair M RimUnited KingdomIvan Magalhaes NEGOTIATION
James C FigeroaFranceAmy Elsner PROPOSAL
Cody T FerenczJapanAsiya Javayant PROPOSAL
Johnson Y MacleadIndiaBernardo Dominic NEGOTIATION
Alejandro Q FigeroaArgentinaIoni Bowcher QUALIFIED
Murillo I DarakjyUnited KingdomAsiya Javayant NEGOTIATION
Aruna M StensethRussiaXuxue Feng UNQUALIFIED
Kaitlin G DarakjyArgentinaAsiya Javayant QUALIFIED
Jeanfrancois M BologniaItalyIoni Bowcher QUALIFIED
Adams H FerenczJapanAsiya Javayant PROPOSAL
Mujtaba B FlosiJapanStephen Shaw UNQUALIFIED
Aditya Y FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
James I CaldareraAustraliaOnyama Limba NEW
Aika Y CampainGermanyElwin Sharvill UNQUALIFIED
Aika W RutaSpainAmy Elsner UNQUALIFIED
David X ChuiArgentinaAnna Fali PROPOSAL
Costa D AmigonRussiaIvan Magalhaes UNQUALIFIED
David R MorascaItalyIoni Bowcher NEW
Johnson G ChuiArgentinaAsiya Javayant RENEWAL
Johnson B KuskoCanadaOnyama Limba NEGOTIATION
James F KolmetzAustraliaAnna Fali UNQUALIFIED
Arvin K MacleadUnited KingdomOnyama Limba PROPOSAL
Leja S GlickItalyAnna Fali PROPOSAL
Smith R OldroydCanadaAnna Fali UNQUALIFIED
Darci Y SchemmerAustraliaAmy 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>