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
Claire F GlickCanadaXuxue Feng NEW
Maria J StockhamIndiaAmy Elsner PROPOSAL
Octavia W GauchoItalyElwin Sharvill UNQUALIFIED
Sinclair X MorascaArgentinaOnyama Limba UNQUALIFIED
Leon S VenereFranceIoni Bowcher NEW
Maria H MacleadSpainIvan Magalhaes NEGOTIATION
James T CaudyRussiaAmy Elsner RENEWAL
Claire C MaletAustraliaAsiya Javayant RENEWAL
Kadeem Q CaudyItalyAsiya Javayant NEW
Misaki B TollnerIndiaAsiya Javayant RENEWAL
Adams S BowleyJapanIoni Bowcher PROPOSAL
James Y KuskoIndiaElwin Sharvill PROPOSAL
Costa D PoquetteGermanyStephen Shaw NEGOTIATION
Jennifer M VocelkaBrazilStephen Shaw NEW
Costa P RimItalyAmy Elsner QUALIFIED
Misaki W SlusarskiArgentinaAmy Elsner RENEWAL
Mayumi K RimAustraliaIvan Magalhaes QUALIFIED
Ricardo B SlusarskiGermanyAsiya Javayant NEGOTIATION
Murillo G RoysterArgentinaXuxue Feng UNQUALIFIED
Adams Q BriddickCanadaAmy Elsner RENEWAL
Antonio H RutaUnited KingdomStephen Shaw QUALIFIED
James L FollerIndiaIvan Magalhaes QUALIFIED
Murillo W IturbideArgentinaOnyama Limba QUALIFIED
Mujtaba F DoeIndiaAsiya Javayant NEW
Salvatore C BologniaRussiaIoni Bowcher QUALIFIED
Smith N OldroydGermanyOnyama Limba UNQUALIFIED
Arvin K KuskoArgentinaBernardo Dominic NEW
Misaki N TollnerGermanyOnyama Limba PROPOSAL
Jennifer R IturbideItalyAsiya Javayant QUALIFIED
Isabel T ChuiGermanyIoni Bowcher RENEWAL
Arvin J SergiArgentinaBernardo Dominic RENEWAL
Jennifer U VenereJapanElwin Sharvill PROPOSAL
Emily S MorascaAustraliaIoni Bowcher NEW
Francesco Z PoquetteCanadaOnyama Limba PROPOSAL
Silvio K GarufiJapanAmy Elsner PROPOSAL
Isabel H SergiItalyAnna Fali NEGOTIATION
Faith J ShinkoUnited KingdomAnna Fali UNQUALIFIED
Francesco L KolmetzIndiaAnna Fali QUALIFIED
Munro H SchemmerRussiaElwin Sharvill RENEWAL
Darci Y BologniaFranceIvan Magalhaes NEGOTIATION
Juan N InouyeJapanIoni Bowcher RENEWAL
Aditya U ButtBrazilIvan Magalhaes RENEWAL
Maisha D TollnerArgentinaBernardo Dominic RENEWAL
Cody F OstroskyRussiaIvan Magalhaes NEGOTIATION
Jeanfrancois B MarrierFranceIoni Bowcher QUALIFIED
Rodrigues L MarrierJapanAnna Fali PROPOSAL
Arvin N CaudyUnited KingdomIvan Magalhaes PROPOSAL
Leja E SchemmerIndiaXuxue Feng RENEWAL
Adams C PerinUnited KingdomIoni Bowcher RENEWAL
Jeanfrancois R BriddickJapanOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jones U GarufiUnited KingdomElwin Sharvill QUALIFIED
Antonio M BologniaIndiaAsiya Javayant NEGOTIATION
Wickens R FerenczRussiaOnyama Limba UNQUALIFIED
Antonio F GlickCanadaXuxue Feng PROPOSAL
Costa I GarufiJapanOnyama Limba RENEWAL
Octavia R MacleadAustraliaBernardo Dominic NEGOTIATION
David N MacleadGermanyAnna Fali RENEWAL
Ashley L DilliardArgentinaStephen Shaw UNQUALIFIED
Jones L CampainCanadaIoni Bowcher QUALIFIED
Chavez X SlusarskiCanadaBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel Q BologniaUnited Kingdom2024-06-19Feiner Bros UNQUALIFIED36Onyama Limba
1001Aruna R DoeCanada2024-05-26Chemel, James L Cpa PROPOSAL90Elwin Sharvill
1002Maisha O GillianRussia2024-06-19Chemel, James L Cpa NEGOTIATION99Stephen Shaw
1003Costa Y SergiArgentina2024-06-04Morlong Associates RENEWAL30Ivan Magalhaes
1004Aruna K WhobreyAustralia2024-06-02Rousseaux, Michael Esq RENEWAL52Asiya Javayant
1005Claire N PerinRussia2024-06-17Buckley Miller Wright UNQUALIFIED49Bernardo Dominic
1006Julie Z StockhamArgentina2024-06-13Feiner Bros UNQUALIFIED64Amy Elsner
1007Jennifer H RutaJapan2024-06-21Printing Dimensions NEW64Stephen Shaw
1008Tony J CaudyFrance2024-06-09Buckley Miller Wright QUALIFIED52Asiya Javayant
1009Aruna Z VocelkaFrance2024-06-05Rousseaux, Michael Esq UNQUALIFIED44Onyama Limba
1010Deepesh P RutaSpain2024-06-01Buckley Miller Wright NEGOTIATION90Anna Fali
1011Mayumi Z NestleJapan2024-06-22Rousseaux, Michael Esq NEW7Elwin Sharvill
1012Francesco B SchemmerSpain2024-06-08Commercial Press UNQUALIFIED72Elwin Sharvill
1013Izzy I WieserGermany2024-05-27Chapman, Ross E Esq PROPOSAL32Asiya Javayant
1014Johnson P CampainGermany2024-06-22Chapman, Ross E Esq QUALIFIED7Ioni Bowcher
1015Darci L AlbaresAustralia2024-06-17Dorl, James J Esq UNQUALIFIED39Ivan Magalhaes
1016Jones J GlickSpain2024-06-19Dorl, James J Esq NEGOTIATION99Anna Fali
1017Cody E GlickUnited Kingdom2024-06-02Benton, John B Jr QUALIFIED91Stephen Shaw
1018Kadeem G OstroskyJapan2024-06-12Feltz Printing Service NEGOTIATION27Elwin Sharvill
1019Maisha E MorascaUnited Kingdom2024-06-04King, Christopher A Esq UNQUALIFIED10Anna Fali
1020Cody U MacleadFrance2024-06-12Truhlar And Truhlar Attys NEGOTIATION50Anna Fali
1021David M MarrierRussia2024-06-20Chemel, James L Cpa NEGOTIATION67Asiya Javayant
1022Misaki L PerinAustralia2024-05-27Rousseaux, Michael Esq NEGOTIATION53Amy Elsner
1023Aruna L MacleadItaly2024-06-13Feiner Bros QUALIFIED8Elwin Sharvill
1024Chavez D VenereGermany2024-06-19Feltz Printing Service NEW30Xuxue Feng
1025Costa P BowleyJapan2024-06-19Chanay, Jeffrey A Esq PROPOSAL14Stephen Shaw
1026Kaitlin J CaldareraBrazil2024-06-20Dorl, James J Esq NEGOTIATION97Onyama Limba
1027Isabel Y GlickJapan2024-06-07Rangoni Of Florence PROPOSAL38Onyama Limba
1028Claire N RutaAustralia2024-06-18Chemel, James L Cpa UNQUALIFIED72Anna Fali
1029Aika O CaldareraFrance2024-06-07Rousseaux, Michael Esq UNQUALIFIED87Anna Fali
1030Morrow J MorascaSpain2024-05-26Chanay, Jeffrey A Esq PROPOSAL44Stephen Shaw
1031Clifford L DoeItaly2024-06-17Feltz Printing Service UNQUALIFIED67Anna Fali
1032Greenwood V RoysterAustralia2024-05-28Rousseaux, Michael Esq QUALIFIED73Asiya Javayant
1033Jeanfrancois K ShinkoFrance2024-06-12Rousseaux, Michael Esq NEGOTIATION22Elwin Sharvill
1034Claire T TollnerSpain2024-06-16Benton, John B Jr QUALIFIED61Ioni Bowcher
1035Emily M ChuiArgentina2024-06-21Benton, John B Jr NEW39Anna Fali
1036Nicolas K GillianJapan2024-05-24Morlong Associates NEW6Amy Elsner
1037Munro S WhobreyCanada2024-06-20Rousseaux, Michael Esq QUALIFIED15Amy Elsner
1038Izzy A KuskoRussia2024-05-30Chemel, James L Cpa NEW19Elwin Sharvill
1039Isabel Z RimBrazil2024-06-19Benton, John B Jr NEGOTIATION2Ivan Magalhaes
1040Kaitlin A MaletIndia2024-05-27Commercial Press RENEWAL99Amy Elsner
1041Isabel J DilliardItaly2024-05-31Buckley Miller Wright RENEWAL26Ivan Magalhaes
1042Izzy U BowleyRussia2024-06-12Dorl, James J Esq UNQUALIFIED96Bernardo Dominic
1043Maria Z MacleadSpain2024-06-13Buckley Miller Wright UNQUALIFIED80Ioni Bowcher
1044Johnson H MaletIndia2024-06-15Rousseaux, Michael Esq UNQUALIFIED83Ioni Bowcher
1045Darci W RutaUnited Kingdom2024-05-30Dorl, James J Esq NEW84Anna Fali
1046Isabel V PaprockiItaly2024-06-08King, Christopher A Esq UNQUALIFIED98Bernardo Dominic
1047David O KolmetzCanada2024-06-08Chanay, Jeffrey A Esq QUALIFIED40Amy Elsner
1048Mayumi L FollerSpain2024-06-14Morlong Associates RENEWAL99Ioni Bowcher
1049Arvin I PoquetteBrazil2024-05-28Truhlar And Truhlar Attys PROPOSAL82Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aika J WieserRussiaIoni Bowcher NEGOTIATION
Cody L IturbideCanadaAnna Fali PROPOSAL
Juan Z AmigonJapanIvan Magalhaes NEGOTIATION
Izzy Z PerinArgentinaElwin Sharvill PROPOSAL
Jennifer N PoquetteIndiaAsiya Javayant UNQUALIFIED
Aditya P VenereGermanyXuxue Feng UNQUALIFIED
David Q FollerItalyIvan Magalhaes NEGOTIATION
Sinclair Y ShinkoSpainAnna Fali UNQUALIFIED
Kaitlin K AmigonBrazilAmy Elsner RENEWAL
Stacey N WaycottJapanAsiya Javayant QUALIFIED
Faith U CampainCanadaElwin Sharvill NEW
Costa X RimIndiaBernardo Dominic PROPOSAL
Maria Q DilliardItalyIvan Magalhaes QUALIFIED
Aika W SlusarskiBrazilAmy Elsner NEGOTIATION
Aika P StensethRussiaAnna Fali NEW
Leon U WaycottCanadaBernardo Dominic PROPOSAL
Cody C MaletArgentinaIvan Magalhaes NEW
Mayumi K PaprockiRussiaBernardo Dominic RENEWAL
Claire K OstroskyArgentinaAsiya Javayant QUALIFIED
Faith H PerinIndiaIoni Bowcher UNQUALIFIED
Clifford E FerenczAustraliaAnna Fali QUALIFIED
Johnson I AlbaresIndiaIvan Magalhaes PROPOSAL
Izzy Y CaldareraJapanAmy Elsner NEGOTIATION
Antonio V DilliardArgentinaStephen Shaw RENEWAL
Chavez F BowleySpainIvan Magalhaes RENEWAL
Silvio X VocelkaGermanyOnyama Limba RENEWAL
Mujtaba X FlosiFranceStephen Shaw NEW
Antonio Z RulapaughFranceOnyama Limba RENEWAL
Cody L VenereIndiaOnyama Limba QUALIFIED
Chavez J FigeroaGermanyAsiya Javayant PROPOSAL
Leon A MorascaFranceAnna Fali UNQUALIFIED
Faith L OstroskyCanadaIoni Bowcher UNQUALIFIED
Jefferson G RulapaughFranceAnna Fali RENEWAL
Jennifer S BriddickSpainIoni Bowcher UNQUALIFIED
Aika Z RulapaughSpainElwin Sharvill NEGOTIATION
Aruna J MaletUnited KingdomAsiya Javayant QUALIFIED
Mujtaba S RulapaughIndiaAnna Fali RENEWAL
Kaitlin U IturbideGermanyAnna Fali NEGOTIATION
Leon M BriddickGermanyStephen Shaw RENEWAL
Ashley A OstroskyRussiaXuxue Feng NEW
Emily W MorascaBrazilElwin Sharvill UNQUALIFIED
Aruna O FigeroaSpainAmy Elsner UNQUALIFIED
Kaitlin F FollerJapanIoni Bowcher NEW
Misaki G AmigonGermanyAsiya Javayant QUALIFIED
Jeanfrancois Y SlusarskiCanadaStephen Shaw PROPOSAL
Alejandro Z DoeArgentinaStephen Shaw RENEWAL
Izzy Z NickaSpainAmy Elsner QUALIFIED
Aika O MarrierFranceStephen Shaw PROPOSAL
Munro D SaylorsBrazilXuxue Feng QUALIFIED
Sinclair S RulapaughUnited KingdomXuxue Feng QUALIFIED
Frozen Columns
Name
Kadeem W Campain
Ashley E Chui
Adams C Inouye
Ricardo M Ostrosky
Izzy J Shinko
Silvio F Vocelka
Munro K Nestle
Claire K Rulapaugh
Cody Q Iturbide
Jefferson P Royster
Tony C Amigon
Kaitlin X Marrier
Maisha X Paprocki
Rodrigues F Gillian
Stacey F Maclead
James J Darakjy
Darci L Maclead
Darci A Foller
Smith D Ostrosky
Maria H Albares
Darci P Vocelka
Chavez G Venere
David X Dilliard
Jennifer E Stenseth
Emily H Rim
Ricardo J Dilliard
Costa H Flosi
Sinclair X Marrier
Aika P Waycott
Darci U Schemmer
Costa M Kolmetz
Maisha E Kolmetz
Sinclair A Figeroa
Silvio A Garufi
Octavia D Rulapaugh
Antonio M Whobrey
Cody L Flosi
Smith U Iturbide
Johnson R Bowley
Kaitlin W Ruta
Aditya T Poquette
Alejandro R Doe
Izzy O Chui
Johnson S Maclead
Maisha E Albares
Octavia S Kusko
Chavez I Wieser
Jeanfrancois C Stenseth
Adams I Dilliard
Jennifer P Chui
IdCountryDate
1000Italy2024-06-16
1001Germany2024-06-13
1002Germany2024-06-14
1003Argentina2024-05-30
1004India2024-05-31
1005Australia2024-06-16
1006Italy2024-05-30
1007Brazil2024-05-31
1008India2024-05-25
1009Spain2024-05-25
1010Canada2024-06-13
1011Argentina2024-05-31
1012Brazil2024-05-29
1013Spain2024-06-09
1014Russia2024-06-02
1015United Kingdom2024-06-12
1016United Kingdom2024-06-22
1017United Kingdom2024-06-19
1018India2024-06-17
1019Russia2024-06-16
1020United Kingdom2024-06-20
1021France2024-06-10
1022Australia2024-06-21
1023Argentina2024-06-12
1024Canada2024-05-26
1025Spain2024-06-19
1026United Kingdom2024-06-17
1027Japan2024-06-11
1028France2024-06-18
1029Spain2024-06-03
1030Argentina2024-06-04
1031Japan2024-06-19
1032India2024-06-14
1033Germany2024-06-13
1034Italy2024-05-28
1035Italy2024-06-10
1036United Kingdom2024-06-14
1037Italy2024-05-27
1038Japan2024-05-25
1039France2024-06-20
1040United Kingdom2024-06-06
1041India2024-06-21
1042Argentina2024-06-06
1043Germany2024-06-10
1044Australia2024-06-22
1045France2024-06-15
1046India2024-06-16
1047Japan2024-06-14
1048Japan2024-06-08
1049Spain2024-06-22

On-Demand Data

NameIdCountryDate
Tony V Nicka1000Russia2024-06-07
Kaitlin D Caldarera1001Brazil2024-06-20
Morrow D Caldarera1002Japan2024-06-08
Maria Q Poquette1003Italy2024-06-07
Sinclair N Perin1004Canada2024-06-07
Emily A Caldarera1005Italy2024-06-13
Nicolas W Rim1006Argentina2024-06-21
Ivar P Malet1007Italy2024-06-18
Aruna G Whobrey1008Canada2024-06-06
Sinclair O Inouye1009Spain2024-06-05
Johnson S Tollner1010India2024-05-31
Clifford Z Wieser1011Russia2024-06-08
Ricardo O Flosi1012Canada2024-05-28
Francesco P Poquette1013Russia2024-05-31
James G Rulapaugh1014Australia2024-05-30
Emily L Morasca1015Japan2024-06-22
Mujtaba K Albares1016India2024-05-31
Leon Q Caldarera1017Australia2024-06-02
Morrow A Gillian1018India2024-06-02
Ricardo P Malet1019Italy2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna P BriddickBrazilOnyama Limba NEW
Kaitlin W PaprockiSpainAsiya Javayant NEGOTIATION
Julie G DoeAustraliaElwin Sharvill NEW
Cody J AmigonRussiaStephen Shaw RENEWAL
Nicolas Y WieserAustraliaStephen Shaw NEW
Adams X NickaIndiaStephen Shaw NEGOTIATION
Ricardo M FerenczIndiaAnna Fali QUALIFIED
Leja B ButtCanadaIoni Bowcher RENEWAL
Leja U OstroskyJapanAmy Elsner PROPOSAL
Jennifer N WieserIndiaAsiya Javayant UNQUALIFIED
Morrow H FlosiUnited KingdomAsiya Javayant UNQUALIFIED
Darci U KolmetzFranceAnna Fali RENEWAL
Maisha B RoysterSpainXuxue Feng QUALIFIED
Claire L OstroskyCanadaBernardo Dominic QUALIFIED
Darci H ShinkoItalyAnna Fali PROPOSAL
Misaki U MaletRussiaAmy Elsner UNQUALIFIED
Aika M ButtSpainOnyama Limba UNQUALIFIED
Mayumi A NickaSpainStephen Shaw NEW
Clifford W GillianSpainAnna Fali NEGOTIATION
Aruna B AlbaresItalyOnyama Limba RENEWAL
Ashley L CampainItalyOnyama Limba NEGOTIATION
Emily H DarakjyCanadaElwin Sharvill QUALIFIED
Tony C RutaItalyAsiya Javayant PROPOSAL
Aruna L FerenczCanadaElwin Sharvill NEGOTIATION
Izzy B OstroskyUnited KingdomAnna Fali NEGOTIATION
Costa U BriddickRussiaAsiya Javayant NEW
Ashley I OstroskyAustraliaAmy Elsner NEGOTIATION
Morrow L MacleadBrazilStephen Shaw NEGOTIATION
Arvin Q AlbaresJapanXuxue Feng QUALIFIED
Maisha J FollerGermanyElwin Sharvill NEW
Mujtaba L StockhamGermanyIvan Magalhaes NEGOTIATION
Munro Z DilliardFranceAsiya Javayant QUALIFIED
Costa U GarufiBrazilElwin Sharvill QUALIFIED
Clifford G NickaSpainIvan Magalhaes RENEWAL
Murillo D InouyeBrazilBernardo Dominic RENEWAL
Octavia A MacleadCanadaXuxue Feng UNQUALIFIED
Kaitlin W AmigonItalyElwin Sharvill NEW
Mujtaba W MacleadBrazilIoni Bowcher UNQUALIFIED
Kadeem Y DarakjyUnited KingdomIoni Bowcher NEGOTIATION
Jeanfrancois I MacleadRussiaIvan Magalhaes 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>