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
Silvio R FigeroaIndiaBernardo Dominic PROPOSAL
Silvio K RimCanadaElwin Sharvill NEW
Greenwood G GarufiArgentinaBernardo Dominic RENEWAL
Sinclair J MarrierBrazilOnyama Limba PROPOSAL
Julie L DarakjyIndiaOnyama Limba PROPOSAL
Chavez G DoeFranceStephen Shaw UNQUALIFIED
Leja Y WhobreySpainIoni Bowcher PROPOSAL
Arvin J NestleUnited KingdomElwin Sharvill NEGOTIATION
David W GauchoItalyElwin Sharvill NEW
Aika I BologniaIndiaBernardo Dominic PROPOSAL
Mujtaba H GarufiAustraliaOnyama Limba QUALIFIED
Jefferson C MaletCanadaStephen Shaw RENEWAL
Antonio A RoysterJapanAsiya Javayant NEW
Maria W GlickBrazilXuxue Feng PROPOSAL
Salvatore H GarufiGermanyAsiya Javayant UNQUALIFIED
Aditya D InouyeJapanBernardo Dominic QUALIFIED
Adams X StensethGermanyXuxue Feng NEGOTIATION
Jeanfrancois N DilliardAustraliaStephen Shaw NEW
Ricardo F InouyeGermanyElwin Sharvill NEW
Adams N MarrierRussiaStephen Shaw QUALIFIED
Maria J FlosiFranceIoni Bowcher PROPOSAL
Ashley V MaletBrazilOnyama Limba RENEWAL
Emily O ShinkoGermanyAnna Fali NEGOTIATION
Mujtaba B AlbaresItalyAsiya Javayant QUALIFIED
Kaitlin N RimUnited KingdomIvan Magalhaes QUALIFIED
Aika R NickaCanadaStephen Shaw RENEWAL
Smith R GillianCanadaBernardo Dominic RENEWAL
Emily G CampainArgentinaAmy Elsner NEW
Darci U KuskoGermanyStephen Shaw QUALIFIED
David N GlickFranceAnna Fali QUALIFIED
Aruna N BriddickUnited KingdomBernardo Dominic NEW
Emily H PaprockiArgentinaAmy Elsner UNQUALIFIED
Chavez J StockhamUnited KingdomIvan Magalhaes NEW
Ashley Y RoysterArgentinaAnna Fali RENEWAL
Mujtaba D MorascaCanadaIoni Bowcher NEW
Deepesh W CampainFranceIvan Magalhaes PROPOSAL
Wickens A NestleIndiaAsiya Javayant NEW
Kadeem I ButtSpainIvan Magalhaes NEW
Cody Y MaletIndiaAsiya Javayant NEW
Octavia K GarufiFranceIvan Magalhaes NEW
Julie U StensethFranceBernardo Dominic PROPOSAL
Johnson V MaletItalyOnyama Limba NEGOTIATION
Jeanfrancois N RimBrazilAnna Fali PROPOSAL
Kadeem R NestleUnited KingdomElwin Sharvill NEW
Adams X BologniaBrazilIoni Bowcher PROPOSAL
Darci U CaldareraItalyBernardo Dominic NEW
Isabel S CaldareraCanadaBernardo Dominic UNQUALIFIED
Ivar S RutaJapanOnyama Limba RENEWAL
Maria Z CampainUnited KingdomAmy Elsner QUALIFIED
Aruna Z BologniaBrazilIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria V MaletFranceIoni Bowcher NEW
Wickens Z IturbideRussiaBernardo Dominic NEW
Aditya M RoysterCanadaAnna Fali UNQUALIFIED
Kaitlin M TollnerFranceElwin Sharvill PROPOSAL
David Q PerinBrazilStephen Shaw NEGOTIATION
Leon X DoeCanadaIvan Magalhaes PROPOSAL
Julie I GlickItalyIoni Bowcher RENEWAL
Ricardo W MacleadArgentinaStephen Shaw RENEWAL
Clifford N PerinUnited KingdomStephen Shaw UNQUALIFIED
Adams W CampainIndiaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore F VenereUnited Kingdom2024-05-25Truhlar And Truhlar Attys RENEWAL10Stephen Shaw
1001Aika P FerenczItaly2024-06-14Morlong Associates UNQUALIFIED17Ioni Bowcher
1002Jefferson X GillianIndia2024-06-19Feiner Bros UNQUALIFIED43Amy Elsner
1003Mayumi T GauchoRussia2024-06-02Morlong Associates RENEWAL5Asiya Javayant
1004Jennifer A ShinkoCanada2024-06-01Rousseaux, Michael Esq QUALIFIED72Anna Fali
1005Izzy A KolmetzAustralia2024-05-26Rangoni Of Florence RENEWAL16Asiya Javayant
1006David J GlickUnited Kingdom2024-06-06King, Christopher A Esq UNQUALIFIED72Stephen Shaw
1007Octavia X SlusarskiIndia2024-06-07Feltz Printing Service QUALIFIED94Asiya Javayant
1008Chavez U FollerArgentina2024-06-01Rousseaux, Michael Esq NEGOTIATION70Asiya Javayant
1009Munro B IturbideIndia2024-05-25Morlong Associates UNQUALIFIED95Asiya Javayant
1010Faith O RutaItaly2024-06-17Commercial Press PROPOSAL71Ioni Bowcher
1011Kadeem S KolmetzCanada2024-06-18Rangoni Of Florence NEGOTIATION26Onyama Limba
1012Murillo G GlickUnited Kingdom2024-05-31Dorl, James J Esq NEW60Elwin Sharvill
1013Costa A GlickFrance2024-05-26Chanay, Jeffrey A Esq NEW7Bernardo Dominic
1014Maria G ChuiCanada2024-06-04Chapman, Ross E Esq RENEWAL11Asiya Javayant
1015Sinclair L OstroskyFrance2024-06-12Truhlar And Truhlar Attys NEGOTIATION48Anna Fali
1016Costa Z GlickBrazil2024-06-09Chanay, Jeffrey A Esq QUALIFIED57Anna Fali
1017Smith I WhobreyUnited Kingdom2024-06-02Printing Dimensions PROPOSAL88Anna Fali
1018Chavez J MacleadFrance2024-06-18Chemel, James L Cpa RENEWAL30Bernardo Dominic
1019Isabel B IturbideArgentina2024-06-20Buckley Miller Wright RENEWAL24Asiya Javayant
1020Jeanfrancois Q BowleyIndia2024-05-28Buckley Miller Wright RENEWAL4Xuxue Feng
1021Adams J MaletFrance2024-06-06Chemel, James L Cpa RENEWAL88Anna Fali
1022Rodrigues D VocelkaArgentina2024-06-19Dorl, James J Esq QUALIFIED3Xuxue Feng
1023Kaitlin J MaletAustralia2024-06-13Chanay, Jeffrey A Esq RENEWAL89Xuxue Feng
1024Salvatore A MacleadGermany2024-06-01Truhlar And Truhlar Attys QUALIFIED85Amy Elsner
1025Clifford P MaletRussia2024-06-10Feltz Printing Service UNQUALIFIED85Amy Elsner
1026David X InouyeJapan2024-06-15Morlong Associates PROPOSAL15Ivan Magalhaes
1027James N DoeBrazil2024-05-29Rousseaux, Michael Esq UNQUALIFIED97Asiya Javayant
1028Mujtaba P MorascaGermany2024-05-27Rousseaux, Michael Esq UNQUALIFIED72Anna Fali
1029Clifford Z NestleIndia2024-05-31Feiner Bros NEGOTIATION99Asiya Javayant
1030Jones P TollnerArgentina2024-06-01Feiner Bros UNQUALIFIED42Ivan Magalhaes
1031Ashley O MorascaJapan2024-06-09Rousseaux, Michael Esq UNQUALIFIED65Anna Fali
1032Isabel Y VocelkaCanada2024-06-17Printing Dimensions QUALIFIED3Ioni Bowcher
1033Octavia P DilliardAustralia2024-06-02Rangoni Of Florence RENEWAL47Xuxue Feng
1034Arvin H AlbaresAustralia2024-06-03Dorl, James J Esq QUALIFIED2Amy Elsner
1035Isabel X IturbideUnited Kingdom2024-06-05Commercial Press NEGOTIATION93Xuxue Feng
1036David F NickaIndia2024-06-01Buckley Miller Wright RENEWAL26Ivan Magalhaes
1037Mujtaba H RoysterBrazil2024-06-20Feiner Bros NEW80Ivan Magalhaes
1038Chavez K SchemmerIndia2024-06-13Chanay, Jeffrey A Esq QUALIFIED45Xuxue Feng
1039Ashley Q WieserJapan2024-05-25Chemel, James L Cpa NEGOTIATION56Ioni Bowcher
1040Deepesh S RutaJapan2024-06-06Truhlar And Truhlar Attys UNQUALIFIED19Amy Elsner
1041Nicolas D RutaBrazil2024-05-27Dorl, James J Esq PROPOSAL70Anna Fali
1042Smith G PaprockiAustralia2024-06-10Feiner Bros NEW96Onyama Limba
1043Silvio B MarrierGermany2024-05-26Feltz Printing Service NEW65Elwin Sharvill
1044Greenwood I AlbaresItaly2024-06-13Dorl, James J Esq UNQUALIFIED46Anna Fali
1045Tony L IturbideIndia2024-06-05Chemel, James L Cpa RENEWAL57Asiya Javayant
1046Mujtaba W SlusarskiUnited Kingdom2024-05-28Chapman, Ross E Esq NEW11Asiya Javayant
1047Chavez S CaldareraArgentina2024-06-15Dorl, James J Esq QUALIFIED55Ivan Magalhaes
1048Isabel J ShinkoItaly2024-06-19Benton, John B Jr PROPOSAL83Ioni Bowcher
1049Faith F MorascaItaly2024-06-09Chapman, Ross E Esq PROPOSAL72Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Munro S RoysterSpainAnna Fali NEW
Costa Z WaycottIndiaBernardo Dominic NEGOTIATION
Kadeem P SaylorsJapanAnna Fali UNQUALIFIED
Kaitlin J OldroydUnited KingdomAmy Elsner QUALIFIED
Antonio F BologniaArgentinaAnna Fali QUALIFIED
Francesco M ShinkoJapanIvan Magalhaes NEGOTIATION
Stacey J ButtFranceAmy Elsner NEW
Misaki G GillianSpainIvan Magalhaes NEW
Francesco Z PerinFranceIvan Magalhaes NEW
Morrow Y VocelkaArgentinaAnna Fali QUALIFIED
Emily J GauchoUnited KingdomAsiya Javayant RENEWAL
Ivar U WaycottCanadaStephen Shaw PROPOSAL
Sinclair G PaprockiArgentinaBernardo Dominic QUALIFIED
Ashley S BriddickJapanAnna Fali RENEWAL
Clifford Z RulapaughGermanyAmy Elsner NEW
David G GlickFranceAsiya Javayant RENEWAL
Salvatore Y WieserUnited KingdomIoni Bowcher PROPOSAL
Silvio U MacleadArgentinaAsiya Javayant NEGOTIATION
Leja Z DilliardCanadaAnna Fali NEW
Julie L GarufiSpainOnyama Limba NEW
Aditya C BologniaArgentinaOnyama Limba QUALIFIED
Alejandro H DoeSpainAnna Fali PROPOSAL
Greenwood I VenereIndiaAnna Fali QUALIFIED
Julie N BriddickBrazilElwin Sharvill RENEWAL
Faith U ShinkoArgentinaOnyama Limba NEW
Francesco S VenereUnited KingdomAsiya Javayant RENEWAL
Leja A StockhamRussiaAmy Elsner NEW
Nicolas R InouyeFranceBernardo Dominic QUALIFIED
Deepesh Q AmigonAustraliaOnyama Limba NEW
Cody Q FerenczFranceAnna Fali NEGOTIATION
Kaitlin W CaldareraBrazilAnna Fali NEW
Greenwood W StensethRussiaAsiya Javayant PROPOSAL
Francesco I BriddickUnited KingdomStephen Shaw QUALIFIED
Aditya S MorascaRussiaStephen Shaw PROPOSAL
Faith P VenereArgentinaOnyama Limba NEGOTIATION
Jeanfrancois A CaudyCanadaXuxue Feng PROPOSAL
Munro A VenereCanadaStephen Shaw NEGOTIATION
Johnson D CaldareraArgentinaAmy Elsner QUALIFIED
Stacey N VocelkaCanadaElwin Sharvill UNQUALIFIED
Costa Q DoeFranceStephen Shaw PROPOSAL
Maisha R GarufiUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood B RulapaughRussiaIvan Magalhaes NEGOTIATION
James E FollerSpainIoni Bowcher PROPOSAL
Leon X RimIndiaAsiya Javayant UNQUALIFIED
Costa U GauchoJapanIoni Bowcher NEW
Faith G FerenczArgentinaStephen Shaw QUALIFIED
Stacey L PaprockiRussiaStephen Shaw PROPOSAL
Juan L StockhamJapanBernardo Dominic NEGOTIATION
Alejandro X KuskoGermanyIoni Bowcher NEGOTIATION
Aditya R WieserIndiaAnna Fali RENEWAL
Frozen Columns
Name
Antonio H Inouye
Darci F Butt
Kadeem Y Maclead
Leon L Foller
Kaitlin S Royster
Chavez V Saylors
Chavez M Poquette
Silvio W Gaucho
Kadeem U Bowley
Tony C Ostrosky
Salvatore Y Venere
Wickens X Campain
Jennifer Y Gaucho
Nicolas F Whobrey
Sinclair P Foller
Sinclair G Gaucho
Ivar N Stenseth
Nicolas U Stenseth
Ricardo G Glick
Leon S Butt
Johnson C Royster
Clifford N Perin
Costa B Briddick
Francesco M Vocelka
David E Sergi
Tony F Stenseth
Smith Z Butt
Munro R Darakjy
Cody K Kusko
Chavez R Chui
Adams O Perin
Salvatore S Paprocki
Izzy D Ruta
Wickens S Shinko
Alejandro V Briddick
Izzy T Ferencz
Ivar I Kusko
Nicolas X Inouye
Clifford M Sergi
Ashley U Tollner
Deepesh W Caudy
Jeanfrancois W Doe
Aditya S Kolmetz
Faith O Gillian
Emily S Shinko
Murillo P Gillian
Morrow O Gaucho
Deepesh C Sergi
Arvin F Royster
Misaki D Inouye
IdCountryDate
1000India2024-06-06
1001Spain2024-06-19
1002Russia2024-06-17
1003Canada2024-06-03
1004Argentina2024-05-29
1005Canada2024-06-20
1006France2024-05-28
1007Brazil2024-06-02
1008India2024-05-23
1009Japan2024-06-20
1010United Kingdom2024-06-06
1011Russia2024-05-27
1012India2024-06-05
1013Australia2024-06-09
1014France2024-06-12
1015Italy2024-05-27
1016United Kingdom2024-06-09
1017France2024-06-04
1018Australia2024-06-07
1019Spain2024-06-01
1020Canada2024-06-17
1021Italy2024-06-10
1022Argentina2024-06-11
1023Russia2024-05-26
1024Canada2024-06-15
1025United Kingdom2024-06-20
1026Australia2024-05-29
1027Germany2024-06-05
1028Russia2024-06-21
1029Canada2024-06-03
1030United Kingdom2024-06-11
1031Japan2024-06-04
1032Argentina2024-05-30
1033India2024-06-09
1034United Kingdom2024-06-21
1035France2024-05-25
1036France2024-06-03
1037Japan2024-06-11
1038Spain2024-05-27
1039India2024-06-06
1040Russia2024-05-24
1041Brazil2024-06-14
1042Italy2024-06-03
1043Argentina2024-05-29
1044Canada2024-05-26
1045Japan2024-06-17
1046Spain2024-06-02
1047Spain2024-05-29
1048Canada2024-06-09
1049Japan2024-06-17

On-Demand Data

NameIdCountryDate
Jeanfrancois T Bowley1000Brazil2024-06-15
Arvin A Maclead1001Canada2024-06-10
Octavia X Maclead1002India2024-05-26
Izzy Z Darakjy1003India2024-05-30
Emily B Whobrey1004Australia2024-05-27
Aruna J Sergi1005United Kingdom2024-06-20
Jennifer R Sergi1006Argentina2024-06-17
Rodrigues C Foller1007Spain2024-06-16
Stacey L Waycott1008Germany2024-06-14
Cody B Glick1009Spain2024-05-27
David I Dilliard1010Spain2024-06-08
Kadeem Z Shinko1011Canada2024-06-21
Aika C Paprocki1012Germany2024-05-25
Clifford N Kolmetz1013Brazil2024-06-04
Rodrigues A Ferencz1014Australia2024-05-27
Leon L Schemmer1015Argentina2024-06-16
Arvin E Stenseth1016France2024-06-09
Costa P Stenseth1017Italy2024-05-25
Nicolas H Tollner1018Japan2024-05-24
Arvin Z Whobrey1019Japan2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith E SlusarskiJapanIvan Magalhaes UNQUALIFIED
David R OstroskyArgentinaAmy Elsner RENEWAL
Darci W OldroydItalyIoni Bowcher UNQUALIFIED
Leja G SchemmerUnited KingdomAnna Fali NEGOTIATION
James W WieserCanadaStephen Shaw NEW
Morrow M GarufiRussiaBernardo Dominic NEW
Maria C WieserBrazilIvan Magalhaes PROPOSAL
James M KolmetzAustraliaAmy Elsner PROPOSAL
Mayumi U NestleFranceOnyama Limba QUALIFIED
Aika D OstroskyIndiaAmy Elsner PROPOSAL
Octavia X MaletUnited KingdomIvan Magalhaes QUALIFIED
Aditya A KolmetzBrazilXuxue Feng QUALIFIED
Ivar H GlickFranceXuxue Feng UNQUALIFIED
David S KuskoIndiaOnyama Limba UNQUALIFIED
Murillo L ButtGermanyIvan Magalhaes NEW
Aditya L GarufiCanadaAsiya Javayant PROPOSAL
Adams J CaudyGermanyAnna Fali NEW
Munro W AmigonAustraliaOnyama Limba NEGOTIATION
Silvio D VenereAustraliaIoni Bowcher NEGOTIATION
Johnson I MaletJapanBernardo Dominic QUALIFIED
Salvatore H BriddickBrazilBernardo Dominic NEW
Aruna Q SlusarskiAustraliaIoni Bowcher NEGOTIATION
Ricardo R ButtArgentinaIoni Bowcher PROPOSAL
Mayumi N ButtItalyElwin Sharvill QUALIFIED
Isabel M FerenczCanadaStephen Shaw UNQUALIFIED
Kadeem B BowleyRussiaAmy Elsner NEW
Julie R TollnerAustraliaAsiya Javayant NEGOTIATION
Antonio Y StensethRussiaElwin Sharvill NEGOTIATION
Tony I DilliardCanadaIoni Bowcher UNQUALIFIED
Salvatore K NickaIndiaIoni Bowcher RENEWAL
Deepesh W RimGermanyAsiya Javayant RENEWAL
Octavia M InouyeItalyOnyama Limba NEGOTIATION
Ivar J WaycottBrazilBernardo Dominic NEW
Kadeem P KuskoIndiaStephen Shaw NEGOTIATION
Emily M StockhamSpainIoni Bowcher NEGOTIATION
Cody A ChuiGermanyAsiya Javayant UNQUALIFIED
Maisha L PaprockiAustraliaAmy Elsner PROPOSAL
Izzy C CaldareraUnited KingdomXuxue Feng RENEWAL
Kaitlin H BriddickIndiaAnna Fali NEW
Antonio I PerinUnited KingdomAmy Elsner 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>