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
Julie Y RimBrazilAmy Elsner NEW
Cody F WieserCanadaIvan Magalhaes NEGOTIATION
David J RimJapanBernardo Dominic NEW
Francesco D GauchoRussiaAmy Elsner QUALIFIED
David I PaprockiBrazilStephen Shaw NEW
Arvin R OldroydArgentinaAmy Elsner RENEWAL
Faith L GauchoUnited KingdomElwin Sharvill PROPOSAL
Mayumi W RutaBrazilStephen Shaw NEW
Munro U SergiAustraliaAsiya Javayant PROPOSAL
Stacey Y WieserUnited KingdomBernardo Dominic NEW
Kadeem M AlbaresGermanyBernardo Dominic UNQUALIFIED
Deepesh I RulapaughRussiaOnyama Limba QUALIFIED
Jeanfrancois A KuskoJapanXuxue Feng UNQUALIFIED
Aruna L BologniaIndiaAnna Fali RENEWAL
Aika Q AmigonArgentinaIvan Magalhaes PROPOSAL
Costa T RutaCanadaAmy Elsner NEW
Deepesh Z KolmetzArgentinaIoni Bowcher PROPOSAL
Costa P MaletSpainXuxue Feng RENEWAL
Faith S GarufiCanadaAnna Fali QUALIFIED
Maisha X StockhamBrazilStephen Shaw PROPOSAL
Chavez D RimArgentinaStephen Shaw QUALIFIED
Jeanfrancois V CaldareraRussiaAnna Fali QUALIFIED
Isabel U GillianCanadaAsiya Javayant UNQUALIFIED
Leon L PaprockiJapanElwin Sharvill RENEWAL
Nicolas Z FlosiUnited KingdomAnna Fali NEW
Costa E CaldareraCanadaElwin Sharvill NEGOTIATION
Sinclair H AmigonAustraliaAsiya Javayant RENEWAL
Maria Y MorascaGermanyElwin Sharvill QUALIFIED
David T DilliardJapanStephen Shaw RENEWAL
Maria I CaldareraArgentinaAsiya Javayant PROPOSAL
Wickens V GarufiCanadaAnna Fali QUALIFIED
Kaitlin B GlickJapanAmy Elsner NEW
Greenwood Q RutaArgentinaAsiya Javayant NEGOTIATION
Adams R DarakjyAustraliaStephen Shaw UNQUALIFIED
Antonio P BologniaItalyAsiya Javayant UNQUALIFIED
Morrow A DarakjyItalyIvan Magalhaes RENEWAL
Francesco O CaudyArgentinaAsiya Javayant UNQUALIFIED
Jeanfrancois U DoeSpainAsiya Javayant UNQUALIFIED
Murillo G ChuiJapanIvan Magalhaes NEW
David T StockhamArgentinaAmy Elsner PROPOSAL
Nicolas N PoquetteGermanyAmy Elsner UNQUALIFIED
James L ButtSpainStephen Shaw QUALIFIED
Francesco D RutaAustraliaAmy Elsner UNQUALIFIED
Munro X ChuiCanadaIvan Magalhaes RENEWAL
Clifford G MaletBrazilStephen Shaw UNQUALIFIED
Morrow O NickaJapanAmy Elsner QUALIFIED
Stacey O AmigonItalyOnyama Limba UNQUALIFIED
Johnson B StockhamGermanyElwin Sharvill RENEWAL
Ashley W FerenczSpainAnna Fali NEW
Maisha P MorascaSpainXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Faith Q RimGermanyOnyama Limba NEW
Stacey E ShinkoItalyBernardo Dominic PROPOSAL
Jeanfrancois O WaycottAustraliaAsiya Javayant UNQUALIFIED
Maria L DilliardUnited KingdomIoni Bowcher RENEWAL
Chavez V GillianIndiaBernardo Dominic PROPOSAL
Johnson L DilliardRussiaAnna Fali UNQUALIFIED
Maisha N KuskoBrazilAsiya Javayant UNQUALIFIED
Wickens A FlosiCanadaAnna Fali NEW
Leon R SaylorsSpainIoni Bowcher NEW
Leja G DarakjyGermanyIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones O BowleyRussia2024-05-06Chanay, Jeffrey A Esq QUALIFIED34Ioni Bowcher
1001Sinclair M KolmetzFrance2024-05-21Chemel, James L Cpa RENEWAL62Ioni Bowcher
1002Maisha F ButtGermany2024-05-20Printing Dimensions RENEWAL92Asiya Javayant
1003Cody L PerinArgentina2024-05-19Benton, John B Jr NEGOTIATION27Anna Fali
1004Emily E GauchoRussia2024-05-24Chapman, Ross E Esq RENEWAL25Elwin Sharvill
1005Leon B CaldareraRussia2024-05-03Buckley Miller Wright PROPOSAL12Anna Fali
1006Arvin P FlosiArgentina2024-05-16Commercial Press RENEWAL79Xuxue Feng
1007Stacey G BologniaGermany2024-04-29Rangoni Of Florence QUALIFIED69Amy Elsner
1008Leja T SchemmerArgentina2024-05-04Dorl, James J Esq UNQUALIFIED24Asiya Javayant
1009Costa Y VocelkaFrance2024-05-11Benton, John B Jr UNQUALIFIED80Stephen Shaw
1010Greenwood G TollnerItaly2024-05-20Morlong Associates UNQUALIFIED92Bernardo Dominic
1011Ivar L KolmetzArgentina2024-05-03Chapman, Ross E Esq UNQUALIFIED45Stephen Shaw
1012Tony W PerinIndia2024-05-18Morlong Associates QUALIFIED37Ivan Magalhaes
1013Darci A KuskoItaly2024-05-17Printing Dimensions RENEWAL41Xuxue Feng
1014Claire M CaudyFrance2024-05-22Chapman, Ross E Esq NEW43Onyama Limba
1015Rodrigues X CaldareraItaly2024-05-14Morlong Associates RENEWAL19Onyama Limba
1016Stacey P SchemmerAustralia2024-05-14Benton, John B Jr UNQUALIFIED0Ivan Magalhaes
1017Claire Z OldroydGermany2024-05-23Commercial Press RENEWAL18Ivan Magalhaes
1018Francesco K WaycottGermany2024-05-02Chapman, Ross E Esq UNQUALIFIED29Anna Fali
1019Silvio E RimSpain2024-04-27Buckley Miller Wright QUALIFIED45Asiya Javayant
1020Isabel F OstroskyCanada2024-05-07Chemel, James L Cpa PROPOSAL51Onyama Limba
1021Munro M FerenczAustralia2024-05-07Feiner Bros QUALIFIED37Elwin Sharvill
1022Tony J ChuiArgentina2024-05-04Chapman, Ross E Esq NEW69Bernardo Dominic
1023Wickens S NestleJapan2024-04-27Rangoni Of Florence NEGOTIATION93Anna Fali
1024Wickens S VocelkaRussia2024-05-18Buckley Miller Wright QUALIFIED49Ioni Bowcher
1025Chavez D PaprockiJapan2024-05-25Feiner Bros NEGOTIATION90Stephen Shaw
1026Emily T OstroskyCanada2024-05-16Chanay, Jeffrey A Esq PROPOSAL56Stephen Shaw
1027Arvin A BologniaUnited Kingdom2024-04-27Truhlar And Truhlar Attys UNQUALIFIED7Xuxue Feng
1028Jones N MaletItaly2024-04-27Truhlar And Truhlar Attys UNQUALIFIED96Amy Elsner
1029Claire Y FlosiBrazil2024-05-25Truhlar And Truhlar Attys RENEWAL33Stephen Shaw
1030Juan U FigeroaSpain2024-05-04Buckley Miller Wright NEW45Anna Fali
1031Chavez V TollnerArgentina2024-05-01Truhlar And Truhlar Attys PROPOSAL98Elwin Sharvill
1032Leon H DarakjyArgentina2024-05-13Rousseaux, Michael Esq QUALIFIED77Xuxue Feng
1033Jeanfrancois H DarakjyArgentina2024-04-30Rousseaux, Michael Esq NEGOTIATION98Asiya Javayant
1034Faith O SergiCanada2024-05-10Feiner Bros QUALIFIED98Xuxue Feng
1035Kaitlin D WieserSpain2024-05-04Rangoni Of Florence PROPOSAL81Ivan Magalhaes
1036Aruna Y BologniaArgentina2024-05-09Buckley Miller Wright QUALIFIED88Ioni Bowcher
1037Aruna S RimGermany2024-05-12Buckley Miller Wright PROPOSAL72Xuxue Feng
1038Isabel A SergiItaly2024-04-27Truhlar And Truhlar Attys NEW50Onyama Limba
1039Kadeem H BologniaSpain2024-05-21Chemel, James L Cpa PROPOSAL17Bernardo Dominic
1040Antonio Z CaudyCanada2024-04-27Morlong Associates PROPOSAL56Amy Elsner
1041Wickens S WaycottJapan2024-05-16Morlong Associates UNQUALIFIED13Elwin Sharvill
1042Francesco W VenereJapan2024-05-01Rousseaux, Michael Esq PROPOSAL29Ivan Magalhaes
1043Maria J PerinRussia2024-05-07Chapman, Ross E Esq NEGOTIATION54Onyama Limba
1044Maisha M SchemmerUnited Kingdom2024-05-01Morlong Associates NEW14Xuxue Feng
1045Sinclair V WhobreyCanada2024-05-10Morlong Associates RENEWAL33Elwin Sharvill
1046Ricardo A KuskoArgentina2024-05-14Printing Dimensions UNQUALIFIED35Amy Elsner
1047Jeanfrancois I VocelkaAustralia2024-04-30Dorl, James J Esq UNQUALIFIED79Ioni Bowcher
1048Kaitlin O ShinkoItaly2024-05-09Feiner Bros RENEWAL81Ivan Magalhaes
1049Leja E CaldareraFrance2024-05-22Morlong Associates NEW15Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leja X SlusarskiGermanyStephen Shaw NEW
Kadeem E CaldareraCanadaAsiya Javayant RENEWAL
Izzy N MacleadJapanIoni Bowcher UNQUALIFIED
Faith T BriddickUnited KingdomAsiya Javayant RENEWAL
Jefferson R ButtRussiaAsiya Javayant QUALIFIED
Jones T KuskoCanadaElwin Sharvill NEW
Mayumi E PoquetteRussiaStephen Shaw PROPOSAL
Leja Y ChuiBrazilAnna Fali NEW
James D StockhamArgentinaXuxue Feng PROPOSAL
Ashley D ChuiAustraliaAsiya Javayant UNQUALIFIED
Octavia M VocelkaJapanOnyama Limba QUALIFIED
Tony S PerinJapanIoni Bowcher QUALIFIED
Cody P DoeBrazilXuxue Feng NEW
Faith J GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Jeanfrancois J StockhamArgentinaIoni Bowcher UNQUALIFIED
Aditya H SergiBrazilXuxue Feng NEW
Julie R MarrierItalyBernardo Dominic RENEWAL
Leon Z IturbideIndiaIoni Bowcher UNQUALIFIED
Antonio P RutaGermanyBernardo Dominic UNQUALIFIED
Aditya X CaudyIndiaStephen Shaw QUALIFIED
Darci I NestleGermanyAnna Fali NEGOTIATION
Aruna T VenereRussiaOnyama Limba QUALIFIED
Silvio Q RimSpainStephen Shaw UNQUALIFIED
Maria R StensethSpainIvan Magalhaes QUALIFIED
Rodrigues J MaletItalyIoni Bowcher QUALIFIED
Leja I KuskoArgentinaElwin Sharvill PROPOSAL
Johnson I CampainIndiaAmy Elsner NEW
Isabel I StockhamUnited KingdomXuxue Feng QUALIFIED
Aika N KolmetzBrazilXuxue Feng PROPOSAL
Jefferson A CampainItalyElwin Sharvill UNQUALIFIED
David Q KolmetzItalyBernardo Dominic RENEWAL
Aruna N GillianBrazilAsiya Javayant PROPOSAL
Izzy M WaycottJapanIvan Magalhaes PROPOSAL
Mujtaba U FigeroaRussiaIoni Bowcher QUALIFIED
Kaitlin B ChuiJapanAsiya Javayant UNQUALIFIED
Ricardo R CaldareraJapanAmy Elsner NEGOTIATION
Maisha T DoeArgentinaStephen Shaw NEW
Jefferson N WaycottBrazilAsiya Javayant NEGOTIATION
Jefferson I SlusarskiCanadaIvan Magalhaes NEGOTIATION
Wickens R CaudyBrazilAmy Elsner UNQUALIFIED
Misaki W AmigonIndiaIvan Magalhaes NEW
Leja V WaycottCanadaBernardo Dominic NEGOTIATION
Maria D AlbaresArgentinaStephen Shaw NEGOTIATION
Cody Y DarakjyArgentinaStephen Shaw UNQUALIFIED
Leja T ShinkoFranceIvan Magalhaes NEGOTIATION
Ashley N BologniaFranceStephen Shaw NEW
Smith J BowleyRussiaAmy Elsner QUALIFIED
Darci F AlbaresJapanAmy Elsner UNQUALIFIED
Aruna N RimGermanyXuxue Feng RENEWAL
Maisha V NickaRussiaStephen Shaw QUALIFIED
Frozen Columns
Name
Tony S Whobrey
Juan D Butt
Arvin W Foller
Nicolas V Gaucho
Emily L Briddick
Mayumi U Bowley
Deepesh X Butt
Adams M Nestle
Arvin Y Oldroyd
Francesco S Butt
Deepesh V Saylors
Izzy T Amigon
Mayumi K Marrier
Maria E Stenseth
Greenwood J Morasca
Costa B Dilliard
Isabel O Malet
Misaki B Dilliard
Arvin N Nicka
Emily F Doe
Mayumi O Caudy
Octavia W Briddick
Leon S Sergi
Arvin W Perin
Aika X Whobrey
Nicolas C Nicka
Darci D Wieser
Arvin S Saylors
Chavez A Doe
Leon V Caudy
Izzy Z Campain
Wickens N Albares
Leon O Inouye
Murillo V Perin
Jefferson Z Waycott
Cody J Nestle
Misaki D Butt
Sinclair C Rulapaugh
Jefferson M Schemmer
David B Schemmer
Salvatore Q Bowley
Emily K Vocelka
Chavez C Glick
Izzy A Briddick
Johnson G Dilliard
Ricardo L Darakjy
Chavez A Venere
Juan H Albares
Wickens N Foller
Misaki E Oldroyd
IdCountryDate
1000Italy2024-05-19
1001Russia2024-05-20
1002Russia2024-05-25
1003Spain2024-04-30
1004Australia2024-05-26
1005Japan2024-05-04
1006France2024-05-26
1007Spain2024-05-15
1008Canada2024-05-10
1009Italy2024-05-06
1010Russia2024-05-02
1011Russia2024-04-30
1012United Kingdom2024-05-24
1013France2024-05-12
1014Russia2024-05-20
1015Brazil2024-05-19
1016United Kingdom2024-05-07
1017Brazil2024-05-16
1018Russia2024-05-16
1019Canada2024-05-01
1020Russia2024-05-20
1021Russia2024-05-02
1022France2024-05-13
1023India2024-05-19
1024Spain2024-05-01
1025Canada2024-05-25
1026Australia2024-05-03
1027Spain2024-05-10
1028Spain2024-05-15
1029United Kingdom2024-05-08
1030Spain2024-05-14
1031Argentina2024-05-25
1032France2024-05-17
1033France2024-05-18
1034Australia2024-05-18
1035France2024-05-24
1036Russia2024-05-18
1037Canada2024-04-28
1038Germany2024-05-24
1039Spain2024-05-25
1040Japan2024-04-28
1041Canada2024-05-04
1042United Kingdom2024-05-06
1043United Kingdom2024-05-02
1044Canada2024-05-17
1045Japan2024-05-17
1046United Kingdom2024-05-03
1047Russia2024-05-21
1048India2024-05-25
1049Australia2024-05-19

On-Demand Data

NameIdCountryDate
Leja I Darakjy1000Germany2024-05-23
Morrow R Caudy1001Brazil2024-05-05
Rodrigues U Kolmetz1002Italy2024-05-05
Ricardo A Caudy1003India2024-05-16
Aruna Z Foller1004France2024-05-10
Aditya G Stockham1005Italy2024-05-24
Arvin N Poquette1006France2024-05-08
Deepesh N Flosi1007India2024-05-20
Greenwood S Venere1008India2024-05-02
Emily J Rulapaugh1009France2024-05-07
Morrow H Bolognia1010Japan2024-04-28
Stacey F Paprocki1011Italy2024-05-06
Francesco B Wieser1012Germany2024-05-02
Stacey V Bowley1013Spain2024-05-04
Ricardo K Oldroyd1014Brazil2024-05-20
Aditya D Chui1015Germany2024-05-09
Izzy C Waycott1016Argentina2024-05-13
Aditya H Waycott1017France2024-04-30
Rodrigues X Rulapaugh1018Argentina2024-05-06
Leja D Rim1019Germany2024-05-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith U BologniaArgentinaElwin Sharvill QUALIFIED
Sinclair F GarufiGermanyAmy Elsner UNQUALIFIED
Rodrigues C GillianAustraliaAsiya Javayant UNQUALIFIED
Smith M KuskoUnited KingdomAsiya Javayant UNQUALIFIED
Smith D FollerArgentinaAsiya Javayant UNQUALIFIED
Cody Q FigeroaAustraliaElwin Sharvill NEW
Aruna J RimItalyXuxue Feng NEW
Greenwood I StensethFranceIoni Bowcher QUALIFIED
Maria N BowleySpainAsiya Javayant PROPOSAL
Jefferson L RimSpainIvan Magalhaes QUALIFIED
Octavia A WaycottGermanyAnna Fali NEW
Mayumi L FerenczRussiaIvan Magalhaes QUALIFIED
Deepesh D MaletIndiaIoni Bowcher NEGOTIATION
Jennifer M RoysterCanadaOnyama Limba RENEWAL
Deepesh M DarakjyItalyIoni Bowcher QUALIFIED
Jones A MarrierJapanIvan Magalhaes RENEWAL
Francesco B CaldareraFranceAmy Elsner RENEWAL
Morrow U IturbideFranceElwin Sharvill RENEWAL
Aditya H KolmetzJapanOnyama Limba QUALIFIED
Nicolas V SchemmerArgentinaOnyama Limba NEW
James F ChuiFranceBernardo Dominic QUALIFIED
Aditya K BowleySpainAsiya Javayant UNQUALIFIED
Deepesh R KolmetzUnited KingdomAnna Fali NEW
Stacey L GillianAustraliaStephen Shaw QUALIFIED
Tony U RulapaughUnited KingdomAsiya Javayant PROPOSAL
Cody S BriddickUnited KingdomBernardo Dominic UNQUALIFIED
Salvatore S FigeroaGermanyBernardo Dominic NEGOTIATION
Murillo K RimJapanAnna Fali PROPOSAL
Salvatore Y TollnerJapanOnyama Limba UNQUALIFIED
James G RoysterArgentinaIvan Magalhaes UNQUALIFIED
Ivar O DarakjyIndiaAnna Fali NEW
Adams F RutaFranceAsiya Javayant PROPOSAL
Aruna N NestleIndiaElwin Sharvill UNQUALIFIED
Aruna F GlickFranceBernardo Dominic QUALIFIED
Sinclair E AmigonIndiaIvan Magalhaes QUALIFIED
Ivar X RimCanadaIoni Bowcher RENEWAL
Rodrigues K FlosiCanadaBernardo Dominic QUALIFIED
Salvatore T KolmetzRussiaIvan Magalhaes PROPOSAL
Salvatore S PerinFranceOnyama Limba RENEWAL
Greenwood O CampainRussiaXuxue Feng 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>