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
Costa Z GlickIndiaBernardo Dominic NEW
Leon V WaycottAustraliaIoni Bowcher RENEWAL
Izzy M StockhamCanadaXuxue Feng UNQUALIFIED
Misaki R SaylorsJapanStephen Shaw NEW
Misaki J ChuiGermanyXuxue Feng NEW
Stacey S InouyeFranceXuxue Feng NEGOTIATION
Mujtaba S RimIndiaAnna Fali NEGOTIATION
Emily J BowleyUnited KingdomOnyama Limba NEW
Wickens T MaletAustraliaBernardo Dominic RENEWAL
Darci V GarufiAustraliaAnna Fali RENEWAL
Kaitlin K KuskoRussiaElwin Sharvill NEW
Arvin B DarakjyJapanXuxue Feng RENEWAL
James E DarakjySpainIoni Bowcher NEW
Murillo Z OldroydGermanyBernardo Dominic NEGOTIATION
Adams S KuskoJapanAsiya Javayant NEGOTIATION
Alejandro M DarakjyRussiaIoni Bowcher QUALIFIED
James V SchemmerGermanyAsiya Javayant NEW
Isabel F MacleadCanadaAmy Elsner NEW
Morrow G StensethBrazilElwin Sharvill NEW
Ashley V DilliardFranceXuxue Feng RENEWAL
Aruna S GarufiFranceStephen Shaw NEGOTIATION
Greenwood H AlbaresGermanyAsiya Javayant NEGOTIATION
David W FigeroaRussiaAnna Fali NEW
Julie I CaudyBrazilAnna Fali NEW
Kadeem G KolmetzBrazilAnna Fali QUALIFIED
Jennifer V FollerCanadaOnyama Limba QUALIFIED
Isabel H CaldareraRussiaXuxue Feng QUALIFIED
Isabel R StockhamIndiaAnna Fali RENEWAL
Aditya V WieserBrazilAnna Fali PROPOSAL
Kadeem M VenereSpainAsiya Javayant PROPOSAL
James W AlbaresArgentinaXuxue Feng UNQUALIFIED
Ashley N VenereFranceOnyama Limba NEGOTIATION
Ricardo X RimRussiaAnna Fali NEW
Salvatore E FollerArgentinaBernardo Dominic PROPOSAL
Izzy E ChuiCanadaAnna Fali QUALIFIED
Ivar Q MacleadRussiaAsiya Javayant PROPOSAL
Ricardo Z BologniaItalyAsiya Javayant NEW
Izzy P ChuiJapanAnna Fali UNQUALIFIED
Darci V VenereSpainOnyama Limba RENEWAL
Darci C MarrierJapanAmy Elsner NEGOTIATION
Ricardo Z PoquetteItalyIoni Bowcher PROPOSAL
Isabel J RulapaughUnited KingdomIvan Magalhaes RENEWAL
Leon D KolmetzJapanElwin Sharvill UNQUALIFIED
Ivar T RimArgentinaOnyama Limba NEGOTIATION
Mayumi R FigeroaUnited KingdomXuxue Feng RENEWAL
Mujtaba X RimBrazilXuxue Feng QUALIFIED
Jones U WhobreyAustraliaAmy Elsner QUALIFIED
Maria S FollerSpainStephen Shaw NEW
Ivar S DoeRussiaXuxue Feng UNQUALIFIED
Izzy I BowleyUnited KingdomStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Maria K DilliardRussiaBernardo Dominic RENEWAL
Jones B BriddickRussiaBernardo Dominic NEGOTIATION
Francesco J BologniaAustraliaAmy Elsner NEGOTIATION
Izzy J CaudyUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba H MacleadRussiaBernardo Dominic UNQUALIFIED
Mujtaba O VenereArgentinaStephen Shaw QUALIFIED
Kadeem U SaylorsJapanStephen Shaw RENEWAL
Nicolas J RimIndiaAnna Fali PROPOSAL
Wickens G CaudyRussiaElwin Sharvill PROPOSAL
Greenwood A WieserItalyAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro P AmigonGermany2024-05-22Truhlar And Truhlar Attys QUALIFIED97Ivan Magalhaes
1001Jennifer D PerinGermany2024-05-16Feltz Printing Service UNQUALIFIED4Ioni Bowcher
1002Costa O MaletRussia2024-05-28Benton, John B Jr RENEWAL30Xuxue Feng
1003Maisha V ShinkoItaly2024-06-06Dorl, James J Esq RENEWAL54Amy Elsner
1004Johnson E MaletGermany2024-05-19Buckley Miller Wright NEGOTIATION7Bernardo Dominic
1005Maisha S MaletFrance2024-05-15Buckley Miller Wright QUALIFIED49Asiya Javayant
1006Salvatore S CaldareraCanada2024-06-12King, Christopher A Esq UNQUALIFIED24Elwin Sharvill
1007Arvin F BologniaAustralia2024-05-21Chemel, James L Cpa PROPOSAL88Xuxue Feng
1008Antonio V OstroskyCanada2024-05-29Printing Dimensions RENEWAL31Stephen Shaw
1009Salvatore G FerenczItaly2024-05-21Truhlar And Truhlar Attys PROPOSAL13Amy Elsner
1010Aruna Q GauchoIndia2024-06-08Morlong Associates RENEWAL27Ioni Bowcher
1011Johnson V ShinkoCanada2024-05-24Printing Dimensions QUALIFIED8Bernardo Dominic
1012David B TollnerCanada2024-06-11Chemel, James L Cpa NEW90Amy Elsner
1013Smith M CaldareraArgentina2024-06-09Rousseaux, Michael Esq RENEWAL57Anna Fali
1014Adams K DilliardRussia2024-05-29Chapman, Ross E Esq QUALIFIED34Ivan Magalhaes
1015James Z GauchoIndia2024-05-15Rangoni Of Florence PROPOSAL59Asiya Javayant
1016Kaitlin A SchemmerArgentina2024-06-13Dorl, James J Esq QUALIFIED80Amy Elsner
1017Julie I DoeItaly2024-06-06Morlong Associates RENEWAL35Asiya Javayant
1018Darci O MaletIndia2024-05-26Printing Dimensions QUALIFIED61Asiya Javayant
1019Munro L GlickUnited Kingdom2024-05-17Chanay, Jeffrey A Esq NEGOTIATION22Bernardo Dominic
1020Kadeem J DilliardSpain2024-06-10Chemel, James L Cpa QUALIFIED78Xuxue Feng
1021Emily Z MacleadCanada2024-05-21King, Christopher A Esq PROPOSAL22Xuxue Feng
1022Jefferson V FlosiFrance2024-06-02Feltz Printing Service NEGOTIATION2Onyama Limba
1023Kaitlin G CampainItaly2024-05-30Chapman, Ross E Esq QUALIFIED76Bernardo Dominic
1024Deepesh K FigeroaItaly2024-05-19Commercial Press PROPOSAL85Stephen Shaw
1025Mayumi V OldroydUnited Kingdom2024-06-11Chapman, Ross E Esq PROPOSAL5Elwin Sharvill
1026Stacey W BologniaArgentina2024-05-15Feiner Bros RENEWAL98Asiya Javayant
1027Clifford J FollerCanada2024-05-19Chanay, Jeffrey A Esq RENEWAL61Elwin Sharvill
1028Leja P VocelkaFrance2024-05-19Printing Dimensions PROPOSAL49Ivan Magalhaes
1029Jones G RulapaughArgentina2024-06-01Benton, John B Jr RENEWAL68Stephen Shaw
1030Chavez I RoysterRussia2024-05-29Feltz Printing Service RENEWAL83Anna Fali
1031Greenwood R GillianJapan2024-05-20Buckley Miller Wright QUALIFIED1Ioni Bowcher
1032Claire A DoeJapan2024-05-17Truhlar And Truhlar Attys NEW87Xuxue Feng
1033Julie Q GauchoArgentina2024-05-22Morlong Associates RENEWAL75Bernardo Dominic
1034Arvin A FigeroaJapan2024-05-24Feiner Bros QUALIFIED89Asiya Javayant
1035Adams I CaudyUnited Kingdom2024-05-15Chemel, James L Cpa QUALIFIED75Bernardo Dominic
1036Misaki S TollnerJapan2024-05-31Feiner Bros RENEWAL4Xuxue Feng
1037Salvatore B StensethFrance2024-06-05Dorl, James J Esq NEW17Elwin Sharvill
1038Greenwood P TollnerCanada2024-05-16Buckley Miller Wright UNQUALIFIED58Stephen Shaw
1039Francesco M MaletJapan2024-06-05Truhlar And Truhlar Attys NEW93Elwin Sharvill
1040Leon W StensethJapan2024-05-20Benton, John B Jr RENEWAL4Amy Elsner
1041Smith N NestleGermany2024-06-12Commercial Press UNQUALIFIED59Elwin Sharvill
1042Adams I DoeBrazil2024-06-11Morlong Associates QUALIFIED95Ivan Magalhaes
1043Julie X OldroydCanada2024-05-30King, Christopher A Esq NEGOTIATION2Stephen Shaw
1044Faith D BologniaSpain2024-05-24Rousseaux, Michael Esq PROPOSAL20Ioni Bowcher
1045Salvatore H AmigonUnited Kingdom2024-06-03Truhlar And Truhlar Attys UNQUALIFIED1Xuxue Feng
1046Emily F DoeRussia2024-06-04Dorl, James J Esq PROPOSAL48Stephen Shaw
1047Aruna T GlickArgentina2024-05-31Feltz Printing Service UNQUALIFIED95Stephen Shaw
1048Cody H SaylorsJapan2024-06-06Printing Dimensions UNQUALIFIED50Bernardo Dominic
1049Johnson M GauchoGermany2024-06-13Chanay, Jeffrey A Esq NEW91Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Murillo H FollerItalyAnna Fali PROPOSAL
Jennifer Z GlickArgentinaIoni Bowcher PROPOSAL
Deepesh W MacleadUnited KingdomStephen Shaw NEGOTIATION
David B CaldareraIndiaElwin Sharvill QUALIFIED
Mujtaba Z GlickUnited KingdomXuxue Feng RENEWAL
Ricardo V ButtGermanyBernardo Dominic NEGOTIATION
Darci X TollnerFranceStephen Shaw UNQUALIFIED
Ivar G GarufiFranceStephen Shaw NEW
Julie N BowleySpainAsiya Javayant QUALIFIED
Isabel A VenereGermanyAnna Fali UNQUALIFIED
Alejandro P KuskoGermanyBernardo Dominic NEW
Isabel R OldroydSpainAsiya Javayant NEW
Emily D GauchoRussiaElwin Sharvill RENEWAL
Sinclair K MacleadRussiaIoni Bowcher RENEWAL
Leja V PoquetteSpainElwin Sharvill RENEWAL
Jefferson M RutaItalyAnna Fali NEW
Stacey M FigeroaGermanyAsiya Javayant QUALIFIED
Alejandro Y StockhamSpainAmy Elsner NEGOTIATION
Alejandro R FerenczUnited KingdomElwin Sharvill UNQUALIFIED
Smith A StockhamBrazilOnyama Limba PROPOSAL
Arvin Y GauchoJapanXuxue Feng NEGOTIATION
Cody E ChuiUnited KingdomAnna Fali NEW
Rodrigues Q MaletSpainXuxue Feng RENEWAL
Aditya T FollerJapanXuxue Feng PROPOSAL
Johnson U VocelkaCanadaXuxue Feng QUALIFIED
Juan J GlickIndiaElwin Sharvill PROPOSAL
Ivar U AlbaresSpainIoni Bowcher PROPOSAL
Chavez K VenereUnited KingdomAnna Fali PROPOSAL
Jefferson E DilliardCanadaAsiya Javayant PROPOSAL
Ashley Q TollnerCanadaElwin Sharvill RENEWAL
Darci A PerinUnited KingdomAnna Fali NEGOTIATION
Mujtaba B GillianItalyAmy Elsner PROPOSAL
Ivar A WhobreyBrazilAsiya Javayant UNQUALIFIED
Kaitlin Q MacleadArgentinaOnyama Limba QUALIFIED
Munro L CaldareraUnited KingdomXuxue Feng QUALIFIED
Juan G MarrierItalyOnyama Limba UNQUALIFIED
Mayumi R BologniaIndiaAsiya Javayant NEGOTIATION
Claire C AlbaresArgentinaElwin Sharvill QUALIFIED
Jones H AmigonBrazilXuxue Feng QUALIFIED
Morrow H IturbideAustraliaOnyama Limba QUALIFIED
Misaki I WieserFranceXuxue Feng QUALIFIED
Sinclair W PoquetteIndiaOnyama Limba QUALIFIED
Antonio M StockhamIndiaElwin Sharvill UNQUALIFIED
Morrow B DilliardRussiaOnyama Limba PROPOSAL
Sinclair Q WieserIndiaAnna Fali QUALIFIED
Cody F PoquetteGermanyIvan Magalhaes PROPOSAL
Costa V ChuiSpainStephen Shaw NEGOTIATION
Salvatore B RimItalyAnna Fali NEGOTIATION
Aika U WieserAustraliaBernardo Dominic NEGOTIATION
Ricardo F RimBrazilIvan Magalhaes RENEWAL
Frozen Columns
Name
Rodrigues B Paprocki
Faith Q Briddick
Jones A Kolmetz
Aika X Venere
Stacey Z Royster
Arvin G Campain
Salvatore H Marrier
Aditya H Wieser
Leja F Chui
Ashley G Saylors
Emily K Briddick
Deepesh U Butt
Juan B Malet
Octavia U Rulapaugh
Morrow U Briddick
Johnson L Stenseth
Salvatore O Caudy
Faith Z Bolognia
Cody X Royster
Juan S Gillian
David U Chui
Claire P Paprocki
Faith F Stockham
Arvin U Perin
James I Amigon
Wickens O Glick
Maria U Chui
Mayumi H Gaucho
Arvin Q Whobrey
Juan F Amigon
Arvin C Albares
Kadeem W Garufi
Jeanfrancois L Ferencz
Greenwood N Tollner
Claire W Ostrosky
Emily R Bolognia
Aditya B Stockham
Ricardo P Paprocki
Murillo S Amigon
David V Malet
Cody E Slusarski
Wickens N Oldroyd
Adams T Rulapaugh
Munro M Shinko
Costa B Marrier
James J Bowley
Arvin I Tollner
Jefferson P Slusarski
Jennifer F Rulapaugh
Faith L Paprocki
IdCountryDate
1000Germany2024-06-05
1001Russia2024-05-31
1002France2024-06-09
1003Brazil2024-06-12
1004Spain2024-05-18
1005Australia2024-05-27
1006Brazil2024-05-20
1007Canada2024-06-13
1008France2024-05-20
1009India2024-05-28
1010Spain2024-05-21
1011Italy2024-05-22
1012Brazil2024-06-01
1013Brazil2024-05-25
1014France2024-06-08
1015France2024-06-12
1016Germany2024-06-08
1017Spain2024-05-19
1018India2024-06-13
1019India2024-06-01
1020Italy2024-05-28
1021United Kingdom2024-05-31
1022Russia2024-05-25
1023Argentina2024-06-06
1024Brazil2024-06-07
1025Brazil2024-05-26
1026France2024-05-17
1027France2024-05-16
1028Russia2024-06-02
1029Germany2024-06-13
1030India2024-05-18
1031Japan2024-05-21
1032United Kingdom2024-05-23
1033India2024-05-19
1034Brazil2024-05-27
1035Russia2024-05-15
1036Canada2024-05-17
1037Spain2024-06-09
1038Japan2024-05-28
1039Germany2024-06-10
1040Italy2024-05-28
1041Brazil2024-06-08
1042Argentina2024-06-04
1043Russia2024-05-17
1044Brazil2024-05-30
1045Spain2024-05-18
1046Russia2024-05-22
1047Argentina2024-05-31
1048France2024-06-09
1049Spain2024-05-20

On-Demand Data

NameIdCountryDate
Deepesh F Bolognia1000Canada2024-06-07
Aditya R Iturbide1001Japan2024-06-13
Stacey D Tollner1002Japan2024-05-15
Greenwood E Gillian1003Japan2024-06-10
Costa W Glick1004Brazil2024-06-13
Isabel I Sergi1005Australia2024-06-12
Arvin B Marrier1006Australia2024-06-11
Cody D Garufi1007Russia2024-05-26
Misaki Q Chui1008Spain2024-06-04
Izzy N Bolognia1009India2024-05-19
Tony I Butt1010Japan2024-05-19
Morrow E Bowley1011Canada2024-05-24
Arvin N Kolmetz1012Japan2024-05-20
Ashley X Malet1013Canada2024-06-13
Greenwood I Gillian1014Germany2024-05-28
Munro Y Inouye1015Australia2024-06-05
David A Maclead1016India2024-06-09
Aika S Waycott1017Germany2024-06-05
Izzy G Doe1018Russia2024-05-21
Faith M Malet1019France2024-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo K MarrierJapanAmy Elsner QUALIFIED
Jefferson X PoquetteUnited KingdomOnyama Limba QUALIFIED
Maisha J CaldareraGermanyIvan Magalhaes UNQUALIFIED
Leja B MacleadCanadaElwin Sharvill UNQUALIFIED
Jefferson V FigeroaRussiaAsiya Javayant UNQUALIFIED
Deepesh I AmigonSpainIoni Bowcher UNQUALIFIED
Jones A RutaUnited KingdomXuxue Feng NEGOTIATION
Julie T FerenczUnited KingdomAnna Fali UNQUALIFIED
David R VenereIndiaElwin Sharvill NEGOTIATION
Munro F IturbideCanadaIvan Magalhaes QUALIFIED
Mujtaba V FlosiItalyAsiya Javayant UNQUALIFIED
Francesco U RulapaughRussiaAmy Elsner QUALIFIED
Jefferson F StensethCanadaIvan Magalhaes QUALIFIED
Deepesh H StensethUnited KingdomElwin Sharvill NEGOTIATION
Julie H GauchoJapanAmy Elsner RENEWAL
Nicolas A BologniaFranceAsiya Javayant NEGOTIATION
Rodrigues C PerinRussiaAmy Elsner NEGOTIATION
Leon T SchemmerArgentinaAnna Fali RENEWAL
Murillo M StensethBrazilElwin Sharvill UNQUALIFIED
Rodrigues V PaprockiArgentinaStephen Shaw UNQUALIFIED
Emily Q SchemmerUnited KingdomElwin Sharvill NEW
Isabel C CaldareraFranceAmy Elsner NEW
Sinclair F OldroydArgentinaAnna Fali NEW
Rodrigues W FollerRussiaOnyama Limba NEW
Octavia J GlickFranceOnyama Limba NEW
Misaki S BriddickUnited KingdomStephen Shaw UNQUALIFIED
Octavia I GillianItalyAnna Fali PROPOSAL
Aika K DilliardFranceStephen Shaw NEGOTIATION
Misaki D FlosiUnited KingdomStephen Shaw UNQUALIFIED
Faith I StensethGermanyAmy Elsner UNQUALIFIED
Sinclair E BowleyArgentinaAsiya Javayant UNQUALIFIED
Jones A SlusarskiUnited KingdomIoni Bowcher PROPOSAL
Kadeem G OldroydArgentinaOnyama Limba NEW
Maria O ShinkoIndiaAsiya Javayant QUALIFIED
Jones T VenereBrazilStephen Shaw RENEWAL
Juan Y PerinAustraliaAnna Fali NEW
Adams I ShinkoSpainBernardo Dominic QUALIFIED
Aditya S TollnerFranceIvan Magalhaes NEW
Sinclair Y SlusarskiGermanyOnyama Limba QUALIFIED
Faith J FerenczJapanStephen Shaw 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>