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
Morrow M MaletAustraliaXuxue Feng UNQUALIFIED
Isabel V PoquetteUnited KingdomXuxue Feng PROPOSAL
Misaki O GauchoArgentinaAnna Fali QUALIFIED
Mayumi Z PerinSpainAmy Elsner PROPOSAL
Leja H IturbideCanadaAnna Fali NEW
Morrow O CampainBrazilElwin Sharvill RENEWAL
Ashley X ButtAustraliaAnna Fali QUALIFIED
Sinclair S SlusarskiCanadaAnna Fali RENEWAL
Ivar K CaudyFranceBernardo Dominic RENEWAL
Claire P PerinCanadaElwin Sharvill NEW
Kadeem H GauchoBrazilIoni Bowcher QUALIFIED
Costa M OstroskyAustraliaAmy Elsner UNQUALIFIED
Izzy C BriddickBrazilIvan Magalhaes QUALIFIED
Munro M ShinkoJapanXuxue Feng UNQUALIFIED
Kaitlin Z RimRussiaStephen Shaw RENEWAL
Francesco X ButtUnited KingdomBernardo Dominic QUALIFIED
Aruna G ShinkoUnited KingdomOnyama Limba QUALIFIED
Nicolas G VenereCanadaAmy Elsner RENEWAL
Maria H SaylorsBrazilAsiya Javayant NEGOTIATION
Leja A RutaGermanyIoni Bowcher QUALIFIED
Octavia S SchemmerGermanyAmy Elsner UNQUALIFIED
Antonio J NickaArgentinaIvan Magalhaes RENEWAL
Costa T RoysterAustraliaElwin Sharvill NEGOTIATION
Izzy Y FollerUnited KingdomIoni Bowcher NEW
Ashley H InouyeAustraliaXuxue Feng UNQUALIFIED
Ivar X BriddickItalyAnna Fali RENEWAL
Mayumi J StockhamItalyElwin Sharvill NEW
Leja F BowleyItalyStephen Shaw UNQUALIFIED
Alejandro L MaletRussiaElwin Sharvill NEGOTIATION
Maisha V MaletArgentinaIoni Bowcher QUALIFIED
Clifford T WieserJapanBernardo Dominic QUALIFIED
Wickens W StockhamGermanyAnna Fali QUALIFIED
Mayumi S FollerBrazilIoni Bowcher UNQUALIFIED
Cody H FollerRussiaIvan Magalhaes PROPOSAL
Morrow X AlbaresJapanBernardo Dominic RENEWAL
Jennifer M RimItalyBernardo Dominic NEGOTIATION
Aditya J ButtJapanAmy Elsner UNQUALIFIED
Cody C VocelkaItalyIvan Magalhaes UNQUALIFIED
Julie J GlickFranceStephen Shaw UNQUALIFIED
Mujtaba R KolmetzBrazilXuxue Feng PROPOSAL
Julie J StensethUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois X SchemmerUnited KingdomBernardo Dominic PROPOSAL
Greenwood P GauchoSpainXuxue Feng RENEWAL
Antonio N StensethCanadaAsiya Javayant PROPOSAL
James G FlosiJapanXuxue Feng QUALIFIED
Rodrigues P AmigonArgentinaElwin Sharvill UNQUALIFIED
Clifford T NestleIndiaOnyama Limba NEGOTIATION
Greenwood R MacleadUnited KingdomOnyama Limba NEW
Murillo O KolmetzFranceXuxue Feng NEW
Mujtaba O ChuiFranceElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Mayumi X FerenczCanadaStephen Shaw PROPOSAL
Jones B VocelkaItalyIvan Magalhaes RENEWAL
Leja A GlickArgentinaXuxue Feng NEW
Jennifer F ShinkoItalyIoni Bowcher UNQUALIFIED
Kaitlin E FlosiItalyIvan Magalhaes UNQUALIFIED
Adams D KuskoGermanyXuxue Feng RENEWAL
Jeanfrancois P FollerGermanyBernardo Dominic NEGOTIATION
Alejandro S CampainJapanOnyama Limba QUALIFIED
Leja K WaycottArgentinaXuxue Feng NEW
Claire J OldroydUnited KingdomOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar Q StensethCanada2024-06-09Printing Dimensions PROPOSAL21Anna Fali
1001David H NickaIndia2024-06-10Feltz Printing Service UNQUALIFIED61Elwin Sharvill
1002Wickens X RutaBrazil2024-06-11Chapman, Ross E Esq NEW54Bernardo Dominic
1003Jeanfrancois O GlickRussia2024-06-21Rangoni Of Florence UNQUALIFIED79Ioni Bowcher
1004Isabel H SergiUnited Kingdom2024-06-04Chemel, James L Cpa QUALIFIED66Amy Elsner
1005Julie N TollnerFrance2024-05-28Printing Dimensions UNQUALIFIED53Asiya Javayant
1006Isabel M SergiArgentina2024-06-01Buckley Miller Wright UNQUALIFIED35Bernardo Dominic
1007Maisha T MaletRussia2024-05-28Chanay, Jeffrey A Esq QUALIFIED9Amy Elsner
1008Juan Z DilliardItaly2024-06-08Chemel, James L Cpa UNQUALIFIED7Onyama Limba
1009Wickens P KuskoItaly2024-06-06Buckley Miller Wright RENEWAL37Ivan Magalhaes
1010Adams G KolmetzArgentina2024-06-16King, Christopher A Esq RENEWAL28Stephen Shaw
1011Munro U AlbaresItaly2024-06-05Commercial Press QUALIFIED91Xuxue Feng
1012Ivar O SergiGermany2024-06-19Chemel, James L Cpa RENEWAL42Anna Fali
1013Ivar H DoeJapan2024-06-02Commercial Press RENEWAL12Onyama Limba
1014Kaitlin S DoeUnited Kingdom2024-05-30King, Christopher A Esq RENEWAL73Anna Fali
1015Emily N RulapaughArgentina2024-06-13Truhlar And Truhlar Attys RENEWAL15Bernardo Dominic
1016Arvin A NickaAustralia2024-05-26Rangoni Of Florence UNQUALIFIED59Bernardo Dominic
1017Aika Z MacleadCanada2024-05-30Commercial Press NEW1Asiya Javayant
1018Julie S ButtItaly2024-05-31Rangoni Of Florence NEGOTIATION88Stephen Shaw
1019Arvin S RutaAustralia2024-06-15Printing Dimensions PROPOSAL55Anna Fali
1020Claire Y StockhamIndia2024-06-20Feltz Printing Service QUALIFIED45Anna Fali
1021Aditya K GlickSpain2024-05-24Benton, John B Jr RENEWAL52Asiya Javayant
1022Juan V DoeArgentina2024-05-26Morlong Associates NEW58Stephen Shaw
1023Munro L GlickBrazil2024-05-29Truhlar And Truhlar Attys NEGOTIATION73Stephen Shaw
1024Antonio Y KolmetzBrazil2024-06-17Rangoni Of Florence RENEWAL85Elwin Sharvill
1025Jennifer L RoysterRussia2024-05-28Chapman, Ross E Esq PROPOSAL0Elwin Sharvill
1026Juan A NestleCanada2024-06-07Rousseaux, Michael Esq QUALIFIED14Amy Elsner
1027Faith S FlosiRussia2024-06-04Benton, John B Jr NEW53Xuxue Feng
1028Ivar G GarufiFrance2024-06-12Benton, John B Jr QUALIFIED1Asiya Javayant
1029Leja U SlusarskiCanada2024-06-17Chapman, Ross E Esq NEGOTIATION19Anna Fali
1030Kaitlin X PaprockiArgentina2024-06-17Buckley Miller Wright UNQUALIFIED60Bernardo Dominic
1031Ashley Q GillianArgentina2024-06-17Chapman, Ross E Esq PROPOSAL81Anna Fali
1032Sinclair I CampainCanada2024-06-05Feltz Printing Service NEGOTIATION77Asiya Javayant
1033Wickens E BowleyRussia2024-05-29Feltz Printing Service UNQUALIFIED2Xuxue Feng
1034Jefferson R SchemmerItaly2024-06-17Feltz Printing Service PROPOSAL81Ivan Magalhaes
1035Mayumi J FerenczRussia2024-05-28Chapman, Ross E Esq QUALIFIED29Elwin Sharvill
1036Johnson Z GarufiUnited Kingdom2024-06-13Chemel, James L Cpa NEW40Onyama Limba
1037Jones P CaudyIndia2024-05-27Benton, John B Jr UNQUALIFIED14Ivan Magalhaes
1038Ricardo A OldroydCanada2024-05-27Chemel, James L Cpa RENEWAL50Xuxue Feng
1039Aditya S MorascaGermany2024-06-10Rousseaux, Michael Esq NEW89Bernardo Dominic
1040Stacey Q AlbaresUnited Kingdom2024-06-11Rousseaux, Michael Esq NEGOTIATION54Bernardo Dominic
1041Salvatore M AlbaresSpain2024-05-25Morlong Associates PROPOSAL1Amy Elsner
1042Jeanfrancois X InouyeIndia2024-06-05Feiner Bros QUALIFIED28Onyama Limba
1043Kaitlin S CampainAustralia2024-05-30Rousseaux, Michael Esq NEW27Anna Fali
1044Chavez I WaycottArgentina2024-06-11Buckley Miller Wright QUALIFIED22Elwin Sharvill
1045James H CaudyIndia2024-06-21Buckley Miller Wright RENEWAL39Stephen Shaw
1046Isabel Y CampainSpain2024-06-08Morlong Associates RENEWAL21Stephen Shaw
1047Kadeem C KolmetzArgentina2024-05-27Chemel, James L Cpa RENEWAL86Xuxue Feng
1048Misaki C MaletSpain2024-06-16Chapman, Ross E Esq PROPOSAL78Stephen Shaw
1049Jefferson M AlbaresBrazil2024-06-05Chapman, Ross E Esq RENEWAL11Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Sinclair U CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Mujtaba N DoeFranceAsiya Javayant NEGOTIATION
Cody X AmigonBrazilAmy Elsner NEW
Darci S ButtFranceAnna Fali PROPOSAL
Isabel Q InouyeArgentinaAmy Elsner RENEWAL
Francesco M CaldareraGermanyAsiya Javayant QUALIFIED
Claire F PaprockiBrazilAsiya Javayant NEW
James P BologniaAustraliaIvan Magalhaes RENEWAL
Aditya R ShinkoGermanyOnyama Limba RENEWAL
Claire K ButtRussiaAsiya Javayant NEW
Silvio H InouyeJapanElwin Sharvill NEGOTIATION
Jones A ButtAustraliaAnna Fali QUALIFIED
Kadeem T BriddickItalyElwin Sharvill PROPOSAL
Smith K VocelkaGermanyIvan Magalhaes NEW
Antonio R TollnerBrazilOnyama Limba UNQUALIFIED
Julie I NestleRussiaStephen Shaw UNQUALIFIED
Deepesh L CampainSpainAnna Fali UNQUALIFIED
Isabel B MorascaAustraliaAnna Fali RENEWAL
Clifford S GarufiCanadaElwin Sharvill QUALIFIED
Ashley V CaudyArgentinaOnyama Limba UNQUALIFIED
Isabel K OldroydJapanAnna Fali NEGOTIATION
Sinclair K AmigonAustraliaBernardo Dominic UNQUALIFIED
Kaitlin G InouyeAustraliaIvan Magalhaes QUALIFIED
Deepesh U FerenczGermanyAmy Elsner NEW
Tony G CampainArgentinaAmy Elsner NEGOTIATION
Arvin E BowleyAustraliaOnyama Limba NEW
James W SlusarskiGermanyElwin Sharvill PROPOSAL
Mayumi F MacleadArgentinaAnna Fali NEGOTIATION
Juan S BowleyCanadaOnyama Limba NEW
Nicolas U WhobreyRussiaStephen Shaw QUALIFIED
Aika R BriddickSpainIvan Magalhaes PROPOSAL
Sinclair O PerinRussiaOnyama Limba QUALIFIED
Greenwood K MorascaArgentinaIvan Magalhaes UNQUALIFIED
Jones Y MaletGermanyAmy Elsner NEGOTIATION
Salvatore B CaldareraAustraliaXuxue Feng NEW
Aditya Z BologniaAustraliaOnyama Limba QUALIFIED
Chavez G FlosiGermanyAsiya Javayant UNQUALIFIED
Emily E KolmetzAustraliaAmy Elsner QUALIFIED
Emily N SchemmerCanadaAnna Fali PROPOSAL
Silvio W VocelkaIndiaBernardo Dominic PROPOSAL
Maria Z MaletBrazilStephen Shaw UNQUALIFIED
Antonio X DoeIndiaIoni Bowcher PROPOSAL
Emily W WieserFranceElwin Sharvill UNQUALIFIED
Jeanfrancois J OstroskyAustraliaAsiya Javayant UNQUALIFIED
Isabel K FerenczFranceAsiya Javayant UNQUALIFIED
Tony T GauchoArgentinaAnna Fali PROPOSAL
Octavia E AmigonArgentinaAmy Elsner RENEWAL
Costa P SaylorsJapanStephen Shaw RENEWAL
Jones X DarakjySpainElwin Sharvill QUALIFIED
Isabel W GillianUnited KingdomAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Leon T Inouye
Kaitlin W Marrier
Aika Z Oldroyd
Stacey E Briddick
Octavia P Stockham
Misaki O Kusko
Jennifer R Ferencz
Kaitlin Z Caldarera
Alejandro O Butt
Maisha E Ruta
Misaki L Maclead
Stacey B Bowley
Cody P Caldarera
Deepesh L Slusarski
Wickens E Bowley
Aruna L Garufi
Juan L Royster
Antonio Y Oldroyd
Wickens L Figeroa
Costa O Bowley
Nicolas V Venere
Claire Q Poquette
Arvin L Vocelka
Julie X Darakjy
David Z Stenseth
Deepesh R Caldarera
Salvatore A Figeroa
Juan R Perin
Salvatore A Caudy
Tony G Paprocki
Chavez J Rim
Octavia Y Kolmetz
Alejandro T Oldroyd
Ricardo W Venere
Juan W Waycott
Ashley L Kusko
Smith D Perin
Francesco L Flosi
Leja R Waycott
Ricardo G Shinko
Silvio Y Glick
Deepesh P Bowley
Francesco O Ruta
Juan A Malet
Deepesh Q Garufi
Cody Y Campain
Emily N Vocelka
Octavia W Saylors
Ashley P Bowley
Greenwood M Venere
IdCountryDate
1000Spain2024-06-08
1001Argentina2024-06-22
1002Germany2024-06-17
1003Italy2024-06-10
1004Argentina2024-06-17
1005Brazil2024-06-14
1006Canada2024-05-24
1007Spain2024-06-02
1008Spain2024-06-07
1009Canada2024-06-11
1010Italy2024-06-12
1011Germany2024-06-10
1012Brazil2024-05-24
1013France2024-05-24
1014France2024-06-02
1015Brazil2024-06-18
1016Spain2024-05-26
1017Spain2024-06-21
1018United Kingdom2024-06-04
1019India2024-06-16
1020Spain2024-06-13
1021Canada2024-06-15
1022Australia2024-06-02
1023Argentina2024-06-02
1024United Kingdom2024-06-16
1025India2024-06-14
1026Germany2024-06-03
1027Argentina2024-06-05
1028France2024-05-30
1029Russia2024-05-27
1030France2024-05-26
1031Spain2024-06-02
1032Russia2024-05-26
1033Russia2024-06-05
1034Australia2024-06-04
1035India2024-05-27
1036India2024-05-25
1037Brazil2024-05-25
1038France2024-06-01
1039France2024-05-27
1040Argentina2024-06-13
1041Canada2024-06-04
1042Australia2024-06-16
1043Spain2024-06-03
1044Japan2024-06-06
1045Japan2024-06-16
1046Spain2024-05-28
1047United Kingdom2024-06-11
1048United Kingdom2024-06-03
1049Brazil2024-06-03

On-Demand Data

NameIdCountryDate
Julie A Ruta1000Brazil2024-05-27
Murillo M Ferencz1001Canada2024-05-28
Aruna W Wieser1002India2024-06-05
Munro T Tollner1003Canada2024-05-30
Rodrigues M Schemmer1004Japan2024-06-07
Misaki W Rim1005Australia2024-06-06
Kadeem S Caldarera1006Argentina2024-06-11
Alejandro V Marrier1007Germany2024-06-18
Juan U Royster1008India2024-06-16
James I Rulapaugh1009Italy2024-05-27
Rodrigues T Ferencz1010Canada2024-06-07
Aruna H Bolognia1011Brazil2024-06-17
David V Chui1012Spain2024-06-14
Costa C Caldarera1013Germany2024-06-19
Jeanfrancois X Oldroyd1014France2024-06-19
Leja W Garufi1015Australia2024-06-12
Mujtaba I Glick1016Japan2024-06-17
Arvin U Campain1017Japan2024-06-03
Emily E Albares1018Brazil2024-06-14
Jones K Rulapaugh1019Italy2024-06-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody U FlosiAustraliaOnyama Limba NEW
Deepesh X RutaAustraliaAmy Elsner QUALIFIED
Leja W SaylorsSpainOnyama Limba NEW
Maria I KuskoCanadaElwin Sharvill RENEWAL
Jones A BriddickRussiaXuxue Feng UNQUALIFIED
Ashley S BologniaUnited KingdomOnyama Limba RENEWAL
Leon B PerinRussiaOnyama Limba UNQUALIFIED
Claire Q ShinkoSpainStephen Shaw PROPOSAL
Maria X RimAustraliaElwin Sharvill UNQUALIFIED
Maria X IturbideRussiaStephen Shaw UNQUALIFIED
Jennifer S DilliardRussiaIoni Bowcher NEGOTIATION
Emily O CaudyArgentinaBernardo Dominic RENEWAL
Maria H CampainIndiaIoni Bowcher RENEWAL
Leja R SlusarskiAustraliaStephen Shaw PROPOSAL
Juan T NickaJapanStephen Shaw PROPOSAL
Maisha V DilliardAustraliaIvan Magalhaes PROPOSAL
Isabel I GarufiArgentinaElwin Sharvill PROPOSAL
Munro H MacleadBrazilElwin Sharvill UNQUALIFIED
Kaitlin U BriddickJapanAnna Fali NEGOTIATION
Juan A FollerFranceAnna Fali RENEWAL
Jones L TollnerCanadaStephen Shaw QUALIFIED
Adams U CaudyJapanIvan Magalhaes RENEWAL
Mujtaba J RulapaughSpainOnyama Limba NEW
Francesco S InouyeArgentinaAsiya Javayant RENEWAL
Smith F GillianUnited KingdomBernardo Dominic QUALIFIED
Jeanfrancois T OstroskyItalyOnyama Limba QUALIFIED
Aika Z NestleUnited KingdomXuxue Feng PROPOSAL
Ashley K GlickGermanyOnyama Limba NEGOTIATION
Leon D DilliardUnited KingdomBernardo Dominic NEW
Rodrigues O AmigonRussiaOnyama Limba PROPOSAL
Kaitlin W OldroydBrazilElwin Sharvill RENEWAL
Jennifer J WieserCanadaAnna Fali NEGOTIATION
Stacey T MaletArgentinaStephen Shaw QUALIFIED
Greenwood I BologniaGermanyIvan Magalhaes NEGOTIATION
Silvio T DilliardBrazilAsiya Javayant UNQUALIFIED
Isabel Y AlbaresGermanyIvan Magalhaes QUALIFIED
Aditya K RimJapanAmy Elsner UNQUALIFIED
David I NickaFranceAsiya Javayant NEW
Isabel Q KuskoBrazilElwin Sharvill RENEWAL
Izzy T StockhamJapanIoni Bowcher 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>