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
Nicolas G InouyeBrazilXuxue Feng QUALIFIED
Deepesh G BowleyArgentinaBernardo Dominic NEGOTIATION
Jennifer H CaldareraIndiaAsiya Javayant RENEWAL
Ivar P KolmetzBrazilOnyama Limba PROPOSAL
Aditya U MacleadJapanIvan Magalhaes QUALIFIED
Emily F GlickFranceXuxue Feng PROPOSAL
Cody S GauchoBrazilIvan Magalhaes NEW
Francesco U WaycottSpainIvan Magalhaes PROPOSAL
Murillo W VenereSpainAnna Fali QUALIFIED
Alejandro A BowleyJapanIvan Magalhaes NEGOTIATION
Clifford S RimIndiaAmy Elsner UNQUALIFIED
Jeanfrancois P VenereFranceBernardo Dominic NEGOTIATION
Leja M PoquetteAustraliaElwin Sharvill RENEWAL
Mujtaba L KuskoFranceAmy Elsner NEW
Silvio I WaycottJapanXuxue Feng NEGOTIATION
Ivar X WieserItalyIoni Bowcher QUALIFIED
Wickens L MorascaGermanyOnyama Limba RENEWAL
Octavia X MarrierCanadaAmy Elsner RENEWAL
Morrow G ButtGermanyAmy Elsner UNQUALIFIED
Clifford P ShinkoSpainElwin Sharvill QUALIFIED
Greenwood A StensethCanadaStephen Shaw NEW
Arvin C InouyeArgentinaAnna Fali UNQUALIFIED
Silvio F SergiFranceAsiya Javayant NEGOTIATION
Smith Z CaldareraJapanAnna Fali QUALIFIED
Misaki Y SergiAustraliaAnna Fali PROPOSAL
Leja G BriddickAustraliaAmy Elsner NEGOTIATION
Octavia C NickaGermanyBernardo Dominic UNQUALIFIED
Deepesh S GillianArgentinaAsiya Javayant PROPOSAL
Chavez J SchemmerItalyIvan Magalhaes QUALIFIED
Aika T SergiArgentinaAsiya Javayant UNQUALIFIED
Kaitlin A WieserIndiaIvan Magalhaes NEW
Cody H FerenczIndiaStephen Shaw PROPOSAL
Leon M WhobreyUnited KingdomAsiya Javayant QUALIFIED
Maisha S WhobreyAustraliaAsiya Javayant NEW
Deepesh J PoquetteFranceAsiya Javayant QUALIFIED
Jones Q RoysterFranceAnna Fali NEGOTIATION
Kadeem S WhobreySpainOnyama Limba QUALIFIED
Darci J DarakjyCanadaIvan Magalhaes NEGOTIATION
Sinclair F ChuiAustraliaIoni Bowcher NEGOTIATION
Clifford Q SaylorsArgentinaOnyama Limba QUALIFIED
Darci Z WaycottAustraliaXuxue Feng NEGOTIATION
Maria C DarakjyAustraliaOnyama Limba QUALIFIED
Ashley I OldroydBrazilAmy Elsner QUALIFIED
Smith V MorascaBrazilOnyama Limba QUALIFIED
Adams D OldroydGermanyIoni Bowcher UNQUALIFIED
Aditya X StensethItalyAsiya Javayant NEW
Ivar L DoeJapanIoni Bowcher QUALIFIED
Murillo D PoquetteFranceIvan Magalhaes QUALIFIED
Sinclair W OldroydGermanyAsiya Javayant PROPOSAL
Salvatore J AlbaresFranceBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Emily Y GarufiRussiaAsiya Javayant NEGOTIATION
Kaitlin L GauchoGermanyIoni Bowcher NEW
Silvio R SaylorsIndiaIvan Magalhaes UNQUALIFIED
Misaki C WieserGermanyOnyama Limba PROPOSAL
Ashley C DilliardCanadaAsiya Javayant RENEWAL
Darci N RoysterRussiaIoni Bowcher QUALIFIED
Smith M CaudyRussiaElwin Sharvill NEGOTIATION
Maria H RulapaughBrazilBernardo Dominic NEW
Greenwood H InouyeIndiaIvan Magalhaes NEW
Greenwood H MarrierSpainXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon O AmigonArgentina2024-05-17Feiner Bros NEGOTIATION62Ivan Magalhaes
1001Aika I WieserGermany2024-05-14Rangoni Of Florence QUALIFIED27Bernardo Dominic
1002Sinclair V MacleadAustralia2024-05-19Dorl, James J Esq PROPOSAL40Elwin Sharvill
1003Sinclair K MaletFrance2024-05-21Buckley Miller Wright UNQUALIFIED9Ioni Bowcher
1004Nicolas U BologniaGermany2024-06-06Truhlar And Truhlar Attys UNQUALIFIED26Asiya Javayant
1005Faith G PerinAustralia2024-05-19Rousseaux, Michael Esq QUALIFIED34Xuxue Feng
1006Kaitlin S WhobreyUnited Kingdom2024-06-01Commercial Press QUALIFIED72Asiya Javayant
1007Maria Y WhobreyBrazil2024-05-30Morlong Associates NEGOTIATION26Xuxue Feng
1008Jeanfrancois E KolmetzGermany2024-05-29Chemel, James L Cpa NEW92Asiya Javayant
1009Darci H VenereUnited Kingdom2024-05-18Dorl, James J Esq NEGOTIATION97Elwin Sharvill
1010James W BowleyAustralia2024-05-16Truhlar And Truhlar Attys RENEWAL48Anna Fali
1011Chavez X SlusarskiBrazil2024-05-14Dorl, James J Esq NEW89Ivan Magalhaes
1012Francesco Y GarufiRussia2024-05-11Chapman, Ross E Esq PROPOSAL27Ivan Magalhaes
1013Nicolas O SergiJapan2024-05-20King, Christopher A Esq PROPOSAL91Onyama Limba
1014Francesco B DoeIndia2024-06-05Benton, John B Jr UNQUALIFIED77Anna Fali
1015Jeanfrancois D KolmetzUnited Kingdom2024-06-01Feiner Bros QUALIFIED53Ivan Magalhaes
1016Octavia I GarufiFrance2024-06-02Feltz Printing Service PROPOSAL82Stephen Shaw
1017Maria X PaprockiCanada2024-05-25Benton, John B Jr QUALIFIED54Elwin Sharvill
1018Munro X FollerFrance2024-05-13Benton, John B Jr PROPOSAL57Onyama Limba
1019Claire M AmigonItaly2024-06-06Buckley Miller Wright RENEWAL72Bernardo Dominic
1020Ricardo M MaletBrazil2024-05-21Printing Dimensions NEW41Onyama Limba
1021Arvin P OstroskyBrazil2024-06-01Truhlar And Truhlar Attys PROPOSAL20Stephen Shaw
1022Emily O ButtItaly2024-06-05Rousseaux, Michael Esq RENEWAL16Amy Elsner
1023Aruna E TollnerSpain2024-06-04Chapman, Ross E Esq QUALIFIED66Anna Fali
1024Maria H AmigonRussia2024-05-27Buckley Miller Wright NEGOTIATION41Asiya Javayant
1025Maisha R MaletGermany2024-05-29Buckley Miller Wright QUALIFIED88Anna Fali
1026Faith J MarrierSpain2024-05-26Rousseaux, Michael Esq PROPOSAL18Asiya Javayant
1027Tony T WaycottRussia2024-05-23Dorl, James J Esq UNQUALIFIED79Bernardo Dominic
1028Claire U VocelkaBrazil2024-06-06Rangoni Of Florence UNQUALIFIED71Stephen Shaw
1029Smith Q BowleyCanada2024-05-29Commercial Press QUALIFIED39Bernardo Dominic
1030Wickens G GarufiUnited Kingdom2024-05-09Truhlar And Truhlar Attys PROPOSAL15Anna Fali
1031Adams Q PaprockiJapan2024-06-02Morlong Associates UNQUALIFIED14Ivan Magalhaes
1032Emily P FollerBrazil2024-05-22Printing Dimensions PROPOSAL77Xuxue Feng
1033Maisha K SaylorsArgentina2024-05-15Dorl, James J Esq NEGOTIATION78Stephen Shaw
1034Sinclair L IturbideIndia2024-05-21Printing Dimensions NEGOTIATION75Onyama Limba
1035Deepesh U SaylorsArgentina2024-05-24Buckley Miller Wright NEW33Elwin Sharvill
1036Maisha U VocelkaIndia2024-05-27King, Christopher A Esq NEGOTIATION38Xuxue Feng
1037Clifford J IturbideGermany2024-05-17Morlong Associates RENEWAL3Ivan Magalhaes
1038Isabel K OstroskySpain2024-05-13Commercial Press NEW55Ioni Bowcher
1039Isabel D GillianFrance2024-06-02Buckley Miller Wright NEW10Asiya Javayant
1040Cody U VocelkaIndia2024-05-27Feltz Printing Service RENEWAL61Asiya Javayant
1041Julie H FerenczJapan2024-05-19Truhlar And Truhlar Attys NEW94Asiya Javayant
1042Kaitlin Z MarrierBrazil2024-05-20Dorl, James J Esq RENEWAL3Stephen Shaw
1043Aditya X RimItaly2024-05-20Chemel, James L Cpa NEGOTIATION69Amy Elsner
1044Stacey Z WieserItaly2024-06-07Benton, John B Jr NEW73Amy Elsner
1045Maisha L NickaGermany2024-05-27Morlong Associates RENEWAL75Onyama Limba
1046James Q WieserCanada2024-05-20King, Christopher A Esq PROPOSAL16Xuxue Feng
1047Leja B IturbideUnited Kingdom2024-05-31Feltz Printing Service UNQUALIFIED94Bernardo Dominic
1048David V MaletCanada2024-05-16Benton, John B Jr QUALIFIED42Ioni Bowcher
1049Octavia U AlbaresAustralia2024-05-22Rangoni Of Florence NEW61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens A NestleArgentinaXuxue Feng QUALIFIED
Tony F StockhamFranceElwin Sharvill RENEWAL
Kaitlin C ShinkoSpainElwin Sharvill QUALIFIED
Smith Q BriddickSpainXuxue Feng NEW
Leon W KuskoFranceOnyama Limba NEW
Izzy U MarrierJapanStephen Shaw NEGOTIATION
Sinclair C BriddickJapanAmy Elsner NEGOTIATION
James X SlusarskiSpainElwin Sharvill RENEWAL
Emily T PoquetteArgentinaIoni Bowcher NEW
Juan I CaudyIndiaOnyama Limba NEGOTIATION
David Y CampainArgentinaOnyama Limba NEW
James H ShinkoUnited KingdomAnna Fali RENEWAL
Isabel Z GlickIndiaBernardo Dominic NEGOTIATION
Ivar J WaycottCanadaIvan Magalhaes NEW
Silvio J PaprockiJapanBernardo Dominic NEW
Chavez Y CaudyJapanElwin Sharvill QUALIFIED
Sinclair T MaletGermanyStephen Shaw NEW
Adams N ButtFranceStephen Shaw RENEWAL
Ricardo F MorascaRussiaAmy Elsner NEW
Sinclair Y StensethAustraliaStephen Shaw NEGOTIATION
Aruna H BowleySpainAmy Elsner QUALIFIED
Aruna Q DarakjyFranceOnyama Limba UNQUALIFIED
Greenwood Q GarufiCanadaOnyama Limba PROPOSAL
Murillo S VenereCanadaStephen Shaw RENEWAL
Antonio U FollerRussiaAnna Fali PROPOSAL
Deepesh M DoeRussiaAsiya Javayant QUALIFIED
Wickens E SchemmerUnited KingdomAmy Elsner QUALIFIED
Juan I SergiJapanIoni Bowcher PROPOSAL
Faith F RimIndiaElwin Sharvill RENEWAL
Morrow S GillianUnited KingdomAsiya Javayant PROPOSAL
Deepesh X StensethArgentinaIvan Magalhaes UNQUALIFIED
Misaki P ShinkoFranceIoni Bowcher QUALIFIED
Rodrigues S MacleadFranceStephen Shaw NEW
Chavez R ChuiFranceBernardo Dominic RENEWAL
Francesco O KuskoSpainElwin Sharvill PROPOSAL
Mayumi X BowleyItalyOnyama Limba NEW
Cody R GlickAustraliaAnna Fali UNQUALIFIED
Leja S FerenczUnited KingdomElwin Sharvill NEGOTIATION
Adams L DarakjyRussiaElwin Sharvill QUALIFIED
Rodrigues E StensethGermanyXuxue Feng PROPOSAL
Munro T MorascaBrazilIvan Magalhaes PROPOSAL
Juan Q CaudyGermanyBernardo Dominic NEGOTIATION
Leja T RutaUnited KingdomIoni Bowcher NEGOTIATION
Salvatore A ShinkoUnited KingdomAmy Elsner NEW
Kadeem O GlickItalyIoni Bowcher PROPOSAL
Johnson J NestleSpainBernardo Dominic NEGOTIATION
Deepesh R RutaSpainIvan Magalhaes RENEWAL
Salvatore U BowleyBrazilIvan Magalhaes NEGOTIATION
Rodrigues F TollnerAustraliaOnyama Limba PROPOSAL
Claire U BriddickIndiaIoni Bowcher NEW
Frozen Columns
Name
Ivar E Chui
Jefferson A Stenseth
Ivar K Kusko
Leon K Stockham
Juan B Malet
Wickens G Albares
Smith P Shinko
Kaitlin J Saylors
Leja F Sergi
Ricardo G Venere
Leon C Iturbide
Antonio L Morasca
Deepesh U Stenseth
Aditya M Poquette
Greenwood Z Gaucho
Alejandro O Dilliard
Tony E Butt
Munro F Perin
Antonio I Garufi
Isabel N Ruta
Ivar Q Dilliard
Smith F Rulapaugh
Isabel W Oldroyd
Wickens Q Ferencz
Aruna O Maclead
Antonio W Kolmetz
Aditya I Kolmetz
Ivar M Gaucho
Francesco I Poquette
Maria N Slusarski
Munro U Glick
Cody V Doe
Claire X Doe
Chavez O Stockham
Leon T Glick
Cody C Bowley
Greenwood B Poquette
Claire O Ostrosky
Wickens I Campain
Deepesh V Caldarera
Misaki U Maclead
Claire A Rulapaugh
Greenwood F Amigon
Alejandro T Bowley
Ricardo Q Butt
Munro B Perin
Faith E Marrier
Clifford Z Dilliard
Deepesh T Marrier
James C Kusko
IdCountryDate
1000Brazil2024-05-24
1001Germany2024-05-13
1002Italy2024-05-18
1003Italy2024-05-28
1004Argentina2024-06-05
1005Canada2024-05-11
1006Spain2024-05-11
1007Canada2024-06-03
1008United Kingdom2024-05-15
1009India2024-05-19
1010Spain2024-05-27
1011Argentina2024-05-30
1012France2024-05-14
1013Italy2024-05-27
1014Argentina2024-05-29
1015United Kingdom2024-05-24
1016Australia2024-06-06
1017Russia2024-05-13
1018Japan2024-05-23
1019France2024-05-21
1020Japan2024-05-28
1021Italy2024-05-10
1022Canada2024-05-09
1023Argentina2024-05-11
1024Australia2024-05-09
1025Australia2024-05-27
1026Argentina2024-05-25
1027United Kingdom2024-06-04
1028United Kingdom2024-05-12
1029Australia2024-06-02
1030Canada2024-06-04
1031India2024-05-13
1032Germany2024-05-26
1033France2024-05-27
1034France2024-05-25
1035Spain2024-05-23
1036Russia2024-05-28
1037Canada2024-05-27
1038Japan2024-05-14
1039Germany2024-05-30
1040Italy2024-05-30
1041India2024-05-26
1042Canada2024-05-26
1043Brazil2024-05-29
1044Germany2024-06-04
1045France2024-05-23
1046Germany2024-05-13
1047Russia2024-05-16
1048United Kingdom2024-05-25
1049Argentina2024-05-30

On-Demand Data

NameIdCountryDate
Jeanfrancois I Darakjy1000Japan2024-06-04
Mayumi Z Glick1001India2024-05-17
Kaitlin D Paprocki1002Australia2024-06-04
Leon U Kolmetz1003Australia2024-05-18
Silvio Y Poquette1004United Kingdom2024-05-23
Aruna Z Foller1005Germany2024-06-05
Jennifer F Chui1006Canada2024-06-06
Wickens J Iturbide1007Japan2024-05-24
Morrow I Vocelka1008Germany2024-05-28
Mujtaba H Perin1009Spain2024-05-23
Jeanfrancois H Chui1010Italy2024-05-20
Kadeem J Ruta1011United Kingdom2024-05-31
Silvio D Stenseth1012Spain2024-06-04
Kaitlin Q Campain1013France2024-05-28
Aditya K Malet1014United Kingdom2024-06-04
Kaitlin C Morasca1015Japan2024-05-31
Isabel J Briddick1016Germany2024-05-24
Mayumi I Iturbide1017India2024-05-17
Claire R Ostrosky1018Spain2024-05-14
Ashley G Ruta1019United Kingdom2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson V OldroydArgentinaAnna Fali NEGOTIATION
Nicolas V ChuiRussiaAmy Elsner NEGOTIATION
Arvin J BriddickSpainElwin Sharvill NEGOTIATION
Mujtaba S FollerIndiaIoni Bowcher NEGOTIATION
Wickens C DilliardGermanyAmy Elsner NEW
Salvatore Z PaprockiGermanyAnna Fali UNQUALIFIED
Silvio X ButtGermanyStephen Shaw RENEWAL
Faith H FollerRussiaAnna Fali PROPOSAL
Jeanfrancois V WhobreyAustraliaOnyama Limba QUALIFIED
Smith Z VocelkaGermanyBernardo Dominic QUALIFIED
Mayumi C GarufiItalyStephen Shaw RENEWAL
Chavez R PaprockiFranceOnyama Limba UNQUALIFIED
Mayumi Z CaudyItalyAsiya Javayant PROPOSAL
Clifford V WieserBrazilXuxue Feng UNQUALIFIED
Maria P CaldareraGermanyElwin Sharvill RENEWAL
Maria N FerenczJapanAnna Fali NEW
Sinclair B TollnerIndiaIvan Magalhaes QUALIFIED
Stacey H DoeItalyAnna Fali RENEWAL
Juan V WhobreyCanadaIvan Magalhaes UNQUALIFIED
Chavez Q GillianRussiaOnyama Limba PROPOSAL
Mujtaba A PerinArgentinaIvan Magalhaes NEGOTIATION
David U FollerSpainIvan Magalhaes PROPOSAL
Cody L SaylorsItalyAmy Elsner QUALIFIED
Nicolas S TollnerFranceBernardo Dominic PROPOSAL
Clifford M MacleadFranceOnyama Limba RENEWAL
Jennifer N SchemmerArgentinaStephen Shaw NEW
Alejandro I SergiFranceXuxue Feng RENEWAL
Tony I SlusarskiFranceIoni Bowcher UNQUALIFIED
Ivar I WhobreyItalyIoni Bowcher NEW
Clifford I GauchoFranceOnyama Limba QUALIFIED
Francesco Y KuskoRussiaAmy Elsner PROPOSAL
Kadeem Y SaylorsRussiaAmy Elsner NEW
Silvio O GillianAustraliaBernardo Dominic NEGOTIATION
Wickens P GarufiUnited KingdomBernardo Dominic NEGOTIATION
Sinclair N DilliardJapanXuxue Feng UNQUALIFIED
Smith I KuskoBrazilAsiya Javayant UNQUALIFIED
Aika D ShinkoBrazilAnna Fali UNQUALIFIED
Maisha Z BologniaUnited KingdomAsiya Javayant RENEWAL
Aika V DilliardUnited KingdomIvan Magalhaes UNQUALIFIED
Jones N IturbideBrazilIoni Bowcher QUALIFIED

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