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
Alejandro E GlickCanadaXuxue Feng NEW
Leon X SergiArgentinaXuxue Feng RENEWAL
Deepesh W FigeroaArgentinaIvan Magalhaes QUALIFIED
Sinclair W FigeroaFranceAmy Elsner NEW
Ricardo Y WhobreyBrazilOnyama Limba UNQUALIFIED
Misaki M PaprockiBrazilXuxue Feng UNQUALIFIED
Jeanfrancois H ShinkoGermanyStephen Shaw RENEWAL
Leon I WhobreyCanadaAnna Fali UNQUALIFIED
Stacey Y PoquetteArgentinaIvan Magalhaes UNQUALIFIED
Claire K FigeroaIndiaAmy Elsner PROPOSAL
Misaki A MacleadBrazilElwin Sharvill RENEWAL
Leon X CampainFranceOnyama Limba NEW
Adams B SaylorsCanadaOnyama Limba QUALIFIED
Mujtaba P MorascaIndiaIvan Magalhaes QUALIFIED
Kadeem H DoeArgentinaBernardo Dominic UNQUALIFIED
Ashley R GillianJapanOnyama Limba PROPOSAL
Kaitlin W WhobreyCanadaElwin Sharvill QUALIFIED
Salvatore C FigeroaArgentinaIvan Magalhaes RENEWAL
Nicolas H WaycottRussiaBernardo Dominic QUALIFIED
Jefferson D DilliardArgentinaIoni Bowcher NEW
Deepesh S BowleyIndiaElwin Sharvill QUALIFIED
Stacey T FerenczRussiaAnna Fali NEGOTIATION
Leon R WieserRussiaOnyama Limba NEW
Johnson F DoeGermanyStephen Shaw PROPOSAL
Stacey O FigeroaFranceAsiya Javayant UNQUALIFIED
Silvio G CaudyBrazilAsiya Javayant QUALIFIED
Costa I ShinkoAustraliaOnyama Limba UNQUALIFIED
Aika O SaylorsRussiaAnna Fali PROPOSAL
Claire Q BriddickItalyAnna Fali NEGOTIATION
James D WieserUnited KingdomIvan Magalhaes NEW
Chavez Y TollnerItalyIoni Bowcher UNQUALIFIED
Darci F BowleyItalyElwin Sharvill PROPOSAL
Faith D PerinRussiaOnyama Limba PROPOSAL
Morrow D RulapaughIndiaAsiya Javayant NEGOTIATION
Aruna X OldroydBrazilBernardo Dominic UNQUALIFIED
Deepesh F FlosiRussiaIoni Bowcher QUALIFIED
Adams A StensethSpainAmy Elsner PROPOSAL
Juan C FollerCanadaXuxue Feng NEW
Nicolas B GlickArgentinaStephen Shaw QUALIFIED
Mujtaba Q RimJapanOnyama Limba NEW
Jeanfrancois Y PerinAustraliaIvan Magalhaes RENEWAL
Alejandro Z GarufiAustraliaAmy Elsner PROPOSAL
Chavez A DarakjySpainIvan Magalhaes QUALIFIED
Kaitlin E CaldareraAustraliaXuxue Feng QUALIFIED
Jefferson V BologniaGermanyStephen Shaw NEGOTIATION
Rodrigues C SlusarskiIndiaAnna Fali PROPOSAL
Faith R TollnerItalyIvan Magalhaes RENEWAL
Wickens N MaletFranceAnna Fali RENEWAL
Francesco L SergiJapanElwin Sharvill QUALIFIED
Murillo Y RimSpainAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Clifford B AlbaresGermanyBernardo Dominic NEW
Leja B OstroskyArgentinaAnna Fali PROPOSAL
Rodrigues N AlbaresBrazilIoni Bowcher QUALIFIED
Leon J MaletFranceAsiya Javayant QUALIFIED
Munro I InouyeUnited KingdomAmy Elsner QUALIFIED
Clifford D RulapaughGermanyOnyama Limba RENEWAL
Morrow Y MorascaArgentinaOnyama Limba NEGOTIATION
Morrow O MarrierJapanBernardo Dominic QUALIFIED
Smith I WaycottSpainOnyama Limba NEW
Aditya G ButtUnited KingdomStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna Q DoeJapan2024-06-06Rangoni Of Florence QUALIFIED21Asiya Javayant
1001Deepesh X VenereUnited Kingdom2024-06-03Rangoni Of Florence UNQUALIFIED83Stephen Shaw
1002Darci Q MorascaJapan2024-05-29Printing Dimensions NEGOTIATION96Asiya Javayant
1003Maria T SaylorsUnited Kingdom2024-06-13Chapman, Ross E Esq UNQUALIFIED6Amy Elsner
1004Clifford P TollnerBrazil2024-05-23Buckley Miller Wright QUALIFIED8Amy Elsner
1005Morrow K MaletBrazil2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED59Elwin Sharvill
1006David G BriddickAustralia2024-06-04Dorl, James J Esq RENEWAL38Asiya Javayant
1007Mujtaba C PerinSpain2024-05-28Chapman, Ross E Esq RENEWAL77Anna Fali
1008Stacey T KolmetzIndia2024-06-21Commercial Press NEGOTIATION33Ivan Magalhaes
1009Johnson M PerinArgentina2024-05-25Rousseaux, Michael Esq NEW42Xuxue Feng
1010Octavia H RutaAustralia2024-05-24Rangoni Of Florence QUALIFIED84Xuxue Feng
1011Claire U DoeFrance2024-06-10Chapman, Ross E Esq RENEWAL38Elwin Sharvill
1012Leja K FerenczCanada2024-05-25Benton, John B Jr PROPOSAL53Xuxue Feng
1013Octavia U KolmetzUnited Kingdom2024-06-16Truhlar And Truhlar Attys RENEWAL10Ioni Bowcher
1014Murillo A MaletRussia2024-06-04Chanay, Jeffrey A Esq NEW95Asiya Javayant
1015James S CaldareraBrazil2024-05-24Chanay, Jeffrey A Esq RENEWAL2Elwin Sharvill
1016Jefferson J CaudyBrazil2024-06-16Chapman, Ross E Esq PROPOSAL48Ivan Magalhaes
1017Antonio E VenereCanada2024-06-04Chanay, Jeffrey A Esq QUALIFIED78Ioni Bowcher
1018Leja S AlbaresSpain2024-06-10Buckley Miller Wright NEGOTIATION20Onyama Limba
1019Deepesh C SergiBrazil2024-06-06Rangoni Of Florence UNQUALIFIED83Stephen Shaw
1020Kaitlin K ShinkoAustralia2024-06-19Rangoni Of Florence RENEWAL72Anna Fali
1021Salvatore T DarakjyIndia2024-05-25Morlong Associates UNQUALIFIED1Anna Fali
1022Izzy M NickaJapan2024-05-23Morlong Associates UNQUALIFIED55Xuxue Feng
1023Nicolas N CaudyArgentina2024-06-14Feltz Printing Service QUALIFIED88Asiya Javayant
1024Nicolas X GarufiItaly2024-06-04Chanay, Jeffrey A Esq NEW5Anna Fali
1025Jefferson T MorascaJapan2024-06-10Rousseaux, Michael Esq UNQUALIFIED19Elwin Sharvill
1026Maria B MaletIndia2024-06-09King, Christopher A Esq NEGOTIATION64Amy Elsner
1027Morrow P RulapaughBrazil2024-06-08Truhlar And Truhlar Attys RENEWAL35Xuxue Feng
1028Julie S BologniaSpain2024-05-28Commercial Press NEW32Elwin Sharvill
1029Ashley W BowleySpain2024-06-20Truhlar And Truhlar Attys NEGOTIATION67Xuxue Feng
1030Mayumi Y MaletBrazil2024-05-24Feiner Bros NEW22Xuxue Feng
1031Ricardo J DoeJapan2024-05-27Morlong Associates RENEWAL63Anna Fali
1032Izzy L DarakjyRussia2024-05-31Rangoni Of Florence QUALIFIED65Stephen Shaw
1033Antonio L OldroydItaly2024-06-19Rangoni Of Florence QUALIFIED14Amy Elsner
1034Costa Q DoeCanada2024-05-25Chemel, James L Cpa NEW25Elwin Sharvill
1035Stacey L VenereCanada2024-05-26Rangoni Of Florence NEW36Bernardo Dominic
1036Smith K StensethArgentina2024-06-04Truhlar And Truhlar Attys QUALIFIED12Bernardo Dominic
1037Izzy D SaylorsSpain2024-06-11Feiner Bros PROPOSAL26Bernardo Dominic
1038Claire J FerenczJapan2024-06-01Feltz Printing Service PROPOSAL90Xuxue Feng
1039Antonio N ChuiAustralia2024-06-07Printing Dimensions RENEWAL9Bernardo Dominic
1040Jennifer V SlusarskiCanada2024-06-19Chemel, James L Cpa UNQUALIFIED35Bernardo Dominic
1041Smith H AlbaresCanada2024-06-09Chapman, Ross E Esq NEW49Amy Elsner
1042Aruna T WieserArgentina2024-06-02Printing Dimensions QUALIFIED24Anna Fali
1043Aika B StensethItaly2024-06-13Printing Dimensions PROPOSAL53Onyama Limba
1044Deepesh F FlosiRussia2024-06-02Morlong Associates UNQUALIFIED79Stephen Shaw
1045Jones E PoquetteCanada2024-06-20Chemel, James L Cpa NEGOTIATION92Xuxue Feng
1046Octavia O SlusarskiFrance2024-06-12Dorl, James J Esq NEW44Anna Fali
1047Adams N VenereRussia2024-06-04Rousseaux, Michael Esq UNQUALIFIED19Ivan Magalhaes
1048Jennifer W WieserJapan2024-06-07Chapman, Ross E Esq RENEWAL38Onyama Limba
1049Murillo J BriddickIndia2024-05-26Printing Dimensions QUALIFIED38Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Darci F GillianIndiaAsiya Javayant RENEWAL
Jennifer A FigeroaRussiaAsiya Javayant UNQUALIFIED
Kadeem K StensethJapanOnyama Limba NEW
Claire N ButtGermanyIoni Bowcher UNQUALIFIED
Murillo C CaudyJapanXuxue Feng NEGOTIATION
Leon W NestleItalyAnna Fali RENEWAL
Claire E PoquetteItalyBernardo Dominic PROPOSAL
Jennifer C KolmetzJapanStephen Shaw NEW
Wickens O GarufiIndiaIvan Magalhaes RENEWAL
Jeanfrancois K InouyeArgentinaAnna Fali NEGOTIATION
Morrow Z ShinkoFranceXuxue Feng PROPOSAL
Salvatore W KolmetzJapanOnyama Limba QUALIFIED
Costa U ButtCanadaOnyama Limba NEGOTIATION
Ashley S ShinkoIndiaIvan Magalhaes PROPOSAL
Kadeem M StockhamItalyAnna Fali NEW
Tony G AmigonItalyElwin Sharvill PROPOSAL
Emily J DilliardAustraliaAmy Elsner RENEWAL
Faith X RulapaughUnited KingdomXuxue Feng UNQUALIFIED
Clifford J WhobreyAustraliaStephen Shaw PROPOSAL
Jefferson I GarufiRussiaElwin Sharvill NEGOTIATION
Juan Q ShinkoJapanXuxue Feng RENEWAL
Arvin R MacleadRussiaBernardo Dominic QUALIFIED
Ivar L DilliardAustraliaIvan Magalhaes UNQUALIFIED
Isabel Y CaldareraSpainStephen Shaw RENEWAL
James Z NestleSpainElwin Sharvill QUALIFIED
Claire O ButtAustraliaAnna Fali NEW
Murillo X MarrierBrazilElwin Sharvill NEGOTIATION
Rodrigues H WaycottBrazilOnyama Limba RENEWAL
Ashley M BriddickUnited KingdomBernardo Dominic RENEWAL
Kaitlin J NickaSpainIoni Bowcher UNQUALIFIED
Ivar L OstroskyCanadaElwin Sharvill RENEWAL
Octavia H MacleadArgentinaAnna Fali NEGOTIATION
Johnson W GarufiSpainAnna Fali NEW
Leon Q MacleadIndiaIvan Magalhaes PROPOSAL
David F TollnerRussiaBernardo Dominic PROPOSAL
Ricardo S DarakjyAustraliaIoni Bowcher RENEWAL
Maria D ButtBrazilAnna Fali QUALIFIED
Maria H DarakjyCanadaAnna Fali PROPOSAL
Claire C PerinBrazilAnna Fali NEW
Aika P WhobreyItalyBernardo Dominic QUALIFIED
Murillo C AlbaresFranceAnna Fali NEW
Johnson T CaldareraItalyStephen Shaw NEGOTIATION
Aika H AmigonJapanStephen Shaw RENEWAL
Greenwood M DilliardItalyIoni Bowcher QUALIFIED
Isabel M ButtJapanElwin Sharvill UNQUALIFIED
Ashley P AmigonIndiaIvan Magalhaes NEW
Nicolas N AmigonJapanAnna Fali UNQUALIFIED
Leon C BowleyUnited KingdomStephen Shaw NEGOTIATION
Kadeem S WaycottItalyOnyama Limba RENEWAL
Izzy E MacleadIndiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Juan J Rim
Antonio A Kolmetz
David U Slusarski
Kadeem C Perin
Murillo F Venere
Adams B Glick
Alejandro S Stenseth
Deepesh R Nestle
Silvio T Vocelka
Claire B Campain
Maisha J Paprocki
Clifford U Paprocki
James G Tollner
Faith P Bowley
Jefferson Q Figeroa
Rodrigues I Nestle
Jones K Wieser
Isabel E Kolmetz
Ashley Q Wieser
Wickens W Ferencz
Claire Z Royster
Deepesh R Darakjy
Darci N Bolognia
Darci E Marrier
Cody T Briddick
Costa N Perin
Ivar Y Venere
Aika I Schemmer
Costa Q Gillian
Jones O Ostrosky
James N Paprocki
Ricardo Q Vocelka
Munro W Ferencz
Chavez U Bolognia
Leja E Malet
Isabel U Caudy
David Q Gaucho
Morrow Y Stenseth
Ivar C Caudy
Maisha I Caldarera
Jeanfrancois M Amigon
Izzy H Flosi
Aruna M Rulapaugh
Octavia O Royster
Jeanfrancois X Garufi
Mujtaba X Stenseth
Mayumi N Schemmer
Alejandro K Albares
Chavez V Stockham
Greenwood Y Gillian
IdCountryDate
1000Australia2024-05-26
1001Germany2024-06-07
1002Italy2024-06-21
1003Italy2024-06-11
1004Argentina2024-06-17
1005Canada2024-06-08
1006Brazil2024-06-14
1007India2024-05-28
1008Australia2024-06-13
1009United Kingdom2024-06-19
1010India2024-06-04
1011Australia2024-05-28
1012France2024-06-14
1013Italy2024-05-25
1014Russia2024-06-17
1015Australia2024-06-01
1016Argentina2024-06-03
1017Argentina2024-05-29
1018Argentina2024-05-23
1019Germany2024-06-17
1020India2024-06-16
1021Italy2024-06-18
1022India2024-06-07
1023United Kingdom2024-06-03
1024Spain2024-05-27
1025India2024-05-30
1026Australia2024-06-05
1027India2024-06-07
1028Italy2024-06-09
1029Germany2024-06-14
1030Australia2024-06-17
1031Brazil2024-06-14
1032Spain2024-06-15
1033Brazil2024-06-18
1034France2024-05-27
1035Australia2024-06-11
1036Argentina2024-05-27
1037Spain2024-06-06
1038Australia2024-06-07
1039Germany2024-05-31
1040Canada2024-06-08
1041France2024-05-24
1042Spain2024-05-26
1043Italy2024-06-10
1044Russia2024-06-16
1045France2024-06-18
1046India2024-06-02
1047India2024-06-15
1048Germany2024-06-02
1049India2024-06-12

On-Demand Data

NameIdCountryDate
Ashley U Poquette1000India2024-06-19
Aruna Y Dilliard1001France2024-06-12
Izzy D Morasca1002Italy2024-06-07
Leon Y Flosi1003Brazil2024-06-20
Adams C Albares1004Brazil2024-06-05
Greenwood U Rim1005Argentina2024-06-01
Adams C Kolmetz1006India2024-06-02
Ivar Z Kusko1007France2024-06-17
Maisha R Perin1008Spain2024-05-26
Octavia P Caudy1009Italy2024-05-24
Mujtaba N Amigon1010United Kingdom2024-06-03
Maisha W Figeroa1011India2024-06-16
Faith V Venere1012Argentina2024-06-13
Kaitlin S Nicka1013Germany2024-06-09
Alejandro L Butt1014Russia2024-06-02
Jeanfrancois X Stenseth1015Argentina2024-05-25
Isabel R Rim1016United Kingdom2024-06-03
Tony J Saylors1017Brazil2024-06-04
Johnson M Stenseth1018Brazil2024-05-30
Greenwood B Morasca1019Russia2024-06-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya C RoysterCanadaAmy Elsner NEW
Darci W GillianAustraliaIvan Magalhaes UNQUALIFIED
Mujtaba X CaudyFranceStephen Shaw UNQUALIFIED
Costa I NickaSpainIvan Magalhaes NEW
Nicolas C GarufiItalyStephen Shaw UNQUALIFIED
Alejandro M TollnerCanadaAmy Elsner RENEWAL
Tony T TollnerGermanyElwin Sharvill NEW
Kadeem T SchemmerItalyOnyama Limba UNQUALIFIED
Morrow C ChuiUnited KingdomIoni Bowcher NEGOTIATION
Costa R RutaJapanXuxue Feng UNQUALIFIED
David I SaylorsItalyIoni Bowcher NEGOTIATION
Aditya P CampainFranceXuxue Feng RENEWAL
Ivar V StockhamFranceIvan Magalhaes UNQUALIFIED
Adams E DarakjyJapanAnna Fali RENEWAL
Claire Y MacleadJapanElwin Sharvill UNQUALIFIED
Aruna I KuskoFranceAnna Fali NEW
Darci A FerenczBrazilBernardo Dominic QUALIFIED
Deepesh W MaletItalyStephen Shaw NEGOTIATION
Stacey Z FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
Tony E FlosiAustraliaIoni Bowcher NEGOTIATION
Jeanfrancois J FigeroaIndiaBernardo Dominic NEW
Kadeem Q FerenczAustraliaAmy Elsner NEW
Clifford R OldroydAustraliaBernardo Dominic NEGOTIATION
Mayumi O FollerGermanyIvan Magalhaes QUALIFIED
Clifford R WieserIndiaXuxue Feng NEGOTIATION
Mayumi A DarakjyRussiaAsiya Javayant NEGOTIATION
Rodrigues N PerinIndiaElwin Sharvill QUALIFIED
Maisha N OldroydSpainElwin Sharvill RENEWAL
Aditya O GlickIndiaBernardo Dominic PROPOSAL
Greenwood S FlosiCanadaStephen Shaw RENEWAL
Smith X KolmetzAustraliaIoni Bowcher NEGOTIATION
Faith J VenereGermanyXuxue Feng UNQUALIFIED
Ivar A RulapaughUnited KingdomAmy Elsner NEGOTIATION
Leja E ShinkoItalyAnna Fali PROPOSAL
Jones I DoeBrazilBernardo Dominic QUALIFIED
Greenwood T OstroskyUnited KingdomAnna Fali NEGOTIATION
Juan S SaylorsItalyStephen Shaw PROPOSAL
Jones S NickaCanadaOnyama Limba PROPOSAL
Morrow O DilliardGermanyOnyama Limba UNQUALIFIED
Stacey A GarufiArgentinaXuxue Feng NEGOTIATION

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