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 T VenereUnited KingdomAmy Elsner UNQUALIFIED
Costa R StockhamGermanyAsiya Javayant PROPOSAL
Mujtaba S PaprockiAustraliaStephen Shaw RENEWAL
Misaki B CaldareraAustraliaOnyama Limba PROPOSAL
Tony Z WieserIndiaXuxue Feng NEGOTIATION
Wickens W MaletAustraliaXuxue Feng UNQUALIFIED
Clifford W FerenczSpainIvan Magalhaes NEW
Aruna I WieserRussiaAnna Fali RENEWAL
Emily O WhobreyFranceElwin Sharvill NEW
Munro F WieserCanadaXuxue Feng QUALIFIED
Ashley S FollerSpainAnna Fali PROPOSAL
Faith J PerinUnited KingdomXuxue Feng RENEWAL
Salvatore A VocelkaRussiaElwin Sharvill RENEWAL
Leja Y CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Leja Y GarufiRussiaStephen Shaw PROPOSAL
Cody M VenereSpainElwin Sharvill PROPOSAL
Ricardo E KuskoUnited KingdomBernardo Dominic PROPOSAL
Ricardo S SchemmerCanadaAsiya Javayant RENEWAL
Emily I SlusarskiGermanyIoni Bowcher NEGOTIATION
Mujtaba S WieserCanadaXuxue Feng NEW
Julie T TollnerCanadaBernardo Dominic QUALIFIED
Maisha N ChuiItalyAsiya Javayant NEW
Clifford D ButtBrazilBernardo Dominic RENEWAL
Arvin E SchemmerBrazilAsiya Javayant RENEWAL
Wickens M DoeFranceIoni Bowcher PROPOSAL
Mujtaba V BriddickRussiaStephen Shaw RENEWAL
Costa T ButtUnited KingdomIoni Bowcher QUALIFIED
Rodrigues H PoquetteSpainIoni Bowcher NEW
Ashley M FigeroaIndiaIvan Magalhaes NEGOTIATION
Jefferson A VenereItalyXuxue Feng NEW
Stacey E PoquetteJapanXuxue Feng PROPOSAL
Maisha I ButtItalyAnna Fali QUALIFIED
Leja X MaletJapanAmy Elsner QUALIFIED
Johnson V WieserIndiaIoni Bowcher NEW
Darci C SlusarskiRussiaOnyama Limba RENEWAL
Tony Z RoysterJapanStephen Shaw UNQUALIFIED
Kadeem X IturbideRussiaIoni Bowcher PROPOSAL
Emily V PoquetteArgentinaXuxue Feng UNQUALIFIED
Deepesh D NestleItalyOnyama Limba NEW
Maisha V SaylorsFranceAnna Fali NEW
Alejandro V GauchoSpainBernardo Dominic RENEWAL
James N GlickItalyXuxue Feng UNQUALIFIED
Sinclair A MorascaItalyAmy Elsner NEW
Silvio Z PaprockiRussiaXuxue Feng QUALIFIED
Jefferson H CampainCanadaStephen Shaw NEW
Mayumi Y CaudyJapanOnyama Limba RENEWAL
Octavia Q MarrierAustraliaAnna Fali RENEWAL
Deepesh S CaudySpainBernardo Dominic UNQUALIFIED
Sinclair K SaylorsIndiaAnna Fali PROPOSAL
Costa A StensethJapanOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois T WhobreyUnited KingdomXuxue Feng RENEWAL
Cody W StensethSpainElwin Sharvill PROPOSAL
Jones V NickaAustraliaAmy Elsner QUALIFIED
Jefferson X GlickArgentinaIvan Magalhaes UNQUALIFIED
Silvio X TollnerSpainAnna Fali UNQUALIFIED
Isabel T MacleadItalyBernardo Dominic QUALIFIED
Arvin M RutaGermanyAnna Fali UNQUALIFIED
Aruna C FerenczRussiaAnna Fali UNQUALIFIED
Izzy F KuskoArgentinaIoni Bowcher PROPOSAL
Leja S TollnerFranceElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa H NestleArgentina2024-06-06Chanay, Jeffrey A Esq PROPOSAL24Onyama Limba
1001Johnson Y NestleArgentina2024-06-21Commercial Press QUALIFIED32Elwin Sharvill
1002Costa R GlickCanada2024-06-15Rangoni Of Florence NEGOTIATION57Anna Fali
1003Darci Q WhobreyUnited Kingdom2024-06-05Morlong Associates PROPOSAL74Onyama Limba
1004Faith J FigeroaUnited Kingdom2024-06-11Truhlar And Truhlar Attys PROPOSAL0Bernardo Dominic
1005Johnson P IturbideAustralia2024-05-28Feltz Printing Service PROPOSAL33Amy Elsner
1006Aika S RutaFrance2024-06-18Feiner Bros QUALIFIED79Xuxue Feng
1007Isabel F StensethArgentina2024-06-17King, Christopher A Esq NEW38Elwin Sharvill
1008Stacey T PoquetteArgentina2024-06-19Chapman, Ross E Esq NEGOTIATION34Xuxue Feng
1009Tony Q NestleArgentina2024-05-27Printing Dimensions NEW3Asiya Javayant
1010Chavez R FigeroaIndia2024-05-26Feltz Printing Service PROPOSAL4Onyama Limba
1011Kaitlin J SchemmerCanada2024-06-19Benton, John B Jr QUALIFIED39Ivan Magalhaes
1012Salvatore K GarufiFrance2024-06-20Dorl, James J Esq PROPOSAL36Ivan Magalhaes
1013Izzy E RutaIndia2024-06-09Rousseaux, Michael Esq NEGOTIATION73Amy Elsner
1014Chavez R PoquetteUnited Kingdom2024-06-02Commercial Press NEW45Ioni Bowcher
1015Johnson J FlosiItaly2024-05-27Rousseaux, Michael Esq QUALIFIED98Stephen Shaw
1016Kaitlin R SchemmerUnited Kingdom2024-06-09Morlong Associates RENEWAL47Onyama Limba
1017Francesco S MaletCanada2024-05-24Truhlar And Truhlar Attys NEGOTIATION77Asiya Javayant
1018Julie P CaldareraGermany2024-06-19King, Christopher A Esq UNQUALIFIED47Xuxue Feng
1019Silvio O SergiFrance2024-05-28Benton, John B Jr UNQUALIFIED89Ivan Magalhaes
1020Darci M FerenczItaly2024-06-07Morlong Associates UNQUALIFIED81Bernardo Dominic
1021Maria H BologniaGermany2024-06-21Chanay, Jeffrey A Esq QUALIFIED48Anna Fali
1022Aika U NickaAustralia2024-06-20Dorl, James J Esq QUALIFIED37Stephen Shaw
1023Aika N PoquetteRussia2024-06-16Rangoni Of Florence NEGOTIATION55Elwin Sharvill
1024Jones L ShinkoFrance2024-05-29Dorl, James J Esq QUALIFIED49Xuxue Feng
1025Deepesh R RulapaughRussia2024-05-29Dorl, James J Esq QUALIFIED2Ioni Bowcher
1026Cody B MaletArgentina2024-05-30Feiner Bros RENEWAL75Stephen Shaw
1027Aruna N DilliardCanada2024-06-10Feiner Bros NEGOTIATION37Bernardo Dominic
1028Kaitlin S NestleJapan2024-06-04Chapman, Ross E Esq NEW31Xuxue Feng
1029Rodrigues Z NickaJapan2024-06-05Rangoni Of Florence NEW75Anna Fali
1030Morrow G MacleadSpain2024-06-13Feiner Bros NEGOTIATION25Ivan Magalhaes
1031Chavez K RutaSpain2024-06-19Chapman, Ross E Esq QUALIFIED82Elwin Sharvill
1032Aditya F NestleRussia2024-06-07Printing Dimensions UNQUALIFIED86Anna Fali
1033Claire Z PoquetteItaly2024-06-11King, Christopher A Esq QUALIFIED13Amy Elsner
1034Mayumi Z OstroskySpain2024-06-11Dorl, James J Esq UNQUALIFIED68Stephen Shaw
1035Leja X BriddickAustralia2024-06-20Printing Dimensions NEGOTIATION54Stephen Shaw
1036Rodrigues M WaycottFrance2024-06-15Chemel, James L Cpa NEW16Ioni Bowcher
1037Cody J CaldareraRussia2024-06-12Rangoni Of Florence UNQUALIFIED32Onyama Limba
1038Leon H MorascaAustralia2024-06-18Truhlar And Truhlar Attys RENEWAL12Anna Fali
1039Ashley F MarrierUnited Kingdom2024-06-02Commercial Press UNQUALIFIED92Anna Fali
1040Aika O AlbaresFrance2024-06-07Morlong Associates PROPOSAL85Elwin Sharvill
1041Antonio V MaletAustralia2024-06-17Printing Dimensions QUALIFIED38Anna Fali
1042Deepesh B OstroskyAustralia2024-05-24Chapman, Ross E Esq QUALIFIED57Stephen Shaw
1043Cody A MorascaSpain2024-06-03Feiner Bros NEW79Elwin Sharvill
1044Munro N BowleyRussia2024-05-24Buckley Miller Wright RENEWAL88Ivan Magalhaes
1045Ricardo G MorascaAustralia2024-06-07Benton, John B Jr NEGOTIATION55Elwin Sharvill
1046Leon N DoeAustralia2024-06-16Chanay, Jeffrey A Esq RENEWAL74Anna Fali
1047Kaitlin J FigeroaJapan2024-05-25Feiner Bros UNQUALIFIED53Bernardo Dominic
1048Smith A FlosiAustralia2024-06-12Chanay, Jeffrey A Esq NEW63Ioni Bowcher
1049Chavez B SaylorsCanada2024-06-06Morlong Associates NEW8Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Stacey B MacleadIndiaElwin Sharvill UNQUALIFIED
Chavez L FigeroaArgentinaIoni Bowcher RENEWAL
Leon Z FerenczBrazilIvan Magalhaes UNQUALIFIED
Ashley F DoeJapanOnyama Limba QUALIFIED
Juan H CampainSpainOnyama Limba QUALIFIED
Aika G AmigonIndiaAsiya Javayant NEW
Jefferson I WhobreyUnited KingdomOnyama Limba NEW
Faith E MaletSpainIoni Bowcher NEGOTIATION
Costa Y GillianRussiaBernardo Dominic RENEWAL
Mujtaba T SlusarskiRussiaOnyama Limba NEW
Jeanfrancois N FerenczFranceAmy Elsner NEGOTIATION
Mujtaba S WhobreyBrazilIoni Bowcher NEGOTIATION
Nicolas V TollnerSpainAmy Elsner QUALIFIED
Smith U GillianUnited KingdomBernardo Dominic PROPOSAL
David G InouyeRussiaBernardo Dominic NEW
Costa Y BowleyUnited KingdomAsiya Javayant QUALIFIED
Maisha R OstroskyCanadaAnna Fali PROPOSAL
Chavez J OldroydRussiaStephen Shaw RENEWAL
Ivar T CaudyBrazilAmy Elsner PROPOSAL
Morrow H ButtAustraliaIoni Bowcher NEW
Johnson G DoeAustraliaBernardo Dominic UNQUALIFIED
Deepesh L BriddickBrazilXuxue Feng PROPOSAL
Mujtaba M DilliardBrazilOnyama Limba PROPOSAL
Nicolas J BriddickAustraliaAmy Elsner RENEWAL
Cody D ChuiItalyIoni Bowcher PROPOSAL
Claire N WieserFranceStephen Shaw NEW
Claire B MaletArgentinaAnna Fali NEGOTIATION
Alejandro H GillianItalyAsiya Javayant UNQUALIFIED
Arvin V StockhamArgentinaAmy Elsner QUALIFIED
Smith V GauchoBrazilAsiya Javayant RENEWAL
Francesco T CampainJapanIvan Magalhaes NEGOTIATION
Ashley H WhobreyGermanyElwin Sharvill PROPOSAL
Leja I OldroydFranceIoni Bowcher NEGOTIATION
Antonio K MorascaItalyAnna Fali PROPOSAL
Tony T NickaGermanyBernardo Dominic NEGOTIATION
Chavez Y FlosiCanadaElwin Sharvill RENEWAL
Nicolas M StockhamItalyAnna Fali NEGOTIATION
Jefferson S CaudyIndiaAsiya Javayant QUALIFIED
Greenwood V MacleadSpainIvan Magalhaes QUALIFIED
Kaitlin N MarrierJapanElwin Sharvill PROPOSAL
Leon D MaletAustraliaXuxue Feng RENEWAL
Murillo D VocelkaJapanAsiya Javayant PROPOSAL
Morrow X FollerSpainElwin Sharvill NEGOTIATION
Izzy N BowleyGermanyAsiya Javayant QUALIFIED
Maisha Y GlickAustraliaIoni Bowcher QUALIFIED
Maisha U AmigonIndiaBernardo Dominic NEW
Rodrigues M StensethBrazilStephen Shaw UNQUALIFIED
Julie Z NickaJapanBernardo Dominic PROPOSAL
Deepesh K BowleyGermanyAmy Elsner NEGOTIATION
Clifford B CaldareraAustraliaIoni Bowcher PROPOSAL
Frozen Columns
Name
Julie S Foller
Johnson Z Garufi
Leon W Bolognia
Costa K Sergi
Aruna L Nicka
Mujtaba T Oldroyd
Kaitlin G Nicka
Julie U Ostrosky
Tony F Tollner
Cody U Briddick
David V Malet
Leja M Venere
Misaki U Rim
Wickens T Stockham
Jefferson H Marrier
Darci M Paprocki
Jeanfrancois E Darakjy
Juan Q Saylors
Kadeem Y Vocelka
David J Figeroa
David L Inouye
Rodrigues V Briddick
James T Nestle
Clifford M Slusarski
Jennifer E Kusko
David M Shinko
Jennifer I Chui
Chavez K Briddick
Maisha Y Malet
Emily W Perin
Smith M Chui
Jefferson W Albares
Murillo X Shinko
Kadeem R Gillian
Maisha A Perin
Costa C Ruta
Misaki D Bowley
James W Rim
Francesco G Albares
Chavez F Figeroa
Claire M Vocelka
Silvio T Garufi
Darci O Poquette
Darci Z Morasca
Kadeem D Shinko
Leon O Doe
Smith O Venere
Salvatore C Marrier
Faith F Venere
Costa O Rulapaugh
IdCountryDate
1000Russia2024-05-25
1001Japan2024-06-08
1002India2024-06-16
1003Australia2024-06-10
1004Brazil2024-06-01
1005Spain2024-06-22
1006Japan2024-06-07
1007France2024-06-20
1008Russia2024-06-05
1009Germany2024-06-13
1010Canada2024-06-06
1011Canada2024-06-07
1012India2024-06-09
1013Japan2024-06-07
1014Brazil2024-06-10
1015Argentina2024-06-06
1016France2024-05-26
1017India2024-06-09
1018Canada2024-06-13
1019Italy2024-06-17
1020Italy2024-06-05
1021Canada2024-05-26
1022Argentina2024-05-27
1023Russia2024-06-07
1024India2024-06-08
1025Italy2024-06-22
1026Argentina2024-06-06
1027France2024-05-24
1028Spain2024-06-11
1029United Kingdom2024-06-04
1030India2024-06-19
1031Australia2024-05-26
1032Canada2024-06-18
1033Brazil2024-06-22
1034Canada2024-05-27
1035Brazil2024-06-14
1036Spain2024-06-08
1037Brazil2024-06-07
1038Germany2024-06-12
1039Russia2024-06-01
1040Argentina2024-06-16
1041Russia2024-05-28
1042Italy2024-05-28
1043India2024-06-09
1044Italy2024-06-08
1045Argentina2024-06-05
1046Argentina2024-06-13
1047France2024-06-02
1048Italy2024-06-05
1049Brazil2024-06-09

On-Demand Data

NameIdCountryDate
James M Waycott1000Italy2024-06-06
Kaitlin P Doe1001Italy2024-05-26
Alejandro B Schemmer1002Canada2024-05-26
Claire L Oldroyd1003Germany2024-06-06
Kadeem U Kusko1004Japan2024-06-17
Stacey O Rulapaugh1005Australia2024-06-16
Izzy Y Rim1006Japan2024-06-11
Chavez I Kolmetz1007Spain2024-06-17
Isabel L Briddick1008Italy2024-06-07
Silvio W Wieser1009Australia2024-06-21
Adams Z Ostrosky1010Argentina2024-06-22
Ricardo T Kusko1011Italy2024-06-01
Murillo R Malet1012Argentina2024-06-15
James Z Ruta1013France2024-06-08
David R Ferencz1014Japan2024-06-02
Julie D Stockham1015Germany2024-06-04
Aika P Bolognia1016United Kingdom2024-06-18
Kaitlin K Gaucho1017India2024-06-11
Alejandro O Inouye1018India2024-05-27
Maria G Butt1019Brazil2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon P CaudyCanadaXuxue Feng RENEWAL
Clifford A IturbideJapanXuxue Feng RENEWAL
James G VocelkaItalyIvan Magalhaes RENEWAL
James D CampainJapanOnyama Limba NEW
Kadeem G ChuiIndiaStephen Shaw NEW
Aruna N CaldareraJapanAnna Fali PROPOSAL
Mujtaba B SlusarskiCanadaIoni Bowcher RENEWAL
Izzy Q WaycottArgentinaAsiya Javayant UNQUALIFIED
Misaki R MaletArgentinaStephen Shaw UNQUALIFIED
Isabel C RoysterRussiaIvan Magalhaes UNQUALIFIED
Sinclair N PoquetteRussiaXuxue Feng PROPOSAL
Murillo V DarakjyCanadaBernardo Dominic UNQUALIFIED
Izzy L SchemmerFranceAnna Fali RENEWAL
Wickens Z FigeroaRussiaAsiya Javayant RENEWAL
Jones N MarrierSpainOnyama Limba RENEWAL
Julie I WhobreyArgentinaElwin Sharvill NEGOTIATION
Jefferson X RulapaughBrazilXuxue Feng RENEWAL
Cody X KolmetzJapanAmy Elsner QUALIFIED
Jefferson I DilliardCanadaXuxue Feng NEGOTIATION
Aditya X NestleCanadaXuxue Feng RENEWAL
Wickens D KolmetzGermanyBernardo Dominic UNQUALIFIED
Ashley Y PerinJapanIvan Magalhaes UNQUALIFIED
Silvio V DarakjyCanadaOnyama Limba RENEWAL
Kadeem S RimIndiaElwin Sharvill NEW
Maisha O MacleadArgentinaStephen Shaw UNQUALIFIED
Isabel T CaldareraCanadaBernardo Dominic RENEWAL
Octavia H GillianGermanyXuxue Feng RENEWAL
Claire M ButtIndiaAnna Fali NEW
Faith D GarufiAustraliaAsiya Javayant QUALIFIED
Jefferson R ShinkoIndiaAnna Fali NEW
Adams D CaudyUnited KingdomIoni Bowcher QUALIFIED
Smith M MorascaItalyXuxue Feng RENEWAL
Jefferson S MacleadBrazilElwin Sharvill RENEWAL
Antonio T OstroskyItalyAsiya Javayant PROPOSAL
Sinclair C PoquetteIndiaIoni Bowcher QUALIFIED
Mayumi L MacleadRussiaBernardo Dominic NEGOTIATION
Murillo F GauchoItalyAnna Fali PROPOSAL
Misaki A AlbaresAustraliaAmy Elsner QUALIFIED
Munro Z DoeBrazilIoni Bowcher RENEWAL
Johnson X AlbaresJapanIoni Bowcher 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>