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
Arvin G RoysterUnited KingdomIvan Magalhaes RENEWAL
Jefferson M DarakjyGermanyIvan Magalhaes QUALIFIED
Maisha R SlusarskiAustraliaAsiya Javayant NEW
Alejandro B ChuiUnited KingdomIvan Magalhaes UNQUALIFIED
Leon J NestleRussiaBernardo Dominic UNQUALIFIED
James O RimBrazilAsiya Javayant RENEWAL
Maisha Z StockhamJapanAmy Elsner PROPOSAL
Chavez E FollerItalyStephen Shaw RENEWAL
Nicolas U SaylorsIndiaBernardo Dominic NEGOTIATION
Silvio R MacleadCanadaBernardo Dominic QUALIFIED
Jones R SchemmerItalyAsiya Javayant NEW
Kadeem E InouyeIndiaStephen Shaw PROPOSAL
Cody P RutaJapanAnna Fali NEW
Aika C MacleadItalyAnna Fali PROPOSAL
Ricardo W OstroskyItalyOnyama Limba RENEWAL
Juan O IturbideCanadaAmy Elsner NEW
Clifford R FlosiJapanAmy Elsner RENEWAL
Aika G CaudySpainAsiya Javayant PROPOSAL
Smith J VocelkaArgentinaIoni Bowcher PROPOSAL
Greenwood U PerinIndiaAmy Elsner PROPOSAL
Smith G WaycottRussiaAmy Elsner QUALIFIED
Faith Q StockhamArgentinaElwin Sharvill PROPOSAL
Misaki L RoysterArgentinaElwin Sharvill NEGOTIATION
Mujtaba T FollerSpainIoni Bowcher RENEWAL
Mujtaba A KolmetzRussiaAnna Fali UNQUALIFIED
Arvin S MorascaCanadaXuxue Feng NEGOTIATION
Greenwood W RutaAustraliaAsiya Javayant UNQUALIFIED
Aditya L StensethJapanAsiya Javayant RENEWAL
Rodrigues E NestleRussiaAnna Fali QUALIFIED
Mujtaba L StockhamCanadaXuxue Feng PROPOSAL
Rodrigues B AlbaresRussiaAsiya Javayant PROPOSAL
Octavia L MacleadItalyAnna Fali PROPOSAL
Morrow A RutaGermanyIoni Bowcher PROPOSAL
Cody O DarakjyGermanyElwin Sharvill RENEWAL
Nicolas T MacleadCanadaIoni Bowcher RENEWAL
Kadeem Q AmigonFranceIvan Magalhaes NEGOTIATION
Arvin P SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Kaitlin T MacleadUnited KingdomAnna Fali UNQUALIFIED
Izzy F MorascaGermanyOnyama Limba RENEWAL
Jeanfrancois T RulapaughRussiaIoni Bowcher QUALIFIED
Leja K WaycottSpainBernardo Dominic PROPOSAL
Octavia U PerinFranceIvan Magalhaes PROPOSAL
Darci Z WaycottCanadaAmy Elsner QUALIFIED
Maisha B GillianSpainElwin Sharvill NEGOTIATION
Stacey S PoquetteAustraliaIvan Magalhaes PROPOSAL
Sinclair V CaldareraSpainAmy Elsner PROPOSAL
Jones S OstroskySpainIoni Bowcher RENEWAL
Leon I DarakjyJapanStephen Shaw NEGOTIATION
Jefferson E GauchoAustraliaIvan Magalhaes NEW
Claire S StensethSpainAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Nicolas S ChuiArgentinaElwin Sharvill NEGOTIATION
Murillo V MorascaSpainAmy Elsner NEW
Arvin V StockhamItalyIoni Bowcher QUALIFIED
Adams G ShinkoAustraliaBernardo Dominic QUALIFIED
Morrow O PerinItalyElwin Sharvill NEW
Costa G WhobreyItalyIvan Magalhaes NEGOTIATION
Cody S VenereUnited KingdomOnyama Limba UNQUALIFIED
Maisha G GarufiBrazilIvan Magalhaes UNQUALIFIED
Rodrigues Y AlbaresIndiaAsiya Javayant UNQUALIFIED
Aruna Z RulapaughRussiaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony A KolmetzCanada2024-06-20Chapman, Ross E Esq UNQUALIFIED83Stephen Shaw
1001Tony J DoeCanada2024-06-16Rangoni Of Florence QUALIFIED72Anna Fali
1002Juan F WieserUnited Kingdom2024-05-31Commercial Press QUALIFIED92Stephen Shaw
1003Maria V PaprockiCanada2024-06-10King, Christopher A Esq UNQUALIFIED36Ioni Bowcher
1004Jones B IturbideBrazil2024-06-10Chanay, Jeffrey A Esq PROPOSAL9Bernardo Dominic
1005Mayumi P MacleadRussia2024-06-14Chanay, Jeffrey A Esq QUALIFIED37Xuxue Feng
1006Silvio U StockhamBrazil2024-06-05Rangoni Of Florence NEGOTIATION32Ioni Bowcher
1007Maria D KuskoBrazil2024-05-25Printing Dimensions QUALIFIED80Amy Elsner
1008Nicolas V KuskoSpain2024-06-07Feiner Bros QUALIFIED69Asiya Javayant
1009Cody L RoysterAustralia2024-06-06Feltz Printing Service QUALIFIED64Amy Elsner
1010Silvio X RutaGermany2024-05-30Rousseaux, Michael Esq QUALIFIED51Stephen Shaw
1011Costa E IturbideBrazil2024-06-18Feiner Bros RENEWAL43Anna Fali
1012Rodrigues S VenereSpain2024-06-07Buckley Miller Wright RENEWAL63Elwin Sharvill
1013Deepesh J RulapaughCanada2024-05-28Morlong Associates NEGOTIATION51Stephen Shaw
1014Jefferson P CampainFrance2024-06-04Feltz Printing Service UNQUALIFIED90Ioni Bowcher
1015Jeanfrancois P ButtFrance2024-06-04Chanay, Jeffrey A Esq RENEWAL70Elwin Sharvill
1016Jones Q VocelkaJapan2024-06-05Morlong Associates RENEWAL25Xuxue Feng
1017Octavia V VenereBrazil2024-06-22Printing Dimensions NEW52Elwin Sharvill
1018Emily P OldroydCanada2024-06-21Chanay, Jeffrey A Esq PROPOSAL74Ioni Bowcher
1019Cody K GarufiJapan2024-05-29Feltz Printing Service QUALIFIED94Ivan Magalhaes
1020James A AmigonItaly2024-05-28King, Christopher A Esq PROPOSAL89Asiya Javayant
1021Munro Q DoeCanada2024-05-27Morlong Associates NEGOTIATION34Ivan Magalhaes
1022Arvin E BowleyIndia2024-05-27Benton, John B Jr QUALIFIED96Xuxue Feng
1023Tony M SaylorsCanada2024-06-17Morlong Associates PROPOSAL64Elwin Sharvill
1024Cody U FigeroaItaly2024-06-21Benton, John B Jr PROPOSAL4Xuxue Feng
1025Ivar E FigeroaIndia2024-06-13Chanay, Jeffrey A Esq RENEWAL30Amy Elsner
1026Murillo G RutaItaly2024-05-30Benton, John B Jr RENEWAL71Stephen Shaw
1027Faith N FlosiRussia2024-05-26Feiner Bros NEW66Ioni Bowcher
1028Deepesh K CaudyGermany2024-06-03Rangoni Of Florence PROPOSAL68Anna Fali
1029Jeanfrancois R SergiSpain2024-05-28Printing Dimensions QUALIFIED89Ioni Bowcher
1030Adams R AlbaresIndia2024-06-03Benton, John B Jr NEGOTIATION32Ivan Magalhaes
1031Deepesh H RoysterBrazil2024-06-21Chanay, Jeffrey A Esq PROPOSAL70Asiya Javayant
1032Kaitlin A MorascaArgentina2024-06-10Rousseaux, Michael Esq QUALIFIED99Stephen Shaw
1033Kadeem K WieserFrance2024-06-04Rousseaux, Michael Esq NEGOTIATION34Ivan Magalhaes
1034Francesco N AmigonIndia2024-06-07Chanay, Jeffrey A Esq QUALIFIED68Onyama Limba
1035Munro H StensethItaly2024-06-21Feltz Printing Service NEW28Amy Elsner
1036Deepesh O MaletFrance2024-06-03Printing Dimensions NEW39Stephen Shaw
1037Jeanfrancois R MaletFrance2024-06-14Feiner Bros RENEWAL30Ivan Magalhaes
1038Aruna B BologniaRussia2024-06-02Truhlar And Truhlar Attys NEW73Bernardo Dominic
1039Tony D GillianJapan2024-06-20Buckley Miller Wright NEGOTIATION57Onyama Limba
1040Morrow V GlickJapan2024-06-03Feltz Printing Service RENEWAL14Elwin Sharvill
1041Claire F NestleFrance2024-06-16Printing Dimensions NEW54Ioni Bowcher
1042Mujtaba X CampainJapan2024-06-07Feiner Bros RENEWAL5Bernardo Dominic
1043Aruna X WieserGermany2024-06-10Benton, John B Jr UNQUALIFIED47Bernardo Dominic
1044Kadeem A WhobreySpain2024-06-02Buckley Miller Wright QUALIFIED52Ivan Magalhaes
1045Izzy X SlusarskiCanada2024-06-11Chapman, Ross E Esq UNQUALIFIED75Onyama Limba
1046Adams C VocelkaGermany2024-06-03Feltz Printing Service UNQUALIFIED91Elwin Sharvill
1047Juan N SchemmerRussia2024-05-30Chapman, Ross E Esq NEW22Onyama Limba
1048Johnson L SlusarskiUnited Kingdom2024-06-14Morlong Associates PROPOSAL30Amy Elsner
1049Morrow N ShinkoIndia2024-06-11Feltz Printing Service NEGOTIATION2Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Chavez D CampainGermanyAnna Fali PROPOSAL
Juan P BriddickGermanyIoni Bowcher NEW
Jeanfrancois O InouyeJapanIoni Bowcher QUALIFIED
Ivar A IturbideBrazilXuxue Feng PROPOSAL
Claire B BologniaArgentinaElwin Sharvill NEGOTIATION
Claire Y ButtCanadaAmy Elsner NEW
Cody E VocelkaIndiaAsiya Javayant NEGOTIATION
Costa Q WhobreyItalyIvan Magalhaes RENEWAL
Julie B TollnerItalyIvan Magalhaes NEGOTIATION
Mujtaba V ChuiRussiaAnna Fali RENEWAL
Izzy E WaycottCanadaOnyama Limba QUALIFIED
Smith W RutaGermanyAnna Fali QUALIFIED
Antonio E GauchoJapanAsiya Javayant PROPOSAL
Ricardo G CampainGermanyIoni Bowcher UNQUALIFIED
Juan Y RimCanadaBernardo Dominic NEGOTIATION
Nicolas F AmigonCanadaElwin Sharvill PROPOSAL
Emily K FlosiItalyIvan Magalhaes QUALIFIED
Kaitlin J RimIndiaElwin Sharvill PROPOSAL
Julie K MacleadUnited KingdomAmy Elsner RENEWAL
Adams A ChuiIndiaElwin Sharvill QUALIFIED
Faith E GarufiCanadaAmy Elsner NEW
Silvio J MorascaBrazilElwin Sharvill PROPOSAL
Rodrigues W TollnerSpainOnyama Limba UNQUALIFIED
Sinclair T VenereBrazilXuxue Feng NEW
Antonio B GillianSpainStephen Shaw NEW
Aditya F DarakjyRussiaOnyama Limba PROPOSAL
Antonio D VenereSpainIvan Magalhaes NEW
David M CaldareraArgentinaOnyama Limba QUALIFIED
Kaitlin W StockhamAustraliaBernardo Dominic RENEWAL
Costa J MaletBrazilAmy Elsner RENEWAL
Maisha W SchemmerArgentinaXuxue Feng PROPOSAL
Munro R WieserAustraliaOnyama Limba RENEWAL
Silvio W MaletFranceStephen Shaw NEGOTIATION
Claire W TollnerBrazilXuxue Feng NEGOTIATION
Mujtaba S SergiGermanyAsiya Javayant NEGOTIATION
Faith A WhobreyItalyBernardo Dominic QUALIFIED
Maisha C PerinGermanyBernardo Dominic QUALIFIED
Clifford G AmigonBrazilElwin Sharvill NEGOTIATION
Aruna X BowleyIndiaStephen Shaw RENEWAL
Greenwood A RoysterSpainXuxue Feng QUALIFIED
Claire W ChuiUnited KingdomIoni Bowcher NEW
Maisha Q WhobreyUnited KingdomIvan Magalhaes NEGOTIATION
Emily K NickaItalyElwin Sharvill UNQUALIFIED
Jefferson B VenereJapanElwin Sharvill NEW
Costa N MorascaAustraliaAsiya Javayant PROPOSAL
Aika B InouyeArgentinaBernardo Dominic UNQUALIFIED
Aditya K KolmetzArgentinaAnna Fali NEGOTIATION
Stacey E GillianUnited KingdomAmy Elsner PROPOSAL
Sinclair I GlickSpainIoni Bowcher NEGOTIATION
Deepesh J WaycottBrazilBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Kaitlin B Perin
Claire Y Doe
Octavia Q Nestle
Wickens U Darakjy
Tony O Ruta
Wickens M Dilliard
Ashley H Saylors
Aruna U Flosi
Munro N Glick
Greenwood V Vocelka
Johnson T Poquette
Alejandro Z Slusarski
Faith B Gillian
Deepesh S Rulapaugh
Silvio P Stenseth
Sinclair D Bowley
Clifford H Darakjy
Mujtaba X Briddick
Cody I Marrier
James M Bolognia
Jefferson R Nicka
Kadeem M Doe
Nicolas Q Flosi
Maisha P Rim
Izzy J Nestle
Ricardo L Chui
Silvio A Nestle
Stacey R Schemmer
Munro C Bowley
Adams U Schemmer
Julie R Iturbide
Jones J Kusko
Salvatore J Gillian
Wickens V Stockham
Leon A Perin
Smith Z Tollner
Emily K Briddick
James B Rim
Emily E Poquette
Jefferson H Briddick
Jefferson J Butt
Stacey C Sergi
Tony O Gaucho
Misaki L Kolmetz
Ricardo C Bowley
Rodrigues P Rulapaugh
Leon L Shinko
Adams S Kolmetz
Greenwood D Foller
Munro Z Nicka
IdCountryDate
1000Russia2024-05-30
1001Argentina2024-06-13
1002India2024-06-16
1003France2024-06-09
1004Argentina2024-06-08
1005France2024-06-12
1006Canada2024-06-05
1007Australia2024-06-12
1008France2024-06-22
1009France2024-06-17
1010Germany2024-05-28
1011Japan2024-06-02
1012Canada2024-06-10
1013Russia2024-06-21
1014France2024-06-02
1015Japan2024-06-03
1016Russia2024-06-14
1017Germany2024-05-29
1018Canada2024-06-02
1019Italy2024-06-18
1020Spain2024-06-12
1021Argentina2024-06-06
1022Canada2024-06-10
1023Russia2024-05-28
1024Australia2024-06-11
1025Australia2024-06-08
1026Argentina2024-06-17
1027Brazil2024-06-04
1028Argentina2024-05-29
1029India2024-06-04
1030Japan2024-06-07
1031Argentina2024-06-02
1032Australia2024-06-02
1033Australia2024-06-21
1034Spain2024-06-09
1035Italy2024-06-21
1036Japan2024-05-28
1037Germany2024-05-27
1038Canada2024-06-02
1039Brazil2024-06-14
1040United Kingdom2024-06-17
1041United Kingdom2024-05-27
1042Italy2024-06-03
1043Italy2024-06-07
1044Brazil2024-05-29
1045Spain2024-06-04
1046Germany2024-06-03
1047Italy2024-05-27
1048Australia2024-06-20
1049Russia2024-06-15

On-Demand Data

NameIdCountryDate
Jones T Tollner1000Argentina2024-06-21
Isabel I Rulapaugh1001Argentina2024-05-27
James W Nicka1002United Kingdom2024-05-30
Johnson T Inouye1003Italy2024-06-22
Costa I Amigon1004India2024-06-21
Mujtaba W Ruta1005Brazil2024-06-14
Morrow K Albares1006Canada2024-06-07
Johnson R Caldarera1007Canada2024-06-11
Salvatore C Iturbide1008Brazil2024-05-25
Jennifer A Vocelka1009Japan2024-06-13
Juan R Albares1010Russia2024-05-27
Stacey T Whobrey1011Spain2024-06-05
Claire M Figeroa1012India2024-05-29
Alejandro J Shinko1013Germany2024-06-01
Ivar W Whobrey1014Russia2024-05-26
Silvio O Vocelka1015United Kingdom2024-05-25
Faith K Venere1016India2024-05-29
Leja S Rim1017Australia2024-06-17
Jennifer N Nicka1018Italy2024-06-03
Francesco X Malet1019Germany2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily A GarufiSpainOnyama Limba UNQUALIFIED
Julie N MorascaCanadaAsiya Javayant NEGOTIATION
Izzy E AmigonRussiaElwin Sharvill RENEWAL
Aika B SchemmerArgentinaXuxue Feng RENEWAL
Jennifer G MaletIndiaOnyama Limba NEGOTIATION
Kadeem L MaletCanadaXuxue Feng NEGOTIATION
Aruna J DarakjyRussiaAsiya Javayant PROPOSAL
Costa R SergiCanadaElwin Sharvill UNQUALIFIED
Sinclair C BowleyIndiaAsiya Javayant UNQUALIFIED
Juan O MacleadBrazilAnna Fali UNQUALIFIED
Munro R CaudyUnited KingdomXuxue Feng UNQUALIFIED
Darci H CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
Jennifer Z CaldareraAustraliaStephen Shaw PROPOSAL
Ivar X FigeroaArgentinaAsiya Javayant NEGOTIATION
Stacey A NickaJapanAnna Fali QUALIFIED
Maria Y SlusarskiFranceElwin Sharvill NEGOTIATION
Aika X MaletSpainElwin Sharvill PROPOSAL
Darci U GlickGermanyElwin Sharvill QUALIFIED
Izzy V KuskoUnited KingdomAsiya Javayant QUALIFIED
Maisha E FollerCanadaIoni Bowcher PROPOSAL
Ricardo N FollerGermanyAmy Elsner QUALIFIED
Stacey L MarrierIndiaAsiya Javayant PROPOSAL
David Y WaycottRussiaAsiya Javayant NEGOTIATION
Adams Z DilliardIndiaElwin Sharvill UNQUALIFIED
Munro U KolmetzArgentinaAsiya Javayant PROPOSAL
Maria E StockhamSpainAnna Fali QUALIFIED
Munro A PaprockiArgentinaAsiya Javayant QUALIFIED
Darci H KolmetzFranceIvan Magalhaes RENEWAL
Claire C FlosiRussiaAmy Elsner QUALIFIED
Sinclair S SergiSpainBernardo Dominic RENEWAL
Nicolas M CaldareraBrazilIvan Magalhaes UNQUALIFIED
Mujtaba R RutaRussiaStephen Shaw UNQUALIFIED
Smith Y VocelkaAustraliaXuxue Feng PROPOSAL
Smith D CampainGermanyAsiya Javayant PROPOSAL
Arvin E FerenczBrazilBernardo Dominic UNQUALIFIED
Wickens Z FigeroaAustraliaAmy Elsner RENEWAL
Ivar Z RulapaughUnited KingdomBernardo Dominic NEW
Julie Y SergiGermanyAnna Fali NEGOTIATION
Munro A ChuiJapanAsiya Javayant RENEWAL
Adams Z ButtBrazilXuxue Feng 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>