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
Salvatore A IturbideItalyOnyama Limba NEW
Kaitlin V StensethJapanBernardo Dominic QUALIFIED
Faith V FerenczArgentinaOnyama Limba QUALIFIED
Sinclair I GarufiSpainOnyama Limba PROPOSAL
Alejandro L KuskoItalyAnna Fali UNQUALIFIED
Salvatore N KolmetzIndiaOnyama Limba QUALIFIED
Murillo C FerenczFranceAsiya Javayant NEW
Alejandro H PaprockiIndiaIoni Bowcher NEGOTIATION
Mujtaba S FerenczRussiaAsiya Javayant PROPOSAL
Mayumi A DilliardItalyIvan Magalhaes NEGOTIATION
Juan F KuskoBrazilOnyama Limba PROPOSAL
Jennifer P DilliardSpainIoni Bowcher QUALIFIED
Octavia S MacleadBrazilStephen Shaw UNQUALIFIED
Antonio P VenereUnited KingdomXuxue Feng NEW
Sinclair E CaldareraUnited KingdomAmy Elsner NEGOTIATION
Wickens K StensethBrazilStephen Shaw PROPOSAL
Jeanfrancois N GlickFranceBernardo Dominic PROPOSAL
Antonio P GarufiRussiaAsiya Javayant UNQUALIFIED
Silvio G AmigonItalyXuxue Feng RENEWAL
Stacey A MaletJapanIoni Bowcher NEW
Leja Z NestleSpainAsiya Javayant RENEWAL
Faith B MaletArgentinaXuxue Feng NEW
Greenwood H StensethRussiaOnyama Limba PROPOSAL
Mayumi Z MacleadBrazilAnna Fali PROPOSAL
Costa B MarrierFranceAnna Fali RENEWAL
Mayumi P MorascaJapanAsiya Javayant NEW
Kaitlin J PerinAustraliaXuxue Feng NEW
Kadeem O PoquetteGermanyIoni Bowcher NEW
Smith J RimArgentinaBernardo Dominic QUALIFIED
Izzy B WieserBrazilAmy Elsner RENEWAL
Tony Y MorascaItalyBernardo Dominic RENEWAL
Kadeem W BowleyArgentinaIoni Bowcher NEGOTIATION
Clifford U BowleyAustraliaAsiya Javayant UNQUALIFIED
Faith Z KolmetzBrazilOnyama Limba QUALIFIED
Aruna V MarrierRussiaAmy Elsner PROPOSAL
Arvin N NestleUnited KingdomXuxue Feng QUALIFIED
Jefferson Y GlickAustraliaIoni Bowcher NEGOTIATION
Alejandro Y WieserSpainElwin Sharvill RENEWAL
Isabel A RulapaughJapanIoni Bowcher NEGOTIATION
Emily D WieserSpainAmy Elsner RENEWAL
Smith M RutaIndiaAmy Elsner QUALIFIED
Kaitlin C ButtIndiaIoni Bowcher RENEWAL
Octavia S WaycottFranceAmy Elsner NEW
Johnson O RoysterArgentinaAnna Fali NEGOTIATION
Johnson A ButtRussiaIoni Bowcher NEGOTIATION
Francesco U PaprockiSpainIvan Magalhaes NEGOTIATION
Isabel I SchemmerCanadaIvan Magalhaes UNQUALIFIED
Jeanfrancois R ShinkoJapanXuxue Feng RENEWAL
Nicolas U KuskoFranceIoni Bowcher PROPOSAL
Arvin S StensethBrazilOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Murillo J OldroydSpainStephen Shaw RENEWAL
Leja O BowleyIndiaIoni Bowcher QUALIFIED
Aruna A SchemmerUnited KingdomOnyama Limba QUALIFIED
James S BowleyBrazilStephen Shaw NEGOTIATION
Johnson Z FigeroaFranceStephen Shaw QUALIFIED
Isabel E GauchoAustraliaAmy Elsner RENEWAL
Murillo C NickaRussiaAsiya Javayant QUALIFIED
Aditya Y DarakjySpainStephen Shaw PROPOSAL
David R OstroskyFranceAnna Fali PROPOSAL
Smith W SchemmerIndiaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio Q GarufiItaly2024-05-15Printing Dimensions RENEWAL68Ioni Bowcher
1001James T ChuiBrazil2024-04-26Buckley Miller Wright QUALIFIED76Anna Fali
1002Julie D AlbaresArgentina2024-04-26Buckley Miller Wright PROPOSAL33Anna Fali
1003Alejandro Z InouyeIndia2024-04-25Truhlar And Truhlar Attys UNQUALIFIED35Amy Elsner
1004Sinclair B WhobreyCanada2024-04-27Chemel, James L Cpa PROPOSAL30Stephen Shaw
1005Salvatore T AlbaresRussia2024-05-08Printing Dimensions PROPOSAL0Ioni Bowcher
1006Emily W FerenczFrance2024-05-20Morlong Associates NEW59Onyama Limba
1007Alejandro Z KuskoFrance2024-04-25Feiner Bros NEW31Onyama Limba
1008Smith H NestleCanada2024-04-29Truhlar And Truhlar Attys QUALIFIED18Stephen Shaw
1009Aika L WhobreyArgentina2024-04-26Truhlar And Truhlar Attys NEW25Xuxue Feng
1010Leja Y KuskoJapan2024-05-19Rangoni Of Florence NEW25Asiya Javayant
1011Clifford U FerenczArgentina2024-05-04Chanay, Jeffrey A Esq NEGOTIATION89Anna Fali
1012Costa L SlusarskiCanada2024-05-04Chapman, Ross E Esq NEGOTIATION71Asiya Javayant
1013Aditya I ShinkoItaly2024-05-06Buckley Miller Wright QUALIFIED45Anna Fali
1014David B GauchoSpain2024-05-24Feltz Printing Service PROPOSAL5Stephen Shaw
1015Munro F FollerRussia2024-05-14Printing Dimensions UNQUALIFIED0Ioni Bowcher
1016Jefferson W NickaItaly2024-04-27Chanay, Jeffrey A Esq NEW21Anna Fali
1017Izzy E RulapaughUnited Kingdom2024-05-24Truhlar And Truhlar Attys QUALIFIED22Amy Elsner
1018Munro A MacleadIndia2024-04-29Morlong Associates QUALIFIED65Elwin Sharvill
1019Maisha V PaprockiArgentina2024-05-11Feiner Bros QUALIFIED85Anna Fali
1020Faith Y GauchoGermany2024-04-28Chapman, Ross E Esq UNQUALIFIED99Anna Fali
1021Antonio W AlbaresAustralia2024-05-09Chanay, Jeffrey A Esq UNQUALIFIED83Ivan Magalhaes
1022Jefferson A KuskoJapan2024-04-27Benton, John B Jr NEW34Asiya Javayant
1023Johnson P CaldareraArgentina2024-05-14Chemel, James L Cpa NEGOTIATION97Elwin Sharvill
1024Alejandro N VocelkaCanada2024-05-19Rangoni Of Florence QUALIFIED26Ioni Bowcher
1025Izzy Y BologniaFrance2024-05-21Chemel, James L Cpa NEW92Bernardo Dominic
1026Jeanfrancois N GillianFrance2024-05-20Truhlar And Truhlar Attys UNQUALIFIED11Elwin Sharvill
1027Claire J MacleadUnited Kingdom2024-05-02Truhlar And Truhlar Attys NEGOTIATION26Xuxue Feng
1028Greenwood H GarufiSpain2024-05-20Commercial Press QUALIFIED76Amy Elsner
1029Nicolas Z CaldareraJapan2024-05-11Commercial Press RENEWAL19Bernardo Dominic
1030Aika U RutaUnited Kingdom2024-05-11Feltz Printing Service RENEWAL34Xuxue Feng
1031Julie P PerinUnited Kingdom2024-04-29Feiner Bros QUALIFIED85Ioni Bowcher
1032Deepesh B NestleFrance2024-05-04Feltz Printing Service RENEWAL41Amy Elsner
1033Maisha T MaletBrazil2024-05-09Dorl, James J Esq RENEWAL80Stephen Shaw
1034Mayumi E DilliardAustralia2024-05-16Truhlar And Truhlar Attys NEW20Ioni Bowcher
1035Murillo D GarufiGermany2024-05-21Rangoni Of Florence UNQUALIFIED8Xuxue Feng
1036Rodrigues L ShinkoIndia2024-05-22King, Christopher A Esq PROPOSAL0Amy Elsner
1037Wickens E BriddickBrazil2024-05-24Rangoni Of Florence NEGOTIATION14Xuxue Feng
1038Stacey D VenereItaly2024-04-26Truhlar And Truhlar Attys NEGOTIATION69Xuxue Feng
1039Silvio P AmigonCanada2024-05-13Rangoni Of Florence PROPOSAL1Xuxue Feng
1040Alejandro G GillianItaly2024-05-08Chemel, James L Cpa NEW67Elwin Sharvill
1041Juan J PaprockiArgentina2024-05-19Rangoni Of Florence RENEWAL86Bernardo Dominic
1042Clifford I PaprockiItaly2024-05-07Chemel, James L Cpa QUALIFIED2Ioni Bowcher
1043Jeanfrancois K FollerAustralia2024-05-14Rousseaux, Michael Esq PROPOSAL61Xuxue Feng
1044Silvio G DoeCanada2024-05-16Morlong Associates NEGOTIATION11Stephen Shaw
1045Cody W CaudyCanada2024-05-23Buckley Miller Wright PROPOSAL78Onyama Limba
1046Johnson E KolmetzFrance2024-05-17Dorl, James J Esq NEGOTIATION86Xuxue Feng
1047Jeanfrancois W GauchoCanada2024-05-18Printing Dimensions RENEWAL57Elwin Sharvill
1048Aditya Q OldroydFrance2024-05-14Chanay, Jeffrey A Esq RENEWAL36Anna Fali
1049Costa K SaylorsFrance2024-04-28King, Christopher A Esq PROPOSAL70Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Arvin K CampainUnited KingdomIoni Bowcher QUALIFIED
Nicolas Q FollerRussiaBernardo Dominic NEGOTIATION
Clifford M CaldareraSpainOnyama Limba NEGOTIATION
Johnson Z FerenczRussiaOnyama Limba QUALIFIED
Emily Q SchemmerItalyXuxue Feng RENEWAL
Costa Z GlickJapanAsiya Javayant NEGOTIATION
Aruna B CampainBrazilBernardo Dominic QUALIFIED
Maria G SergiCanadaIvan Magalhaes PROPOSAL
Jones T SaylorsUnited KingdomBernardo Dominic RENEWAL
Ashley I IturbideFranceAnna Fali NEW
Kadeem M TollnerCanadaIoni Bowcher RENEWAL
Aruna I FlosiGermanyAsiya Javayant NEW
Rodrigues C CaldareraSpainIoni Bowcher NEGOTIATION
Leja L PoquetteGermanyStephen Shaw RENEWAL
Octavia R MorascaAustraliaIoni Bowcher NEGOTIATION
Antonio H OldroydAustraliaXuxue Feng PROPOSAL
Ashley Q MorascaUnited KingdomAmy Elsner QUALIFIED
Wickens Z TollnerBrazilIoni Bowcher QUALIFIED
Alejandro Q GarufiAustraliaIoni Bowcher UNQUALIFIED
Tony H TollnerFranceIoni Bowcher RENEWAL
Ivar J FigeroaRussiaIoni Bowcher NEW
Ashley Z GillianGermanyStephen Shaw QUALIFIED
Aruna E CaldareraFranceOnyama Limba UNQUALIFIED
Johnson Y SlusarskiIndiaBernardo Dominic QUALIFIED
Mujtaba E ChuiFranceIoni Bowcher QUALIFIED
Isabel M FlosiGermanyBernardo Dominic NEW
Jennifer J NestleSpainAsiya Javayant NEW
Aruna A FollerJapanAsiya Javayant UNQUALIFIED
Faith G PerinUnited KingdomIvan Magalhaes UNQUALIFIED
Misaki Z FlosiUnited KingdomAmy Elsner PROPOSAL
Juan B VocelkaUnited KingdomAmy Elsner NEW
Emily T SlusarskiItalyIoni Bowcher PROPOSAL
Cody M GillianFranceIvan Magalhaes NEGOTIATION
Julie E ShinkoFranceAsiya Javayant RENEWAL
Adams O AmigonUnited KingdomXuxue Feng QUALIFIED
Rodrigues R GlickBrazilElwin Sharvill QUALIFIED
Ivar P StockhamArgentinaElwin Sharvill NEW
Rodrigues A DilliardSpainElwin Sharvill PROPOSAL
Rodrigues M WhobreyAustraliaIvan Magalhaes PROPOSAL
Kaitlin U MorascaJapanAmy Elsner RENEWAL
Leon M CaudyUnited KingdomBernardo Dominic QUALIFIED
Octavia E CampainUnited KingdomIoni Bowcher UNQUALIFIED
Antonio S OldroydBrazilIvan Magalhaes PROPOSAL
Faith V ShinkoUnited KingdomAsiya Javayant UNQUALIFIED
Morrow Y KuskoFranceBernardo Dominic PROPOSAL
Arvin M DarakjyItalyIoni Bowcher RENEWAL
David R FollerArgentinaOnyama Limba UNQUALIFIED
Mujtaba L OstroskyFranceAnna Fali PROPOSAL
Salvatore J RulapaughJapanAmy Elsner NEW
Jennifer B SlusarskiIndiaBernardo Dominic NEW
Frozen Columns
Name
Wickens B Perin
Misaki D Glick
Leja O Briddick
Isabel M Bolognia
Maria O Maclead
Smith U Stockham
Ashley R Paprocki
Deepesh F Figeroa
Kadeem N Slusarski
Faith D Garufi
Morrow V Vocelka
Mayumi O Glick
Clifford E Slusarski
Adams N Sergi
Johnson T Glick
Cody O Kolmetz
Arvin J Shinko
Francesco E Rulapaugh
Adams G Perin
Cody Q Tollner
Leon B Foller
Morrow L Whobrey
Julie V Ruta
Jeanfrancois P Rim
Emily P Ostrosky
Isabel U Darakjy
Aruna M Campain
Deepesh Z Paprocki
Rodrigues N Albares
Adams G Perin
Maria R Tollner
Izzy W Oldroyd
Deepesh A Amigon
Ashley Q Shinko
Morrow N Glick
Isabel R Paprocki
Maria Y Venere
Ashley W Iturbide
Murillo M Caldarera
Rodrigues R Poquette
Ivar F Kusko
Sinclair C Saylors
Izzy I Amigon
Octavia Q Maclead
James W Butt
Clifford O Doe
Aditya G Whobrey
Ashley B Stenseth
James B Malet
Claire F Ruta
IdCountryDate
1000United Kingdom2024-05-13
1001Spain2024-05-03
1002Australia2024-04-26
1003Japan2024-04-29
1004Brazil2024-04-28
1005Australia2024-05-16
1006Canada2024-05-17
1007Argentina2024-05-05
1008India2024-04-28
1009United Kingdom2024-05-02
1010Germany2024-05-06
1011Canada2024-05-17
1012Australia2024-05-07
1013Spain2024-05-10
1014Germany2024-05-10
1015Germany2024-05-01
1016Germany2024-05-04
1017Canada2024-05-04
1018Canada2024-05-18
1019France2024-05-06
1020France2024-05-12
1021Canada2024-04-29
1022Italy2024-04-27
1023Spain2024-05-24
1024Japan2024-04-28
1025Argentina2024-05-23
1026Canada2024-04-26
1027France2024-05-08
1028India2024-04-27
1029Russia2024-05-02
1030Australia2024-05-19
1031Brazil2024-05-18
1032Japan2024-04-26
1033Argentina2024-05-03
1034India2024-05-05
1035Italy2024-05-08
1036France2024-05-05
1037Japan2024-05-19
1038Canada2024-05-21
1039Russia2024-05-11
1040France2024-05-05
1041Argentina2024-05-22
1042France2024-05-06
1043France2024-05-22
1044Canada2024-05-15
1045India2024-04-28
1046India2024-04-30
1047Argentina2024-05-21
1048Japan2024-04-25
1049India2024-05-02

On-Demand Data

NameIdCountryDate
Leon O Briddick1000India2024-05-07
Izzy L Caudy1001Brazil2024-05-10
Salvatore L Figeroa1002Japan2024-04-25
Jennifer H Marrier1003Argentina2024-05-15
Ricardo U Sergi1004Russia2024-05-15
Salvatore N Kolmetz1005Argentina2024-05-17
David U Albares1006Spain2024-05-15
Emily G Oldroyd1007Italy2024-05-17
Jennifer K Glick1008Italy2024-05-17
Mayumi U Nicka1009Italy2024-05-22
Murillo B Nestle1010Germany2024-05-14
Jennifer Q Sergi1011France2024-05-23
James D Waycott1012France2024-05-16
Silvio G Garufi1013France2024-05-03
Aika F Oldroyd1014France2024-05-09
Johnson J Waycott1015Brazil2024-05-07
Chavez S Whobrey1016Japan2024-04-30
Mujtaba Q Slusarski1017India2024-05-23
Ivar K Garufi1018Spain2024-05-11
Octavia O Whobrey1019India2024-05-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith L PerinAustraliaElwin Sharvill PROPOSAL
Wickens N PaprockiFranceAmy Elsner NEW
Ricardo V StensethUnited KingdomIoni Bowcher UNQUALIFIED
Arvin N FollerGermanyIvan Magalhaes PROPOSAL
Arvin Q GarufiItalyAsiya Javayant QUALIFIED
Greenwood W GauchoGermanyBernardo Dominic NEGOTIATION
Leja I MorascaFranceAmy Elsner PROPOSAL
Stacey Q KolmetzItalyOnyama Limba UNQUALIFIED
Kadeem A GauchoBrazilStephen Shaw NEGOTIATION
Jefferson N BriddickIndiaAnna Fali NEW
Adams N OldroydSpainOnyama Limba NEGOTIATION
Silvio H DarakjyRussiaAmy Elsner NEW
Clifford Y NestleBrazilAsiya Javayant NEGOTIATION
Smith D NickaFranceIvan Magalhaes UNQUALIFIED
Aruna T GarufiItalyStephen Shaw QUALIFIED
Jennifer A MaletItalyOnyama Limba UNQUALIFIED
Ricardo P GillianBrazilAsiya Javayant RENEWAL
Ricardo V NestleIndiaAnna Fali PROPOSAL
Aditya G RoysterFranceAsiya Javayant UNQUALIFIED
Kadeem S MaletBrazilBernardo Dominic RENEWAL
Munro Y SlusarskiAustraliaAnna Fali NEW
Chavez O BologniaFranceXuxue Feng NEW
Aika M DarakjyArgentinaElwin Sharvill QUALIFIED
Sinclair J FollerSpainOnyama Limba RENEWAL
Salvatore D IturbideFranceAsiya Javayant PROPOSAL
Faith I MarrierRussiaBernardo Dominic PROPOSAL
Munro D CaldareraGermanyXuxue Feng NEGOTIATION
Julie D RulapaughItalyBernardo Dominic RENEWAL
Arvin B BowleyArgentinaIoni Bowcher NEW
Misaki Q DilliardArgentinaIvan Magalhaes PROPOSAL
Ashley T AmigonSpainAnna Fali RENEWAL
Mayumi W GlickAustraliaAsiya Javayant RENEWAL
Jennifer E SaylorsIndiaAsiya Javayant RENEWAL
Cody V RimAustraliaIoni Bowcher NEGOTIATION
Isabel A MarrierFranceAmy Elsner PROPOSAL
Izzy G CampainArgentinaXuxue Feng RENEWAL
Tony C GarufiSpainStephen Shaw PROPOSAL
Nicolas Q StockhamItalyElwin Sharvill RENEWAL
Wickens C DarakjyIndiaAsiya Javayant UNQUALIFIED
Johnson X PerinBrazilOnyama Limba UNQUALIFIED

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