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 P AlbaresAustraliaIvan Magalhaes QUALIFIED
Juan M StockhamIndiaStephen Shaw PROPOSAL
Cody Z NickaAustraliaAnna Fali RENEWAL
Nicolas I PerinRussiaAmy Elsner NEGOTIATION
Aika K PoquetteFranceStephen Shaw RENEWAL
Aruna H FlosiCanadaBernardo Dominic NEW
Mujtaba Y ButtJapanAsiya Javayant RENEWAL
Ricardo I ButtSpainAsiya Javayant NEW
Salvatore J BowleyItalyAmy Elsner RENEWAL
Salvatore V CampainJapanBernardo Dominic QUALIFIED
Deepesh I StensethCanadaElwin Sharvill NEW
Aruna O SergiUnited KingdomAsiya Javayant UNQUALIFIED
Darci R MacleadUnited KingdomAnna Fali NEW
Ricardo M BologniaJapanBernardo Dominic RENEWAL
Johnson A KolmetzRussiaAmy Elsner NEGOTIATION
Leja Z PaprockiRussiaAnna Fali PROPOSAL
Izzy M CampainCanadaElwin Sharvill QUALIFIED
Leja Q DoeFranceXuxue Feng UNQUALIFIED
Smith R StensethIndiaOnyama Limba NEGOTIATION
Misaki K SaylorsSpainAmy Elsner UNQUALIFIED
Deepesh X GauchoAustraliaIoni Bowcher PROPOSAL
Clifford K SchemmerGermanyBernardo Dominic RENEWAL
Isabel B RulapaughIndiaOnyama Limba QUALIFIED
Alejandro J NestleSpainXuxue Feng RENEWAL
Mujtaba O SchemmerJapanAsiya Javayant UNQUALIFIED
Costa B RimFranceAmy Elsner UNQUALIFIED
Wickens B CaudyAustraliaAsiya Javayant RENEWAL
Kadeem R KuskoJapanBernardo Dominic RENEWAL
Munro Y MarrierGermanyIoni Bowcher PROPOSAL
Jones E MaletArgentinaIoni Bowcher PROPOSAL
Francesco O FerenczFranceOnyama Limba NEW
Julie X MacleadRussiaAmy Elsner NEGOTIATION
Kadeem L DoeUnited KingdomAsiya Javayant PROPOSAL
Jeanfrancois Y KuskoRussiaAnna Fali NEGOTIATION
Aditya W InouyeSpainBernardo Dominic RENEWAL
Tony Q NickaBrazilIvan Magalhaes RENEWAL
Izzy S DarakjyAustraliaOnyama Limba UNQUALIFIED
Mayumi Y WaycottGermanyStephen Shaw NEGOTIATION
Aditya E VenereIndiaXuxue Feng PROPOSAL
Leon E StockhamBrazilAsiya Javayant NEW
Wickens X WaycottArgentinaAnna Fali RENEWAL
Isabel I FerenczJapanIvan Magalhaes NEGOTIATION
Darci F MorascaIndiaAnna Fali NEGOTIATION
Sinclair E CampainBrazilElwin Sharvill NEGOTIATION
Alejandro W GillianCanadaElwin Sharvill UNQUALIFIED
Jones O GillianIndiaBernardo Dominic UNQUALIFIED
Morrow D MaletItalyAnna Fali QUALIFIED
Misaki K TollnerGermanyAnna Fali NEW
Jefferson B MarrierAustraliaAsiya Javayant QUALIFIED
Mayumi I MacleadSpainXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Misaki F RoysterJapanIvan Magalhaes NEW
Ashley T DarakjyGermanyAnna Fali NEGOTIATION
Greenwood R KuskoArgentinaAmy Elsner RENEWAL
Smith A NestleGermanyIoni Bowcher NEGOTIATION
James A OstroskyAustraliaElwin Sharvill RENEWAL
Leon G PoquetteUnited KingdomElwin Sharvill UNQUALIFIED
Mujtaba W OstroskyJapanAsiya Javayant NEGOTIATION
Cody X GarufiUnited KingdomElwin Sharvill NEW
Jones W WaycottSpainStephen Shaw RENEWAL
Jones U RulapaughBrazilXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh C DarakjyGermany2024-08-29Feltz Printing Service RENEWAL77Ioni Bowcher
1001Sinclair V FollerBrazil2024-09-12Feltz Printing Service RENEWAL11Amy Elsner
1002Julie C PerinSpain2024-08-22Chanay, Jeffrey A Esq QUALIFIED89Stephen Shaw
1003Clifford Q FigeroaJapan2024-09-04Buckley Miller Wright QUALIFIED14Amy Elsner
1004Aditya P IturbideArgentina2024-09-19Commercial Press NEW1Anna Fali
1005Mayumi U KolmetzSpain2024-09-18Buckley Miller Wright PROPOSAL84Ioni Bowcher
1006Murillo M GauchoAustralia2024-09-11Chapman, Ross E Esq RENEWAL85Asiya Javayant
1007James Q CaudyRussia2024-09-13Benton, John B Jr PROPOSAL70Onyama Limba
1008Kaitlin H RimUnited Kingdom2024-09-16Chemel, James L Cpa NEGOTIATION50Asiya Javayant
1009Maria A DilliardUnited Kingdom2024-09-11Rousseaux, Michael Esq NEW57Stephen Shaw
1010Sinclair F MarrierAustralia2024-09-10Feiner Bros NEW2Bernardo Dominic
1011Juan A IturbideIndia2024-09-19King, Christopher A Esq NEGOTIATION35Ivan Magalhaes
1012Jeanfrancois J DarakjyCanada2024-09-05Rangoni Of Florence NEW85Ivan Magalhaes
1013Kadeem S RulapaughFrance2024-09-05Feltz Printing Service UNQUALIFIED53Anna Fali
1014Ashley U OldroydArgentina2024-09-18Truhlar And Truhlar Attys UNQUALIFIED23Bernardo Dominic
1015Ivar O NickaCanada2024-09-09Feiner Bros NEW78Anna Fali
1016Salvatore G DarakjyBrazil2024-09-19Chanay, Jeffrey A Esq PROPOSAL11Amy Elsner
1017Misaki W PoquetteArgentina2024-08-21Rousseaux, Michael Esq QUALIFIED1Amy Elsner
1018Cody V OldroydSpain2024-09-02Chapman, Ross E Esq NEGOTIATION41Anna Fali
1019Mujtaba R MaletArgentina2024-09-02Rangoni Of Florence PROPOSAL25Stephen Shaw
1020Claire H KuskoRussia2024-09-16Feiner Bros QUALIFIED54Xuxue Feng
1021Emily J ChuiAustralia2024-09-07Rousseaux, Michael Esq PROPOSAL79Elwin Sharvill
1022Munro V FollerCanada2024-09-02Chemel, James L Cpa UNQUALIFIED19Stephen Shaw
1023Jones U DilliardAustralia2024-08-28Chemel, James L Cpa PROPOSAL89Anna Fali
1024Francesco H WieserJapan2024-09-10Buckley Miller Wright UNQUALIFIED21Ioni Bowcher
1025Leon X AmigonAustralia2024-09-08Rousseaux, Michael Esq NEGOTIATION42Anna Fali
1026Antonio F MarrierAustralia2024-08-24Buckley Miller Wright NEW29Ivan Magalhaes
1027Octavia J GauchoFrance2024-09-02Chanay, Jeffrey A Esq PROPOSAL16Elwin Sharvill
1028Isabel L GauchoRussia2024-08-30Rousseaux, Michael Esq QUALIFIED73Anna Fali
1029Jennifer W FlosiAustralia2024-09-11Rangoni Of Florence NEW51Asiya Javayant
1030Deepesh D AmigonRussia2024-09-17Printing Dimensions NEW1Elwin Sharvill
1031James D FlosiBrazil2024-08-25Rousseaux, Michael Esq UNQUALIFIED2Onyama Limba
1032Rodrigues Q SlusarskiFrance2024-09-17Commercial Press NEW65Ivan Magalhaes
1033Faith D DilliardAustralia2024-09-07Commercial Press QUALIFIED66Onyama Limba
1034Izzy H NestleBrazil2024-09-02Chanay, Jeffrey A Esq PROPOSAL49Ivan Magalhaes
1035Clifford S NestleJapan2024-08-23Commercial Press PROPOSAL88Ivan Magalhaes
1036Jennifer K TollnerJapan2024-09-05Chanay, Jeffrey A Esq NEW79Xuxue Feng
1037Munro R PaprockiCanada2024-09-04Dorl, James J Esq NEGOTIATION15Anna Fali
1038Clifford X BriddickSpain2024-08-22King, Christopher A Esq PROPOSAL57Elwin Sharvill
1039Aditya N RoysterCanada2024-09-08Chapman, Ross E Esq QUALIFIED48Ioni Bowcher
1040Jeanfrancois N ShinkoUnited Kingdom2024-09-14Rangoni Of Florence NEGOTIATION80Bernardo Dominic
1041Stacey Z NickaJapan2024-08-23Buckley Miller Wright PROPOSAL87Onyama Limba
1042Stacey J FlosiJapan2024-08-27Truhlar And Truhlar Attys NEGOTIATION69Ioni Bowcher
1043Antonio I PerinGermany2024-09-08Buckley Miller Wright RENEWAL10Stephen Shaw
1044Francesco Y ChuiRussia2024-08-24Morlong Associates UNQUALIFIED57Ivan Magalhaes
1045Johnson E TollnerSpain2024-09-17Feltz Printing Service NEW34Ivan Magalhaes
1046Ashley U FollerJapan2024-08-25Benton, John B Jr NEW92Bernardo Dominic
1047Ricardo Y BologniaFrance2024-09-05Printing Dimensions RENEWAL89Ivan Magalhaes
1048Aika B IturbideItaly2024-09-17Morlong Associates QUALIFIED63Bernardo Dominic
1049Johnson G FlosiSpain2024-09-12Benton, John B Jr NEW80Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Adams K BowleySpainAnna Fali PROPOSAL
Kadeem L RulapaughFranceElwin Sharvill UNQUALIFIED
Misaki F GlickBrazilIoni Bowcher PROPOSAL
Alejandro N DarakjyUnited KingdomIoni Bowcher QUALIFIED
Maria T GarufiFranceIvan Magalhaes RENEWAL
Arvin J GillianSpainXuxue Feng QUALIFIED
Jeanfrancois F SaylorsArgentinaAmy Elsner QUALIFIED
Francesco Y SergiArgentinaAsiya Javayant NEW
Mujtaba V GarufiAustraliaIoni Bowcher UNQUALIFIED
Maisha M IturbideIndiaIvan Magalhaes PROPOSAL
Ivar I KuskoJapanOnyama Limba UNQUALIFIED
Munro R KolmetzItalyXuxue Feng NEW
Faith B FerenczSpainAsiya Javayant RENEWAL
Francesco Y StensethGermanyAnna Fali RENEWAL
Emily N BologniaSpainAmy Elsner UNQUALIFIED
Maria U CampainFranceOnyama Limba RENEWAL
Darci P RimGermanyAnna Fali PROPOSAL
Munro Q VenereBrazilOnyama Limba NEGOTIATION
Ashley L InouyeJapanElwin Sharvill PROPOSAL
Greenwood P DoeJapanBernardo Dominic NEGOTIATION
Misaki C TollnerBrazilAmy Elsner RENEWAL
Adams J SchemmerCanadaBernardo Dominic NEGOTIATION
Johnson G MarrierIndiaXuxue Feng QUALIFIED
Claire K FlosiIndiaBernardo Dominic NEGOTIATION
Cody F GlickArgentinaBernardo Dominic UNQUALIFIED
Kaitlin O CaldareraJapanAsiya Javayant UNQUALIFIED
Adams B OldroydItalyXuxue Feng PROPOSAL
Mujtaba Z GlickItalyOnyama Limba NEW
Octavia Z VocelkaCanadaXuxue Feng UNQUALIFIED
Clifford O BriddickBrazilElwin Sharvill QUALIFIED
Cody V DarakjyRussiaIvan Magalhaes NEW
Faith J IturbideItalyElwin Sharvill PROPOSAL
Antonio N VenereArgentinaOnyama Limba PROPOSAL
Arvin U OldroydBrazilElwin Sharvill UNQUALIFIED
Wickens B AlbaresIndiaXuxue Feng NEW
Octavia R SchemmerAustraliaAsiya Javayant UNQUALIFIED
Claire P RulapaughCanadaAsiya Javayant NEW
Deepesh P PoquetteAustraliaBernardo Dominic UNQUALIFIED
Mayumi C KuskoArgentinaOnyama Limba UNQUALIFIED
Jones P KolmetzRussiaOnyama Limba UNQUALIFIED
Jeanfrancois Q DilliardAustraliaIvan Magalhaes RENEWAL
Tony J ChuiGermanyXuxue Feng PROPOSAL
Jennifer F MaletIndiaIoni Bowcher NEGOTIATION
Faith W VocelkaSpainAsiya Javayant QUALIFIED
Kaitlin R AmigonAustraliaStephen Shaw UNQUALIFIED
Costa Z MaletRussiaOnyama Limba NEGOTIATION
Deepesh Y BriddickArgentinaOnyama Limba PROPOSAL
Clifford L StensethArgentinaIvan Magalhaes NEW
Costa A ButtBrazilOnyama Limba RENEWAL
Salvatore U ButtSpainAmy Elsner QUALIFIED
Frozen Columns
Name
Aditya W Briddick
Leon J Ferencz
Costa G Kolmetz
Jones W Ruta
Cody W Butt
Wickens B Kusko
Claire X Iturbide
Emily Q Albares
Clifford A Shinko
Jeanfrancois X Slusarski
Antonio M Saylors
Morrow N Sergi
Jennifer D Whobrey
Munro L Inouye
Silvio O Darakjy
Isabel L Gaucho
Juan Z Venere
Silvio L Shinko
Murillo X Albares
Arvin Z Foller
Stacey V Wieser
Antonio O Nicka
Ashley N Malet
Jefferson Z Garufi
Aruna G Darakjy
Ricardo U Sergi
Leja V Marrier
Izzy P Butt
Adams C Chui
Ricardo C Gillian
Clifford K Shinko
Adams Y Shinko
Aditya U Garufi
Maisha L Bowley
Jeanfrancois Z Venere
James A Doe
David R Nicka
Greenwood T Glick
Nicolas X Butt
Mayumi S Rulapaugh
Julie M Maclead
Mayumi X Malet
Kadeem J Shinko
Jeanfrancois C Poquette
Octavia J Foller
Chavez E Saylors
Jones A Whobrey
Aditya N Gaucho
Cody D Nestle
Aditya A Bowley
IdCountryDate
1000Australia2024-09-06
1001Italy2024-09-17
1002Canada2024-09-15
1003Russia2024-09-03
1004Japan2024-09-15
1005France2024-09-09
1006Japan2024-08-28
1007Brazil2024-08-21
1008Canada2024-09-18
1009Russia2024-08-29
1010France2024-09-05
1011Russia2024-08-31
1012Germany2024-09-08
1013Spain2024-08-22
1014Australia2024-09-02
1015Japan2024-08-27
1016Australia2024-09-15
1017Spain2024-09-17
1018United Kingdom2024-08-23
1019France2024-09-09
1020Italy2024-08-25
1021Spain2024-09-06
1022India2024-09-13
1023India2024-09-19
1024Argentina2024-09-02
1025Spain2024-08-31
1026United Kingdom2024-09-19
1027Argentina2024-09-12
1028United Kingdom2024-09-16
1029Russia2024-09-07
1030Canada2024-08-23
1031France2024-09-02
1032Argentina2024-08-27
1033India2024-09-11
1034Russia2024-09-12
1035Canada2024-08-24
1036Canada2024-08-30
1037Russia2024-08-21
1038Spain2024-09-08
1039Russia2024-09-16
1040Germany2024-09-17
1041Canada2024-09-18
1042Italy2024-09-19
1043Italy2024-08-23
1044France2024-08-31
1045Russia2024-08-21
1046Brazil2024-08-26
1047India2024-09-03
1048Japan2024-09-01
1049Russia2024-09-12

On-Demand Data

NameIdCountryDate
Deepesh S Doe1000Russia2024-08-22
Antonio E Bolognia1001Germany2024-09-08
Tony J Campain1002Argentina2024-09-16
Maria F Butt1003United Kingdom2024-09-13
Rodrigues N Amigon1004Brazil2024-09-14
Claire M Campain1005Australia2024-09-13
Juan P Royster1006United Kingdom2024-09-12
Claire R Briddick1007Australia2024-08-26
Stacey D Kolmetz1008Japan2024-08-22
Izzy O Kolmetz1009Canada2024-09-07
Chavez F Caudy1010Russia2024-08-28
Julie X Malet1011Italy2024-08-21
Faith I Poquette1012Italy2024-09-05
Jennifer C Vocelka1013Spain2024-08-24
James T Ostrosky1014Brazil2024-09-17
Aruna A Venere1015France2024-08-26
Jones O Ferencz1016Canada2024-09-05
David G Waycott1017Germany2024-09-09
Alejandro B Malet1018Canada2024-09-03
Jennifer X Briddick1019United Kingdom2024-09-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey L GarufiJapanOnyama Limba RENEWAL
Jefferson F ButtIndiaIoni Bowcher QUALIFIED
Greenwood J BowleyCanadaIoni Bowcher RENEWAL
Jeanfrancois H CaudyAustraliaStephen Shaw NEGOTIATION
Salvatore G StockhamCanadaStephen Shaw QUALIFIED
Deepesh F FollerItalyIvan Magalhaes RENEWAL
Adams X MaletRussiaElwin Sharvill RENEWAL
Arvin B GarufiArgentinaOnyama Limba PROPOSAL
Murillo N CaldareraFranceIoni Bowcher RENEWAL
Octavia S CaudyIndiaElwin Sharvill NEGOTIATION
Juan V NestleGermanyBernardo Dominic NEGOTIATION
Silvio J DoeFranceAsiya Javayant PROPOSAL
Julie J PerinRussiaIoni Bowcher NEGOTIATION
Kadeem Y IturbideIndiaXuxue Feng NEW
Leon R PaprockiUnited KingdomXuxue Feng QUALIFIED
Emily K VocelkaAustraliaStephen Shaw NEW
Salvatore Q PaprockiUnited KingdomElwin Sharvill UNQUALIFIED
Aruna U VocelkaItalyElwin Sharvill QUALIFIED
Jeanfrancois X GauchoCanadaXuxue Feng NEW
David M VenereIndiaBernardo Dominic PROPOSAL
Munro J KolmetzGermanyElwin Sharvill NEW
Isabel H OldroydItalyStephen Shaw NEW
Greenwood Z DilliardCanadaIoni Bowcher NEGOTIATION
Aruna R GauchoRussiaAnna Fali QUALIFIED
Nicolas H ButtJapanXuxue Feng UNQUALIFIED
Emily R RoysterRussiaAnna Fali RENEWAL
Mujtaba H SchemmerBrazilBernardo Dominic PROPOSAL
Sinclair W FerenczJapanAsiya Javayant PROPOSAL
Francesco V BowleyRussiaAmy Elsner NEGOTIATION
Jones E MaletFranceIvan Magalhaes UNQUALIFIED
Antonio K NickaFranceStephen Shaw NEGOTIATION
Misaki K CaldareraRussiaElwin Sharvill QUALIFIED
Costa A RimCanadaIoni Bowcher QUALIFIED
Jennifer K GauchoSpainIvan Magalhaes NEGOTIATION
Tony Q RimUnited KingdomElwin Sharvill NEGOTIATION
Jeanfrancois V KolmetzBrazilIvan Magalhaes NEGOTIATION
Maisha V TollnerFranceAmy Elsner RENEWAL
Juan G RulapaughItalyElwin Sharvill RENEWAL
Julie V MaletCanadaAsiya Javayant PROPOSAL
Juan N MaletRussiaOnyama Limba 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>