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
Francesco N ButtGermanyAsiya Javayant QUALIFIED
Misaki M FigeroaIndiaIvan Magalhaes NEGOTIATION
Jefferson R SchemmerItalyOnyama Limba NEGOTIATION
Emily C VenereRussiaAnna Fali NEGOTIATION
Leja D TollnerJapanAnna Fali PROPOSAL
Clifford H PerinFranceElwin Sharvill QUALIFIED
Misaki I WaycottRussiaElwin Sharvill NEGOTIATION
Tony P PoquetteIndiaIoni Bowcher NEGOTIATION
Octavia I CaudyIndiaAsiya Javayant QUALIFIED
Smith A FollerSpainAsiya Javayant NEW
Chavez O NickaUnited KingdomStephen Shaw RENEWAL
Tony G RutaUnited KingdomAsiya Javayant NEGOTIATION
Ricardo I DoeJapanIoni Bowcher PROPOSAL
Adams D WaycottItalyIvan Magalhaes QUALIFIED
Arvin Q ChuiArgentinaIvan Magalhaes RENEWAL
Mujtaba M IturbideCanadaAnna Fali NEGOTIATION
Greenwood F StensethRussiaElwin Sharvill NEGOTIATION
Emily T GillianGermanyBernardo Dominic QUALIFIED
Maria H FigeroaItalyBernardo Dominic UNQUALIFIED
Julie H FigeroaCanadaAsiya Javayant NEW
Tony W VocelkaIndiaAmy Elsner UNQUALIFIED
Juan A VocelkaArgentinaOnyama Limba NEW
Murillo P MacleadAustraliaIvan Magalhaes UNQUALIFIED
Jefferson B MaletRussiaAsiya Javayant QUALIFIED
Wickens M WhobreySpainElwin Sharvill PROPOSAL
David H TollnerFranceOnyama Limba RENEWAL
Maisha K GillianUnited KingdomBernardo Dominic PROPOSAL
Murillo R CampainRussiaStephen Shaw UNQUALIFIED
Morrow E StockhamJapanXuxue Feng NEW
Greenwood G KolmetzJapanStephen Shaw QUALIFIED
Faith G FigeroaAustraliaAnna Fali UNQUALIFIED
David H StensethFranceElwin Sharvill UNQUALIFIED
Greenwood V OstroskySpainIvan Magalhaes NEGOTIATION
Chavez E MacleadArgentinaElwin Sharvill NEGOTIATION
Maisha T BologniaUnited KingdomAmy Elsner RENEWAL
Aika K WaycottBrazilElwin Sharvill NEW
Francesco W KuskoFranceXuxue Feng PROPOSAL
Isabel F IturbideIndiaAnna Fali NEGOTIATION
Isabel Y WieserBrazilAnna Fali QUALIFIED
Adams K StockhamArgentinaXuxue Feng RENEWAL
Faith V RoysterBrazilAmy Elsner UNQUALIFIED
Clifford E WieserGermanyStephen Shaw UNQUALIFIED
Octavia F TollnerArgentinaAnna Fali UNQUALIFIED
Aika Y IturbideIndiaAmy Elsner PROPOSAL
Ashley A KolmetzCanadaStephen Shaw UNQUALIFIED
David P PerinAustraliaOnyama Limba RENEWAL
Jennifer V RutaCanadaAnna Fali NEGOTIATION
Maria J RimBrazilXuxue Feng RENEWAL
James R GarufiCanadaOnyama Limba PROPOSAL
Tony P AmigonArgentinaIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Deepesh M CampainSpainBernardo Dominic NEW
Faith I ButtJapanElwin Sharvill PROPOSAL
Ricardo G GlickGermanyIvan Magalhaes RENEWAL
Claire J IturbideRussiaElwin Sharvill RENEWAL
Jones N RulapaughFranceAnna Fali NEW
Maria B NickaArgentinaIvan Magalhaes QUALIFIED
Misaki R MarrierUnited KingdomElwin Sharvill QUALIFIED
Chavez F ShinkoCanadaAnna Fali QUALIFIED
Murillo S CaldareraBrazilStephen Shaw QUALIFIED
David M NickaBrazilAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey S StensethIndia2024-05-30Truhlar And Truhlar Attys NEGOTIATION62Xuxue Feng
1001Juan I DoeJapan2024-05-27Feltz Printing Service NEW29Asiya Javayant
1002Rodrigues G IturbideGermany2024-05-24Dorl, James J Esq RENEWAL1Asiya Javayant
1003Greenwood B RoysterFrance2024-06-10Chemel, James L Cpa NEW17Amy Elsner
1004Maisha W ButtSpain2024-06-08Truhlar And Truhlar Attys PROPOSAL94Anna Fali
1005Aruna A PerinUnited Kingdom2024-06-12Benton, John B Jr RENEWAL62Stephen Shaw
1006Maria Y DarakjyItaly2024-06-18Buckley Miller Wright NEW77Xuxue Feng
1007Jeanfrancois T InouyeItaly2024-06-10Feltz Printing Service NEW51Amy Elsner
1008Sinclair H GlickSpain2024-05-27Printing Dimensions NEW79Elwin Sharvill
1009Arvin R FlosiArgentina2024-05-31King, Christopher A Esq NEGOTIATION60Stephen Shaw
1010Mujtaba W RulapaughSpain2024-05-22Feiner Bros NEGOTIATION88Bernardo Dominic
1011Stacey X CampainItaly2024-06-03Chemel, James L Cpa UNQUALIFIED21Anna Fali
1012Stacey B FollerRussia2024-06-15Printing Dimensions PROPOSAL96Ivan Magalhaes
1013Johnson N FerenczRussia2024-05-26Benton, John B Jr UNQUALIFIED37Bernardo Dominic
1014Stacey P WhobreyGermany2024-06-10Chapman, Ross E Esq NEW52Ivan Magalhaes
1015Alejandro U NickaGermany2024-06-04Buckley Miller Wright QUALIFIED85Xuxue Feng
1016Chavez K WieserAustralia2024-05-30King, Christopher A Esq QUALIFIED66Xuxue Feng
1017Faith C PerinArgentina2024-06-07Rousseaux, Michael Esq PROPOSAL38Ioni Bowcher
1018Leon H DilliardIndia2024-05-26Rousseaux, Michael Esq QUALIFIED33Ivan Magalhaes
1019Antonio V ChuiSpain2024-06-04King, Christopher A Esq RENEWAL38Asiya Javayant
1020Mujtaba C KuskoItaly2024-06-15Chanay, Jeffrey A Esq NEW81Stephen Shaw
1021Nicolas K FigeroaItaly2024-06-07Truhlar And Truhlar Attys UNQUALIFIED65Bernardo Dominic
1022Arvin S FerenczCanada2024-06-17Chapman, Ross E Esq UNQUALIFIED65Anna Fali
1023Octavia E AmigonCanada2024-06-08Chapman, Ross E Esq NEGOTIATION46Xuxue Feng
1024Jennifer Z DarakjyRussia2024-06-04Buckley Miller Wright RENEWAL82Xuxue Feng
1025Darci K GarufiSpain2024-06-04Printing Dimensions RENEWAL66Onyama Limba
1026Murillo X RoysterIndia2024-06-11Printing Dimensions NEW8Elwin Sharvill
1027Mayumi Y SergiUnited Kingdom2024-05-27Dorl, James J Esq RENEWAL69Anna Fali
1028Emily N NestleBrazil2024-06-11Rousseaux, Michael Esq UNQUALIFIED53Bernardo Dominic
1029Adams B MarrierUnited Kingdom2024-06-13Truhlar And Truhlar Attys UNQUALIFIED20Xuxue Feng
1030Nicolas M WhobreyRussia2024-05-24Morlong Associates RENEWAL50Asiya Javayant
1031Kadeem L FigeroaAustralia2024-06-07Chapman, Ross E Esq NEGOTIATION39Ivan Magalhaes
1032Sinclair L RulapaughSpain2024-05-24Feiner Bros NEGOTIATION56Asiya Javayant
1033Aditya T NestleUnited Kingdom2024-05-25Feiner Bros RENEWAL22Ivan Magalhaes
1034Faith H NestleAustralia2024-06-13Buckley Miller Wright PROPOSAL26Bernardo Dominic
1035Alejandro B MarrierSpain2024-05-29Buckley Miller Wright QUALIFIED70Asiya Javayant
1036Murillo R PoquetteFrance2024-06-11Feltz Printing Service NEGOTIATION40Amy Elsner
1037Alejandro K OstroskyAustralia2024-06-01Commercial Press NEW45Ivan Magalhaes
1038Arvin V SlusarskiBrazil2024-05-25Truhlar And Truhlar Attys NEGOTIATION6Ioni Bowcher
1039James U GarufiCanada2024-05-20Rangoni Of Florence QUALIFIED54Amy Elsner
1040Adams O BriddickIndia2024-05-21King, Christopher A Esq NEW12Asiya Javayant
1041Kaitlin N MorascaFrance2024-06-01Chanay, Jeffrey A Esq NEGOTIATION88Stephen Shaw
1042Jones A PaprockiGermany2024-06-13Truhlar And Truhlar Attys UNQUALIFIED60Bernardo Dominic
1043Aika Q OldroydRussia2024-06-04Commercial Press RENEWAL69Anna Fali
1044Jeanfrancois J MarrierJapan2024-06-12Chapman, Ross E Esq UNQUALIFIED35Onyama Limba
1045Murillo Z FigeroaRussia2024-06-01Buckley Miller Wright NEW95Asiya Javayant
1046Murillo D RulapaughFrance2024-05-26Benton, John B Jr RENEWAL42Ioni Bowcher
1047Tony Z WhobreyRussia2024-06-06Truhlar And Truhlar Attys NEGOTIATION38Ivan Magalhaes
1048Darci W BologniaAustralia2024-06-15Benton, John B Jr UNQUALIFIED13Xuxue Feng
1049Morrow R FlosiRussia2024-05-30Buckley Miller Wright PROPOSAL70Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Kadeem Q VenereIndiaAsiya Javayant NEW
Faith Z SlusarskiRussiaOnyama Limba QUALIFIED
Morrow U SaylorsJapanOnyama Limba QUALIFIED
Faith H RutaSpainXuxue Feng UNQUALIFIED
Smith K TollnerJapanElwin Sharvill RENEWAL
Greenwood A CaudyCanadaAnna Fali RENEWAL
Aika P GlickBrazilAsiya Javayant UNQUALIFIED
Arvin Q NickaRussiaIvan Magalhaes NEGOTIATION
Kadeem O MorascaUnited KingdomIvan Magalhaes PROPOSAL
Johnson Y MaletUnited KingdomOnyama Limba RENEWAL
Maria Q ShinkoUnited KingdomXuxue Feng NEGOTIATION
Aditya I NickaItalyStephen Shaw NEGOTIATION
Kaitlin I VocelkaUnited KingdomXuxue Feng QUALIFIED
Emily Q AlbaresJapanAnna Fali RENEWAL
Maisha I ShinkoJapanXuxue Feng NEW
Ivar G DilliardAustraliaIvan Magalhaes NEGOTIATION
Jones X GillianRussiaElwin Sharvill UNQUALIFIED
Aruna A VocelkaAustraliaStephen Shaw QUALIFIED
Salvatore M MacleadAustraliaOnyama Limba UNQUALIFIED
James L CaudyUnited KingdomXuxue Feng NEGOTIATION
Nicolas U BologniaItalyAnna Fali PROPOSAL
Ashley Y FerenczSpainStephen Shaw QUALIFIED
Aruna M DilliardJapanElwin Sharvill PROPOSAL
Silvio A PoquetteJapanAsiya Javayant RENEWAL
Leon F WaycottAustraliaElwin Sharvill PROPOSAL
Antonio X VenereArgentinaXuxue Feng QUALIFIED
Adams A ButtRussiaBernardo Dominic PROPOSAL
Smith M NestleIndiaOnyama Limba PROPOSAL
Aditya H SergiArgentinaOnyama Limba NEW
Aika Y FerenczItalyOnyama Limba PROPOSAL
Maria Y BowleyIndiaXuxue Feng UNQUALIFIED
Kadeem X BologniaJapanIvan Magalhaes NEGOTIATION
Leja C GarufiFranceIvan Magalhaes NEW
Aditya H PerinAustraliaAsiya Javayant RENEWAL
Claire Z BologniaIndiaAsiya Javayant PROPOSAL
David O VocelkaRussiaStephen Shaw RENEWAL
Ivar M AlbaresIndiaAnna Fali PROPOSAL
Munro H ShinkoFranceAsiya Javayant PROPOSAL
Leja C CaudyAustraliaIvan Magalhaes NEW
Claire E DarakjyBrazilIvan Magalhaes PROPOSAL
Izzy K SchemmerRussiaStephen Shaw UNQUALIFIED
Munro N GlickIndiaIoni Bowcher RENEWAL
Leon Q AmigonJapanBernardo Dominic RENEWAL
Ricardo L CampainFranceStephen Shaw RENEWAL
Nicolas C MaletIndiaIoni Bowcher QUALIFIED
David Q GillianUnited KingdomAsiya Javayant NEW
Murillo D FlosiRussiaIoni Bowcher UNQUALIFIED
Francesco P NestleAustraliaStephen Shaw RENEWAL
Jeanfrancois I GlickAustraliaIvan Magalhaes NEW
Adams W FigeroaRussiaOnyama Limba RENEWAL
Frozen Columns
Name
Jones A Poquette
Greenwood C Saylors
Smith K Kolmetz
Maria U Ostrosky
Emily R Garufi
Arvin D Ferencz
Leja C Kusko
Nicolas I Garufi
Arvin B Gillian
Clifford F Slusarski
Mujtaba I Waycott
Cody W Whobrey
Antonio Y Shinko
Jeanfrancois W Iturbide
David X Waycott
Clifford Y Gillian
Jefferson L Doe
Aika F Ostrosky
Aika T Albares
Greenwood Z Saylors
Julie F Malet
Darci V Foller
Faith M Vocelka
Julie U Waycott
Silvio D Oldroyd
Nicolas D Foller
Greenwood N Bolognia
Darci M Ostrosky
Ricardo K Whobrey
Morrow Q Malet
Costa S Bolognia
Adams X Chui
Deepesh V Caldarera
Silvio T Caudy
Silvio S Inouye
Jefferson X Garufi
Julie C Waycott
David M Caldarera
Jefferson D Caldarera
Claire I Figeroa
Octavia Q Kusko
Izzy B Whobrey
Cody X Darakjy
Mayumi F Saylors
Nicolas W Kusko
Stacey D Rim
Ivar L Rulapaugh
Antonio N Amigon
Jones F Whobrey
Aruna Q Dilliard
IdCountryDate
1000Brazil2024-06-10
1001Brazil2024-06-12
1002Japan2024-06-08
1003United Kingdom2024-05-26
1004Australia2024-06-17
1005Italy2024-06-13
1006Italy2024-06-13
1007Brazil2024-06-12
1008Germany2024-06-02
1009India2024-06-12
1010Brazil2024-06-08
1011India2024-06-18
1012Germany2024-05-31
1013India2024-05-28
1014India2024-06-16
1015Australia2024-06-01
1016Japan2024-06-17
1017India2024-06-16
1018Argentina2024-06-08
1019United Kingdom2024-06-08
1020France2024-06-09
1021Australia2024-06-10
1022Spain2024-05-26
1023Russia2024-06-11
1024Russia2024-06-08
1025Canada2024-06-11
1026India2024-05-31
1027Argentina2024-06-06
1028Canada2024-06-09
1029Germany2024-05-28
1030United Kingdom2024-06-08
1031Brazil2024-06-10
1032India2024-05-30
1033Argentina2024-06-17
1034Canada2024-06-05
1035France2024-05-28
1036Russia2024-05-22
1037Canada2024-05-28
1038Japan2024-06-08
1039France2024-05-20
1040Australia2024-05-31
1041Brazil2024-05-30
1042Brazil2024-05-23
1043United Kingdom2024-06-02
1044India2024-05-23
1045United Kingdom2024-06-05
1046Argentina2024-06-14
1047United Kingdom2024-05-31
1048Japan2024-06-03
1049Germany2024-05-28

On-Demand Data

NameIdCountryDate
Maria S Tollner1000Canada2024-05-23
Jones S Rim1001Argentina2024-06-08
Izzy N Rulapaugh1002India2024-06-10
Smith O Gaucho1003United Kingdom2024-06-17
Aditya Z Nestle1004France2024-05-30
Nicolas R Gaucho1005Spain2024-06-07
Tony U Caudy1006Brazil2024-06-05
Francesco V Morasca1007Germany2024-06-07
Darci Q Iturbide1008Brazil2024-05-23
Ricardo L Malet1009Spain2024-05-26
Jefferson J Bolognia1010Brazil2024-06-17
Salvatore G Whobrey1011United Kingdom2024-06-13
Salvatore A Briddick1012Spain2024-05-21
Kaitlin R Venere1013Germany2024-06-02
Juan T Whobrey1014Italy2024-05-21
Jones H Campain1015Spain2024-06-09
Stacey M Bowley1016India2024-06-14
Greenwood Q Inouye1017Canada2024-05-23
Costa M Morasca1018Brazil2024-05-30
Aditya X Butt1019Germany2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar K DoeRussiaIoni Bowcher QUALIFIED
Leja K DoeJapanElwin Sharvill QUALIFIED
Salvatore G MarrierIndiaOnyama Limba NEW
Claire E CampainRussiaElwin Sharvill RENEWAL
Francesco L WaycottBrazilBernardo Dominic PROPOSAL
Nicolas E InouyeBrazilAnna Fali NEW
Nicolas T FerenczUnited KingdomXuxue Feng NEW
Greenwood D VenereFranceElwin Sharvill NEGOTIATION
Deepesh P TollnerAustraliaIoni Bowcher NEGOTIATION
Ivar J MaletIndiaXuxue Feng QUALIFIED
Stacey B NickaGermanyAmy Elsner NEGOTIATION
Adams O CaldareraBrazilIoni Bowcher NEGOTIATION
Wickens B RutaJapanAnna Fali RENEWAL
Morrow A CaudyJapanOnyama Limba QUALIFIED
Leon M VenereIndiaAnna Fali NEW
Ivar O StensethGermanyXuxue Feng RENEWAL
Jefferson R TollnerItalyStephen Shaw NEGOTIATION
Greenwood D RimIndiaAsiya Javayant NEGOTIATION
Emily F CaldareraCanadaXuxue Feng UNQUALIFIED
Johnson U FerenczJapanOnyama Limba RENEWAL
Murillo D RoysterGermanyAmy Elsner NEW
Isabel H TollnerUnited KingdomOnyama Limba NEW
Ashley U SchemmerIndiaAsiya Javayant RENEWAL
Wickens Y KuskoJapanStephen Shaw NEW
Aika Z PerinBrazilXuxue Feng NEW
Jennifer H FollerUnited KingdomAnna Fali NEW
Munro V GarufiUnited KingdomBernardo Dominic QUALIFIED
Maisha Z GillianRussiaAmy Elsner QUALIFIED
Maisha X StensethJapanBernardo Dominic UNQUALIFIED
Mujtaba O MacleadSpainAsiya Javayant QUALIFIED
Faith C StensethCanadaBernardo Dominic NEW
Murillo S FlosiAustraliaBernardo Dominic PROPOSAL
Tony Y GlickRussiaStephen Shaw NEW
Jeanfrancois P GlickBrazilElwin Sharvill NEGOTIATION
Arvin X KuskoArgentinaXuxue Feng NEW
Smith U BologniaAustraliaAnna Fali NEGOTIATION
Jennifer C NickaSpainAmy Elsner PROPOSAL
Nicolas M NestleGermanyBernardo Dominic QUALIFIED
Francesco T ButtArgentinaOnyama Limba QUALIFIED
Faith B RimSpainIvan Magalhaes 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>