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
Juan I StockhamSpainIvan Magalhaes PROPOSAL
Mayumi R RutaAustraliaXuxue Feng PROPOSAL
Ivar E ShinkoItalyAsiya Javayant UNQUALIFIED
Salvatore K RulapaughItalyAsiya Javayant NEGOTIATION
Murillo V MaletJapanStephen Shaw RENEWAL
Wickens Q CampainArgentinaOnyama Limba NEW
Izzy B ChuiSpainAsiya Javayant NEGOTIATION
Antonio S FerenczGermanyElwin Sharvill NEW
Nicolas G SchemmerFranceOnyama Limba UNQUALIFIED
Leon X IturbideIndiaBernardo Dominic RENEWAL
Nicolas S StensethJapanOnyama Limba QUALIFIED
Maisha L GlickJapanAsiya Javayant QUALIFIED
Emily M ShinkoItalyElwin Sharvill NEW
Maria N NestleSpainIvan Magalhaes NEGOTIATION
Antonio J WieserRussiaAmy Elsner PROPOSAL
Isabel N FlosiFranceBernardo Dominic QUALIFIED
Silvio B GillianUnited KingdomAnna Fali QUALIFIED
Tony S VenereGermanyXuxue Feng RENEWAL
Silvio D SlusarskiItalyStephen Shaw QUALIFIED
Silvio S MarrierBrazilIvan Magalhaes NEW
Sinclair F InouyeGermanyElwin Sharvill PROPOSAL
Chavez T KolmetzGermanyElwin Sharvill QUALIFIED
Francesco Y NickaAustraliaXuxue Feng NEGOTIATION
Claire F GlickAustraliaXuxue Feng UNQUALIFIED
Mayumi X GauchoUnited KingdomOnyama Limba PROPOSAL
Mayumi Q OstroskyJapanElwin Sharvill QUALIFIED
Sinclair S SlusarskiArgentinaOnyama Limba NEGOTIATION
Morrow Z SergiJapanXuxue Feng NEW
Deepesh F DoeUnited KingdomElwin Sharvill QUALIFIED
Kaitlin M WhobreyUnited KingdomElwin Sharvill NEGOTIATION
Deepesh F MacleadJapanElwin Sharvill QUALIFIED
Jennifer U FlosiRussiaAnna Fali NEGOTIATION
Adams M TollnerItalyAnna Fali NEW
David S FollerUnited KingdomAsiya Javayant NEW
Morrow U ButtSpainAnna Fali PROPOSAL
Antonio O RutaAustraliaOnyama Limba UNQUALIFIED
Adams K SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Arvin X SaylorsRussiaIoni Bowcher NEW
Cody Y AlbaresCanadaAnna Fali PROPOSAL
Julie E RoysterGermanyAmy Elsner RENEWAL
Murillo S GillianJapanAsiya Javayant UNQUALIFIED
Alejandro E RutaFranceStephen Shaw NEW
Munro Y CaldareraSpainBernardo Dominic NEGOTIATION
Wickens H ShinkoUnited KingdomXuxue Feng PROPOSAL
Julie B KolmetzRussiaBernardo Dominic QUALIFIED
Clifford G InouyeAustraliaStephen Shaw NEW
Silvio K StockhamSpainIvan Magalhaes NEW
Murillo J PoquetteArgentinaOnyama Limba NEGOTIATION
Salvatore Z GlickIndiaIvan Magalhaes UNQUALIFIED
Aruna C GauchoUnited KingdomAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois G IturbideArgentinaXuxue Feng NEW
Cody A ButtRussiaBernardo Dominic QUALIFIED
Ashley B IturbideGermanyStephen Shaw UNQUALIFIED
Ashley P KuskoRussiaAmy Elsner RENEWAL
Rodrigues T DilliardBrazilAnna Fali UNQUALIFIED
Ashley O IturbideFranceXuxue Feng UNQUALIFIED
Deepesh Q DoeJapanAmy Elsner NEGOTIATION
Francesco L StockhamIndiaAnna Fali RENEWAL
Adams G CaudyArgentinaOnyama Limba PROPOSAL
James U MacleadRussiaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James H DilliardRussia2024-06-19Rousseaux, Michael Esq NEW60Xuxue Feng
1001Mayumi D WieserJapan2024-06-13Buckley Miller Wright NEW99Asiya Javayant
1002Costa P StockhamFrance2024-06-23Truhlar And Truhlar Attys NEW46Bernardo Dominic
1003Isabel X SaylorsIndia2024-06-07Feltz Printing Service NEW94Amy Elsner
1004Alejandro Y AmigonJapan2024-06-15King, Christopher A Esq NEW44Bernardo Dominic
1005Greenwood C PoquetteBrazil2024-05-31Dorl, James J Esq QUALIFIED66Stephen Shaw
1006Morrow U KolmetzJapan2024-06-16Chemel, James L Cpa QUALIFIED82Stephen Shaw
1007Jennifer U BologniaGermany2024-06-02Rangoni Of Florence QUALIFIED60Ioni Bowcher
1008Kaitlin M FigeroaAustralia2024-06-10Chanay, Jeffrey A Esq QUALIFIED35Onyama Limba
1009Salvatore D ShinkoFrance2024-06-17Dorl, James J Esq NEW5Amy Elsner
1010Johnson N SaylorsJapan2024-06-17Chanay, Jeffrey A Esq UNQUALIFIED62Ivan Magalhaes
1011Salvatore K OldroydBrazil2024-06-16Commercial Press QUALIFIED17Ivan Magalhaes
1012Costa B CaudyGermany2024-06-20Chanay, Jeffrey A Esq RENEWAL27Ivan Magalhaes
1013Aditya W DarakjyArgentina2024-05-27Printing Dimensions UNQUALIFIED11Asiya Javayant
1014David O WaycottCanada2024-05-31Chemel, James L Cpa NEGOTIATION63Amy Elsner
1015Clifford B WieserCanada2024-06-20Chemel, James L Cpa PROPOSAL95Xuxue Feng
1016Johnson V WieserCanada2024-06-20Printing Dimensions UNQUALIFIED87Bernardo Dominic
1017Sinclair C PaprockiCanada2024-06-10Feiner Bros NEGOTIATION82Amy Elsner
1018Mayumi Z KuskoGermany2024-06-19Dorl, James J Esq RENEWAL2Stephen Shaw
1019Isabel W MaletIndia2024-05-25Feltz Printing Service UNQUALIFIED34Ivan Magalhaes
1020Aditya P GillianSpain2024-06-11Printing Dimensions QUALIFIED29Ioni Bowcher
1021Tony H MaletUnited Kingdom2024-06-12Commercial Press UNQUALIFIED63Stephen Shaw
1022Mayumi W RutaUnited Kingdom2024-06-20Buckley Miller Wright NEGOTIATION97Asiya Javayant
1023Kadeem U InouyeItaly2024-05-29Commercial Press PROPOSAL29Bernardo Dominic
1024Ivar M CaudyCanada2024-06-16Rangoni Of Florence NEGOTIATION9Elwin Sharvill
1025Alejandro F StockhamRussia2024-06-14Chapman, Ross E Esq NEW3Ivan Magalhaes
1026Nicolas E StensethUnited Kingdom2024-06-16Chanay, Jeffrey A Esq NEGOTIATION20Asiya Javayant
1027Kaitlin R ButtItaly2024-05-27Commercial Press PROPOSAL15Ioni Bowcher
1028Rodrigues M StockhamUnited Kingdom2024-06-20Chanay, Jeffrey A Esq PROPOSAL70Amy Elsner
1029Antonio E PoquetteRussia2024-06-18Chapman, Ross E Esq QUALIFIED1Onyama Limba
1030Sinclair C BowleyRussia2024-05-27Dorl, James J Esq UNQUALIFIED49Anna Fali
1031Deepesh I RutaFrance2024-06-11Printing Dimensions QUALIFIED90Xuxue Feng
1032Aika R WhobreyIndia2024-06-21Commercial Press NEW5Asiya Javayant
1033Alejandro N CaldareraAustralia2024-06-09Chanay, Jeffrey A Esq UNQUALIFIED87Asiya Javayant
1034Greenwood Z PerinGermany2024-06-10Truhlar And Truhlar Attys UNQUALIFIED45Ioni Bowcher
1035Octavia Q WaycottJapan2024-06-19King, Christopher A Esq UNQUALIFIED79Ivan Magalhaes
1036Aika B WaycottArgentina2024-06-19Truhlar And Truhlar Attys PROPOSAL23Anna Fali
1037Leon U CaudyIndia2024-05-26Printing Dimensions NEW0Asiya Javayant
1038Leon O WhobreySpain2024-06-08Rangoni Of Florence RENEWAL73Ivan Magalhaes
1039Ivar Q InouyeBrazil2024-06-03Chemel, James L Cpa NEW54Onyama Limba
1040Aruna L DilliardItaly2024-06-19Buckley Miller Wright PROPOSAL59Amy Elsner
1041Misaki K OldroydRussia2024-05-31Morlong Associates QUALIFIED42Asiya Javayant
1042Stacey B BologniaGermany2024-05-31Feiner Bros RENEWAL83Elwin Sharvill
1043Maisha V SlusarskiFrance2024-06-06Rousseaux, Michael Esq UNQUALIFIED75Ivan Magalhaes
1044Francesco G DilliardArgentina2024-05-26Buckley Miller Wright PROPOSAL45Asiya Javayant
1045Smith G KuskoArgentina2024-06-21Feiner Bros RENEWAL17Ioni Bowcher
1046Maisha V SchemmerArgentina2024-06-07Printing Dimensions UNQUALIFIED71Onyama Limba
1047Ivar P WaycottRussia2024-06-06Feiner Bros PROPOSAL82Ivan Magalhaes
1048Smith L BowleyRussia2024-06-01Feltz Printing Service QUALIFIED39Amy Elsner
1049Claire F StockhamAustralia2024-06-10Feiner Bros NEGOTIATION24Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Tony B BowleyCanadaStephen Shaw QUALIFIED
Mayumi D SlusarskiAustraliaAmy Elsner UNQUALIFIED
Ricardo R WieserIndiaIoni Bowcher NEGOTIATION
James N OstroskyUnited KingdomStephen Shaw RENEWAL
Johnson D WaycottFranceElwin Sharvill PROPOSAL
Kaitlin Z ShinkoGermanyStephen Shaw QUALIFIED
Rodrigues U TollnerCanadaIoni Bowcher NEGOTIATION
Jennifer N NestleRussiaOnyama Limba UNQUALIFIED
Morrow D NickaSpainXuxue Feng PROPOSAL
Leon Y DarakjyCanadaIoni Bowcher NEW
Jefferson Z KuskoArgentinaAnna Fali NEW
Mayumi G FlosiJapanIvan Magalhaes QUALIFIED
Cody M SaylorsBrazilAmy Elsner NEGOTIATION
Ricardo G WieserFranceBernardo Dominic PROPOSAL
Mujtaba Y CampainIndiaXuxue Feng UNQUALIFIED
Faith W SergiIndiaAmy Elsner NEW
Salvatore X BologniaIndiaAmy Elsner NEW
Adams A RimGermanyElwin Sharvill PROPOSAL
Mujtaba D SchemmerUnited KingdomIvan Magalhaes QUALIFIED
Kaitlin R PerinSpainBernardo Dominic PROPOSAL
Jeanfrancois P VocelkaUnited KingdomIoni Bowcher RENEWAL
Jefferson H DilliardIndiaBernardo Dominic NEGOTIATION
Ricardo A WieserArgentinaIoni Bowcher UNQUALIFIED
Francesco Z BriddickRussiaElwin Sharvill PROPOSAL
Chavez S TollnerUnited KingdomElwin Sharvill RENEWAL
Adams A ShinkoFranceXuxue Feng NEW
Silvio B RulapaughBrazilAsiya Javayant NEW
Stacey G GlickGermanyAmy Elsner NEW
Stacey E OstroskyRussiaIoni Bowcher UNQUALIFIED
Smith N BriddickAustraliaAmy Elsner QUALIFIED
Izzy U SergiArgentinaIvan Magalhaes QUALIFIED
Clifford J FerenczRussiaIvan Magalhaes PROPOSAL
Ashley L CaudyArgentinaAmy Elsner PROPOSAL
Maria A MarrierArgentinaXuxue Feng PROPOSAL
Francesco K BowleySpainAmy Elsner NEW
Deepesh U StockhamFranceElwin Sharvill NEGOTIATION
Darci G StensethBrazilIoni Bowcher UNQUALIFIED
Ricardo R PerinJapanAsiya Javayant UNQUALIFIED
Murillo H KuskoCanadaIoni Bowcher NEW
Salvatore K AlbaresJapanElwin Sharvill PROPOSAL
Jones A ChuiJapanAnna Fali QUALIFIED
Jones E MorascaCanadaIoni Bowcher NEW
Ashley J FlosiSpainAnna Fali NEGOTIATION
Smith U SlusarskiSpainXuxue Feng UNQUALIFIED
Faith H FerenczGermanyAmy Elsner QUALIFIED
Juan E BowleySpainOnyama Limba NEGOTIATION
Julie N AlbaresItalyXuxue Feng NEW
Munro X BriddickJapanOnyama Limba RENEWAL
Mujtaba V DilliardAustraliaElwin Sharvill NEGOTIATION
Clifford J RoysterGermanyBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Kaitlin V Morasca
Arvin O Gillian
Francesco H Perin
Ricardo C Doe
Rodrigues J Malet
Izzy W Saylors
Arvin A Whobrey
Darci J Figeroa
Chavez G Amigon
Jones S Darakjy
Alejandro T Rim
Aditya M Kolmetz
Maria S Garufi
Jennifer E Poquette
Wickens P Kusko
Tony J Rim
Ricardo X Malet
Ashley V Gillian
Kaitlin J Caldarera
David W Foller
Maisha N Briddick
Misaki V Poquette
Claire H Ostrosky
Jeanfrancois L Figeroa
Ricardo W Schemmer
Kadeem P Caudy
Darci V Ostrosky
David A Iturbide
Jeanfrancois T Waycott
Clifford O Briddick
Aruna R Chui
Ricardo X Stockham
Chavez W Waycott
Adams Z Stockham
Mujtaba F Poquette
Wickens D Schemmer
Aditya U Albares
Greenwood X Maclead
Nicolas O Bowley
Jennifer S Bolognia
Costa Y Darakjy
Misaki V Campain
Adams A Caudy
Maisha P Whobrey
Adams A Gaucho
Munro M Paprocki
Izzy Q Malet
Antonio M Foller
Jones I Bowley
Alejandro Y Perin
IdCountryDate
1000India2024-06-10
1001Germany2024-06-15
1002Brazil2024-05-31
1003France2024-06-06
1004Russia2024-06-04
1005France2024-06-17
1006Argentina2024-06-07
1007United Kingdom2024-06-16
1008Brazil2024-06-12
1009Canada2024-06-01
1010Argentina2024-06-23
1011Japan2024-05-27
1012Canada2024-06-06
1013United Kingdom2024-06-10
1014Spain2024-05-26
1015France2024-06-19
1016France2024-06-14
1017Spain2024-05-28
1018Japan2024-06-03
1019Canada2024-06-13
1020France2024-06-13
1021Brazil2024-06-14
1022Germany2024-06-21
1023France2024-06-05
1024India2024-06-07
1025Spain2024-06-09
1026Germany2024-06-15
1027Spain2024-06-01
1028Brazil2024-06-06
1029Canada2024-06-11
1030Japan2024-05-28
1031Argentina2024-06-21
1032Canada2024-06-19
1033Italy2024-06-17
1034United Kingdom2024-06-04
1035Brazil2024-06-09
1036France2024-06-17
1037Spain2024-06-06
1038United Kingdom2024-06-21
1039Germany2024-05-25
1040Japan2024-06-01
1041Argentina2024-06-12
1042Canada2024-06-20
1043Japan2024-05-29
1044Canada2024-06-09
1045Germany2024-06-05
1046Brazil2024-06-19
1047Argentina2024-05-25
1048Australia2024-06-02
1049France2024-06-16

On-Demand Data

NameIdCountryDate
Deepesh G Bolognia1000Australia2024-06-22
James J Gillian1001Germany2024-06-23
Emily Y Malet1002Canada2024-06-09
Ricardo O Inouye1003Canada2024-06-04
Tony R Inouye1004Spain2024-06-22
Leon R Stockham1005Canada2024-06-20
Munro P Campain1006Canada2024-06-18
Chavez Z Ruta1007Australia2024-06-01
David J Poquette1008Spain2024-05-27
Maria J Ferencz1009United Kingdom2024-06-11
Silvio E Foller1010Canada2024-06-06
Ashley J Morasca1011Russia2024-05-28
Arvin J Oldroyd1012Russia2024-06-03
Misaki P Inouye1013Canada2024-05-31
Silvio R Darakjy1014Italy2024-06-23
Darci U Stenseth1015Brazil2024-06-22
Francesco B Paprocki1016Spain2024-06-01
James L Saylors1017Germany2024-05-31
Leon S Albares1018Argentina2024-05-30
Octavia L Marrier1019Argentina2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja Q DoeArgentinaAnna Fali UNQUALIFIED
Jefferson V NestleJapanOnyama Limba NEW
Tony P OldroydArgentinaAmy Elsner QUALIFIED
Aruna Z IturbideArgentinaAnna Fali PROPOSAL
Greenwood K DarakjyIndiaAnna Fali RENEWAL
Ricardo M BowleySpainXuxue Feng PROPOSAL
Murillo A SlusarskiAustraliaBernardo Dominic NEW
Kaitlin U DoeRussiaElwin Sharvill QUALIFIED
Aruna Y FigeroaSpainXuxue Feng NEGOTIATION
Kaitlin B KolmetzGermanyAmy Elsner UNQUALIFIED
Johnson Q IturbideRussiaStephen Shaw NEGOTIATION
Murillo T KuskoCanadaXuxue Feng PROPOSAL
Ashley S AmigonIndiaBernardo Dominic PROPOSAL
Francesco O MaletArgentinaAsiya Javayant NEGOTIATION
James W StockhamIndiaElwin Sharvill PROPOSAL
Faith Z FollerRussiaIoni Bowcher QUALIFIED
Faith B RimRussiaAmy Elsner NEGOTIATION
Emily J NickaIndiaElwin Sharvill QUALIFIED
Francesco B OstroskyAustraliaBernardo Dominic RENEWAL
Maisha Y NestleUnited KingdomXuxue Feng PROPOSAL
Sinclair H VocelkaRussiaBernardo Dominic QUALIFIED
Deepesh D ChuiAustraliaAsiya Javayant PROPOSAL
Ashley P MarrierRussiaAmy Elsner RENEWAL
Maria O ButtArgentinaIvan Magalhaes QUALIFIED
Jefferson T RutaIndiaAmy Elsner UNQUALIFIED
David I MaletUnited KingdomIvan Magalhaes RENEWAL
Mayumi F RulapaughIndiaElwin Sharvill UNQUALIFIED
Maria G AlbaresSpainStephen Shaw RENEWAL
Aditya Y KolmetzAustraliaAmy Elsner UNQUALIFIED
Kadeem S SaylorsGermanyXuxue Feng UNQUALIFIED
Ivar P CaudyArgentinaIoni Bowcher RENEWAL
Alejandro F SaylorsRussiaElwin Sharvill RENEWAL
Julie N ButtItalyBernardo Dominic RENEWAL
Jennifer P ChuiCanadaXuxue Feng NEGOTIATION
David X InouyeCanadaIvan Magalhaes RENEWAL
Ricardo K IturbideIndiaAmy Elsner RENEWAL
Ivar S WaycottCanadaOnyama Limba PROPOSAL
Adams Y PoquetteRussiaXuxue Feng QUALIFIED
Izzy V MarrierUnited KingdomBernardo Dominic NEW
Ivar T AmigonAustraliaOnyama Limba NEW

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