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
Silvio A CaudyIndiaXuxue Feng NEGOTIATION
Darci U OstroskyUnited KingdomIvan Magalhaes NEW
Emily N SaylorsFranceIoni Bowcher PROPOSAL
Mujtaba I DarakjyGermanyOnyama Limba PROPOSAL
Jeanfrancois R OstroskyIndiaIoni Bowcher NEW
Ivar B RutaIndiaElwin Sharvill RENEWAL
Mujtaba S MaletCanadaBernardo Dominic NEGOTIATION
Emily B BriddickArgentinaAnna Fali UNQUALIFIED
Emily F StensethJapanStephen Shaw PROPOSAL
Deepesh Y FigeroaJapanStephen Shaw UNQUALIFIED
Smith W MorascaArgentinaAsiya Javayant NEGOTIATION
Greenwood Z MaletSpainIoni Bowcher RENEWAL
Salvatore K FollerRussiaOnyama Limba PROPOSAL
David Y MaletArgentinaBernardo Dominic PROPOSAL
Greenwood Q BowleySpainAnna Fali UNQUALIFIED
Arvin O DoeItalyStephen Shaw NEGOTIATION
Sinclair X GauchoUnited KingdomElwin Sharvill NEW
Rodrigues X ChuiFranceIvan Magalhaes RENEWAL
Arvin E MaletItalyBernardo Dominic UNQUALIFIED
Murillo M PerinGermanyIoni Bowcher QUALIFIED
Octavia M WieserAustraliaIvan Magalhaes PROPOSAL
Jennifer X WaycottFranceIvan Magalhaes PROPOSAL
Jones K GlickSpainIoni Bowcher PROPOSAL
Cody T GarufiAustraliaAsiya Javayant PROPOSAL
Deepesh I VenereBrazilAmy Elsner UNQUALIFIED
Sinclair Z TollnerAustraliaOnyama Limba NEGOTIATION
Jennifer U VenereArgentinaXuxue Feng NEGOTIATION
Kadeem B SaylorsJapanIvan Magalhaes UNQUALIFIED
Rodrigues Z RoysterArgentinaAmy Elsner UNQUALIFIED
Morrow T OstroskyArgentinaAnna Fali PROPOSAL
Arvin F KolmetzBrazilOnyama Limba QUALIFIED
Maisha R BologniaCanadaAmy Elsner NEW
Silvio L MaletAustraliaElwin Sharvill UNQUALIFIED
Ivar H OstroskyBrazilAsiya Javayant RENEWAL
Mujtaba C RulapaughIndiaAnna Fali PROPOSAL
Isabel Q NickaFranceXuxue Feng UNQUALIFIED
Antonio L MaletIndiaOnyama Limba UNQUALIFIED
Morrow S CampainRussiaStephen Shaw UNQUALIFIED
Johnson W VocelkaIndiaAnna Fali NEW
David N PerinGermanyIoni Bowcher PROPOSAL
Octavia M SchemmerIndiaOnyama Limba QUALIFIED
Aruna X SchemmerRussiaAsiya Javayant NEW
Smith Z CaldareraBrazilIoni Bowcher NEW
Octavia E MorascaAustraliaAsiya Javayant NEGOTIATION
Mujtaba E StockhamItalyAsiya Javayant NEGOTIATION
Octavia K OldroydItalyStephen Shaw NEGOTIATION
Aika Q GlickSpainStephen Shaw QUALIFIED
Jennifer F ChuiGermanyStephen Shaw QUALIFIED
Jones A GlickAustraliaElwin Sharvill RENEWAL
Mujtaba R PoquetteGermanyStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro L ChuiRussiaOnyama Limba NEGOTIATION
Ashley M KuskoIndiaAsiya Javayant RENEWAL
Darci P OstroskyArgentinaOnyama Limba NEGOTIATION
Jeanfrancois X MaletRussiaAsiya Javayant NEGOTIATION
Claire M PerinJapanOnyama Limba UNQUALIFIED
Johnson U BowleyFranceIoni Bowcher UNQUALIFIED
Wickens H SaylorsItalyXuxue Feng NEW
Aika Q PoquetteUnited KingdomIoni Bowcher PROPOSAL
Kadeem C MaletJapanXuxue Feng UNQUALIFIED
Alejandro E WieserFranceBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria N StensethFrance2024-06-20King, Christopher A Esq PROPOSAL39Onyama Limba
1001Aditya Z MaletRussia2024-05-25King, Christopher A Esq NEW28Elwin Sharvill
1002Juan G FerenczSpain2024-06-05Morlong Associates QUALIFIED39Stephen Shaw
1003Ricardo X StockhamJapan2024-06-18Chapman, Ross E Esq QUALIFIED42Stephen Shaw
1004Clifford G OldroydRussia2024-05-26Commercial Press NEGOTIATION32Onyama Limba
1005Darci M BriddickAustralia2024-06-03Chanay, Jeffrey A Esq QUALIFIED82Bernardo Dominic
1006Leon S OldroydRussia2024-06-02Feiner Bros NEW32Onyama Limba
1007Aditya C KuskoItaly2024-06-04King, Christopher A Esq PROPOSAL32Amy Elsner
1008David H CaudyIndia2024-06-05Benton, John B Jr UNQUALIFIED74Stephen Shaw
1009Jennifer Z ShinkoBrazil2024-06-06Morlong Associates PROPOSAL79Xuxue Feng
1010Juan X InouyeIndia2024-06-18Printing Dimensions UNQUALIFIED94Elwin Sharvill
1011Ashley M FollerIndia2024-06-20King, Christopher A Esq PROPOSAL54Elwin Sharvill
1012Mayumi A BriddickItaly2024-06-20Dorl, James J Esq QUALIFIED36Ioni Bowcher
1013David N TollnerFrance2024-06-08Rangoni Of Florence RENEWAL36Anna Fali
1014Izzy I GlickIndia2024-06-13Commercial Press PROPOSAL92Xuxue Feng
1015Octavia B SergiJapan2024-06-05Feiner Bros NEGOTIATION62Amy Elsner
1016Faith D StockhamFrance2024-06-04Commercial Press NEW40Anna Fali
1017Juan M WieserRussia2024-05-24Dorl, James J Esq QUALIFIED61Onyama Limba
1018Claire U AmigonGermany2024-06-20Chapman, Ross E Esq NEW30Asiya Javayant
1019Stacey Y PaprockiFrance2024-06-20Truhlar And Truhlar Attys NEW54Amy Elsner
1020Nicolas P KolmetzRussia2024-05-31Commercial Press NEGOTIATION12Asiya Javayant
1021Aditya Z KolmetzArgentina2024-05-31Feiner Bros PROPOSAL76Ioni Bowcher
1022Aditya N GillianAustralia2024-06-04Feltz Printing Service RENEWAL66Anna Fali
1023Silvio Z CaldareraJapan2024-05-31Rangoni Of Florence UNQUALIFIED86Ivan Magalhaes
1024Antonio K BowleyUnited Kingdom2024-06-17Rousseaux, Michael Esq NEW50Stephen Shaw
1025Maria D TollnerRussia2024-06-18King, Christopher A Esq NEGOTIATION86Onyama Limba
1026Aruna Q StensethFrance2024-06-20Chapman, Ross E Esq RENEWAL18Onyama Limba
1027Costa R DarakjyArgentina2024-06-03Feltz Printing Service RENEWAL50Ioni Bowcher
1028Mujtaba T MaletArgentina2024-06-07Truhlar And Truhlar Attys RENEWAL36Ivan Magalhaes
1029Ivar Y BologniaBrazil2024-06-17Commercial Press NEGOTIATION65Ioni Bowcher
1030Chavez S SergiRussia2024-06-01Chanay, Jeffrey A Esq PROPOSAL39Onyama Limba
1031Tony K DoeAustralia2024-06-15Benton, John B Jr QUALIFIED38Elwin Sharvill
1032Nicolas G IturbideGermany2024-06-13Chapman, Ross E Esq RENEWAL49Anna Fali
1033Ricardo N IturbideBrazil2024-05-25Truhlar And Truhlar Attys PROPOSAL30Elwin Sharvill
1034Leja S GauchoIndia2024-06-01King, Christopher A Esq NEW57Stephen Shaw
1035Maisha W KolmetzGermany2024-06-06Morlong Associates QUALIFIED46Xuxue Feng
1036Maria M KolmetzGermany2024-05-29Morlong Associates NEGOTIATION4Anna Fali
1037Emily S SlusarskiArgentina2024-06-08Dorl, James J Esq RENEWAL11Onyama Limba
1038Leon H FigeroaArgentina2024-05-30Chapman, Ross E Esq NEGOTIATION88Xuxue Feng
1039Emily A RoysterJapan2024-05-31Rousseaux, Michael Esq QUALIFIED91Onyama Limba
1040Wickens S RoysterRussia2024-06-13Benton, John B Jr RENEWAL69Amy Elsner
1041Stacey F ButtFrance2024-06-11Dorl, James J Esq NEGOTIATION29Amy Elsner
1042Julie B GillianCanada2024-06-18Rousseaux, Michael Esq RENEWAL34Ivan Magalhaes
1043Maria I WaycottIndia2024-06-18Rousseaux, Michael Esq NEGOTIATION47Anna Fali
1044Mujtaba V BriddickCanada2024-06-21Chemel, James L Cpa QUALIFIED51Amy Elsner
1045Deepesh U BologniaArgentina2024-06-21Dorl, James J Esq RENEWAL16Stephen Shaw
1046Smith Z RoysterJapan2024-06-07Buckley Miller Wright QUALIFIED59Amy Elsner
1047Antonio G GarufiFrance2024-06-09Benton, John B Jr NEW58Asiya Javayant
1048Clifford G RimBrazil2024-06-20Rangoni Of Florence UNQUALIFIED16Amy Elsner
1049Jennifer B BriddickSpain2024-06-22Rousseaux, Michael Esq RENEWAL47Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Johnson T MorascaUnited KingdomStephen Shaw QUALIFIED
Francesco J MarrierArgentinaBernardo Dominic UNQUALIFIED
Costa J WaycottAustraliaXuxue Feng UNQUALIFIED
Misaki R WieserSpainXuxue Feng QUALIFIED
David E MarrierRussiaAmy Elsner RENEWAL
Nicolas Y RoysterIndiaAnna Fali UNQUALIFIED
Jennifer I MacleadRussiaAsiya Javayant QUALIFIED
Jennifer I InouyeAustraliaAnna Fali NEW
Wickens V NickaUnited KingdomStephen Shaw PROPOSAL
Silvio I StensethFranceAsiya Javayant QUALIFIED
Mayumi J InouyeUnited KingdomBernardo Dominic NEW
Salvatore A ShinkoAustraliaBernardo Dominic NEW
Aika V MarrierArgentinaAmy Elsner NEW
Ashley L FlosiJapanStephen Shaw PROPOSAL
Izzy X NestleFranceXuxue Feng PROPOSAL
Morrow W FerenczCanadaAmy Elsner QUALIFIED
Silvio A AmigonBrazilOnyama Limba QUALIFIED
David G NestleItalyOnyama Limba NEGOTIATION
Jones R PaprockiBrazilBernardo Dominic RENEWAL
Emily T BologniaBrazilBernardo Dominic PROPOSAL
James C WaycottItalyOnyama Limba PROPOSAL
Aruna X ShinkoUnited KingdomAmy Elsner QUALIFIED
Morrow A DoeItalyAnna Fali UNQUALIFIED
Mujtaba V MaletCanadaBernardo Dominic UNQUALIFIED
Jennifer P RulapaughArgentinaOnyama Limba UNQUALIFIED
Aruna Z WieserFranceBernardo Dominic RENEWAL
Johnson N TollnerRussiaElwin Sharvill RENEWAL
Jones K SaylorsAustraliaStephen Shaw UNQUALIFIED
Aditya D WieserItalyAsiya Javayant RENEWAL
Octavia J InouyeItalyStephen Shaw NEW
Tony Y BologniaJapanIoni Bowcher PROPOSAL
Leja G SlusarskiArgentinaOnyama Limba UNQUALIFIED
Chavez N IturbideAustraliaOnyama Limba PROPOSAL
Rodrigues J GarufiRussiaStephen Shaw QUALIFIED
Jones A AmigonSpainIoni Bowcher RENEWAL
Morrow Z ShinkoJapanStephen Shaw NEGOTIATION
Deepesh M VocelkaBrazilElwin Sharvill QUALIFIED
Aika Z ButtFranceXuxue Feng RENEWAL
Maisha K KuskoArgentinaIvan Magalhaes NEW
Jennifer D NestleAustraliaElwin Sharvill NEGOTIATION
Silvio A GauchoIndiaAsiya Javayant NEW
Costa M KuskoGermanyBernardo Dominic NEW
Kaitlin O IturbideFranceIoni Bowcher NEGOTIATION
Darci H TollnerSpainIoni Bowcher PROPOSAL
Chavez B IturbideJapanXuxue Feng NEGOTIATION
Wickens N RulapaughRussiaElwin Sharvill NEGOTIATION
Deepesh T BriddickSpainStephen Shaw QUALIFIED
Rodrigues L RutaFranceXuxue Feng NEGOTIATION
Antonio M GarufiGermanyStephen Shaw RENEWAL
Antonio F WaycottAustraliaStephen Shaw NEW
Frozen Columns
Name
Deepesh M Malet
Greenwood A Nicka
Tony V Wieser
Chavez S Malet
Smith R Darakjy
Julie A Inouye
Maisha R Shinko
Misaki S Figeroa
Julie M Tollner
Adams Z Bolognia
Julie F Waycott
Darci U Oldroyd
Murillo C Gaucho
Aruna K Perin
David N Briddick
Salvatore C Royster
Ashley G Flosi
Ivar V Dilliard
Claire S Darakjy
Misaki M Flosi
Antonio V Morasca
Jennifer B Campain
Adams C Sergi
Julie D Poquette
Misaki C Venere
Claire A Nicka
Mayumi W Flosi
Adams G Ostrosky
Kaitlin C Figeroa
Ashley C Albares
Mayumi V Caldarera
Wickens F Slusarski
Arvin P Darakjy
Johnson J Wieser
Tony V Nestle
Adams N Butt
Tony A Rim
Emily G Ferencz
Ivar W Ostrosky
Smith T Bolognia
Claire W Butt
Deepesh C Stockham
Salvatore A Stockham
Costa W Paprocki
Mayumi G Bolognia
Silvio H Campain
Tony T Morasca
Aika Q Waycott
Nicolas T Figeroa
Mujtaba J Glick
IdCountryDate
1000Russia2024-05-25
1001Spain2024-05-30
1002United Kingdom2024-05-25
1003United Kingdom2024-06-18
1004Italy2024-05-24
1005Japan2024-05-29
1006Australia2024-05-29
1007United Kingdom2024-06-04
1008Russia2024-06-12
1009Brazil2024-06-07
1010Russia2024-05-29
1011Italy2024-05-27
1012United Kingdom2024-05-26
1013Japan2024-06-03
1014Spain2024-06-07
1015India2024-06-19
1016Italy2024-06-13
1017Argentina2024-06-19
1018France2024-06-02
1019Australia2024-06-18
1020Italy2024-06-03
1021India2024-05-30
1022Germany2024-06-03
1023France2024-06-01
1024Germany2024-06-21
1025United Kingdom2024-05-27
1026Argentina2024-06-15
1027Argentina2024-06-03
1028Japan2024-05-25
1029Germany2024-05-28
1030Argentina2024-06-14
1031Italy2024-05-28
1032Brazil2024-06-21
1033United Kingdom2024-06-17
1034Brazil2024-06-05
1035Brazil2024-06-16
1036Japan2024-06-09
1037Brazil2024-05-27
1038Japan2024-06-14
1039Australia2024-05-27
1040France2024-05-24
1041Brazil2024-05-29
1042Spain2024-05-24
1043Argentina2024-06-19
1044Australia2024-06-09
1045Canada2024-06-08
1046United Kingdom2024-06-11
1047Italy2024-06-07
1048Brazil2024-06-22
1049India2024-06-13

On-Demand Data

NameIdCountryDate
Jones Q Caldarera1000India2024-05-28
Adams I Ostrosky1001United Kingdom2024-06-16
David L Chui1002Russia2024-06-13
Maisha X Nicka1003Italy2024-06-19
Clifford S Maclead1004Russia2024-06-14
Greenwood A Butt1005Australia2024-05-29
Tony D Wieser1006Argentina2024-06-17
Salvatore R Shinko1007Argentina2024-06-10
Leon Y Kolmetz1008India2024-05-27
Aditya T Chui1009Spain2024-05-24
Stacey Q Ruta1010France2024-06-10
Morrow L Gillian1011Japan2024-05-24
David R Glick1012United Kingdom2024-06-10
Deepesh H Wieser1013Australia2024-06-04
Silvio Z Shinko1014Germany2024-05-30
Emily Z Waycott1015France2024-06-05
Munro R Waycott1016Russia2024-06-10
Octavia N Venere1017Japan2024-06-18
Ashley M Doe1018Canada2024-06-16
Antonio N Malet1019Australia2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi G AlbaresGermanyIoni Bowcher UNQUALIFIED
Leon K MacleadFranceElwin Sharvill NEW
James Y IturbideUnited KingdomElwin Sharvill NEW
Izzy W VenereRussiaIvan Magalhaes QUALIFIED
Arvin M ButtItalyOnyama Limba UNQUALIFIED
Stacey R GarufiItalyAmy Elsner NEW
Claire E CaldareraFranceAsiya Javayant RENEWAL
Isabel B KuskoCanadaElwin Sharvill NEGOTIATION
Murillo V DilliardBrazilAnna Fali QUALIFIED
Faith C StensethSpainElwin Sharvill RENEWAL
Cody Y PoquetteIndiaBernardo Dominic RENEWAL
Aruna J FollerBrazilStephen Shaw PROPOSAL
Murillo S PaprockiItalyIvan Magalhaes NEW
Izzy N GauchoFranceAsiya Javayant NEW
James F PaprockiAustraliaIoni Bowcher PROPOSAL
Francesco L RutaArgentinaXuxue Feng NEW
Emily S AlbaresFranceOnyama Limba UNQUALIFIED
Sinclair R SlusarskiUnited KingdomElwin Sharvill NEW
David K BowleyCanadaIoni Bowcher NEW
Maisha W VenereJapanBernardo Dominic NEGOTIATION
Leja M IturbideIndiaBernardo Dominic NEGOTIATION
Munro K PerinItalyOnyama Limba PROPOSAL
Julie X AmigonAustraliaOnyama Limba NEGOTIATION
Darci J VocelkaCanadaIvan Magalhaes NEW
Maria A FerenczIndiaAmy Elsner PROPOSAL
Costa X NestleArgentinaOnyama Limba PROPOSAL
Emily U OstroskyItalyAmy Elsner RENEWAL
Jeanfrancois W GarufiFranceOnyama Limba PROPOSAL
Cody P GauchoIndiaOnyama Limba RENEWAL
Leja G OstroskyFranceXuxue Feng RENEWAL
Chavez S FerenczArgentinaStephen Shaw PROPOSAL
Juan H VocelkaAustraliaAsiya Javayant QUALIFIED
Jeanfrancois S BowleySpainOnyama Limba QUALIFIED
Darci C BriddickGermanyIoni Bowcher PROPOSAL
Nicolas T MacleadSpainAsiya Javayant RENEWAL
Izzy F SaylorsFranceXuxue Feng NEGOTIATION
Adams Z SlusarskiAustraliaIoni Bowcher NEW
David X BowleySpainBernardo Dominic QUALIFIED
Jefferson W MaletRussiaBernardo Dominic PROPOSAL
Arvin F FlosiFranceOnyama Limba UNQUALIFIED

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