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
Kaitlin A MaletUnited KingdomAsiya Javayant NEGOTIATION
Rodrigues U OstroskyIndiaIvan Magalhaes QUALIFIED
Wickens O CampainUnited KingdomAmy Elsner RENEWAL
Arvin X CaldareraJapanIvan Magalhaes PROPOSAL
Jeanfrancois C BologniaItalyBernardo Dominic PROPOSAL
Izzy I AmigonCanadaElwin Sharvill QUALIFIED
Deepesh N KolmetzAustraliaAsiya Javayant NEW
Kadeem J RoysterFranceElwin Sharvill QUALIFIED
Darci C StensethSpainIvan Magalhaes RENEWAL
Stacey M FerenczAustraliaElwin Sharvill QUALIFIED
Alejandro R DarakjyAustraliaBernardo Dominic NEGOTIATION
Wickens K BologniaItalyIoni Bowcher QUALIFIED
Octavia J SchemmerGermanyAsiya Javayant PROPOSAL
Juan J FerenczCanadaAmy Elsner UNQUALIFIED
Cody K FollerIndiaAnna Fali UNQUALIFIED
Adams Y BowleyAustraliaAmy Elsner QUALIFIED
Jeanfrancois M TollnerCanadaOnyama Limba NEW
Kadeem C VenereItalyElwin Sharvill QUALIFIED
Julie P DilliardCanadaAsiya Javayant QUALIFIED
Deepesh J VenereAustraliaXuxue Feng QUALIFIED
Julie C PaprockiArgentinaIvan Magalhaes RENEWAL
Jones F RoysterAustraliaIvan Magalhaes NEW
Jeanfrancois O ChuiItalyBernardo Dominic QUALIFIED
David H RutaGermanyBernardo Dominic QUALIFIED
Johnson E OldroydItalyAmy Elsner UNQUALIFIED
Maisha D DilliardArgentinaBernardo Dominic RENEWAL
Leja G MaletArgentinaAnna Fali QUALIFIED
Jefferson V CaudyArgentinaIoni Bowcher PROPOSAL
Emily I KolmetzGermanyBernardo Dominic UNQUALIFIED
Rodrigues Y OstroskyItalyAmy Elsner NEW
Julie Z WhobreyJapanAnna Fali QUALIFIED
Kaitlin Z NickaJapanBernardo Dominic PROPOSAL
Nicolas L MaletJapanIoni Bowcher PROPOSAL
Mayumi O DoeUnited KingdomAsiya Javayant NEGOTIATION
Aruna H FerenczSpainElwin Sharvill NEW
Claire S StensethAustraliaStephen Shaw NEW
Alejandro K FlosiJapanAmy Elsner PROPOSAL
Leon P RimJapanIoni Bowcher NEGOTIATION
Aditya Y OstroskyRussiaIoni Bowcher RENEWAL
Tony V RulapaughJapanAnna Fali PROPOSAL
Sinclair R KuskoIndiaOnyama Limba QUALIFIED
Rodrigues Q MaletCanadaStephen Shaw NEW
Mujtaba H VenereCanadaOnyama Limba NEW
Arvin K RimBrazilAmy Elsner NEGOTIATION
Arvin I DilliardCanadaIvan Magalhaes PROPOSAL
Mujtaba I VenereItalyXuxue Feng QUALIFIED
Maria O BologniaArgentinaIoni Bowcher PROPOSAL
Juan W FerenczJapanIvan Magalhaes QUALIFIED
Sinclair O KolmetzUnited KingdomXuxue Feng NEGOTIATION
Salvatore B BowleyGermanyIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Kaitlin R MaletUnited KingdomBernardo Dominic UNQUALIFIED
Antonio K BriddickSpainAnna Fali NEW
Julie H RimUnited KingdomAsiya Javayant PROPOSAL
Ricardo R MaletItalyElwin Sharvill QUALIFIED
Mayumi Q SlusarskiUnited KingdomAnna Fali NEW
Antonio R VocelkaAustraliaAmy Elsner PROPOSAL
Tony E RoysterGermanyAnna Fali UNQUALIFIED
Mujtaba L SchemmerFranceAnna Fali NEW
Chavez C RutaSpainOnyama Limba PROPOSAL
Antonio D BologniaJapanAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James N StensethRussia2024-05-28Truhlar And Truhlar Attys QUALIFIED70Ioni Bowcher
1001Mujtaba C MaletUnited Kingdom2024-05-13Feltz Printing Service QUALIFIED44Ivan Magalhaes
1002Murillo E SlusarskiUnited Kingdom2024-04-29Benton, John B Jr RENEWAL8Elwin Sharvill
1003Adams U DarakjyUnited Kingdom2024-05-16Rangoni Of Florence QUALIFIED64Amy Elsner
1004Mujtaba A OstroskyJapan2024-05-24Benton, John B Jr UNQUALIFIED48Elwin Sharvill
1005Sinclair R RutaItaly2024-05-01Printing Dimensions UNQUALIFIED36Bernardo Dominic
1006Stacey J AlbaresBrazil2024-05-09Printing Dimensions NEGOTIATION52Ioni Bowcher
1007Jennifer Q BowleyArgentina2024-05-24Commercial Press RENEWAL43Stephen Shaw
1008Jefferson D CampainBrazil2024-05-12Chanay, Jeffrey A Esq PROPOSAL80Bernardo Dominic
1009Tony L VenereJapan2024-05-05Morlong Associates NEW94Asiya Javayant
1010Adams N BologniaBrazil2024-05-18Feiner Bros NEGOTIATION40Xuxue Feng
1011David Y AmigonItaly2024-05-14Morlong Associates NEW55Bernardo Dominic
1012Jeanfrancois V ShinkoIndia2024-05-12Commercial Press UNQUALIFIED31Stephen Shaw
1013Francesco O RulapaughGermany2024-05-15Truhlar And Truhlar Attys NEW91Elwin Sharvill
1014Cody Z CaudyCanada2024-05-23Feltz Printing Service NEW5Xuxue Feng
1015Cody V PoquetteIndia2024-05-12Buckley Miller Wright NEW33Amy Elsner
1016Claire B SergiIndia2024-05-09Rangoni Of Florence NEW59Amy Elsner
1017Smith O BologniaIndia2024-05-28King, Christopher A Esq RENEWAL9Amy Elsner
1018Adams J StockhamSpain2024-05-23Feltz Printing Service PROPOSAL43Xuxue Feng
1019James T SaylorsJapan2024-04-29Morlong Associates NEW3Ivan Magalhaes
1020Smith Y SlusarskiFrance2024-04-30Truhlar And Truhlar Attys QUALIFIED67Anna Fali
1021Julie Z NestleRussia2024-05-27Rousseaux, Michael Esq RENEWAL5Ioni Bowcher
1022Izzy Z FlosiIndia2024-05-21Rangoni Of Florence UNQUALIFIED32Stephen Shaw
1023Murillo P PerinJapan2024-05-02Benton, John B Jr NEW20Elwin Sharvill
1024Jeanfrancois Q PaprockiAustralia2024-05-06Dorl, James J Esq QUALIFIED69Ivan Magalhaes
1025Isabel V GarufiArgentina2024-05-12Printing Dimensions QUALIFIED87Asiya Javayant
1026Julie V KolmetzBrazil2024-05-05Commercial Press RENEWAL38Elwin Sharvill
1027Francesco B ChuiArgentina2024-05-25Truhlar And Truhlar Attys UNQUALIFIED48Bernardo Dominic
1028Jeanfrancois F CaudyUnited Kingdom2024-05-02Buckley Miller Wright NEW65Xuxue Feng
1029Aruna T OldroydItaly2024-05-03Printing Dimensions UNQUALIFIED67Asiya Javayant
1030Alejandro I BriddickItaly2024-05-03Rangoni Of Florence UNQUALIFIED3Xuxue Feng
1031Stacey Z MorascaBrazil2024-05-13Benton, John B Jr NEGOTIATION50Asiya Javayant
1032Octavia P WieserGermany2024-05-12Benton, John B Jr UNQUALIFIED93Xuxue Feng
1033Stacey D BowleyArgentina2024-05-22Rousseaux, Michael Esq UNQUALIFIED83Stephen Shaw
1034Juan Q NestleIndia2024-05-12Commercial Press NEW29Ivan Magalhaes
1035James Q GarufiUnited Kingdom2024-05-28Printing Dimensions RENEWAL20Ivan Magalhaes
1036Ashley M BowleyRussia2024-05-10Benton, John B Jr UNQUALIFIED33Xuxue Feng
1037Misaki A NestleIndia2024-05-19Feltz Printing Service NEW37Ivan Magalhaes
1038Leja R GarufiAustralia2024-05-28Chemel, James L Cpa QUALIFIED65Ioni Bowcher
1039Smith S RoysterCanada2024-05-24Dorl, James J Esq RENEWAL83Stephen Shaw
1040Antonio N SaylorsUnited Kingdom2024-05-04Printing Dimensions PROPOSAL23Onyama Limba
1041Claire R StockhamBrazil2024-05-20Rousseaux, Michael Esq RENEWAL80Ioni Bowcher
1042Emily B GlickRussia2024-05-05Rangoni Of Florence NEGOTIATION81Xuxue Feng
1043Salvatore P CaldareraSpain2024-05-28Morlong Associates UNQUALIFIED69Elwin Sharvill
1044Jefferson F OstroskyIndia2024-05-28King, Christopher A Esq NEGOTIATION16Ioni Bowcher
1045Smith X GarufiIndia2024-05-13Truhlar And Truhlar Attys QUALIFIED12Ivan Magalhaes
1046Maisha M BriddickItaly2024-05-01Rousseaux, Michael Esq NEW64Asiya Javayant
1047Aditya D CampainUnited Kingdom2024-04-29Feltz Printing Service RENEWAL92Bernardo Dominic
1048Juan P PaprockiAustralia2024-04-30Truhlar And Truhlar Attys RENEWAL60Onyama Limba
1049Wickens Z InouyeSpain2024-05-07Commercial Press UNQUALIFIED94Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Wickens W ShinkoRussiaAsiya Javayant QUALIFIED
Francesco M OldroydBrazilAnna Fali NEW
Mayumi K DoeRussiaIoni Bowcher PROPOSAL
Octavia U VocelkaCanadaXuxue Feng QUALIFIED
Maisha Q FerenczBrazilIvan Magalhaes UNQUALIFIED
Clifford D InouyeCanadaElwin Sharvill QUALIFIED
Murillo O InouyeRussiaAsiya Javayant QUALIFIED
Julie G WaycottJapanIoni Bowcher NEGOTIATION
Rodrigues G BowleyJapanIvan Magalhaes NEW
Wickens M PaprockiFranceAmy Elsner NEW
David E BriddickItalyXuxue Feng UNQUALIFIED
Julie G OldroydCanadaBernardo Dominic NEGOTIATION
Jeanfrancois R TollnerCanadaAsiya Javayant RENEWAL
Maisha N ChuiCanadaIvan Magalhaes UNQUALIFIED
Tony F SchemmerRussiaElwin Sharvill NEW
Alejandro P VenereItalyAsiya Javayant UNQUALIFIED
Kaitlin B GarufiJapanAsiya Javayant NEW
Juan Z OstroskyItalyXuxue Feng UNQUALIFIED
Deepesh Z MaletAustraliaOnyama Limba NEGOTIATION
Cody F FlosiCanadaAsiya Javayant UNQUALIFIED
Adams L CampainArgentinaOnyama Limba NEW
Nicolas D SergiItalyIoni Bowcher NEW
Misaki I MorascaSpainElwin Sharvill PROPOSAL
Adams L GarufiArgentinaIvan Magalhaes NEGOTIATION
Sinclair Z GarufiCanadaAnna Fali NEW
Sinclair E FlosiFranceXuxue Feng PROPOSAL
Ricardo V KolmetzFranceStephen Shaw RENEWAL
Murillo Z RutaUnited KingdomBernardo Dominic NEW
Deepesh Q MaletAustraliaIvan Magalhaes NEGOTIATION
Claire H RulapaughAustraliaAnna Fali QUALIFIED
Sinclair Y SaylorsJapanIvan Magalhaes RENEWAL
Francesco A RoysterJapanBernardo Dominic RENEWAL
Mujtaba S MaletGermanyElwin Sharvill UNQUALIFIED
Tony W ChuiGermanyXuxue Feng QUALIFIED
Tony M DarakjyGermanyXuxue Feng NEW
Octavia L BriddickArgentinaStephen Shaw UNQUALIFIED
James Y StockhamBrazilStephen Shaw NEGOTIATION
Silvio N MorascaAustraliaXuxue Feng PROPOSAL
Silvio J GillianBrazilElwin Sharvill QUALIFIED
Jones W SaylorsSpainAnna Fali RENEWAL
Tony K NickaItalyBernardo Dominic QUALIFIED
Jeanfrancois C FollerUnited KingdomStephen Shaw NEW
Deepesh K GlickAustraliaAsiya Javayant NEGOTIATION
Rodrigues Y MaletAustraliaBernardo Dominic RENEWAL
Julie T ShinkoRussiaOnyama Limba NEGOTIATION
Costa I AmigonUnited KingdomOnyama Limba NEGOTIATION
Morrow Q RimGermanyIvan Magalhaes RENEWAL
Jennifer V RimJapanStephen Shaw PROPOSAL
Munro I ShinkoCanadaElwin Sharvill NEGOTIATION
Faith E InouyeUnited KingdomElwin Sharvill PROPOSAL
Frozen Columns
Name
Darci L Flosi
Morrow F Sergi
Rodrigues A Malet
Chavez F Inouye
David W Morasca
Nicolas N Malet
Claire M Shinko
Munro J Ruta
Tony O Inouye
Mayumi G Caldarera
Jennifer F Rulapaugh
Cody X Tollner
Silvio C Whobrey
Rodrigues R Perin
Adams N Glick
Octavia V Iturbide
Tony G Chui
Julie O Doe
Johnson W Tollner
Smith I Campain
Mayumi L Figeroa
Mujtaba U Foller
Munro P Wieser
Claire G Paprocki
Wickens W Campain
Faith H Venere
Deepesh C Tollner
Salvatore A Albares
Johnson X Malet
Arvin U Briddick
Nicolas G Iturbide
David O Briddick
Faith L Ferencz
Silvio D Tollner
Smith A Foller
Kadeem I Whobrey
Ricardo R Venere
Deepesh A Slusarski
Silvio Z Paprocki
James T Darakjy
James C Albares
Silvio G Foller
Ivar W Paprocki
Ashley Y Marrier
Leja U Royster
Aika F Inouye
Faith K Royster
Darci E Butt
Antonio A Inouye
Aditya O Stockham
IdCountryDate
1000Spain2024-05-15
1001Australia2024-05-28
1002Japan2024-05-14
1003Japan2024-05-11
1004Japan2024-05-07
1005Brazil2024-05-02
1006Argentina2024-04-29
1007Brazil2024-05-02
1008Japan2024-05-25
1009Italy2024-05-07
1010Germany2024-05-27
1011Argentina2024-05-27
1012Spain2024-05-19
1013France2024-05-16
1014Japan2024-05-10
1015Russia2024-04-30
1016Italy2024-05-20
1017India2024-05-08
1018Argentina2024-05-10
1019France2024-05-15
1020Australia2024-05-08
1021India2024-05-27
1022Russia2024-05-10
1023Spain2024-05-21
1024Russia2024-05-19
1025Spain2024-05-15
1026Brazil2024-05-03
1027Russia2024-05-19
1028Canada2024-05-11
1029Spain2024-05-18
1030Japan2024-05-08
1031United Kingdom2024-04-30
1032United Kingdom2024-05-26
1033Germany2024-05-26
1034Russia2024-04-29
1035Canada2024-05-08
1036Italy2024-05-06
1037United Kingdom2024-04-30
1038Brazil2024-05-05
1039India2024-05-11
1040India2024-05-12
1041Brazil2024-05-06
1042United Kingdom2024-05-05
1043Australia2024-05-04
1044United Kingdom2024-05-25
1045Russia2024-05-14
1046Argentina2024-05-11
1047France2024-05-14
1048Australia2024-04-29
1049Germany2024-05-15

On-Demand Data

NameIdCountryDate
Nicolas S Amigon1000India2024-05-18
Stacey Z Garufi1001France2024-05-17
Kaitlin H Shinko1002Brazil2024-05-24
Jennifer W Morasca1003India2024-05-28
Tony J Paprocki1004United Kingdom2024-05-05
Julie A Albares1005India2024-05-03
Deepesh H Ostrosky1006Japan2024-05-15
Jones Q Amigon1007United Kingdom2024-05-26
Jennifer P Amigon1008Australia2024-05-14
Jennifer V Gillian1009Italy2024-05-10
Munro S Malet1010Italy2024-05-03
Chavez G Rulapaugh1011Japan2024-04-29
Emily Q Kolmetz1012Germany2024-05-23
Stacey R Vocelka1013Italy2024-04-30
Octavia T Maclead1014Germany2024-05-20
Johnson Z Campain1015Russia2024-05-04
Ashley I Ruta1016India2024-05-04
Jeanfrancois D Rulapaugh1017Italy2024-05-08
Izzy L Rulapaugh1018Canada2024-05-20
Julie S Perin1019Argentina2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa R TollnerArgentinaIoni Bowcher QUALIFIED
Clifford H FerenczJapanAnna Fali NEGOTIATION
Alejandro F KuskoJapanBernardo Dominic RENEWAL
Julie A PoquetteIndiaAnna Fali NEW
Mujtaba D PerinRussiaIoni Bowcher QUALIFIED
Munro A WaycottAustraliaBernardo Dominic RENEWAL
Sinclair H SlusarskiBrazilAsiya Javayant UNQUALIFIED
Murillo N OldroydAustraliaAnna Fali NEW
Kadeem S MorascaItalyAmy Elsner NEW
Ivar Y SchemmerAustraliaBernardo Dominic PROPOSAL
Misaki Z DoeSpainIoni Bowcher UNQUALIFIED
Maisha J ButtAustraliaAmy Elsner RENEWAL
Deepesh Y AlbaresIndiaAmy Elsner PROPOSAL
Ashley S RoysterUnited KingdomOnyama Limba QUALIFIED
Smith S DoeItalyAsiya Javayant QUALIFIED
Arvin Z MorascaJapanIvan Magalhaes UNQUALIFIED
Murillo Q FigeroaGermanyBernardo Dominic RENEWAL
Emily K AmigonCanadaIvan Magalhaes RENEWAL
Faith T RulapaughArgentinaIoni Bowcher NEW
Aruna Y WieserArgentinaIoni Bowcher NEGOTIATION
Ricardo V OldroydArgentinaXuxue Feng NEW
Smith Y GillianBrazilStephen Shaw QUALIFIED
Izzy V InouyeAustraliaIvan Magalhaes NEW
Isabel E BriddickBrazilIvan Magalhaes UNQUALIFIED
Kaitlin I FollerSpainXuxue Feng QUALIFIED
Deepesh Z CampainFranceXuxue Feng RENEWAL
Leja Q PerinCanadaOnyama Limba NEGOTIATION
Smith E ChuiCanadaXuxue Feng PROPOSAL
Aruna M PaprockiSpainAmy Elsner NEW
Leja S PerinBrazilAsiya Javayant NEGOTIATION
Ricardo V CaldareraSpainStephen Shaw NEGOTIATION
Adams I GillianFranceXuxue Feng QUALIFIED
Emily Q SlusarskiItalyBernardo Dominic NEW
Jones F MarrierItalyXuxue Feng QUALIFIED
Julie G MaletRussiaIvan Magalhaes NEGOTIATION
Izzy V GlickUnited KingdomAmy Elsner NEW
Misaki D GauchoAustraliaIoni Bowcher NEGOTIATION
Mujtaba T RimSpainStephen Shaw QUALIFIED
Murillo X CaldareraUnited KingdomAmy Elsner UNQUALIFIED
Mayumi N OstroskyItalyAnna Fali 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>