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
Misaki A IturbideItalyBernardo Dominic QUALIFIED
Kaitlin S MaletIndiaAnna Fali PROPOSAL
Mayumi J ChuiAustraliaIvan Magalhaes NEW
Adams O SaylorsJapanElwin Sharvill QUALIFIED
Morrow I ChuiItalyIoni Bowcher RENEWAL
Maisha K FollerUnited KingdomAsiya Javayant QUALIFIED
Aditya L FollerArgentinaOnyama Limba NEW
Jefferson W WaycottIndiaBernardo Dominic NEW
Stacey K CaldareraSpainIoni Bowcher PROPOSAL
Costa P RimArgentinaAnna Fali QUALIFIED
Chavez E DarakjyUnited KingdomStephen Shaw PROPOSAL
Emily H KolmetzAustraliaXuxue Feng NEGOTIATION
Tony C CaudyRussiaBernardo Dominic NEGOTIATION
Maisha G SergiGermanyElwin Sharvill NEGOTIATION
Aika P DarakjyBrazilBernardo Dominic QUALIFIED
Misaki I DarakjyJapanStephen Shaw QUALIFIED
Aika I CaudyItalyIoni Bowcher UNQUALIFIED
Maria K FigeroaAustraliaElwin Sharvill NEGOTIATION
Jones R VocelkaGermanyAsiya Javayant QUALIFIED
Ashley Y PerinSpainStephen Shaw NEGOTIATION
David E AmigonJapanAsiya Javayant RENEWAL
Emily A InouyeUnited KingdomAnna Fali QUALIFIED
Maisha S OstroskyArgentinaAnna Fali UNQUALIFIED
Aika H KuskoRussiaAnna Fali NEGOTIATION
Kaitlin V FlosiFranceIvan Magalhaes PROPOSAL
Emily O RimFranceBernardo Dominic RENEWAL
Octavia L KolmetzIndiaStephen Shaw NEW
Morrow E GauchoRussiaIoni Bowcher RENEWAL
Morrow J RutaArgentinaOnyama Limba UNQUALIFIED
Silvio G GauchoItalyOnyama Limba PROPOSAL
Darci E GauchoJapanIoni Bowcher QUALIFIED
Isabel I GarufiUnited KingdomIvan Magalhaes UNQUALIFIED
Deepesh J SchemmerJapanAnna Fali QUALIFIED
Alejandro M SergiBrazilIoni Bowcher UNQUALIFIED
Leon G ButtItalyIoni Bowcher NEW
Darci T RoysterJapanIoni Bowcher NEGOTIATION
Mujtaba D PerinFranceBernardo Dominic QUALIFIED
Maria N VocelkaItalyXuxue Feng PROPOSAL
Maria Q InouyeGermanyStephen Shaw RENEWAL
Ashley D KolmetzBrazilIvan Magalhaes QUALIFIED
Alejandro A GillianBrazilBernardo Dominic PROPOSAL
Smith Y StockhamJapanElwin Sharvill PROPOSAL
Octavia E SaylorsSpainAsiya Javayant NEGOTIATION
Antonio V WhobreyGermanyAnna Fali NEW
Smith P KolmetzCanadaOnyama Limba PROPOSAL
Izzy S BologniaAustraliaOnyama Limba NEW
Mayumi C MorascaItalyAnna Fali UNQUALIFIED
Mayumi C BowleyFranceStephen Shaw NEW
Darci J FerenczIndiaXuxue Feng NEW
James S WhobreyArgentinaOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Deepesh C DarakjyArgentinaIvan Magalhaes PROPOSAL
Clifford W VocelkaGermanyIoni Bowcher NEW
Greenwood X InouyeItalyOnyama Limba NEW
Rodrigues J CaldareraUnited KingdomOnyama Limba RENEWAL
Ricardo A MacleadAustraliaXuxue Feng NEGOTIATION
David W FlosiCanadaIoni Bowcher UNQUALIFIED
Morrow I PerinFranceIvan Magalhaes NEGOTIATION
Kaitlin Q DilliardUnited KingdomAnna Fali NEW
Cody M StensethRussiaOnyama Limba UNQUALIFIED
Ivar B GarufiUnited KingdomIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith V PerinCanada2024-06-01Rangoni Of Florence QUALIFIED19Bernardo Dominic
1001Costa G GarufiRussia2024-06-13Chanay, Jeffrey A Esq RENEWAL12Bernardo Dominic
1002Silvio X StensethJapan2024-06-12Morlong Associates RENEWAL71Anna Fali
1003David C MaletJapan2024-05-31Chanay, Jeffrey A Esq NEGOTIATION70Ioni Bowcher
1004Sinclair P MaletBrazil2024-06-09Morlong Associates PROPOSAL21Elwin Sharvill
1005Kaitlin Q SaylorsBrazil2024-06-06Dorl, James J Esq PROPOSAL88Anna Fali
1006Ricardo C SchemmerArgentina2024-06-09King, Christopher A Esq QUALIFIED57Amy Elsner
1007Isabel L AlbaresFrance2024-05-24King, Christopher A Esq PROPOSAL43Asiya Javayant
1008Greenwood E DarakjyFrance2024-05-30Rangoni Of Florence QUALIFIED99Xuxue Feng
1009David P WaycottUnited Kingdom2024-06-08Chapman, Ross E Esq NEW76Anna Fali
1010Aruna Q RulapaughFrance2024-06-20Dorl, James J Esq NEGOTIATION53Elwin Sharvill
1011Jeanfrancois P RutaCanada2024-06-08Chapman, Ross E Esq NEW89Onyama Limba
1012Francesco C BologniaJapan2024-06-02Truhlar And Truhlar Attys RENEWAL71Ivan Magalhaes
1013Chavez F SergiFrance2024-05-25Rangoni Of Florence QUALIFIED58Anna Fali
1014Adams V RoysterBrazil2024-05-25Morlong Associates NEW8Xuxue Feng
1015Nicolas X AlbaresCanada2024-05-23King, Christopher A Esq QUALIFIED7Xuxue Feng
1016Leon Z SaylorsSpain2024-06-18Buckley Miller Wright QUALIFIED65Xuxue Feng
1017Alejandro T WhobreyItaly2024-06-02Feiner Bros UNQUALIFIED86Asiya Javayant
1018Alejandro D GlickArgentina2024-05-30King, Christopher A Esq QUALIFIED79Elwin Sharvill
1019Deepesh D BowleySpain2024-06-20Buckley Miller Wright RENEWAL10Amy Elsner
1020Tony U WaycottGermany2024-06-03Rousseaux, Michael Esq NEGOTIATION46Stephen Shaw
1021Julie Z GillianBrazil2024-05-29Rousseaux, Michael Esq PROPOSAL87Stephen Shaw
1022Jennifer F GlickJapan2024-05-29King, Christopher A Esq NEW28Bernardo Dominic
1023Aika K WaycottBrazil2024-06-16Rangoni Of Florence UNQUALIFIED74Ivan Magalhaes
1024Antonio X RulapaughBrazil2024-06-15Printing Dimensions PROPOSAL44Asiya Javayant
1025Deepesh G RimAustralia2024-06-06Feltz Printing Service PROPOSAL25Xuxue Feng
1026Chavez K IturbideCanada2024-06-04Feiner Bros RENEWAL67Amy Elsner
1027Aditya A ShinkoAustralia2024-06-02Buckley Miller Wright NEW1Anna Fali
1028Deepesh M VocelkaCanada2024-05-31Morlong Associates UNQUALIFIED90Ioni Bowcher
1029Alejandro R CaldareraCanada2024-06-05Morlong Associates UNQUALIFIED32Stephen Shaw
1030Kaitlin Q OstroskyItaly2024-06-21Truhlar And Truhlar Attys RENEWAL43Bernardo Dominic
1031Leon G WaycottAustralia2024-06-10Chanay, Jeffrey A Esq PROPOSAL1Elwin Sharvill
1032Aika I ButtJapan2024-06-11Benton, John B Jr RENEWAL92Ioni Bowcher
1033David R CampainIndia2024-06-19Rangoni Of Florence PROPOSAL20Onyama Limba
1034Jones R StockhamUnited Kingdom2024-06-15Commercial Press PROPOSAL56Onyama Limba
1035Jennifer P NestleIndia2024-06-17Printing Dimensions QUALIFIED79Anna Fali
1036Johnson J BologniaArgentina2024-05-29Feiner Bros UNQUALIFIED75Asiya Javayant
1037Mujtaba E MaletUnited Kingdom2024-06-16Truhlar And Truhlar Attys UNQUALIFIED96Anna Fali
1038Mujtaba X FollerAustralia2024-06-01Buckley Miller Wright PROPOSAL88Xuxue Feng
1039Izzy D AlbaresItaly2024-06-06Chapman, Ross E Esq NEW50Asiya Javayant
1040Jones J FerenczAustralia2024-06-09Rangoni Of Florence NEGOTIATION54Asiya Javayant
1041Juan P VocelkaJapan2024-06-21Printing Dimensions UNQUALIFIED22Elwin Sharvill
1042Julie X KolmetzGermany2024-05-26Feltz Printing Service NEW24Stephen Shaw
1043Alejandro F FerenczItaly2024-06-20King, Christopher A Esq NEGOTIATION60Bernardo Dominic
1044Greenwood E OldroydGermany2024-05-28Chapman, Ross E Esq NEW82Stephen Shaw
1045Aika F ShinkoFrance2024-06-02Feiner Bros NEGOTIATION81Xuxue Feng
1046Izzy L BologniaCanada2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED35Xuxue Feng
1047Stacey I BologniaItaly2024-06-14Dorl, James J Esq PROPOSAL15Asiya Javayant
1048Faith T OldroydIndia2024-06-07Chemel, James L Cpa RENEWAL53Amy Elsner
1049Aruna J VocelkaAustralia2024-05-25Truhlar And Truhlar Attys PROPOSAL12Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Maria C DarakjyBrazilAmy Elsner UNQUALIFIED
Stacey W DoeItalyXuxue Feng QUALIFIED
Mujtaba I MaletGermanyIvan Magalhaes QUALIFIED
Octavia Q ButtSpainAnna Fali PROPOSAL
Darci W RulapaughBrazilAsiya Javayant NEGOTIATION
Deepesh W AmigonArgentinaOnyama Limba PROPOSAL
Maria W DarakjyGermanyBernardo Dominic UNQUALIFIED
Aditya R ShinkoJapanElwin Sharvill QUALIFIED
Nicolas G FerenczRussiaOnyama Limba NEW
Morrow M PoquetteUnited KingdomXuxue Feng PROPOSAL
Maisha K CaudyUnited KingdomStephen Shaw NEGOTIATION
Izzy D VocelkaSpainIvan Magalhaes UNQUALIFIED
Kaitlin Z FollerFranceAsiya Javayant RENEWAL
Costa K MaletItalyIvan Magalhaes NEW
Ivar F RimItalyXuxue Feng RENEWAL
Costa X MaletSpainElwin Sharvill PROPOSAL
Deepesh L VenereFranceIoni Bowcher NEW
Isabel C ShinkoBrazilIvan Magalhaes QUALIFIED
Izzy G ShinkoFranceIvan Magalhaes UNQUALIFIED
Rodrigues Z WhobreyRussiaXuxue Feng NEGOTIATION
James R FerenczAustraliaAmy Elsner UNQUALIFIED
Aruna G TollnerArgentinaIoni Bowcher UNQUALIFIED
Adams K VenereArgentinaStephen Shaw QUALIFIED
Juan T RulapaughBrazilStephen Shaw PROPOSAL
Murillo J BowleySpainBernardo Dominic PROPOSAL
Jefferson Z AmigonCanadaAmy Elsner NEGOTIATION
Salvatore B GlickJapanOnyama Limba PROPOSAL
Jefferson B StensethSpainIoni Bowcher NEGOTIATION
Darci S KuskoRussiaBernardo Dominic RENEWAL
Morrow F KuskoJapanOnyama Limba RENEWAL
Ashley S NestleGermanyIvan Magalhaes UNQUALIFIED
Darci M DoeFranceIoni Bowcher UNQUALIFIED
Clifford N MaletIndiaAnna Fali NEGOTIATION
Aruna W FlosiIndiaStephen Shaw QUALIFIED
Rodrigues H CampainRussiaXuxue Feng NEGOTIATION
Salvatore E PerinItalyIoni Bowcher UNQUALIFIED
Misaki B SchemmerGermanyOnyama Limba PROPOSAL
Misaki M PerinSpainIoni Bowcher QUALIFIED
Aditya E MaletFranceAnna Fali NEGOTIATION
Morrow S GauchoFranceIoni Bowcher RENEWAL
Sinclair C CaudyJapanIoni Bowcher NEW
Maria N MaletIndiaElwin Sharvill RENEWAL
Leon A DilliardFranceBernardo Dominic QUALIFIED
Faith B MorascaAustraliaStephen Shaw QUALIFIED
Jones U TollnerBrazilElwin Sharvill UNQUALIFIED
Maria M BologniaIndiaAsiya Javayant QUALIFIED
Darci W PoquetteJapanBernardo Dominic RENEWAL
Murillo J StockhamUnited KingdomBernardo Dominic NEW
Munro Q MaletGermanyBernardo Dominic UNQUALIFIED
Ricardo P AmigonAustraliaOnyama Limba PROPOSAL
Frozen Columns
Name
Arvin Q Darakjy
Silvio A Oldroyd
Alejandro N Morasca
Ricardo G Malet
Leja Z Poquette
Francesco I Nestle
Ashley E Stockham
Nicolas V Glick
Adams Q Bowley
David Q Whobrey
Mujtaba T Slusarski
Jennifer Q Tollner
Arvin I Saylors
Munro N Chui
Francesco L Waycott
Julie S Campain
Juan L Doe
Alejandro W Sergi
Tony N Marrier
Antonio W Malet
Rodrigues Y Ferencz
Maisha P Darakjy
Mayumi T Rim
Deepesh J Briddick
Clifford H Saylors
Leon A Malet
Claire A Inouye
Maisha F Albares
Maria T Glick
Cody D Foller
Leja M Bowley
Alejandro W Bolognia
Kaitlin W Wieser
Darci I Sergi
Darci D Marrier
Greenwood Q Caldarera
Mayumi C Wieser
Murillo O Inouye
Izzy I Dilliard
Silvio J Butt
Wickens B Flosi
Murillo Q Iturbide
Rodrigues R Sergi
Faith K Saylors
Jefferson E Schemmer
Stacey Q Ostrosky
Salvatore L Bolognia
Darci Y Gaucho
Aika D Garufi
Sinclair G Nestle
IdCountryDate
1000Italy2024-05-26
1001Japan2024-06-12
1002United Kingdom2024-06-08
1003Canada2024-06-17
1004Russia2024-06-08
1005Italy2024-06-10
1006Germany2024-05-23
1007Japan2024-06-03
1008Japan2024-05-24
1009Italy2024-05-31
1010Japan2024-06-14
1011United Kingdom2024-05-31
1012Germany2024-06-12
1013Canada2024-06-03
1014India2024-05-30
1015France2024-06-02
1016Japan2024-06-06
1017France2024-06-10
1018Canada2024-05-30
1019Russia2024-06-02
1020Germany2024-06-18
1021Argentina2024-05-25
1022Japan2024-06-18
1023Argentina2024-06-12
1024United Kingdom2024-06-16
1025Australia2024-05-26
1026France2024-06-02
1027Australia2024-05-27
1028Germany2024-06-12
1029Germany2024-06-15
1030Spain2024-05-30
1031Brazil2024-05-30
1032Italy2024-05-25
1033Spain2024-06-01
1034Australia2024-06-14
1035Brazil2024-06-13
1036Australia2024-06-19
1037Russia2024-05-30
1038Germany2024-05-31
1039Spain2024-06-14
1040Spain2024-06-19
1041Russia2024-06-17
1042Canada2024-05-31
1043Canada2024-05-25
1044Argentina2024-06-06
1045Argentina2024-05-31
1046India2024-06-09
1047France2024-06-18
1048Italy2024-06-09
1049Argentina2024-06-16

On-Demand Data

NameIdCountryDate
Izzy I Schemmer1000United Kingdom2024-06-20
Claire S Albares1001Italy2024-06-19
Kadeem O Butt1002Russia2024-06-12
Johnson B Shinko1003Germany2024-06-18
David P Foller1004United Kingdom2024-05-23
Octavia X Shinko1005Australia2024-05-28
Chavez A Caudy1006Canada2024-06-20
Antonio M Oldroyd1007France2024-05-27
Salvatore D Saylors1008Australia2024-06-05
Jennifer H Rim1009Canada2024-06-04
Antonio H Chui1010Spain2024-06-05
Maria H Amigon1011Germany2024-06-15
Deepesh P Saylors1012Italy2024-05-30
Jones N Marrier1013Australia2024-05-27
Johnson Y Figeroa1014Germany2024-06-10
Clifford R Rulapaugh1015Argentina2024-06-09
Ashley R Doe1016France2024-06-01
Antonio N Caldarera1017Italy2024-05-26
Johnson D Ferencz1018Argentina2024-05-26
Isabel Z Albares1019Spain2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo C CaudyRussiaAsiya Javayant QUALIFIED
Misaki F MarrierSpainIvan Magalhaes QUALIFIED
Julie Y AmigonRussiaOnyama Limba RENEWAL
James G AlbaresCanadaBernardo Dominic QUALIFIED
Adams O PaprockiIndiaAmy Elsner RENEWAL
Kaitlin E FollerUnited KingdomOnyama Limba NEGOTIATION
Munro J ShinkoGermanyOnyama Limba UNQUALIFIED
Tony V KolmetzGermanyBernardo Dominic UNQUALIFIED
Izzy E CampainBrazilIvan Magalhaes PROPOSAL
Julie V MaletItalyIvan Magalhaes UNQUALIFIED
Leja J BologniaCanadaStephen Shaw UNQUALIFIED
Chavez I NestleGermanyAmy Elsner RENEWAL
Aika U PerinAustraliaXuxue Feng QUALIFIED
Sinclair Z OldroydCanadaAmy Elsner QUALIFIED
Misaki O FigeroaAustraliaXuxue Feng PROPOSAL
Claire B KuskoGermanyOnyama Limba QUALIFIED
Ashley S RulapaughGermanyStephen Shaw PROPOSAL
Maisha O SlusarskiJapanIoni Bowcher QUALIFIED
Tony B CaldareraGermanyIvan Magalhaes UNQUALIFIED
Jennifer I IturbideUnited KingdomBernardo Dominic QUALIFIED
Silvio Z IturbideAustraliaAsiya Javayant PROPOSAL
Antonio T VocelkaBrazilOnyama Limba QUALIFIED
Emily K GarufiFranceBernardo Dominic RENEWAL
Leja L RutaBrazilAsiya Javayant NEGOTIATION
Emily U SergiAustraliaBernardo Dominic UNQUALIFIED
Greenwood V PerinAustraliaStephen Shaw NEW
Adams H FigeroaArgentinaOnyama Limba NEW
Julie Z GauchoJapanElwin Sharvill RENEWAL
Smith W BowleyCanadaIvan Magalhaes NEW
Antonio G DarakjyAustraliaXuxue Feng UNQUALIFIED
Arvin O RutaSpainIoni Bowcher QUALIFIED
Claire I SchemmerAustraliaBernardo Dominic NEGOTIATION
Misaki U WhobreyFranceBernardo Dominic QUALIFIED
Aika I CampainCanadaAnna Fali PROPOSAL
Julie Z FollerArgentinaIvan Magalhaes NEGOTIATION
Kadeem X DoeJapanElwin Sharvill PROPOSAL
Kadeem X StensethSpainXuxue Feng QUALIFIED
Jones D SergiArgentinaAnna Fali NEW
Silvio Y MaletAustraliaAnna Fali NEW
Mujtaba H SlusarskiFranceIoni Bowcher 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>