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 GauchoUnited KingdomAmy Elsner QUALIFIED
Aruna S StockhamJapanOnyama Limba NEW
Darci G BologniaIndiaXuxue Feng RENEWAL
David E StockhamCanadaIvan Magalhaes QUALIFIED
Greenwood S BowleyItalyIoni Bowcher PROPOSAL
Rodrigues D WieserCanadaAsiya Javayant QUALIFIED
Munro M GillianRussiaAmy Elsner QUALIFIED
Izzy T TollnerFranceElwin Sharvill PROPOSAL
Johnson F OstroskyIndiaAnna Fali PROPOSAL
Munro F PoquetteAustraliaAnna Fali NEGOTIATION
Johnson Y ShinkoCanadaStephen Shaw PROPOSAL
Wickens I BologniaRussiaBernardo Dominic NEW
Darci U BologniaAustraliaIoni Bowcher PROPOSAL
Alejandro B GillianFranceAmy Elsner NEW
Jones T StockhamGermanyElwin Sharvill PROPOSAL
Tony C TollnerGermanyIoni Bowcher NEW
Julie V StockhamGermanyStephen Shaw NEW
Leja E RimBrazilXuxue Feng NEW
Wickens L VenereArgentinaOnyama Limba UNQUALIFIED
Octavia J RutaIndiaAmy Elsner PROPOSAL
Morrow E OldroydFranceAmy Elsner NEGOTIATION
Rodrigues V FigeroaFranceBernardo Dominic PROPOSAL
Isabel E GarufiArgentinaStephen Shaw UNQUALIFIED
Cody Z SergiUnited KingdomAmy Elsner UNQUALIFIED
Clifford E StockhamAustraliaAnna Fali RENEWAL
Sinclair Z SaylorsItalyBernardo Dominic RENEWAL
Darci P CampainFranceStephen Shaw UNQUALIFIED
Faith E StockhamRussiaIvan Magalhaes NEGOTIATION
Tony T OstroskyRussiaAsiya Javayant RENEWAL
Leon N GauchoItalyBernardo Dominic UNQUALIFIED
Maria W InouyeRussiaAsiya Javayant PROPOSAL
Juan F WaycottSpainOnyama Limba RENEWAL
David M PerinAustraliaAsiya Javayant NEW
Wickens Y RutaJapanAnna Fali PROPOSAL
Aruna Z RoysterItalyAnna Fali NEGOTIATION
Rodrigues T RulapaughUnited KingdomAsiya Javayant QUALIFIED
Ivar R AmigonUnited KingdomIoni Bowcher PROPOSAL
Octavia B PerinFranceAnna Fali QUALIFIED
Claire J PerinAustraliaBernardo Dominic NEGOTIATION
Mujtaba R BowleyGermanyIvan Magalhaes RENEWAL
Kaitlin Z FollerUnited KingdomXuxue Feng UNQUALIFIED
Arvin O RulapaughItalyIoni Bowcher NEGOTIATION
Francesco G OstroskyItalyOnyama Limba UNQUALIFIED
Arvin S DilliardRussiaXuxue Feng PROPOSAL
Darci A IturbideBrazilIvan Magalhaes PROPOSAL
Greenwood L CampainItalyBernardo Dominic RENEWAL
James G CaldareraUnited KingdomBernardo Dominic QUALIFIED
Greenwood H RulapaughRussiaElwin Sharvill NEW
Leon Q IturbideJapanAnna Fali NEGOTIATION
Murillo T CaudyAustraliaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood T IturbideIndiaXuxue Feng QUALIFIED
Maria H ShinkoUnited KingdomAnna Fali NEW
Silvio D WieserFranceAmy Elsner NEGOTIATION
Greenwood Q ChuiUnited KingdomAsiya Javayant RENEWAL
Aditya O VocelkaCanadaAsiya Javayant UNQUALIFIED
Aika K OstroskyJapanAmy Elsner PROPOSAL
Emily K IturbideGermanyIoni Bowcher QUALIFIED
Isabel N GauchoIndiaIvan Magalhaes RENEWAL
Silvio X SergiUnited KingdomElwin Sharvill PROPOSAL
Kaitlin K GlickCanadaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco D RimBrazil2024-05-26Feiner Bros NEGOTIATION78Ioni Bowcher
1001Morrow I GarufiArgentina2024-06-07Feiner Bros RENEWAL42Bernardo Dominic
1002Nicolas X BriddickUnited Kingdom2024-06-10Benton, John B Jr RENEWAL57Asiya Javayant
1003Jennifer J ShinkoRussia2024-05-30King, Christopher A Esq PROPOSAL94Anna Fali
1004Jeanfrancois J MacleadCanada2024-05-23Dorl, James J Esq QUALIFIED94Stephen Shaw
1005Ricardo V CaldareraGermany2024-06-05Truhlar And Truhlar Attys PROPOSAL7Amy Elsner
1006Leja P VocelkaUnited Kingdom2024-05-21Dorl, James J Esq PROPOSAL44Ivan Magalhaes
1007Mayumi V DoeSpain2024-05-15Feltz Printing Service QUALIFIED53Asiya Javayant
1008Leon M SchemmerUnited Kingdom2024-06-08Rangoni Of Florence NEW77Ioni Bowcher
1009Julie M DoeAustralia2024-06-03Chemel, James L Cpa QUALIFIED3Ivan Magalhaes
1010Cody S IturbideBrazil2024-05-27Feiner Bros QUALIFIED5Xuxue Feng
1011Cody A FerenczArgentina2024-06-09Feltz Printing Service QUALIFIED92Asiya Javayant
1012Tony A GillianGermany2024-05-21Chemel, James L Cpa NEGOTIATION29Ivan Magalhaes
1013Mujtaba P RulapaughCanada2024-06-06Chanay, Jeffrey A Esq NEW45Xuxue Feng
1014Johnson H SergiArgentina2024-05-27Chanay, Jeffrey A Esq NEGOTIATION59Amy Elsner
1015Murillo N AlbaresAustralia2024-06-01Feiner Bros PROPOSAL90Stephen Shaw
1016Faith V MaletArgentina2024-06-01Chanay, Jeffrey A Esq QUALIFIED20Stephen Shaw
1017Isabel C FlosiCanada2024-06-11King, Christopher A Esq RENEWAL87Anna Fali
1018Misaki K DilliardCanada2024-06-13Feiner Bros NEGOTIATION89Ioni Bowcher
1019Cody I ChuiUnited Kingdom2024-05-31Benton, John B Jr UNQUALIFIED43Ioni Bowcher
1020Jefferson Y GauchoBrazil2024-05-23Printing Dimensions NEW77Amy Elsner
1021Morrow Q RutaGermany2024-05-26Chemel, James L Cpa PROPOSAL47Xuxue Feng
1022Jeanfrancois D PerinCanada2024-06-03Dorl, James J Esq NEGOTIATION37Ivan Magalhaes
1023Mujtaba F SlusarskiRussia2024-06-12Rangoni Of Florence RENEWAL23Ioni Bowcher
1024Francesco J GauchoUnited Kingdom2024-05-29Chapman, Ross E Esq RENEWAL58Anna Fali
1025Leon E IturbideAustralia2024-05-24Truhlar And Truhlar Attys PROPOSAL55Anna Fali
1026Antonio W BologniaGermany2024-06-02Feiner Bros NEGOTIATION23Amy Elsner
1027Mayumi F WaycottJapan2024-05-21Chemel, James L Cpa RENEWAL84Ioni Bowcher
1028Leja D DoeFrance2024-06-02Feltz Printing Service NEW57Anna Fali
1029Aruna V BriddickFrance2024-06-10Chapman, Ross E Esq QUALIFIED73Stephen Shaw
1030Antonio V RutaAustralia2024-05-30Feltz Printing Service QUALIFIED26Stephen Shaw
1031Mujtaba F CaudyCanada2024-05-16Benton, John B Jr PROPOSAL70Onyama Limba
1032Mayumi N NestleRussia2024-05-31Chanay, Jeffrey A Esq RENEWAL74Elwin Sharvill
1033Leon Y RulapaughGermany2024-05-28Feiner Bros NEW93Ivan Magalhaes
1034Octavia I AlbaresRussia2024-06-05Rousseaux, Michael Esq NEGOTIATION90Amy Elsner
1035Misaki E GlickJapan2024-06-07Truhlar And Truhlar Attys RENEWAL27Amy Elsner
1036Maisha L WieserAustralia2024-05-22Rangoni Of Florence NEW47Elwin Sharvill
1037Adams B MacleadJapan2024-06-01Buckley Miller Wright NEW83Ioni Bowcher
1038David G BowleyArgentina2024-05-28Dorl, James J Esq UNQUALIFIED55Bernardo Dominic
1039Murillo F GlickItaly2024-05-31Feltz Printing Service UNQUALIFIED18Onyama Limba
1040Nicolas L GillianCanada2024-05-17Chemel, James L Cpa UNQUALIFIED12Bernardo Dominic
1041Adams P AlbaresGermany2024-06-13Feltz Printing Service NEGOTIATION17Anna Fali
1042Wickens F StockhamArgentina2024-05-23Feiner Bros PROPOSAL67Elwin Sharvill
1043Octavia I AmigonBrazil2024-05-30Dorl, James J Esq UNQUALIFIED19Onyama Limba
1044Ricardo K PoquetteAustralia2024-05-30Feltz Printing Service PROPOSAL39Xuxue Feng
1045Darci H AlbaresSpain2024-06-01Commercial Press NEW25Anna Fali
1046Aruna V NestleIndia2024-05-21Benton, John B Jr NEGOTIATION41Anna Fali
1047Ricardo X GlickUnited Kingdom2024-06-13Rangoni Of Florence RENEWAL52Ioni Bowcher
1048Sinclair E CaudyUnited Kingdom2024-05-31Chemel, James L Cpa QUALIFIED5Onyama Limba
1049Nicolas L InouyeJapan2024-06-08Printing Dimensions QUALIFIED67Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Maria I DoeUnited KingdomIoni Bowcher QUALIFIED
Ricardo M TollnerItalyElwin Sharvill PROPOSAL
Francesco T DilliardJapanAmy Elsner RENEWAL
Mujtaba W IturbideFranceXuxue Feng UNQUALIFIED
Izzy W InouyeCanadaElwin Sharvill PROPOSAL
Salvatore P DarakjyBrazilIoni Bowcher QUALIFIED
Mujtaba K NickaUnited KingdomIoni Bowcher QUALIFIED
Sinclair A GauchoRussiaBernardo Dominic RENEWAL
Misaki G MarrierBrazilIoni Bowcher NEGOTIATION
Izzy E StensethItalyBernardo Dominic NEGOTIATION
Leja T MaletCanadaIvan Magalhaes PROPOSAL
Aditya M NestleGermanyAnna Fali UNQUALIFIED
Salvatore W IturbideBrazilStephen Shaw QUALIFIED
Claire D SaylorsBrazilIvan Magalhaes RENEWAL
Claire Y NickaUnited KingdomAmy Elsner QUALIFIED
Alejandro S SergiUnited KingdomIvan Magalhaes NEGOTIATION
Izzy W OldroydBrazilStephen Shaw PROPOSAL
David K BologniaUnited KingdomStephen Shaw RENEWAL
Cody Y NickaJapanAnna Fali QUALIFIED
Wickens X BriddickArgentinaOnyama Limba PROPOSAL
Adams C StockhamUnited KingdomStephen Shaw QUALIFIED
Sinclair I NestleGermanyElwin Sharvill RENEWAL
Maria S SchemmerRussiaXuxue Feng NEW
Johnson V GarufiAustraliaXuxue Feng PROPOSAL
Aika F ButtFranceIvan Magalhaes QUALIFIED
Isabel G RutaBrazilElwin Sharvill NEGOTIATION
Ivar W TollnerSpainElwin Sharvill UNQUALIFIED
Jones J GlickIndiaStephen Shaw NEGOTIATION
Maisha Q DarakjyIndiaAnna Fali NEGOTIATION
Antonio C BriddickFranceBernardo Dominic PROPOSAL
Mayumi Z PerinArgentinaXuxue Feng NEGOTIATION
Jeanfrancois L FollerBrazilIoni Bowcher UNQUALIFIED
Maisha R DilliardBrazilIvan Magalhaes PROPOSAL
Ivar J VenereGermanyAnna Fali NEW
Leja S KolmetzUnited KingdomBernardo Dominic PROPOSAL
Clifford F MaletRussiaAnna Fali PROPOSAL
Octavia P ShinkoAustraliaAsiya Javayant RENEWAL
Stacey H DarakjyItalyXuxue Feng NEW
Faith G PoquetteIndiaAsiya Javayant RENEWAL
Jones G CampainIndiaXuxue Feng QUALIFIED
Rodrigues I ButtIndiaXuxue Feng QUALIFIED
Jennifer D BowleyCanadaBernardo Dominic RENEWAL
Greenwood O CaldareraIndiaElwin Sharvill RENEWAL
Antonio H VocelkaRussiaIoni Bowcher NEGOTIATION
Nicolas I SlusarskiGermanyIvan Magalhaes UNQUALIFIED
Julie A RutaFranceStephen Shaw NEGOTIATION
Nicolas C MacleadUnited KingdomAmy Elsner UNQUALIFIED
Maisha F PaprockiRussiaIoni Bowcher UNQUALIFIED
Julie K RulapaughBrazilAmy Elsner PROPOSAL
Maria W PerinIndiaIvan Magalhaes RENEWAL
Frozen Columns
Name
Jennifer W Dilliard
Izzy D Shinko
James D Stenseth
Kaitlin D Caudy
Aditya B Butt
Rodrigues F Caldarera
Deepesh I Bolognia
Tony M Chui
Mayumi C Wieser
Ashley J Slusarski
Antonio T Flosi
Costa W Sergi
Jennifer N Whobrey
Deepesh Q Inouye
Emily X Glick
Tony Z Rulapaugh
Francesco S Slusarski
Leon I Ruta
Aika E Waycott
Ricardo F Doe
James W Garufi
Izzy Z Wieser
Juan S Kusko
Deepesh N Caudy
Aika G Caldarera
Aditya O Tollner
Alejandro H Butt
Antonio V Royster
Stacey U Shinko
Murillo L Briddick
Sinclair F Gaucho
Mayumi V Garufi
Nicolas W Ostrosky
Munro R Ostrosky
Sinclair B Briddick
Maria N Stenseth
Leon N Nicka
Jones P Paprocki
Mujtaba K Doe
Wickens K Ruta
Misaki L Garufi
Izzy U Iturbide
Salvatore K Stockham
Jefferson L Ferencz
Costa R Caldarera
Jennifer T Shinko
Stacey L Nicka
Faith X Royster
Jennifer K Whobrey
Tony N Amigon
IdCountryDate
1000Italy2024-05-28
1001France2024-06-01
1002United Kingdom2024-06-03
1003India2024-05-20
1004France2024-06-13
1005Australia2024-05-31
1006Canada2024-05-27
1007Russia2024-06-05
1008France2024-06-08
1009India2024-06-06
1010Germany2024-05-16
1011Japan2024-05-28
1012Japan2024-05-22
1013United Kingdom2024-05-25
1014Germany2024-05-31
1015Spain2024-06-13
1016Italy2024-06-11
1017India2024-05-20
1018Canada2024-06-13
1019Brazil2024-05-26
1020Japan2024-06-12
1021Russia2024-05-26
1022Spain2024-05-24
1023Japan2024-06-09
1024Brazil2024-05-18
1025Italy2024-06-04
1026Canada2024-06-07
1027Germany2024-06-13
1028Italy2024-05-29
1029Italy2024-06-07
1030Japan2024-05-19
1031Spain2024-05-16
1032Japan2024-05-22
1033Germany2024-05-29
1034France2024-05-19
1035Canada2024-06-12
1036India2024-05-29
1037Australia2024-06-05
1038Australia2024-05-16
1039Russia2024-05-23
1040Argentina2024-06-04
1041Australia2024-05-29
1042Spain2024-05-23
1043France2024-06-01
1044Brazil2024-05-16
1045Brazil2024-05-27
1046Spain2024-05-23
1047Japan2024-06-10
1048Russia2024-05-27
1049Spain2024-05-15

On-Demand Data

NameIdCountryDate
Jeanfrancois Z Sergi1000Russia2024-06-09
Jennifer V Slusarski1001Canada2024-05-17
Nicolas C Darakjy1002Canada2024-05-20
Jefferson W Butt1003Canada2024-06-12
Salvatore D Saylors1004Canada2024-06-12
Isabel O Nestle1005Spain2024-05-29
Ricardo B Maclead1006Spain2024-06-02
David T Sergi1007Italy2024-06-09
Faith U Bowley1008Russia2024-05-27
Juan X Foller1009United Kingdom2024-06-01
Tony B Ostrosky1010Russia2024-05-20
Murillo M Caudy1011Spain2024-06-09
Leon K Nicka1012Australia2024-06-13
Johnson P Waycott1013France2024-05-19
Jeanfrancois X Inouye1014Japan2024-05-24
Ashley C Amigon1015Australia2024-06-10
Jones X Chui1016Japan2024-06-12
Wickens P Morasca1017France2024-06-11
Jones U Ostrosky1018Russia2024-06-09
Sinclair Z Nestle1019Argentina2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood S CaldareraUnited KingdomAnna Fali RENEWAL
Izzy W PaprockiGermanyXuxue Feng QUALIFIED
Costa Y VocelkaRussiaIoni Bowcher RENEWAL
Ricardo L PerinAustraliaIoni Bowcher NEGOTIATION
Aika U FigeroaFranceStephen Shaw RENEWAL
Mayumi I StensethIndiaAnna Fali NEGOTIATION
David I MarrierIndiaXuxue Feng NEW
Mujtaba O RimItalyXuxue Feng PROPOSAL
Aika M OstroskyJapanStephen Shaw UNQUALIFIED
Deepesh H CampainFranceXuxue Feng NEGOTIATION
Wickens K WaycottIndiaOnyama Limba NEGOTIATION
Arvin B BowleyBrazilXuxue Feng NEW
Jones R FigeroaAustraliaXuxue Feng NEW
Isabel B NickaCanadaAsiya Javayant PROPOSAL
Costa H SaylorsBrazilAsiya Javayant RENEWAL
Antonio X PoquetteGermanyElwin Sharvill QUALIFIED
Isabel X DoeItalyIvan Magalhaes NEW
Isabel A RimArgentinaXuxue Feng NEW
Jeanfrancois A BologniaBrazilBernardo Dominic PROPOSAL
Maria R MorascaIndiaAsiya Javayant QUALIFIED
Arvin W SchemmerItalyIoni Bowcher PROPOSAL
Izzy Q NickaFranceAnna Fali UNQUALIFIED
Johnson N AlbaresCanadaIoni Bowcher UNQUALIFIED
Jones M MaletFranceIoni Bowcher QUALIFIED
Maria R WhobreyAustraliaIvan Magalhaes RENEWAL
Aditya W WhobreyAustraliaAsiya Javayant QUALIFIED
James A FollerJapanAmy Elsner PROPOSAL
Leja G CaldareraUnited KingdomBernardo Dominic QUALIFIED
Adams A TollnerSpainOnyama Limba QUALIFIED
Clifford N InouyeJapanAnna Fali RENEWAL
Kadeem Q CaudyAustraliaAmy Elsner NEGOTIATION
Stacey C MaletFranceAnna Fali RENEWAL
Chavez I ShinkoAustraliaBernardo Dominic UNQUALIFIED
Darci W PerinBrazilIvan Magalhaes NEGOTIATION
Clifford K WhobreyJapanOnyama Limba NEW
Claire Z VocelkaIndiaAnna Fali RENEWAL
Jennifer A InouyeAustraliaAsiya Javayant QUALIFIED
Ivar D WieserCanadaIvan Magalhaes NEW
Aditya E DarakjySpainIoni Bowcher RENEWAL
Leon Y GlickBrazilAmy Elsner NEGOTIATION

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