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
Leon F ChuiItalyAmy Elsner QUALIFIED
Antonio Y BowleyGermanyAnna Fali NEW
Mayumi K CaudyUnited KingdomXuxue Feng NEGOTIATION
Jeanfrancois A CampainCanadaStephen Shaw UNQUALIFIED
Munro K WhobreyBrazilBernardo Dominic NEGOTIATION
Emily T RoysterRussiaIoni Bowcher PROPOSAL
Greenwood R MarrierArgentinaAmy Elsner NEW
Aruna D InouyeBrazilAmy Elsner QUALIFIED
Murillo D TollnerGermanyIoni Bowcher NEW
Claire N FollerFranceIoni Bowcher NEW
Salvatore Z AmigonGermanyElwin Sharvill QUALIFIED
Deepesh U CampainRussiaAmy Elsner QUALIFIED
Costa E InouyeSpainOnyama Limba NEGOTIATION
Leja W PerinJapanAsiya Javayant NEGOTIATION
Leja U CaldareraAustraliaOnyama Limba NEW
Francesco E KuskoAustraliaStephen Shaw UNQUALIFIED
Sinclair N CaudyIndiaOnyama Limba NEGOTIATION
Wickens I PerinIndiaIoni Bowcher PROPOSAL
Ricardo T MaletAustraliaOnyama Limba RENEWAL
Greenwood O KuskoArgentinaXuxue Feng UNQUALIFIED
Arvin V SlusarskiRussiaAnna Fali QUALIFIED
Silvio Q RimGermanyBernardo Dominic RENEWAL
Jones U RutaIndiaIvan Magalhaes RENEWAL
Claire H FlosiUnited KingdomOnyama Limba NEGOTIATION
Rodrigues P FlosiGermanyElwin Sharvill NEW
Leon O DilliardUnited KingdomAnna Fali UNQUALIFIED
Greenwood X PerinRussiaXuxue Feng PROPOSAL
Smith T DarakjyBrazilXuxue Feng NEW
Ricardo B FigeroaFranceElwin Sharvill RENEWAL
Emily C SaylorsRussiaIvan Magalhaes PROPOSAL
Tony W SlusarskiAustraliaXuxue Feng NEW
Murillo C SchemmerSpainIoni Bowcher RENEWAL
Murillo H DilliardArgentinaAmy Elsner PROPOSAL
Rodrigues I PerinCanadaAmy Elsner NEGOTIATION
Alejandro Y DoeGermanyAmy Elsner RENEWAL
Ivar E InouyeJapanElwin Sharvill RENEWAL
Maria B CaudyRussiaAsiya Javayant UNQUALIFIED
Aika I RulapaughIndiaOnyama Limba RENEWAL
Murillo O NestleJapanBernardo Dominic NEW
Mujtaba V AmigonUnited KingdomStephen Shaw NEW
Morrow M TollnerArgentinaOnyama Limba NEGOTIATION
Rodrigues M GarufiSpainAsiya Javayant PROPOSAL
Rodrigues L RimGermanyAsiya Javayant QUALIFIED
Nicolas V ButtSpainAnna Fali NEW
Rodrigues H RulapaughIndiaIvan Magalhaes NEW
Isabel M InouyeFranceAsiya Javayant QUALIFIED
Morrow Z FerenczIndiaIvan Magalhaes NEGOTIATION
Izzy C MaletGermanyElwin Sharvill QUALIFIED
Alejandro Y RimJapanElwin Sharvill NEW
Faith I DilliardUnited KingdomOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
James M CaldareraFranceAnna Fali NEGOTIATION
Leon Z WaycottSpainBernardo Dominic NEGOTIATION
Isabel T SchemmerRussiaXuxue Feng RENEWAL
Leon Z PerinGermanyXuxue Feng UNQUALIFIED
Jones E CampainIndiaStephen Shaw NEGOTIATION
Johnson I StensethSpainAsiya Javayant UNQUALIFIED
Nicolas W NickaJapanElwin Sharvill NEW
Mayumi G NestleCanadaAmy Elsner RENEWAL
David J ShinkoFranceBernardo Dominic NEGOTIATION
David A OstroskyFranceStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley S GauchoRussia2024-05-29Feltz Printing Service NEGOTIATION3Asiya Javayant
1001Leon U IturbideJapan2024-06-07Benton, John B Jr PROPOSAL55Xuxue Feng
1002James N CaldareraAustralia2024-06-16Chemel, James L Cpa RENEWAL8Bernardo Dominic
1003Claire L MaletIndia2024-05-30King, Christopher A Esq NEGOTIATION28Ivan Magalhaes
1004Claire J AmigonJapan2024-05-26Chapman, Ross E Esq QUALIFIED92Anna Fali
1005Salvatore T ChuiBrazil2024-06-19Benton, John B Jr QUALIFIED47Stephen Shaw
1006Arvin A SlusarskiJapan2024-06-15Dorl, James J Esq UNQUALIFIED74Asiya Javayant
1007Octavia T SergiGermany2024-06-06Rangoni Of Florence UNQUALIFIED66Anna Fali
1008Chavez Y IturbideBrazil2024-06-12Rangoni Of Florence NEGOTIATION44Stephen Shaw
1009Maria L FigeroaItaly2024-06-14Feltz Printing Service UNQUALIFIED15Xuxue Feng
1010Greenwood G DarakjyCanada2024-06-08Commercial Press UNQUALIFIED55Stephen Shaw
1011Wickens L DilliardAustralia2024-06-14Benton, John B Jr RENEWAL11Onyama Limba
1012Greenwood Y StockhamUnited Kingdom2024-06-02Printing Dimensions UNQUALIFIED35Xuxue Feng
1013James C VenereRussia2024-05-31Dorl, James J Esq UNQUALIFIED31Bernardo Dominic
1014Leja W SaylorsFrance2024-06-09Dorl, James J Esq UNQUALIFIED66Ivan Magalhaes
1015Salvatore M StensethUnited Kingdom2024-06-08Truhlar And Truhlar Attys NEGOTIATION63Stephen Shaw
1016Johnson Y RoysterBrazil2024-05-28King, Christopher A Esq RENEWAL84Ioni Bowcher
1017Morrow O KolmetzJapan2024-06-07Printing Dimensions NEW3Elwin Sharvill
1018Octavia T FlosiUnited Kingdom2024-06-09Buckley Miller Wright NEGOTIATION32Ivan Magalhaes
1019Clifford E MaletJapan2024-06-12Chapman, Ross E Esq RENEWAL14Stephen Shaw
1020Antonio L CaldareraArgentina2024-06-21Commercial Press QUALIFIED19Ivan Magalhaes
1021Claire F GillianSpain2024-06-22Rangoni Of Florence NEGOTIATION39Asiya Javayant
1022Izzy S GauchoRussia2024-06-15Dorl, James J Esq NEGOTIATION49Bernardo Dominic
1023Cody L PerinCanada2024-05-24Chemel, James L Cpa RENEWAL8Elwin Sharvill
1024Greenwood B SergiSpain2024-06-01Commercial Press NEGOTIATION62Stephen Shaw
1025Wickens Z OldroydJapan2024-06-20Rousseaux, Michael Esq QUALIFIED74Ioni Bowcher
1026Costa S CaldareraArgentina2024-05-27Feltz Printing Service NEGOTIATION66Stephen Shaw
1027Ashley M KolmetzSpain2024-06-03Buckley Miller Wright RENEWAL76Bernardo Dominic
1028Smith A PoquetteCanada2024-05-30Truhlar And Truhlar Attys PROPOSAL16Anna Fali
1029Aruna S DoeJapan2024-05-30Benton, John B Jr NEW32Ivan Magalhaes
1030Rodrigues G PoquetteItaly2024-06-02Chanay, Jeffrey A Esq NEW63Anna Fali
1031Aika T MarrierIndia2024-05-26Chapman, Ross E Esq RENEWAL32Stephen Shaw
1032Izzy G PoquetteJapan2024-06-13Feltz Printing Service UNQUALIFIED45Bernardo Dominic
1033Greenwood L PaprockiBrazil2024-06-08Buckley Miller Wright NEW30Ivan Magalhaes
1034Jeanfrancois H StockhamIndia2024-06-04Printing Dimensions NEW15Elwin Sharvill
1035Morrow W StensethItaly2024-05-24Buckley Miller Wright NEGOTIATION66Anna Fali
1036Jefferson E BriddickBrazil2024-06-17Morlong Associates QUALIFIED27Xuxue Feng
1037Sinclair O AlbaresSpain2024-06-07Commercial Press QUALIFIED53Onyama Limba
1038Faith Y OldroydBrazil2024-06-04Chemel, James L Cpa UNQUALIFIED95Ivan Magalhaes
1039Aika M CaudyItaly2024-06-04Benton, John B Jr NEW42Bernardo Dominic
1040Mayumi M BriddickItaly2024-06-20Chanay, Jeffrey A Esq UNQUALIFIED81Stephen Shaw
1041Rodrigues U SaylorsFrance2024-06-09Chanay, Jeffrey A Esq NEGOTIATION71Asiya Javayant
1042Octavia Q RoysterJapan2024-06-12Commercial Press RENEWAL96Anna Fali
1043David I StockhamIndia2024-06-01Rangoni Of Florence NEGOTIATION88Stephen Shaw
1044David Y GillianItaly2024-06-07Commercial Press NEW15Asiya Javayant
1045Julie Z RimBrazil2024-06-15Rousseaux, Michael Esq NEW19Onyama Limba
1046Francesco G NestleItaly2024-05-24Feltz Printing Service UNQUALIFIED74Asiya Javayant
1047Morrow T MacleadAustralia2024-06-11Rangoni Of Florence NEW64Anna Fali
1048Izzy R PerinArgentina2024-06-09Feiner Bros NEW44Ivan Magalhaes
1049Murillo J AlbaresBrazil2024-06-17Rousseaux, Michael Esq UNQUALIFIED85Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Maria K StockhamSpainIvan Magalhaes NEGOTIATION
Emily O SlusarskiBrazilAmy Elsner QUALIFIED
Izzy P RoysterGermanyBernardo Dominic PROPOSAL
Alejandro E CaudyBrazilElwin Sharvill QUALIFIED
Julie K CaldareraCanadaAmy Elsner NEW
Faith V CaldareraItalyAmy Elsner RENEWAL
Aruna G DarakjyCanadaAsiya Javayant PROPOSAL
Jennifer N SergiBrazilXuxue Feng NEW
Leon Q FlosiJapanIvan Magalhaes NEGOTIATION
Aditya O StockhamArgentinaXuxue Feng NEGOTIATION
Nicolas Z GauchoUnited KingdomIoni Bowcher QUALIFIED
Kadeem H GauchoCanadaBernardo Dominic NEW
Salvatore J RulapaughAustraliaOnyama Limba PROPOSAL
Aruna H RulapaughItalyBernardo Dominic QUALIFIED
Sinclair N VenereRussiaAsiya Javayant NEGOTIATION
Mujtaba T OldroydRussiaElwin Sharvill RENEWAL
Julie W WieserBrazilOnyama Limba NEW
Cody G SaylorsBrazilIvan Magalhaes UNQUALIFIED
Alejandro A WhobreyCanadaIvan Magalhaes UNQUALIFIED
Wickens Q GarufiCanadaAmy Elsner PROPOSAL
Cody I FollerCanadaIvan Magalhaes PROPOSAL
Antonio C ShinkoAustraliaAmy Elsner UNQUALIFIED
Morrow W KolmetzAustraliaXuxue Feng UNQUALIFIED
Faith M InouyeRussiaXuxue Feng QUALIFIED
Smith S MaletItalyIoni Bowcher PROPOSAL
Francesco X GlickUnited KingdomBernardo Dominic QUALIFIED
Octavia P RoysterCanadaIoni Bowcher NEGOTIATION
Antonio J StockhamIndiaIoni Bowcher PROPOSAL
Sinclair J MorascaSpainIvan Magalhaes UNQUALIFIED
Deepesh Z OstroskyFranceBernardo Dominic NEW
Claire T WaycottItalyAmy Elsner QUALIFIED
Jones Y WhobreyCanadaIoni Bowcher NEGOTIATION
Aruna X MorascaUnited KingdomIoni Bowcher NEW
Munro U VocelkaItalyStephen Shaw QUALIFIED
Octavia Z BriddickArgentinaAmy Elsner UNQUALIFIED
Jefferson R AmigonSpainAsiya Javayant PROPOSAL
Munro V DilliardItalyBernardo Dominic NEGOTIATION
Clifford L TollnerJapanStephen Shaw NEGOTIATION
Jefferson Y AlbaresAustraliaAmy Elsner RENEWAL
James Y PoquetteArgentinaIvan Magalhaes RENEWAL
Costa W WaycottItalyStephen Shaw PROPOSAL
Kaitlin W PoquetteBrazilIoni Bowcher QUALIFIED
Sinclair A KolmetzSpainElwin Sharvill RENEWAL
Misaki G RulapaughRussiaAsiya Javayant RENEWAL
Aruna O PerinUnited KingdomAsiya Javayant PROPOSAL
Salvatore S ButtItalyAnna Fali QUALIFIED
Costa Y PoquetteJapanIvan Magalhaes PROPOSAL
Julie I MarrierJapanAnna Fali PROPOSAL
Nicolas Q MaletAustraliaElwin Sharvill NEW
Francesco R WaycottGermanyAsiya Javayant RENEWAL
Frozen Columns
Name
Maria A Amigon
Maria M Chui
Aditya A Darakjy
Aika I Morasca
Deepesh Z Albares
Maria R Bowley
Isabel Q Flosi
Julie V Poquette
Claire C Darakjy
Aruna U Vocelka
Francesco N Garufi
Wickens B Campain
Cody E Whobrey
Misaki A Doe
Murillo R Kusko
Ricardo M Ostrosky
Darci R Glick
Deepesh A Venere
Kadeem K Saylors
Smith S Doe
Murillo G Gillian
Maria V Waycott
Kaitlin Y Ferencz
Wickens B Venere
Antonio K Shinko
Darci P Malet
Ivar P Kolmetz
Leja D Stenseth
Tony Q Oldroyd
Aika J Stockham
Julie E Poquette
Antonio I Marrier
Jones G Iturbide
Antonio W Ruta
Wickens D Poquette
Silvio H Slusarski
Murillo F Albares
Octavia Y Ruta
Francesco T Rulapaugh
Isabel S Dilliard
Silvio J Tollner
Emily R Ostrosky
Salvatore C Poquette
Tony H Garufi
Francesco O Royster
David X Caldarera
Juan S Ferencz
Sinclair C Briddick
David M Slusarski
Nicolas E Wieser
IdCountryDate
1000Brazil2024-06-10
1001Germany2024-06-08
1002Italy2024-06-08
1003United Kingdom2024-06-17
1004Spain2024-06-11
1005Germany2024-06-08
1006United Kingdom2024-06-13
1007Russia2024-06-01
1008Japan2024-06-08
1009Brazil2024-05-24
1010United Kingdom2024-05-26
1011Canada2024-05-24
1012Brazil2024-05-31
1013Spain2024-06-04
1014Brazil2024-06-21
1015Italy2024-06-19
1016Brazil2024-06-13
1017Australia2024-06-20
1018Germany2024-06-01
1019Japan2024-05-28
1020Spain2024-06-04
1021France2024-05-24
1022Russia2024-05-30
1023Italy2024-05-29
1024Argentina2024-05-31
1025Germany2024-05-29
1026India2024-05-27
1027Canada2024-06-07
1028Germany2024-06-18
1029United Kingdom2024-05-28
1030United Kingdom2024-06-13
1031Germany2024-06-15
1032United Kingdom2024-06-06
1033United Kingdom2024-06-13
1034Germany2024-06-03
1035Australia2024-06-15
1036Italy2024-05-30
1037Spain2024-06-05
1038Australia2024-06-01
1039Japan2024-06-03
1040Germany2024-05-26
1041Russia2024-06-15
1042India2024-06-05
1043United Kingdom2024-06-04
1044Australia2024-06-12
1045France2024-06-07
1046France2024-06-11
1047Japan2024-06-10
1048India2024-05-26
1049India2024-06-11

On-Demand Data

NameIdCountryDate
David O Bowley1000India2024-06-06
Francesco U Sergi1001France2024-05-30
Kaitlin Z Ferencz1002Japan2024-06-10
Juan C Butt1003Italy2024-05-27
Octavia Y Malet1004Italy2024-06-14
Aika V Venere1005United Kingdom2024-06-01
Faith U Stockham1006Italy2024-06-04
Darci H Foller1007Spain2024-06-03
Maria T Malet1008India2024-06-02
Aditya X Garufi1009Japan2024-06-22
Darci L Shinko1010Italy2024-06-12
Juan E Ferencz1011Germany2024-05-27
Ricardo S Iturbide1012Argentina2024-06-11
Maisha Q Malet1013Russia2024-06-21
Aruna J Nestle1014India2024-06-13
Darci B Figeroa1015Germany2024-06-09
Kadeem E Doe1016United Kingdom2024-05-27
Costa E Kusko1017Germany2024-06-04
Stacey C Albares1018Brazil2024-06-12
Aditya V Ostrosky1019Spain2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro W DarakjyUnited KingdomBernardo Dominic UNQUALIFIED
Izzy I PerinGermanyAnna Fali PROPOSAL
Francesco X RutaBrazilXuxue Feng NEW
Emily G DilliardSpainOnyama Limba NEW
David B OstroskyAustraliaAsiya Javayant RENEWAL
Jennifer A WaycottGermanyAsiya Javayant PROPOSAL
Antonio U BriddickFranceIoni Bowcher QUALIFIED
Silvio Y MacleadRussiaElwin Sharvill UNQUALIFIED
Johnson Z VenereUnited KingdomElwin Sharvill UNQUALIFIED
Smith D GillianItalyAsiya Javayant NEGOTIATION
James R BriddickItalyAnna Fali QUALIFIED
Jeanfrancois X GarufiRussiaAsiya Javayant QUALIFIED
Tony U KuskoJapanOnyama Limba RENEWAL
Claire K RutaItalyXuxue Feng UNQUALIFIED
Silvio F IturbideBrazilIvan Magalhaes PROPOSAL
Greenwood G MaletGermanyXuxue Feng UNQUALIFIED
Misaki F BriddickBrazilAsiya Javayant NEGOTIATION
Izzy X MacleadJapanAsiya Javayant RENEWAL
Alejandro R MaletIndiaIoni Bowcher NEGOTIATION
Jefferson P IturbideSpainBernardo Dominic NEGOTIATION
Julie W StockhamJapanOnyama Limba QUALIFIED
Emily Y GauchoBrazilStephen Shaw PROPOSAL
Greenwood D StensethRussiaIvan Magalhaes NEGOTIATION
Maisha O BowleyUnited KingdomStephen Shaw RENEWAL
Jeanfrancois X BologniaSpainAmy Elsner RENEWAL
Leja B SlusarskiArgentinaXuxue Feng RENEWAL
Aditya H GauchoArgentinaAnna Fali RENEWAL
Aruna D SaylorsArgentinaElwin Sharvill NEW
Jeanfrancois P StensethSpainAnna Fali NEW
Mujtaba S StockhamFranceIvan Magalhaes PROPOSAL
Mayumi F MaletFranceStephen Shaw PROPOSAL
Deepesh W CampainBrazilAsiya Javayant QUALIFIED
Mujtaba Y FerenczJapanAmy Elsner QUALIFIED
Jennifer S RulapaughAustraliaIoni Bowcher NEGOTIATION
Deepesh U ChuiRussiaElwin Sharvill NEW
Arvin S AlbaresItalyAnna Fali NEW
Mujtaba H KuskoSpainAnna Fali UNQUALIFIED
Wickens Q BologniaJapanAmy Elsner RENEWAL
Sinclair B FerenczRussiaIoni Bowcher NEGOTIATION
Ashley Z MaletArgentinaBernardo Dominic RENEWAL

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