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
Salvatore Y CampainGermanyAsiya Javayant RENEWAL
Kadeem E GarufiArgentinaStephen Shaw PROPOSAL
Claire G StensethSpainAmy Elsner RENEWAL
Morrow Y VenereSpainAnna Fali RENEWAL
Rodrigues E ButtRussiaAnna Fali NEGOTIATION
Jennifer O FlosiCanadaOnyama Limba UNQUALIFIED
Jeanfrancois X TollnerIndiaElwin Sharvill NEGOTIATION
Rodrigues V StensethJapanXuxue Feng UNQUALIFIED
Adams K FigeroaGermanyAnna Fali PROPOSAL
Octavia W IturbideItalyIvan Magalhaes UNQUALIFIED
Jennifer A KolmetzJapanAmy Elsner QUALIFIED
Sinclair L ChuiUnited KingdomIvan Magalhaes NEW
Leon B WaycottArgentinaIvan Magalhaes UNQUALIFIED
Isabel M FlosiRussiaIvan Magalhaes NEW
Silvio S BologniaAustraliaXuxue Feng PROPOSAL
Arvin V FerenczFranceStephen Shaw NEW
Maisha F IturbideFranceXuxue Feng RENEWAL
Juan Q StockhamIndiaAmy Elsner NEGOTIATION
Wickens V GauchoBrazilBernardo Dominic NEGOTIATION
Claire X KolmetzRussiaXuxue Feng NEW
Rodrigues T StensethCanadaAmy Elsner UNQUALIFIED
Aditya M NickaCanadaElwin Sharvill NEW
Ivar A InouyeUnited KingdomIvan Magalhaes QUALIFIED
Leja V FollerItalyIvan Magalhaes UNQUALIFIED
Maisha H RutaFranceXuxue Feng UNQUALIFIED
Clifford T GlickIndiaIvan Magalhaes PROPOSAL
Jones H RoysterGermanyStephen Shaw NEGOTIATION
Murillo B DoeItalyXuxue Feng UNQUALIFIED
Sinclair S ShinkoJapanIvan Magalhaes NEW
Stacey X MaletUnited KingdomBernardo Dominic PROPOSAL
Kadeem K KuskoIndiaStephen Shaw UNQUALIFIED
Leja O PerinBrazilAnna Fali QUALIFIED
Tony N CampainItalyXuxue Feng NEGOTIATION
Mayumi Q NestleUnited KingdomAsiya Javayant UNQUALIFIED
Smith K StensethFranceStephen Shaw NEGOTIATION
Costa X TollnerCanadaStephen Shaw UNQUALIFIED
Jeanfrancois B GlickGermanyAmy Elsner RENEWAL
Darci T IturbideRussiaAmy Elsner QUALIFIED
Munro T KuskoBrazilAnna Fali NEW
Morrow Z GauchoArgentinaElwin Sharvill QUALIFIED
Arvin B IturbideFranceElwin Sharvill UNQUALIFIED
Kaitlin Z GarufiRussiaIvan Magalhaes PROPOSAL
Leon M IturbideGermanyStephen Shaw PROPOSAL
Sinclair N IturbideArgentinaBernardo Dominic PROPOSAL
Izzy W CaldareraArgentinaXuxue Feng NEGOTIATION
Maria F MaletArgentinaIvan Magalhaes QUALIFIED
Aika X PoquetteArgentinaAsiya Javayant NEGOTIATION
Salvatore V MacleadItalyStephen Shaw PROPOSAL
Izzy V FollerRussiaIvan Magalhaes NEGOTIATION
Ricardo Y GarufiGermanyBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi V WhobreyCanadaAnna Fali PROPOSAL
Stacey D WaycottBrazilStephen Shaw RENEWAL
Silvio X PerinUnited KingdomAsiya Javayant NEGOTIATION
David C InouyeBrazilAnna Fali QUALIFIED
Leja T InouyeItalyElwin Sharvill QUALIFIED
Jones C ButtIndiaAmy Elsner NEGOTIATION
Aruna A TollnerBrazilStephen Shaw NEW
Sinclair S StensethItalyBernardo Dominic PROPOSAL
Jeanfrancois W CaldareraSpainStephen Shaw NEW
Ivar V DarakjyRussiaAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa D SchemmerUnited Kingdom2024-06-03Commercial Press QUALIFIED1Onyama Limba
1001Nicolas X MaletIndia2024-05-26Chapman, Ross E Esq RENEWAL29Ivan Magalhaes
1002Juan N ButtCanada2024-05-30Commercial Press NEGOTIATION68Bernardo Dominic
1003Munro L KuskoJapan2024-06-01Morlong Associates PROPOSAL97Ioni Bowcher
1004Kadeem B PaprockiBrazil2024-05-28Buckley Miller Wright QUALIFIED13Stephen Shaw
1005Johnson U SaylorsFrance2024-05-29Morlong Associates NEGOTIATION76Onyama Limba
1006Alejandro X RoysterUnited Kingdom2024-05-28Buckley Miller Wright UNQUALIFIED23Ioni Bowcher
1007Leon J FlosiIndia2024-05-27King, Christopher A Esq UNQUALIFIED45Stephen Shaw
1008Mujtaba U CaldareraFrance2024-06-18Benton, John B Jr NEGOTIATION56Bernardo Dominic
1009Kadeem I SlusarskiArgentina2024-06-19Chapman, Ross E Esq QUALIFIED42Asiya Javayant
1010Mujtaba M AmigonSpain2024-05-30Chanay, Jeffrey A Esq NEW59Xuxue Feng
1011Claire Z TollnerGermany2024-06-15Benton, John B Jr RENEWAL5Xuxue Feng
1012Sinclair F VenereJapan2024-06-05Commercial Press UNQUALIFIED88Stephen Shaw
1013Jones D FollerAustralia2024-06-19Chanay, Jeffrey A Esq PROPOSAL27Asiya Javayant
1014Juan J SlusarskiBrazil2024-06-03Printing Dimensions NEW19Xuxue Feng
1015Morrow W WaycottArgentina2024-06-16Chanay, Jeffrey A Esq NEGOTIATION33Elwin Sharvill
1016Alejandro N RimArgentina2024-06-05Buckley Miller Wright NEW66Ivan Magalhaes
1017Maria L RutaIndia2024-06-09Chemel, James L Cpa RENEWAL49Bernardo Dominic
1018Darci Z AlbaresFrance2024-06-18Truhlar And Truhlar Attys NEW22Anna Fali
1019Izzy L ButtGermany2024-06-15Morlong Associates QUALIFIED85Ivan Magalhaes
1020Morrow G MorascaCanada2024-05-31King, Christopher A Esq RENEWAL42Anna Fali
1021Maria Y PerinIndia2024-06-24Rangoni Of Florence UNQUALIFIED84Asiya Javayant
1022Claire J CaldareraJapan2024-06-19Commercial Press RENEWAL83Anna Fali
1023Jones S StockhamItaly2024-05-30Rangoni Of Florence QUALIFIED61Anna Fali
1024Munro X MaletUnited Kingdom2024-06-06Benton, John B Jr PROPOSAL54Elwin Sharvill
1025James V StensethRussia2024-06-18Chanay, Jeffrey A Esq QUALIFIED98Elwin Sharvill
1026Cody T GlickArgentina2024-06-08Chapman, Ross E Esq NEGOTIATION54Stephen Shaw
1027Johnson E GillianItaly2024-06-20Truhlar And Truhlar Attys QUALIFIED48Ioni Bowcher
1028Silvio G PerinArgentina2024-06-17Morlong Associates PROPOSAL62Ioni Bowcher
1029Kaitlin Y StockhamArgentina2024-06-08Morlong Associates NEGOTIATION90Anna Fali
1030Greenwood U ChuiSpain2024-06-12Feiner Bros PROPOSAL89Asiya Javayant
1031Kadeem Y AmigonAustralia2024-06-17Morlong Associates NEGOTIATION57Elwin Sharvill
1032Aruna H KolmetzIndia2024-06-04Commercial Press NEW75Asiya Javayant
1033Aika N IturbideSpain2024-06-17Chemel, James L Cpa UNQUALIFIED82Asiya Javayant
1034Clifford W AmigonJapan2024-06-22Benton, John B Jr RENEWAL42Ivan Magalhaes
1035Jennifer A PoquetteRussia2024-05-28Dorl, James J Esq PROPOSAL13Amy Elsner
1036Francesco L MaletGermany2024-06-02King, Christopher A Esq PROPOSAL58Xuxue Feng
1037Tony F CaudyArgentina2024-06-22Feltz Printing Service PROPOSAL84Stephen Shaw
1038Jeanfrancois V MaletJapan2024-06-15Commercial Press NEGOTIATION99Anna Fali
1039Smith O ShinkoRussia2024-06-20Dorl, James J Esq UNQUALIFIED14Stephen Shaw
1040Ricardo A RulapaughUnited Kingdom2024-06-05Commercial Press UNQUALIFIED21Amy Elsner
1041Murillo Z NestleSpain2024-06-13Buckley Miller Wright QUALIFIED30Xuxue Feng
1042Alejandro H BriddickCanada2024-06-15Feiner Bros NEGOTIATION35Amy Elsner
1043Tony P MaletSpain2024-06-18Chanay, Jeffrey A Esq PROPOSAL35Asiya Javayant
1044Costa M StockhamUnited Kingdom2024-06-24Truhlar And Truhlar Attys QUALIFIED25Ivan Magalhaes
1045Wickens G BologniaCanada2024-05-30Chemel, James L Cpa PROPOSAL74Ioni Bowcher
1046Misaki J OldroydUnited Kingdom2024-06-11Printing Dimensions PROPOSAL27Onyama Limba
1047Maisha Q OldroydIndia2024-06-24King, Christopher A Esq UNQUALIFIED0Ivan Magalhaes
1048Munro P MacleadFrance2024-06-21Dorl, James J Esq UNQUALIFIED61Anna Fali
1049Wickens R PerinRussia2024-06-15Chapman, Ross E Esq NEGOTIATION39Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Julie G FerenczGermanyElwin Sharvill NEW
Emily F PaprockiAustraliaAnna Fali NEGOTIATION
Rodrigues V InouyeBrazilOnyama Limba RENEWAL
Jennifer A RulapaughIndiaAnna Fali UNQUALIFIED
Izzy A OstroskyItalyStephen Shaw RENEWAL
Ivar B CampainBrazilIvan Magalhaes PROPOSAL
Jeanfrancois D MarrierRussiaAsiya Javayant QUALIFIED
Ivar G ShinkoCanadaIoni Bowcher NEGOTIATION
Maisha A CaudyArgentinaXuxue Feng RENEWAL
Mayumi L TollnerUnited KingdomElwin Sharvill QUALIFIED
Kadeem N FlosiFranceXuxue Feng QUALIFIED
Mayumi C GillianArgentinaAsiya Javayant UNQUALIFIED
Nicolas Y MaletUnited KingdomStephen Shaw RENEWAL
Octavia C BologniaUnited KingdomIoni Bowcher NEGOTIATION
Mujtaba K WaycottBrazilAsiya Javayant UNQUALIFIED
Tony F SergiItalyIvan Magalhaes RENEWAL
Ivar V RutaRussiaXuxue Feng NEW
Chavez X RoysterJapanXuxue Feng PROPOSAL
Sinclair M GauchoCanadaAnna Fali NEGOTIATION
Maria B PaprockiItalyOnyama Limba NEGOTIATION
Johnson Q WieserJapanStephen Shaw NEW
Aditya J WhobreyJapanXuxue Feng NEW
Jeanfrancois N CaldareraBrazilAnna Fali PROPOSAL
David F FerenczAustraliaAmy Elsner PROPOSAL
Izzy N PoquetteIndiaAnna Fali PROPOSAL
Adams W BriddickRussiaAsiya Javayant PROPOSAL
David E BowleyIndiaIoni Bowcher PROPOSAL
Greenwood H FerenczGermanyAnna Fali UNQUALIFIED
Jennifer O InouyeItalyStephen Shaw RENEWAL
Nicolas V PerinFranceIoni Bowcher UNQUALIFIED
Deepesh J SchemmerRussiaIvan Magalhaes PROPOSAL
Maisha T BowleyRussiaXuxue Feng UNQUALIFIED
Rodrigues N NickaSpainXuxue Feng PROPOSAL
Mujtaba P PoquetteCanadaXuxue Feng NEGOTIATION
Isabel Z GauchoGermanyAnna Fali QUALIFIED
Silvio U KuskoAustraliaAsiya Javayant RENEWAL
Antonio I RimUnited KingdomXuxue Feng QUALIFIED
James U WaycottAustraliaAmy Elsner NEW
Adams U NestleBrazilIoni Bowcher UNQUALIFIED
Munro J PoquetteGermanyOnyama Limba UNQUALIFIED
Tony E WaycottRussiaAnna Fali UNQUALIFIED
Emily S GlickRussiaAsiya Javayant NEGOTIATION
Aika H StockhamIndiaIvan Magalhaes QUALIFIED
Faith X VocelkaRussiaIoni Bowcher PROPOSAL
Alejandro B WaycottUnited KingdomBernardo Dominic NEW
Francesco A FerenczArgentinaBernardo Dominic RENEWAL
Jones W SaylorsSpainIvan Magalhaes NEW
Costa R FollerIndiaOnyama Limba QUALIFIED
Nicolas S GauchoAustraliaXuxue Feng UNQUALIFIED
Aditya I FlosiUnited KingdomBernardo Dominic RENEWAL
Frozen Columns
Name
Tony E Ferencz
Munro Y Venere
Stacey L Paprocki
Isabel V Nestle
Morrow T Caudy
Stacey I Venere
Octavia Q Saylors
Murillo P Oldroyd
Cody R Stenseth
Stacey O Caudy
Jeanfrancois Q Kolmetz
Aika E Sergi
Mayumi B Malet
Jones L Flosi
Wickens J Rulapaugh
Claire G Albares
Murillo N Rulapaugh
Aruna N Caudy
Salvatore S Gillian
Emily E Kusko
Julie L Iturbide
Octavia W Butt
Adams F Waycott
Misaki V Stockham
Ivar B Glick
Morrow R Kusko
Johnson K Ruta
Jefferson F Waycott
Kaitlin N Shinko
Ivar O Waycott
Tony W Glick
Tony E Caldarera
Morrow O Rulapaugh
Maisha N Malet
Silvio J Kolmetz
Izzy A Sergi
Murillo O Waycott
Chavez X Saylors
Kaitlin F Schemmer
Deepesh C Kolmetz
Ricardo S Iturbide
Sinclair A Oldroyd
Julie N Bolognia
Francesco T Wieser
Rodrigues H Dilliard
Mujtaba H Saylors
Darci I Rulapaugh
Leon P Wieser
Arvin J Ostrosky
Tony E Shinko
IdCountryDate
1000Canada2024-05-29
1001Japan2024-05-28
1002India2024-06-05
1003France2024-06-03
1004Japan2024-06-14
1005India2024-06-01
1006Germany2024-06-13
1007Italy2024-06-10
1008Canada2024-06-05
1009Japan2024-06-02
1010United Kingdom2024-05-29
1011Australia2024-06-14
1012Japan2024-06-10
1013India2024-05-30
1014Russia2024-06-05
1015Canada2024-06-05
1016Australia2024-06-05
1017Australia2024-05-28
1018Canada2024-05-31
1019Italy2024-05-29
1020Spain2024-06-18
1021Canada2024-06-23
1022India2024-06-15
1023Japan2024-06-20
1024Spain2024-06-24
1025Japan2024-06-20
1026Argentina2024-05-29
1027Argentina2024-06-12
1028Australia2024-05-31
1029France2024-06-05
1030Brazil2024-05-26
1031Brazil2024-06-06
1032Spain2024-06-24
1033United Kingdom2024-06-11
1034Australia2024-06-14
1035France2024-06-18
1036Canada2024-06-12
1037United Kingdom2024-06-10
1038Russia2024-06-19
1039France2024-06-18
1040Italy2024-06-01
1041Italy2024-06-06
1042Argentina2024-06-02
1043Russia2024-06-18
1044Italy2024-06-06
1045India2024-06-03
1046Italy2024-06-14
1047Russia2024-05-26
1048Brazil2024-06-19
1049United Kingdom2024-05-28

On-Demand Data

NameIdCountryDate
Maisha O Kusko1000United Kingdom2024-06-24
Murillo E Gillian1001Argentina2024-05-27
Arvin J Foller1002France2024-06-06
James B Dilliard1003Japan2024-06-24
James Q Malet1004Argentina2024-06-10
Chavez P Oldroyd1005India2024-05-31
Jefferson I Doe1006France2024-06-17
Aditya M Gillian1007Spain2024-06-16
Leon C Wieser1008United Kingdom2024-06-17
Johnson J Saylors1009France2024-06-20
Tony A Paprocki1010Argentina2024-06-06
Leja H Gillian1011Japan2024-05-28
Emily H Figeroa1012Italy2024-06-19
Aika E Rulapaugh1013India2024-06-22
Kaitlin K Ostrosky1014Russia2024-06-12
Alejandro A Gillian1015Italy2024-06-23
Juan W Maclead1016Argentina2024-06-20
Johnson N Paprocki1017Russia2024-06-14
Ivar J Paprocki1018Brazil2024-06-06
Chavez T Dilliard1019Canada2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa V WaycottBrazilIoni Bowcher NEGOTIATION
Jones T RulapaughJapanElwin Sharvill PROPOSAL
Darci X GillianCanadaBernardo Dominic NEW
Julie O InouyeGermanyStephen Shaw RENEWAL
Aditya R FlosiArgentinaBernardo Dominic UNQUALIFIED
Smith P StensethCanadaAsiya Javayant RENEWAL
Rodrigues R DilliardIndiaStephen Shaw NEW
Jones E AmigonItalyAsiya Javayant NEGOTIATION
Izzy B WaycottAustraliaXuxue Feng PROPOSAL
Costa L GauchoUnited KingdomAsiya Javayant RENEWAL
Adams D InouyeCanadaXuxue Feng QUALIFIED
Jennifer N KolmetzBrazilIoni Bowcher NEW
Francesco G RutaJapanElwin Sharvill RENEWAL
Silvio P GlickCanadaBernardo Dominic RENEWAL
Julie A DoeBrazilXuxue Feng UNQUALIFIED
Darci K MarrierUnited KingdomAnna Fali QUALIFIED
Izzy N MarrierBrazilElwin Sharvill QUALIFIED
Darci L VocelkaRussiaElwin Sharvill QUALIFIED
Antonio D MacleadCanadaIoni Bowcher NEGOTIATION
Francesco D PerinUnited KingdomXuxue Feng PROPOSAL
Wickens K RutaSpainIoni Bowcher NEGOTIATION
Clifford W MarrierArgentinaIvan Magalhaes QUALIFIED
Aika M FerenczBrazilElwin Sharvill NEGOTIATION
Aika L PaprockiGermanyAsiya Javayant NEGOTIATION
Adams Q KuskoAustraliaElwin Sharvill NEGOTIATION
Nicolas H FlosiFranceIvan Magalhaes QUALIFIED
Aika J DoeUnited KingdomBernardo Dominic NEGOTIATION
Izzy C RoysterRussiaStephen Shaw PROPOSAL
Ashley H DarakjyAustraliaXuxue Feng PROPOSAL
James P RulapaughGermanyBernardo Dominic RENEWAL
Aditya I AmigonSpainIoni Bowcher UNQUALIFIED
Jefferson G FollerBrazilAsiya Javayant RENEWAL
Nicolas R PerinIndiaStephen Shaw UNQUALIFIED
Stacey N DoeGermanyElwin Sharvill QUALIFIED
Smith O PerinRussiaStephen Shaw UNQUALIFIED
Clifford S DarakjySpainOnyama Limba UNQUALIFIED
Julie A SergiIndiaElwin Sharvill NEW
Arvin I VenereGermanyStephen Shaw QUALIFIED
Jefferson A BriddickFranceAnna Fali NEW
Aditya E FollerArgentinaOnyama 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>