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
Wickens X FollerRussiaStephen Shaw PROPOSAL
Murillo L SchemmerArgentinaIoni Bowcher NEGOTIATION
Juan N FerenczJapanIoni Bowcher NEW
Kaitlin O SergiJapanStephen Shaw RENEWAL
Aditya X MaletItalyAnna Fali NEW
Mujtaba J SaylorsCanadaStephen Shaw QUALIFIED
Darci L SchemmerRussiaOnyama Limba NEW
Maisha E BriddickGermanyIvan Magalhaes RENEWAL
Francesco J KuskoGermanyAmy Elsner QUALIFIED
Antonio L SlusarskiRussiaIoni Bowcher NEGOTIATION
Ivar C ShinkoCanadaAmy Elsner NEGOTIATION
Deepesh R NestleFranceAnna Fali UNQUALIFIED
Munro H GillianIndiaBernardo Dominic NEGOTIATION
Maisha G InouyeJapanElwin Sharvill QUALIFIED
Ricardo Y GauchoJapanAnna Fali NEGOTIATION
Smith F PerinItalyIoni Bowcher RENEWAL
Cody Q GlickUnited KingdomIoni Bowcher UNQUALIFIED
Greenwood V CaldareraGermanyAmy Elsner NEW
Leja M RulapaughRussiaAmy Elsner NEW
Maisha I RimGermanyIvan Magalhaes NEGOTIATION
Octavia R SchemmerGermanyAsiya Javayant UNQUALIFIED
Tony U StockhamSpainOnyama Limba NEGOTIATION
Mujtaba X ShinkoArgentinaAsiya Javayant NEW
Jones Q PaprockiBrazilIoni Bowcher NEGOTIATION
Arvin Z ChuiAustraliaAmy Elsner UNQUALIFIED
Stacey Z BowleyGermanyElwin Sharvill NEW
Adams V VenereUnited KingdomAnna Fali PROPOSAL
Jennifer C ButtGermanyXuxue Feng NEW
Costa Z TollnerJapanOnyama Limba NEW
Claire P ButtJapanAmy Elsner PROPOSAL
Kaitlin V StockhamItalyBernardo Dominic UNQUALIFIED
Sinclair C GillianArgentinaIvan Magalhaes RENEWAL
Ashley U PaprockiRussiaBernardo Dominic QUALIFIED
Sinclair G SaylorsRussiaIoni Bowcher RENEWAL
Claire N MaletCanadaAnna Fali QUALIFIED
Leon O BowleyGermanyAnna Fali PROPOSAL
Sinclair O PoquetteFranceXuxue Feng PROPOSAL
Sinclair D GarufiIndiaIoni Bowcher QUALIFIED
Morrow U DilliardRussiaElwin Sharvill UNQUALIFIED
Silvio M MorascaUnited KingdomBernardo Dominic NEGOTIATION
Izzy H DilliardCanadaIvan Magalhaes NEGOTIATION
Cody Z NickaArgentinaIoni Bowcher QUALIFIED
Jefferson M KuskoRussiaStephen Shaw UNQUALIFIED
Octavia H TollnerUnited KingdomXuxue Feng PROPOSAL
Rodrigues I BowleyRussiaStephen Shaw RENEWAL
Maria Y SaylorsBrazilIvan Magalhaes NEGOTIATION
Jennifer G ButtBrazilBernardo Dominic NEGOTIATION
Darci Z WhobreyAustraliaIvan Magalhaes QUALIFIED
Nicolas W NestleUnited KingdomIvan Magalhaes UNQUALIFIED
Emily R GarufiRussiaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aditya H IturbideCanadaXuxue Feng PROPOSAL
Faith B SergiBrazilAmy Elsner QUALIFIED
Ricardo U DarakjyItalyBernardo Dominic QUALIFIED
Izzy Z NestleIndiaIvan Magalhaes PROPOSAL
Kaitlin I FerenczAustraliaAnna Fali QUALIFIED
Leja D TollnerBrazilBernardo Dominic NEW
David D InouyeItalyIoni Bowcher NEW
Ricardo U MaletRussiaAnna Fali NEGOTIATION
Arvin G NickaUnited KingdomBernardo Dominic PROPOSAL
Wickens S ChuiAustraliaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja X KuskoItaly2024-05-24Chapman, Ross E Esq NEGOTIATION90Asiya Javayant
1001Silvio K VocelkaItaly2024-06-08Commercial Press NEGOTIATION79Elwin Sharvill
1002Ricardo G WieserIndia2024-06-07Truhlar And Truhlar Attys NEGOTIATION36Ioni Bowcher
1003Juan N VenereItaly2024-06-12Rousseaux, Michael Esq PROPOSAL14Stephen Shaw
1004Clifford X KolmetzCanada2024-06-02Benton, John B Jr RENEWAL82Stephen Shaw
1005Kadeem R RulapaughItaly2024-06-09Buckley Miller Wright QUALIFIED75Amy Elsner
1006Adams B GarufiItaly2024-05-30Printing Dimensions RENEWAL3Stephen Shaw
1007Munro R MaletCanada2024-06-21Commercial Press QUALIFIED84Anna Fali
1008Sinclair O SlusarskiItaly2024-05-31Printing Dimensions RENEWAL78Stephen Shaw
1009Morrow H DilliardGermany2024-06-17Commercial Press PROPOSAL43Asiya Javayant
1010Aika H FollerUnited Kingdom2024-06-02Buckley Miller Wright QUALIFIED85Asiya Javayant
1011Ivar X BowleyGermany2024-05-23Benton, John B Jr NEW4Amy Elsner
1012Chavez V DarakjyBrazil2024-05-29Rousseaux, Michael Esq QUALIFIED30Anna Fali
1013Murillo H WieserArgentina2024-06-12Chanay, Jeffrey A Esq QUALIFIED84Ivan Magalhaes
1014Rodrigues J AlbaresIndia2024-06-07Buckley Miller Wright UNQUALIFIED45Ioni Bowcher
1015Aika U DarakjyIndia2024-06-10Chapman, Ross E Esq RENEWAL38Elwin Sharvill
1016Misaki L InouyeCanada2024-06-20Chapman, Ross E Esq QUALIFIED17Amy Elsner
1017Jennifer R SlusarskiArgentina2024-05-31Feltz Printing Service NEGOTIATION53Ioni Bowcher
1018Ivar B DarakjyFrance2024-06-06Dorl, James J Esq NEW29Anna Fali
1019Francesco Q GlickRussia2024-05-27Rangoni Of Florence UNQUALIFIED32Ivan Magalhaes
1020Faith E WieserGermany2024-05-30King, Christopher A Esq NEGOTIATION53Asiya Javayant
1021Wickens H PaprockiIndia2024-05-27Truhlar And Truhlar Attys PROPOSAL8Amy Elsner
1022Aditya R DarakjyBrazil2024-06-16Truhlar And Truhlar Attys NEW83Ioni Bowcher
1023Maisha E FerenczCanada2024-06-21Feiner Bros NEW30Ioni Bowcher
1024Rodrigues S InouyeAustralia2024-06-09Rousseaux, Michael Esq NEW88Onyama Limba
1025Claire L MaletAustralia2024-06-18Truhlar And Truhlar Attys QUALIFIED95Asiya Javayant
1026Aditya Y SergiItaly2024-06-04Buckley Miller Wright RENEWAL87Ivan Magalhaes
1027Tony J SchemmerItaly2024-06-09King, Christopher A Esq PROPOSAL13Anna Fali
1028Aruna L DarakjyCanada2024-05-28Rousseaux, Michael Esq PROPOSAL52Ivan Magalhaes
1029Ashley E TollnerUnited Kingdom2024-05-26Truhlar And Truhlar Attys NEGOTIATION51Elwin Sharvill
1030Clifford F NestleJapan2024-06-17Commercial Press UNQUALIFIED90Stephen Shaw
1031Johnson L KolmetzRussia2024-06-03Buckley Miller Wright QUALIFIED20Xuxue Feng
1032Mujtaba A RoysterBrazil2024-05-29Feiner Bros NEW2Ivan Magalhaes
1033Kadeem J FollerFrance2024-06-09Benton, John B Jr UNQUALIFIED57Onyama Limba
1034Aika R NestleCanada2024-05-29Chemel, James L Cpa NEGOTIATION77Elwin Sharvill
1035Cody H RimUnited Kingdom2024-06-14Truhlar And Truhlar Attys NEW49Onyama Limba
1036Arvin K BologniaSpain2024-05-26Feltz Printing Service NEW39Amy Elsner
1037David X MaletBrazil2024-05-31Feltz Printing Service PROPOSAL81Ivan Magalhaes
1038Stacey B MorascaBrazil2024-06-06Commercial Press RENEWAL20Anna Fali
1039Jeanfrancois R CaldareraBrazil2024-05-26Printing Dimensions UNQUALIFIED31Elwin Sharvill
1040Silvio V WieserFrance2024-05-24Morlong Associates NEW74Stephen Shaw
1041Claire O OldroydBrazil2024-06-20Feltz Printing Service UNQUALIFIED41Xuxue Feng
1042Leja W TollnerGermany2024-06-18Buckley Miller Wright UNQUALIFIED93Xuxue Feng
1043Ashley W DoeCanada2024-05-28Rangoni Of Florence RENEWAL0Bernardo Dominic
1044Alejandro H RulapaughIndia2024-05-24Feiner Bros NEGOTIATION55Ioni Bowcher
1045Rodrigues V RimJapan2024-06-20Truhlar And Truhlar Attys NEGOTIATION74Amy Elsner
1046Rodrigues P SergiBrazil2024-06-21Rangoni Of Florence RENEWAL34Ioni Bowcher
1047Cody H RutaItaly2024-05-30Chanay, Jeffrey A Esq RENEWAL18Amy Elsner
1048Misaki X WaycottCanada2024-05-24Printing Dimensions UNQUALIFIED95Stephen Shaw
1049Jennifer C PerinItaly2024-06-18Dorl, James J Esq RENEWAL36Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Jones C DarakjyJapanAmy Elsner QUALIFIED
Aika J GarufiFranceAmy Elsner PROPOSAL
Mujtaba O RutaCanadaOnyama Limba UNQUALIFIED
Rodrigues D FollerBrazilXuxue Feng RENEWAL
Rodrigues X IturbideRussiaStephen Shaw NEGOTIATION
Silvio X NestleCanadaIoni Bowcher RENEWAL
Misaki N StockhamArgentinaOnyama Limba NEGOTIATION
James K GillianIndiaAmy Elsner NEW
David R KuskoIndiaAsiya Javayant PROPOSAL
Aditya O NickaJapanAmy Elsner RENEWAL
Ivar X InouyeItalyBernardo Dominic UNQUALIFIED
Aditya L AlbaresUnited KingdomOnyama Limba QUALIFIED
Jones L SaylorsItalyXuxue Feng QUALIFIED
Cody R PoquetteBrazilAsiya Javayant UNQUALIFIED
Darci K NestleFranceIoni Bowcher NEW
Salvatore Q GauchoFranceElwin Sharvill QUALIFIED
Kaitlin H SaylorsCanadaAnna Fali PROPOSAL
Alejandro I FigeroaUnited KingdomIoni Bowcher PROPOSAL
Ricardo Q ChuiArgentinaOnyama Limba PROPOSAL
Greenwood K VenereAustraliaAmy Elsner QUALIFIED
Ricardo O WieserBrazilAnna Fali PROPOSAL
Jennifer Y FlosiAustraliaAnna Fali NEW
David Q MaletFranceOnyama Limba QUALIFIED
Jefferson I KuskoRussiaAnna Fali NEW
Maisha I StockhamBrazilIoni Bowcher QUALIFIED
Izzy I KuskoCanadaBernardo Dominic QUALIFIED
Johnson N SaylorsBrazilAnna Fali UNQUALIFIED
Ivar J ShinkoArgentinaXuxue Feng NEGOTIATION
Costa S OldroydUnited KingdomStephen Shaw QUALIFIED
Munro K SergiItalyOnyama Limba QUALIFIED
Morrow D RutaCanadaElwin Sharvill NEW
Smith Z PaprockiIndiaAsiya Javayant NEGOTIATION
Faith G BriddickJapanOnyama Limba UNQUALIFIED
Adams U NickaSpainIvan Magalhaes PROPOSAL
Maisha R VenereBrazilXuxue Feng UNQUALIFIED
Rodrigues K MacleadIndiaXuxue Feng QUALIFIED
Francesco K AlbaresIndiaOnyama Limba UNQUALIFIED
James M RimJapanElwin Sharvill NEGOTIATION
Smith R ChuiAustraliaOnyama Limba RENEWAL
Maria S DilliardBrazilXuxue Feng PROPOSAL
Smith V DoeGermanyStephen Shaw UNQUALIFIED
Maisha O StensethIndiaIvan Magalhaes RENEWAL
Costa T VocelkaGermanyOnyama Limba UNQUALIFIED
Stacey C PoquetteArgentinaBernardo Dominic PROPOSAL
Cody N IturbideCanadaAsiya Javayant UNQUALIFIED
Nicolas V AlbaresRussiaAmy Elsner QUALIFIED
Octavia N DarakjyFranceXuxue Feng NEGOTIATION
Sinclair F GauchoFranceOnyama Limba PROPOSAL
Izzy W IturbideItalyXuxue Feng NEW
Ricardo O MaletGermanyAnna Fali NEW
Frozen Columns
Name
Emily L Nestle
Isabel S Waycott
Munro X Nestle
Mujtaba H Stockham
David N Whobrey
David O Campain
Jones O Darakjy
Clifford N Rim
Antonio T Bowley
Faith W Darakjy
Claire J Vocelka
Deepesh M Ferencz
Ashley E Sergi
David S Caudy
Ricardo H Schemmer
Jeanfrancois C Foller
Alejandro L Maclead
Maria G Caldarera
Tony Q Iturbide
Aruna A Malet
Francesco Y Foller
Octavia G Maclead
Nicolas Y Kusko
Jefferson R Malet
Deepesh V Whobrey
Jeanfrancois W Perin
Deepesh F Tollner
Ricardo Z Schemmer
Leja W Campain
David T Stenseth
Aika Z Albares
Leon I Wieser
Jefferson W Nicka
Cody T Tollner
Maria K Perin
Maria X Kusko
Sinclair X Maclead
Mayumi H Perin
Mayumi B Whobrey
Nicolas A Tollner
Tony C Gaucho
Chavez W Paprocki
Octavia S Inouye
Aika B Stenseth
Emily J Ruta
Cody N Rulapaugh
Ashley L Malet
Francesco H Paprocki
Octavia X Gillian
Julie W Foller
IdCountryDate
1000Germany2024-06-04
1001Brazil2024-06-18
1002Russia2024-05-25
1003Argentina2024-05-31
1004Russia2024-06-09
1005India2024-05-24
1006India2024-06-04
1007Canada2024-06-15
1008Japan2024-06-10
1009Germany2024-05-26
1010Germany2024-05-28
1011Germany2024-05-26
1012France2024-05-27
1013Canada2024-06-14
1014Australia2024-05-29
1015Australia2024-06-05
1016India2024-06-12
1017United Kingdom2024-05-23
1018Russia2024-06-11
1019Australia2024-06-10
1020Australia2024-06-08
1021Argentina2024-06-21
1022Australia2024-05-27
1023Germany2024-06-14
1024Japan2024-05-28
1025Brazil2024-06-13
1026Brazil2024-05-26
1027Italy2024-06-18
1028Brazil2024-06-09
1029United Kingdom2024-05-30
1030Japan2024-05-27
1031India2024-05-29
1032Argentina2024-05-30
1033Canada2024-06-07
1034Argentina2024-06-08
1035India2024-06-21
1036Spain2024-06-06
1037Australia2024-06-19
1038Brazil2024-06-12
1039Italy2024-06-07
1040Brazil2024-06-06
1041Germany2024-05-29
1042India2024-06-11
1043Spain2024-05-25
1044Canada2024-05-23
1045Australia2024-06-09
1046Japan2024-06-17
1047India2024-05-23
1048United Kingdom2024-06-05
1049France2024-06-20

On-Demand Data

NameIdCountryDate
Emily F Royster1000Russia2024-06-16
Jeanfrancois C Shinko1001Australia2024-06-16
Aika N Tollner1002Italy2024-05-31
Isabel J Morasca1003Germany2024-05-23
Kaitlin C Caudy1004Argentina2024-06-09
Cody W Nestle1005France2024-06-09
Alejandro D Nicka1006France2024-06-03
Jeanfrancois T Shinko1007Russia2024-05-31
Leon M Bowley1008Italy2024-05-26
Octavia X Sergi1009Brazil2024-06-14
Sinclair X Bolognia1010Australia2024-06-12
Juan H Inouye1011Germany2024-06-19
Alejandro B Bowley1012Australia2024-06-11
Darci Y Maclead1013Australia2024-05-26
Darci X Oldroyd1014France2024-05-24
Wickens T Bolognia1015Spain2024-05-23
Wickens M Glick1016Japan2024-06-21
Wickens R Amigon1017Spain2024-05-23
James T Malet1018Argentina2024-06-17
Emily F Rim1019United Kingdom2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci Q DilliardFranceAnna Fali PROPOSAL
Francesco B PoquetteIndiaElwin Sharvill UNQUALIFIED
Jefferson A BowleyFranceStephen Shaw NEW
Claire E RulapaughUnited KingdomOnyama Limba PROPOSAL
Isabel P PaprockiItalyBernardo Dominic NEGOTIATION
Deepesh I PoquetteJapanElwin Sharvill QUALIFIED
Isabel Q IturbideCanadaOnyama Limba NEGOTIATION
Wickens X InouyeRussiaElwin Sharvill RENEWAL
Rodrigues F ShinkoAustraliaBernardo Dominic QUALIFIED
James N AlbaresUnited KingdomAnna Fali QUALIFIED
Chavez Z AmigonRussiaIvan Magalhaes QUALIFIED
Emily H WaycottJapanXuxue Feng NEW
Clifford L MorascaJapanAnna Fali NEW
Jones C RoysterJapanAmy Elsner NEGOTIATION
Mayumi L NestleCanadaXuxue Feng QUALIFIED
Jennifer X KuskoFranceIoni Bowcher RENEWAL
Leja S GillianItalyIoni Bowcher NEGOTIATION
Faith P OldroydRussiaBernardo Dominic NEW
Munro G CampainRussiaXuxue Feng UNQUALIFIED
Salvatore J KolmetzUnited KingdomElwin Sharvill NEW
Smith P RulapaughRussiaXuxue Feng UNQUALIFIED
Jeanfrancois Z MacleadIndiaOnyama Limba UNQUALIFIED
Silvio P WhobreyBrazilBernardo Dominic NEW
Stacey U IturbideIndiaElwin Sharvill RENEWAL
Juan O AmigonAustraliaAnna Fali NEGOTIATION
Wickens C KuskoUnited KingdomIoni Bowcher NEGOTIATION
Rodrigues Q KolmetzAustraliaBernardo Dominic PROPOSAL
Stacey N MaletSpainIvan Magalhaes NEGOTIATION
Tony K SlusarskiRussiaOnyama Limba NEW
Leja Y MacleadUnited KingdomOnyama Limba QUALIFIED
Clifford U PoquetteArgentinaStephen Shaw RENEWAL
Aika V RulapaughUnited KingdomIoni Bowcher UNQUALIFIED
Salvatore J GillianGermanyBernardo Dominic NEGOTIATION
Emily C IturbideJapanAmy Elsner UNQUALIFIED
Jeanfrancois G AlbaresCanadaAsiya Javayant NEW
Mujtaba T FollerRussiaIvan Magalhaes RENEWAL
Mayumi N PoquetteFranceElwin Sharvill RENEWAL
Jefferson H SergiIndiaBernardo Dominic RENEWAL
Salvatore X KolmetzGermanyXuxue Feng UNQUALIFIED
Morrow Z FerenczBrazilAsiya Javayant QUALIFIED

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