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
Johnson G BologniaSpainAsiya Javayant NEGOTIATION
David O FerenczGermanyAnna Fali UNQUALIFIED
Cody D NickaRussiaAsiya Javayant NEW
Maria W NestleGermanyIvan Magalhaes RENEWAL
Silvio J AlbaresArgentinaXuxue Feng NEW
Faith F IturbideFranceIoni Bowcher PROPOSAL
Francesco M PaprockiSpainElwin Sharvill PROPOSAL
Kaitlin N KuskoSpainAmy Elsner NEGOTIATION
Nicolas J MaletItalyAsiya Javayant PROPOSAL
Tony F IturbideJapanAnna Fali RENEWAL
Ivar H CaudySpainOnyama Limba UNQUALIFIED
Misaki P ShinkoSpainAsiya Javayant QUALIFIED
Jefferson L NestleSpainOnyama Limba NEGOTIATION
Murillo F OstroskyFranceAnna Fali UNQUALIFIED
Munro A FigeroaFranceElwin Sharvill NEGOTIATION
Johnson E CampainItalyIoni Bowcher PROPOSAL
Antonio G KuskoAustraliaAsiya Javayant UNQUALIFIED
Murillo C NestleCanadaAsiya Javayant PROPOSAL
Johnson H SaylorsBrazilAsiya Javayant QUALIFIED
David P SchemmerSpainAnna Fali PROPOSAL
Isabel R WhobreyGermanyBernardo Dominic PROPOSAL
Leja V PaprockiCanadaOnyama Limba NEGOTIATION
Jennifer X KolmetzRussiaIvan Magalhaes PROPOSAL
Mayumi E WieserRussiaElwin Sharvill QUALIFIED
Juan W BologniaIndiaIvan Magalhaes UNQUALIFIED
Isabel J KuskoArgentinaBernardo Dominic UNQUALIFIED
Misaki A ShinkoCanadaXuxue Feng QUALIFIED
Adams L RutaGermanyBernardo Dominic QUALIFIED
Jones C DoeFranceElwin Sharvill NEGOTIATION
Aditya U ShinkoRussiaIvan Magalhaes NEW
Johnson W BriddickItalyBernardo Dominic PROPOSAL
Morrow G ChuiItalyStephen Shaw NEW
Darci J SlusarskiAustraliaAmy Elsner NEGOTIATION
Claire Q FigeroaGermanyXuxue Feng QUALIFIED
Ricardo V MarrierSpainBernardo Dominic PROPOSAL
Silvio O RutaCanadaAsiya Javayant NEW
Julie Z GarufiJapanOnyama Limba NEGOTIATION
Adams N VenereJapanAmy Elsner PROPOSAL
Kadeem P AlbaresArgentinaBernardo Dominic RENEWAL
Claire L RutaSpainXuxue Feng UNQUALIFIED
Faith S WaycottRussiaStephen Shaw QUALIFIED
Claire Y GillianBrazilXuxue Feng NEW
Aruna E CaudyRussiaBernardo Dominic QUALIFIED
Julie P OldroydIndiaAmy Elsner RENEWAL
Mayumi Z MorascaArgentinaElwin Sharvill UNQUALIFIED
Jones D RoysterIndiaXuxue Feng NEGOTIATION
Isabel O GlickItalyAnna Fali NEW
Faith M RulapaughRussiaBernardo Dominic QUALIFIED
Juan X NestleFranceXuxue Feng QUALIFIED
Ashley P FlosiCanadaAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Francesco W RutaJapanElwin Sharvill RENEWAL
Rodrigues Z StockhamBrazilStephen Shaw QUALIFIED
Juan N RutaBrazilStephen Shaw UNQUALIFIED
Arvin V GarufiCanadaIoni Bowcher QUALIFIED
Antonio X RimAustraliaElwin Sharvill RENEWAL
Claire H NestleGermanyBernardo Dominic NEGOTIATION
Jones L TollnerJapanAsiya Javayant PROPOSAL
Mayumi I NickaCanadaIoni Bowcher RENEWAL
Octavia V RoysterCanadaAsiya Javayant RENEWAL
Tony C IturbideItalyAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja L VocelkaIndia2024-05-28Truhlar And Truhlar Attys QUALIFIED67Stephen Shaw
1001Jones S TollnerAustralia2024-06-13Commercial Press QUALIFIED56Ioni Bowcher
1002Aditya J KolmetzAustralia2024-06-22Printing Dimensions NEW32Stephen Shaw
1003Antonio Z CaldareraArgentina2024-06-17Chapman, Ross E Esq QUALIFIED0Xuxue Feng
1004Ashley N MorascaCanada2024-06-14Chanay, Jeffrey A Esq QUALIFIED35Anna Fali
1005Octavia M NestleJapan2024-06-12Buckley Miller Wright NEGOTIATION42Ivan Magalhaes
1006Wickens W CampainUnited Kingdom2024-06-17Truhlar And Truhlar Attys RENEWAL35Ivan Magalhaes
1007Misaki W IturbideBrazil2024-06-22Benton, John B Jr PROPOSAL42Xuxue Feng
1008Jeanfrancois Q RulapaughJapan2024-06-04Truhlar And Truhlar Attys QUALIFIED49Onyama Limba
1009Stacey F ChuiArgentina2024-06-01Rangoni Of Florence RENEWAL89Stephen Shaw
1010Maria F FigeroaGermany2024-06-08Commercial Press QUALIFIED10Ioni Bowcher
1011Emily S SaylorsItaly2024-06-01Dorl, James J Esq QUALIFIED17Amy Elsner
1012Jones C MaletJapan2024-06-21Chemel, James L Cpa QUALIFIED57Bernardo Dominic
1013Chavez W SchemmerGermany2024-05-31Feiner Bros QUALIFIED72Asiya Javayant
1014Maisha H PaprockiArgentina2024-06-08Printing Dimensions NEW66Xuxue Feng
1015Izzy O StockhamArgentina2024-06-19Feiner Bros PROPOSAL30Amy Elsner
1016Misaki G CaudyJapan2024-05-25Truhlar And Truhlar Attys PROPOSAL64Stephen Shaw
1017Murillo O FigeroaFrance2024-05-24Buckley Miller Wright UNQUALIFIED80Ioni Bowcher
1018Murillo H GarufiItaly2024-06-04Rousseaux, Michael Esq QUALIFIED38Bernardo Dominic
1019Adams T GarufiAustralia2024-05-26Feiner Bros NEW19Anna Fali
1020Munro J SlusarskiFrance2024-06-12Chemel, James L Cpa PROPOSAL7Xuxue Feng
1021Rodrigues Y SchemmerUnited Kingdom2024-05-31Buckley Miller Wright NEW27Elwin Sharvill
1022Cody E CaudyArgentina2024-06-09Commercial Press PROPOSAL61Stephen Shaw
1023Francesco D InouyeSpain2024-05-26Chapman, Ross E Esq UNQUALIFIED37Asiya Javayant
1024Jennifer Z FigeroaSpain2024-06-09Dorl, James J Esq UNQUALIFIED63Bernardo Dominic
1025Kaitlin N FlosiSpain2024-06-02Printing Dimensions NEW76Elwin Sharvill
1026Aditya Z StockhamBrazil2024-06-08Feltz Printing Service RENEWAL59Ioni Bowcher
1027Juan C RutaIndia2024-06-06Rangoni Of Florence RENEWAL33Ioni Bowcher
1028Maria L ButtUnited Kingdom2024-05-26Buckley Miller Wright UNQUALIFIED16Bernardo Dominic
1029James O PoquetteRussia2024-05-24Truhlar And Truhlar Attys RENEWAL98Ivan Magalhaes
1030Mayumi T GlickArgentina2024-05-24Dorl, James J Esq UNQUALIFIED9Anna Fali
1031Murillo B GarufiGermany2024-06-21Rousseaux, Michael Esq NEW85Ioni Bowcher
1032Sinclair P GauchoBrazil2024-05-25Rousseaux, Michael Esq UNQUALIFIED60Xuxue Feng
1033Silvio K DoeFrance2024-06-19Benton, John B Jr RENEWAL46Ivan Magalhaes
1034Julie Z WieserAustralia2024-05-24Rangoni Of Florence NEW85Anna Fali
1035Maisha I SchemmerJapan2024-06-18Dorl, James J Esq NEW56Ioni Bowcher
1036Morrow D GlickJapan2024-06-19Chemel, James L Cpa NEW69Bernardo Dominic
1037Maisha Y PaprockiGermany2024-06-16Dorl, James J Esq NEGOTIATION38Xuxue Feng
1038Arvin H RulapaughRussia2024-06-20King, Christopher A Esq NEGOTIATION12Asiya Javayant
1039Tony J NestleUnited Kingdom2024-05-31Feiner Bros NEW72Stephen Shaw
1040Aruna R IturbideBrazil2024-06-16Chanay, Jeffrey A Esq UNQUALIFIED85Ivan Magalhaes
1041Aditya J GarufiItaly2024-06-02Buckley Miller Wright PROPOSAL78Ioni Bowcher
1042Jennifer H FigeroaFrance2024-06-03Benton, John B Jr QUALIFIED95Stephen Shaw
1043Mayumi J CaudyJapan2024-06-11Chemel, James L Cpa NEGOTIATION5Asiya Javayant
1044Misaki A MarrierGermany2024-05-28Chapman, Ross E Esq UNQUALIFIED64Xuxue Feng
1045Deepesh J OldroydUnited Kingdom2024-06-15Chapman, Ross E Esq QUALIFIED30Amy Elsner
1046Antonio W VocelkaItaly2024-06-08Commercial Press QUALIFIED55Elwin Sharvill
1047Kaitlin O CaldareraArgentina2024-06-04Rousseaux, Michael Esq NEW30Stephen Shaw
1048Adams H GauchoGermany2024-06-21Chapman, Ross E Esq UNQUALIFIED37Ioni Bowcher
1049Misaki M CaldareraUnited Kingdom2024-06-01Dorl, James J Esq NEGOTIATION99Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
David U GlickIndiaAnna Fali PROPOSAL
Aditya P GarufiBrazilAsiya Javayant QUALIFIED
Darci J GillianBrazilStephen Shaw NEW
Morrow M BriddickJapanAsiya Javayant QUALIFIED
Chavez G SergiRussiaAsiya Javayant NEGOTIATION
Munro B GlickBrazilElwin Sharvill UNQUALIFIED
Costa G AmigonUnited KingdomIvan Magalhaes NEW
Salvatore U RoysterRussiaOnyama Limba PROPOSAL
Munro O AmigonRussiaAmy Elsner PROPOSAL
Ricardo N NickaIndiaIvan Magalhaes UNQUALIFIED
Francesco O GillianAustraliaBernardo Dominic PROPOSAL
Kadeem V StensethCanadaAnna Fali NEGOTIATION
Mayumi S NickaArgentinaXuxue Feng NEW
Misaki U VenereFranceIoni Bowcher QUALIFIED
Jones X DoeFranceStephen Shaw NEGOTIATION
Salvatore Y AmigonAustraliaAmy Elsner PROPOSAL
Adams G PaprockiArgentinaAmy Elsner PROPOSAL
Tony H PoquetteAustraliaStephen Shaw RENEWAL
Ricardo W GlickFranceIvan Magalhaes NEGOTIATION
Jennifer R DilliardJapanIoni Bowcher NEW
Kaitlin W StockhamRussiaAsiya Javayant UNQUALIFIED
Cody E VocelkaUnited KingdomAsiya Javayant RENEWAL
Maisha R InouyeBrazilElwin Sharvill NEGOTIATION
Arvin K DarakjyGermanyIvan Magalhaes PROPOSAL
Arvin O SlusarskiGermanyAmy Elsner PROPOSAL
Cody U MacleadFranceAmy Elsner NEGOTIATION
Claire U SergiCanadaStephen Shaw UNQUALIFIED
David C SlusarskiIndiaIoni Bowcher NEGOTIATION
Mayumi M FerenczRussiaBernardo Dominic NEGOTIATION
Julie Q CaldareraUnited KingdomIvan Magalhaes QUALIFIED
Munro Y CampainRussiaAmy Elsner PROPOSAL
Kadeem X DoeAustraliaOnyama Limba NEGOTIATION
Leja B CampainGermanyOnyama Limba PROPOSAL
Alejandro W StensethItalyAsiya Javayant UNQUALIFIED
Aruna J KolmetzUnited KingdomBernardo Dominic UNQUALIFIED
Leon G SaylorsCanadaAsiya Javayant NEW
David V DarakjyAustraliaBernardo Dominic PROPOSAL
Deepesh O CaudySpainOnyama Limba NEGOTIATION
Chavez W SergiIndiaBernardo Dominic PROPOSAL
Jefferson O VenereAustraliaElwin Sharvill NEGOTIATION
Maisha T SlusarskiIndiaIvan Magalhaes QUALIFIED
Isabel M WieserItalyAnna Fali RENEWAL
Aruna D WhobreyRussiaAnna Fali NEGOTIATION
Maisha C StensethUnited KingdomXuxue Feng PROPOSAL
Isabel V ChuiBrazilStephen Shaw NEW
Alejandro Q BriddickBrazilAnna Fali UNQUALIFIED
Isabel X KolmetzAustraliaAnna Fali QUALIFIED
Misaki C GauchoItalyAmy Elsner QUALIFIED
Smith N WhobreyGermanyAnna Fali NEW
Faith R KuskoIndiaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Rodrigues I Poquette
Greenwood O Kusko
Aditya D Flosi
Isabel F Ferencz
Adams Q Perin
Leon C Waycott
Greenwood D Garufi
Jeanfrancois R Flosi
Wickens Q Doe
Greenwood B Bowley
David L Campain
Aruna L Schemmer
Silvio N Wieser
Kaitlin R Slusarski
Aruna Y Maclead
Maria C Rulapaugh
Murillo Q Venere
Ivar B Butt
Aika I Bowley
Jefferson W Shinko
Costa A Slusarski
Adams P Amigon
Maria A Bolognia
Julie A Paprocki
Arvin S Gillian
Deepesh W Albares
Greenwood X Caldarera
Deepesh V Ferencz
Smith G Schemmer
Leja N Butt
Johnson S Dilliard
Wickens N Venere
Wickens D Chui
Juan B Royster
Cody V Rim
Emily V Paprocki
James B Chui
Jefferson N Foller
Aika M Paprocki
Clifford M Dilliard
Aruna F Ferencz
Rodrigues C Rim
Kaitlin W Nicka
Darci I Stockham
Kadeem G Kolmetz
Ashley S Perin
Silvio B Maclead
Claire Z Ruta
Aika M Schemmer
Mujtaba J Butt
IdCountryDate
1000Brazil2024-06-12
1001Canada2024-05-25
1002United Kingdom2024-06-15
1003Russia2024-06-01
1004Brazil2024-06-17
1005Spain2024-05-29
1006Germany2024-06-19
1007Australia2024-06-15
1008Spain2024-06-22
1009Canada2024-06-20
1010Germany2024-06-12
1011Argentina2024-05-30
1012Australia2024-06-14
1013Australia2024-06-12
1014Germany2024-06-21
1015Brazil2024-05-28
1016Spain2024-05-25
1017Australia2024-06-06
1018Russia2024-05-25
1019Canada2024-06-14
1020Germany2024-06-02
1021Japan2024-06-04
1022Canada2024-06-13
1023Spain2024-06-05
1024Argentina2024-06-10
1025Spain2024-06-06
1026Japan2024-06-12
1027India2024-06-03
1028Spain2024-06-05
1029United Kingdom2024-06-09
1030Canada2024-06-12
1031Brazil2024-05-25
1032Italy2024-06-03
1033Germany2024-06-03
1034Japan2024-06-10
1035Japan2024-06-18
1036Australia2024-06-04
1037Brazil2024-06-21
1038France2024-05-29
1039India2024-06-05
1040France2024-06-20
1041Spain2024-06-21
1042Argentina2024-05-28
1043Italy2024-05-26
1044Spain2024-06-09
1045Spain2024-06-13
1046Australia2024-06-09
1047Russia2024-06-14
1048Japan2024-06-02
1049Japan2024-06-21

On-Demand Data

NameIdCountryDate
David R Doe1000Russia2024-06-18
Antonio N Maclead1001Germany2024-06-18
Leja S Garufi1002Brazil2024-06-10
Tony U Wieser1003Spain2024-05-31
Ivar A Gaucho1004Argentina2024-05-30
Juan Z Sergi1005Argentina2024-06-02
Rodrigues F Shinko1006Australia2024-05-24
Maria S Malet1007Brazil2024-06-11
Antonio N Caudy1008Germany2024-06-10
Jefferson U Caudy1009Germany2024-06-18
Clifford U Marrier1010United Kingdom2024-06-18
Salvatore Z Nicka1011Australia2024-06-14
Jefferson T Kolmetz1012Canada2024-06-21
Rodrigues A Garufi1013Australia2024-06-08
Jennifer U Campain1014Australia2024-06-13
Stacey L Schemmer1015Spain2024-05-24
Munro I Butt1016Argentina2024-06-20
Claire P Ferencz1017Germany2024-05-25
Antonio O Inouye1018Canada2024-06-15
Maria N Morasca1019Germany2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia T WaycottJapanElwin Sharvill NEW
Aruna S GauchoArgentinaAsiya Javayant RENEWAL
Clifford H WhobreyCanadaIoni Bowcher NEW
Darci Z BriddickUnited KingdomIoni Bowcher NEGOTIATION
Silvio A SlusarskiAustraliaStephen Shaw NEGOTIATION
Murillo A ChuiIndiaStephen Shaw NEW
Arvin Z MorascaArgentinaIvan Magalhaes UNQUALIFIED
Stacey D IturbideItalyXuxue Feng QUALIFIED
Izzy H AlbaresUnited KingdomElwin Sharvill QUALIFIED
Francesco Z GlickRussiaAnna Fali QUALIFIED
Jennifer L BriddickGermanyAmy Elsner PROPOSAL
Morrow V DilliardArgentinaIvan Magalhaes NEGOTIATION
Sinclair C MarrierJapanAnna Fali PROPOSAL
Munro M ShinkoSpainBernardo Dominic UNQUALIFIED
Leon R BowleyFranceElwin Sharvill QUALIFIED
Wickens X ChuiGermanyBernardo Dominic RENEWAL
Stacey N SaylorsCanadaStephen Shaw RENEWAL
Kadeem D PoquetteCanadaXuxue Feng NEGOTIATION
Nicolas T VenereCanadaBernardo Dominic RENEWAL
Julie O DoeCanadaStephen Shaw QUALIFIED
Nicolas E StensethFranceBernardo Dominic PROPOSAL
Aditya C PaprockiArgentinaOnyama Limba UNQUALIFIED
Adams N PaprockiArgentinaOnyama Limba RENEWAL
Tony R ButtAustraliaElwin Sharvill NEW
David L StockhamUnited KingdomBernardo Dominic PROPOSAL
Mayumi V OstroskyItalyElwin Sharvill RENEWAL
Ashley O NestleUnited KingdomIoni Bowcher QUALIFIED
Silvio T ButtArgentinaAmy Elsner NEW
Francesco I DoeFranceBernardo Dominic RENEWAL
Ricardo Q GarufiSpainAnna Fali UNQUALIFIED
Aditya B KolmetzAustraliaIvan Magalhaes NEGOTIATION
Leja C PaprockiIndiaElwin Sharvill NEGOTIATION
Leon V GarufiArgentinaAmy Elsner UNQUALIFIED
Isabel U ChuiBrazilAmy Elsner UNQUALIFIED
Faith V FigeroaArgentinaElwin Sharvill UNQUALIFIED
Faith T StockhamArgentinaXuxue Feng RENEWAL
Munro L ChuiCanadaAnna Fali PROPOSAL
Ashley S FerenczSpainElwin Sharvill NEGOTIATION
Jefferson G ButtSpainXuxue Feng UNQUALIFIED
Juan R GauchoItalyAmy Elsner 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>