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
Francesco K AlbaresSpainBernardo Dominic NEGOTIATION
Mujtaba N ButtFranceElwin Sharvill NEW
Juan X RimSpainIvan Magalhaes QUALIFIED
Kaitlin S RulapaughBrazilIvan Magalhaes QUALIFIED
David L GauchoCanadaStephen Shaw RENEWAL
Izzy S MaletArgentinaIvan Magalhaes RENEWAL
Nicolas A GlickSpainOnyama Limba PROPOSAL
Misaki U SchemmerAustraliaElwin Sharvill PROPOSAL
Munro B WieserBrazilAmy Elsner RENEWAL
Stacey Y SlusarskiBrazilOnyama Limba NEGOTIATION
Maisha Z IturbideBrazilElwin Sharvill NEGOTIATION
Clifford Q RutaCanadaElwin Sharvill UNQUALIFIED
Faith P DoeFranceXuxue Feng UNQUALIFIED
Salvatore F FigeroaAustraliaBernardo Dominic NEGOTIATION
Jeanfrancois R FigeroaFranceElwin Sharvill PROPOSAL
Alejandro G BologniaIndiaOnyama Limba QUALIFIED
Leja G WaycottGermanyAsiya Javayant PROPOSAL
Julie C MaletFranceXuxue Feng NEGOTIATION
Octavia F IturbideSpainAsiya Javayant NEGOTIATION
Kaitlin M RutaAustraliaAnna Fali NEGOTIATION
Smith Z RoysterSpainAsiya Javayant NEGOTIATION
Emily G KuskoJapanAmy Elsner RENEWAL
Arvin F RoysterIndiaElwin Sharvill NEGOTIATION
Clifford I KolmetzSpainOnyama Limba RENEWAL
Clifford O AmigonAustraliaIoni Bowcher QUALIFIED
Arvin A OldroydItalyXuxue Feng UNQUALIFIED
Aruna Y FigeroaJapanAsiya Javayant PROPOSAL
David X CampainFranceAmy Elsner NEGOTIATION
Mayumi F RimCanadaAsiya Javayant NEGOTIATION
Tony Y SergiArgentinaIvan Magalhaes RENEWAL
Antonio D MaletJapanElwin Sharvill PROPOSAL
Aruna J KuskoIndiaBernardo Dominic NEW
Faith H PerinCanadaOnyama Limba QUALIFIED
Tony G ButtUnited KingdomStephen Shaw NEW
Julie B WhobreyGermanyIvan Magalhaes NEW
Ashley K IturbideCanadaOnyama Limba PROPOSAL
Darci E VenereFranceAnna Fali NEGOTIATION
Stacey B FollerRussiaBernardo Dominic UNQUALIFIED
Mayumi V CaldareraCanadaOnyama Limba NEGOTIATION
Francesco H FollerJapanBernardo Dominic NEGOTIATION
Jones Y ButtRussiaAmy Elsner UNQUALIFIED
Julie R CaldareraRussiaAsiya Javayant NEGOTIATION
Isabel X RoysterIndiaIvan Magalhaes RENEWAL
Rodrigues J FlosiItalyBernardo Dominic NEW
Isabel I MacleadFranceStephen Shaw NEW
Adams U WhobreyCanadaIvan Magalhaes NEGOTIATION
Kaitlin T MarrierAustraliaXuxue Feng NEW
Juan F SergiArgentinaAnna Fali NEW
Juan B NestleArgentinaAsiya Javayant UNQUALIFIED
Leon P FerenczItalyXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Silvio G FerenczRussiaXuxue Feng QUALIFIED
Aika K BriddickGermanyAsiya Javayant UNQUALIFIED
Salvatore Z FlosiBrazilOnyama Limba PROPOSAL
Izzy C MaletUnited KingdomAnna Fali RENEWAL
Adams Z MorascaGermanyBernardo Dominic PROPOSAL
Alejandro N WieserBrazilIvan Magalhaes UNQUALIFIED
Murillo Q KuskoRussiaElwin Sharvill UNQUALIFIED
Leon C NickaFranceXuxue Feng UNQUALIFIED
Leon F AmigonIndiaAnna Fali UNQUALIFIED
Octavia T WieserFranceXuxue Feng UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio G SlusarskiArgentina2024-06-01Feiner Bros RENEWAL21Anna Fali
1001Faith R DoeAustralia2024-06-06Feiner Bros RENEWAL44Anna Fali
1002Aruna M ChuiRussia2024-05-31Dorl, James J Esq QUALIFIED26Ivan Magalhaes
1003Aika P PaprockiGermany2024-05-28Commercial Press UNQUALIFIED62Ioni Bowcher
1004David R MacleadArgentina2024-06-01Dorl, James J Esq QUALIFIED32Asiya Javayant
1005Francesco I CaldareraAustralia2024-06-11Chanay, Jeffrey A Esq UNQUALIFIED65Elwin Sharvill
1006Cody Y SchemmerBrazil2024-06-06Feiner Bros QUALIFIED16Asiya Javayant
1007Maisha X DarakjyJapan2024-05-21Truhlar And Truhlar Attys PROPOSAL59Anna Fali
1008Ricardo R IturbideBrazil2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED58Anna Fali
1009Izzy I MaletRussia2024-05-24Rousseaux, Michael Esq QUALIFIED79Anna Fali
1010Aditya P RutaFrance2024-06-06Truhlar And Truhlar Attys NEGOTIATION52Ioni Bowcher
1011Aika L WhobreyFrance2024-05-26Chemel, James L Cpa NEGOTIATION40Elwin Sharvill
1012Adams E VocelkaUnited Kingdom2024-06-13Morlong Associates UNQUALIFIED57Onyama Limba
1013Maisha I RoysterItaly2024-06-02Feltz Printing Service UNQUALIFIED65Elwin Sharvill
1014Kadeem V FollerRussia2024-06-18Buckley Miller Wright UNQUALIFIED36Onyama Limba
1015Chavez B GlickGermany2024-06-06Chemel, James L Cpa QUALIFIED44Asiya Javayant
1016Alejandro Z FerenczSpain2024-05-27Chanay, Jeffrey A Esq RENEWAL29Ioni Bowcher
1017David L BowleyArgentina2024-06-02Benton, John B Jr PROPOSAL92Stephen Shaw
1018Maria I ShinkoItaly2024-05-24Truhlar And Truhlar Attys UNQUALIFIED39Xuxue Feng
1019Sinclair S GlickItaly2024-06-02Chanay, Jeffrey A Esq PROPOSAL23Onyama Limba
1020Morrow Z FollerItaly2024-05-31Morlong Associates NEW55Onyama Limba
1021Stacey C DarakjyItaly2024-06-14Feltz Printing Service NEW49Bernardo Dominic
1022Arvin W RimGermany2024-06-02Feiner Bros RENEWAL53Amy Elsner
1023Mujtaba R FollerUnited Kingdom2024-06-08Commercial Press NEW76Ioni Bowcher
1024Rodrigues U ShinkoRussia2024-05-21Truhlar And Truhlar Attys RENEWAL48Amy Elsner
1025Aruna Q CaudyIndia2024-06-15Buckley Miller Wright NEW84Asiya Javayant
1026Jones T RoysterItaly2024-05-27Buckley Miller Wright PROPOSAL25Asiya Javayant
1027Claire R ShinkoRussia2024-06-14Truhlar And Truhlar Attys QUALIFIED20Xuxue Feng
1028Antonio H VenereFrance2024-05-27Rousseaux, Michael Esq NEGOTIATION13Anna Fali
1029Rodrigues G FollerUnited Kingdom2024-06-05Printing Dimensions PROPOSAL62Asiya Javayant
1030Ashley R SchemmerAustralia2024-06-17Chemel, James L Cpa UNQUALIFIED63Bernardo Dominic
1031Kaitlin X CaudyFrance2024-05-27Truhlar And Truhlar Attys NEW46Asiya Javayant
1032Ricardo M RutaBrazil2024-05-26Buckley Miller Wright PROPOSAL48Stephen Shaw
1033Sinclair N GlickArgentina2024-06-18Rousseaux, Michael Esq NEGOTIATION28Onyama Limba
1034Wickens W RoysterUnited Kingdom2024-06-18Benton, John B Jr RENEWAL49Xuxue Feng
1035Maisha O CampainJapan2024-06-10King, Christopher A Esq NEW61Asiya Javayant
1036Silvio C RimItaly2024-05-31Rangoni Of Florence PROPOSAL80Anna Fali
1037Jeanfrancois O NickaJapan2024-06-06King, Christopher A Esq NEW45Xuxue Feng
1038Smith Z InouyeItaly2024-06-10Rousseaux, Michael Esq UNQUALIFIED97Ioni Bowcher
1039Adams W RoysterRussia2024-06-06Rousseaux, Michael Esq UNQUALIFIED40Xuxue Feng
1040Alejandro N FlosiFrance2024-06-10Feiner Bros NEW8Bernardo Dominic
1041Aika U RimIndia2024-05-28Chemel, James L Cpa NEW95Onyama Limba
1042Aditya V DoeAustralia2024-05-21Commercial Press RENEWAL40Asiya Javayant
1043Octavia M MaletIndia2024-06-06Rangoni Of Florence QUALIFIED20Elwin Sharvill
1044Costa S ButtFrance2024-05-21Morlong Associates RENEWAL11Xuxue Feng
1045Alejandro R PaprockiGermany2024-06-06Rangoni Of Florence RENEWAL53Bernardo Dominic
1046Silvio N WaycottRussia2024-05-30Morlong Associates QUALIFIED83Anna Fali
1047Costa O RutaAustralia2024-05-28Morlong Associates NEW17Bernardo Dominic
1048Jeanfrancois O NickaCanada2024-06-14Morlong Associates NEW19Elwin Sharvill
1049Ivar P KuskoGermany2024-06-17Feltz Printing Service QUALIFIED78Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Munro S WaycottUnited KingdomOnyama Limba RENEWAL
Maria M SlusarskiArgentinaStephen Shaw UNQUALIFIED
Costa P WieserSpainXuxue Feng UNQUALIFIED
Julie K GlickCanadaIoni Bowcher UNQUALIFIED
Jones F BowleyJapanAnna Fali RENEWAL
Mayumi X DilliardCanadaIoni Bowcher NEW
Nicolas S GauchoBrazilStephen Shaw PROPOSAL
Juan S GauchoCanadaAmy Elsner NEGOTIATION
Alejandro C OldroydJapanAsiya Javayant PROPOSAL
Alejandro I MaletUnited KingdomAmy Elsner NEW
James O SaylorsGermanyElwin Sharvill PROPOSAL
David E MacleadArgentinaElwin Sharvill RENEWAL
Aika N DarakjyUnited KingdomAnna Fali UNQUALIFIED
Adams H WhobreyBrazilBernardo Dominic NEGOTIATION
Jennifer C VocelkaArgentinaAmy Elsner NEGOTIATION
Faith F RimAustraliaAsiya Javayant QUALIFIED
Antonio O WhobreyJapanIoni Bowcher NEW
Alejandro Q WhobreyItalyIvan Magalhaes NEGOTIATION
Faith P NestleCanadaIoni Bowcher NEW
Nicolas U RutaAustraliaAsiya Javayant UNQUALIFIED
Mayumi P RoysterAustraliaAmy Elsner RENEWAL
Emily G MorascaSpainXuxue Feng NEGOTIATION
Ivar M KolmetzCanadaOnyama Limba UNQUALIFIED
Jones W FigeroaIndiaOnyama Limba NEGOTIATION
Stacey B CampainArgentinaIoni Bowcher RENEWAL
Leja Y GillianFranceElwin Sharvill PROPOSAL
Wickens D MacleadAustraliaStephen Shaw RENEWAL
Francesco K WaycottSpainElwin Sharvill NEGOTIATION
Tony Z SergiUnited KingdomIoni Bowcher UNQUALIFIED
Clifford W SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Silvio N MacleadBrazilAnna Fali NEGOTIATION
Clifford C BologniaSpainElwin Sharvill UNQUALIFIED
Julie J StockhamRussiaIoni Bowcher PROPOSAL
Leja L BowleyCanadaIvan Magalhaes UNQUALIFIED
Jennifer X ShinkoSpainXuxue Feng RENEWAL
Ashley M RulapaughUnited KingdomBernardo Dominic RENEWAL
Chavez K MorascaAustraliaAsiya Javayant RENEWAL
Darci U SchemmerFranceAsiya Javayant NEGOTIATION
Isabel D RimFranceIvan Magalhaes UNQUALIFIED
Faith M CaldareraRussiaAmy Elsner QUALIFIED
Arvin R InouyeAustraliaAmy Elsner QUALIFIED
Mayumi T RimJapanIoni Bowcher PROPOSAL
Mayumi X RoysterCanadaStephen Shaw RENEWAL
Kadeem R NestleAustraliaIoni Bowcher UNQUALIFIED
Costa P SaylorsCanadaOnyama Limba PROPOSAL
Kadeem D SlusarskiBrazilAmy Elsner RENEWAL
Ashley J CaudyJapanIvan Magalhaes UNQUALIFIED
Jefferson S SchemmerIndiaIoni Bowcher NEGOTIATION
Aika D MarrierAustraliaAnna Fali RENEWAL
Jeanfrancois Y FigeroaIndiaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Wickens G Bolognia
Tony L Saylors
Jennifer O Gaucho
Adams Z Rulapaugh
Octavia L Figeroa
Morrow N Rulapaugh
Ashley X Caldarera
Claire X Paprocki
Darci G Flosi
Misaki Y Marrier
Octavia R Iturbide
Faith I Caudy
Adams S Kusko
Darci I Paprocki
Claire E Gaucho
Darci B Kolmetz
Deepesh B Glick
Chavez X Nestle
Jones P Venere
Deepesh N Glick
Munro S Tollner
Silvio A Tollner
Mujtaba G Doe
Alejandro I Inouye
Wickens R Maclead
James Z Ruta
Salvatore I Darakjy
Darci E Ruta
Clifford P Caldarera
Juan Q Nestle
Silvio Z Kolmetz
Smith E Nestle
Darci B Malet
Aruna Q Garufi
Clifford J Sergi
Antonio I Flosi
Maria C Caldarera
Aika R Kusko
Ivar K Whobrey
Rodrigues O Tollner
Ashley I Gaucho
Claire W Perin
Francesco J Albares
Nicolas O Darakjy
Munro E Wieser
Ivar S Caldarera
Leja W Royster
Salvatore F Venere
Deepesh W Oldroyd
Tony V Kolmetz
IdCountryDate
1000India2024-05-27
1001Germany2024-05-25
1002Brazil2024-05-23
1003France2024-06-07
1004United Kingdom2024-06-10
1005Germany2024-06-01
1006France2024-05-26
1007Italy2024-05-27
1008Russia2024-06-09
1009United Kingdom2024-05-21
1010Russia2024-06-05
1011Russia2024-05-27
1012United Kingdom2024-05-25
1013United Kingdom2024-05-23
1014Italy2024-05-22
1015Brazil2024-06-04
1016Russia2024-06-06
1017Canada2024-06-17
1018France2024-06-17
1019Italy2024-05-30
1020Canada2024-06-13
1021Canada2024-06-10
1022United Kingdom2024-05-22
1023Australia2024-06-10
1024United Kingdom2024-06-07
1025Japan2024-06-11
1026Russia2024-06-10
1027Japan2024-05-27
1028Australia2024-06-13
1029India2024-05-20
1030France2024-05-24
1031Argentina2024-06-09
1032Brazil2024-05-29
1033India2024-05-26
1034Japan2024-06-09
1035Germany2024-06-06
1036Brazil2024-05-24
1037Australia2024-05-29
1038Australia2024-05-26
1039Japan2024-06-05
1040Australia2024-05-27
1041United Kingdom2024-05-25
1042Brazil2024-06-07
1043Italy2024-06-02
1044India2024-06-10
1045Argentina2024-05-22
1046Australia2024-05-20
1047Italy2024-06-02
1048Germany2024-06-09
1049Italy2024-05-30

On-Demand Data

NameIdCountryDate
Maisha F Waycott1000Russia2024-06-13
James C Oldroyd1001Spain2024-05-23
Mayumi Y Nicka1002Canada2024-06-10
Rodrigues E Vocelka1003Brazil2024-06-13
Nicolas B Tollner1004Brazil2024-05-24
Morrow E Caudy1005United Kingdom2024-05-25
Claire S Paprocki1006Brazil2024-05-29
Isabel U Morasca1007Japan2024-05-27
Stacey J Butt1008Japan2024-06-14
Silvio L Bowley1009Canada2024-06-14
Wickens C Maclead1010France2024-05-25
Darci D Inouye1011Spain2024-06-09
Stacey S Amigon1012Italy2024-06-16
Smith V Tollner1013Russia2024-06-04
James T Nicka1014Germany2024-06-05
Jones V Tollner1015India2024-05-22
Julie M Venere1016Australia2024-06-05
Antonio N Foller1017Argentina2024-05-31
Nicolas R Nestle1018United Kingdom2024-06-10
Leon F Gaucho1019Argentina2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro E RimFranceAsiya Javayant NEW
Claire J MaletAustraliaBernardo Dominic PROPOSAL
Nicolas H PerinArgentinaIvan Magalhaes QUALIFIED
Aruna D WieserUnited KingdomAnna Fali PROPOSAL
Stacey M OldroydRussiaAnna Fali NEW
David C TollnerItalyIvan Magalhaes QUALIFIED
Jennifer Q WieserRussiaBernardo Dominic NEW
Wickens E CaudyCanadaAmy Elsner QUALIFIED
Sinclair V WieserIndiaElwin Sharvill NEGOTIATION
Costa U KolmetzArgentinaIoni Bowcher NEGOTIATION
Emily R BriddickCanadaBernardo Dominic NEW
Emily T FlosiAustraliaAnna Fali QUALIFIED
Adams Z ButtAustraliaOnyama Limba PROPOSAL
Costa I KuskoArgentinaIoni Bowcher QUALIFIED
Adams F OstroskyUnited KingdomBernardo Dominic UNQUALIFIED
Julie K WhobreyAustraliaAsiya Javayant NEW
Nicolas D VenereFranceAsiya Javayant RENEWAL
Leon W VocelkaUnited KingdomIoni Bowcher UNQUALIFIED
Claire A VocelkaItalyAsiya Javayant RENEWAL
Darci U OldroydRussiaIoni Bowcher RENEWAL
Jennifer W DarakjyUnited KingdomXuxue Feng NEGOTIATION
Claire R PoquetteIndiaAnna Fali UNQUALIFIED
Murillo V SlusarskiCanadaElwin Sharvill NEW
Mujtaba E StockhamFranceStephen Shaw NEW
Isabel A AlbaresCanadaElwin Sharvill RENEWAL
Rodrigues A SlusarskiFranceElwin Sharvill RENEWAL
Cody C DarakjyAustraliaIoni Bowcher NEW
Nicolas Z MacleadSpainBernardo Dominic PROPOSAL
Ashley Q MorascaJapanElwin Sharvill RENEWAL
Johnson S WhobreyGermanyIoni Bowcher PROPOSAL
Leja Q ChuiIndiaIoni Bowcher PROPOSAL
Darci H SaylorsJapanAmy Elsner QUALIFIED
Stacey Z StockhamAustraliaStephen Shaw NEGOTIATION
Ashley W WhobreyCanadaOnyama Limba NEW
Cody Y CaudyUnited KingdomOnyama Limba QUALIFIED
Aika E WieserRussiaBernardo Dominic RENEWAL
Emily Z NestleCanadaAmy Elsner PROPOSAL
Morrow I FollerFranceElwin Sharvill QUALIFIED
Murillo T GlickIndiaAsiya Javayant QUALIFIED
Clifford N MacleadAustraliaAnna Fali PROPOSAL

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