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 W NickaSpainXuxue Feng NEGOTIATION
Silvio P MaletIndiaAmy Elsner UNQUALIFIED
Ashley K SaylorsRussiaOnyama Limba NEW
Smith Z StensethJapanAsiya Javayant RENEWAL
Greenwood G GauchoIndiaElwin Sharvill QUALIFIED
Claire U StockhamBrazilAsiya Javayant QUALIFIED
Salvatore N BologniaBrazilAsiya Javayant UNQUALIFIED
Alejandro P GarufiFranceAsiya Javayant QUALIFIED
Francesco Z FollerGermanyAmy Elsner RENEWAL
Jones I TollnerGermanyBernardo Dominic QUALIFIED
Jefferson I DarakjyBrazilBernardo Dominic QUALIFIED
Ashley I FigeroaArgentinaStephen Shaw UNQUALIFIED
Julie V DoeRussiaOnyama Limba UNQUALIFIED
Mayumi S ShinkoJapanBernardo Dominic UNQUALIFIED
Murillo B MacleadRussiaAnna Fali NEW
Rodrigues L FlosiItalyXuxue Feng PROPOSAL
Jones X ChuiRussiaXuxue Feng QUALIFIED
Cody F BowleyItalyOnyama Limba RENEWAL
Deepesh K WaycottRussiaBernardo Dominic UNQUALIFIED
Faith P NickaJapanBernardo Dominic NEW
Francesco E GarufiGermanyIvan Magalhaes PROPOSAL
Aditya U VenereArgentinaXuxue Feng QUALIFIED
Ashley C StockhamItalyElwin Sharvill NEW
Greenwood D PoquetteIndiaAmy Elsner NEGOTIATION
Stacey D PoquetteArgentinaOnyama Limba QUALIFIED
Octavia Y StensethJapanAmy Elsner NEGOTIATION
Claire K PaprockiGermanyAsiya Javayant NEW
Tony Y PoquetteUnited KingdomElwin Sharvill NEW
Clifford Q TollnerAustraliaAsiya Javayant PROPOSAL
Greenwood N FerenczItalyAsiya Javayant UNQUALIFIED
Jennifer W BowleySpainAsiya Javayant NEGOTIATION
Deepesh R CaldareraCanadaOnyama Limba QUALIFIED
Izzy V OldroydJapanIvan Magalhaes RENEWAL
Munro U ButtFranceAnna Fali QUALIFIED
Ricardo O WieserBrazilIoni Bowcher QUALIFIED
Julie J CaudyItalyOnyama Limba NEGOTIATION
Jennifer E SchemmerUnited KingdomXuxue Feng RENEWAL
Salvatore J CaldareraJapanBernardo Dominic NEGOTIATION
Julie O InouyeItalyAmy Elsner NEGOTIATION
Kadeem F GillianSpainAsiya Javayant NEGOTIATION
Maria K KolmetzUnited KingdomBernardo Dominic PROPOSAL
Costa L FerenczArgentinaAmy Elsner UNQUALIFIED
Cody U SlusarskiUnited KingdomIoni Bowcher RENEWAL
Salvatore O VenereFranceIvan Magalhaes PROPOSAL
Darci V PaprockiCanadaAsiya Javayant RENEWAL
Izzy F ChuiBrazilAmy Elsner QUALIFIED
Maisha H OstroskyAustraliaStephen Shaw QUALIFIED
Ricardo I BowleyArgentinaAsiya Javayant NEGOTIATION
Julie P StensethItalyAnna Fali NEW
Kadeem X PoquetteArgentinaAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika M AlbaresJapanAmy Elsner NEGOTIATION
Greenwood A SchemmerCanadaIvan Magalhaes PROPOSAL
Morrow W GauchoFranceOnyama Limba QUALIFIED
Smith A FlosiBrazilIoni Bowcher RENEWAL
Misaki F MacleadIndiaAsiya Javayant RENEWAL
Jennifer D PaprockiFranceAsiya Javayant NEW
Leja V MaletAustraliaIoni Bowcher UNQUALIFIED
Faith N CampainItalyIoni Bowcher UNQUALIFIED
Maisha A MarrierSpainStephen Shaw RENEWAL
Nicolas L PoquetteIndiaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James D WieserGermany2024-05-25Printing Dimensions NEGOTIATION67Ivan Magalhaes
1001Munro O GarufiSpain2024-05-20Chanay, Jeffrey A Esq PROPOSAL57Bernardo Dominic
1002Wickens I RulapaughItaly2024-05-22Feiner Bros QUALIFIED39Ivan Magalhaes
1003Murillo S PoquetteJapan2024-05-26Rousseaux, Michael Esq UNQUALIFIED12Stephen Shaw
1004Stacey O DarakjyFrance2024-05-31Morlong Associates RENEWAL96Amy Elsner
1005Mayumi J VocelkaBrazil2024-06-17Commercial Press RENEWAL75Stephen Shaw
1006Juan R CaldareraArgentina2024-05-27Morlong Associates UNQUALIFIED12Ivan Magalhaes
1007Silvio Q GillianGermany2024-05-22Feltz Printing Service NEW63Anna Fali
1008Antonio V KolmetzGermany2024-06-02Dorl, James J Esq UNQUALIFIED39Asiya Javayant
1009Mujtaba R FigeroaArgentina2024-05-22Chanay, Jeffrey A Esq QUALIFIED6Anna Fali
1010David S RoysterCanada2024-05-24Feiner Bros UNQUALIFIED90Ivan Magalhaes
1011Antonio G ChuiUnited Kingdom2024-05-19Commercial Press QUALIFIED55Xuxue Feng
1012Leja M AmigonIndia2024-06-06Chanay, Jeffrey A Esq NEGOTIATION96Asiya Javayant
1013Jeanfrancois H OstroskyItaly2024-06-10Buckley Miller Wright UNQUALIFIED84Elwin Sharvill
1014Costa N ChuiAustralia2024-06-07Chanay, Jeffrey A Esq NEGOTIATION53Onyama Limba
1015Alejandro X MarrierItaly2024-06-05Buckley Miller Wright NEW23Anna Fali
1016Leon I DilliardRussia2024-05-31Feltz Printing Service RENEWAL13Ivan Magalhaes
1017Nicolas P MorascaCanada2024-05-21Rousseaux, Michael Esq PROPOSAL73Anna Fali
1018Maria D FollerSpain2024-06-05Buckley Miller Wright UNQUALIFIED56Anna Fali
1019Nicolas W DoeSpain2024-06-01Chapman, Ross E Esq RENEWAL17Asiya Javayant
1020Nicolas T InouyeGermany2024-05-24Feltz Printing Service RENEWAL87Onyama Limba
1021Johnson Y FigeroaArgentina2024-06-05Morlong Associates PROPOSAL49Asiya Javayant
1022James C GauchoIndia2024-05-29Truhlar And Truhlar Attys NEGOTIATION58Amy Elsner
1023Juan B MarrierJapan2024-06-16Truhlar And Truhlar Attys QUALIFIED62Ioni Bowcher
1024Maria V RutaIndia2024-05-24Commercial Press RENEWAL21Xuxue Feng
1025Claire X OstroskyUnited Kingdom2024-06-07Chapman, Ross E Esq QUALIFIED61Bernardo Dominic
1026Arvin F WhobreyRussia2024-05-22Rousseaux, Michael Esq NEW39Amy Elsner
1027Octavia D SergiUnited Kingdom2024-06-17Buckley Miller Wright PROPOSAL29Xuxue Feng
1028Silvio C PaprockiIndia2024-05-26King, Christopher A Esq UNQUALIFIED26Onyama Limba
1029Silvio K MaletFrance2024-05-21Dorl, James J Esq NEW13Stephen Shaw
1030Aditya G NickaAustralia2024-06-08Printing Dimensions RENEWAL7Ivan Magalhaes
1031Julie Y ButtSpain2024-06-11Truhlar And Truhlar Attys PROPOSAL47Onyama Limba
1032Wickens E AmigonUnited Kingdom2024-05-27Chanay, Jeffrey A Esq QUALIFIED35Amy Elsner
1033Mujtaba T PaprockiUnited Kingdom2024-06-13Dorl, James J Esq RENEWAL72Xuxue Feng
1034Tony U PaprockiAustralia2024-06-12Dorl, James J Esq RENEWAL84Onyama Limba
1035Chavez Y RutaArgentina2024-06-05Buckley Miller Wright UNQUALIFIED43Asiya Javayant
1036Salvatore V GillianBrazil2024-05-26Dorl, James J Esq UNQUALIFIED17Amy Elsner
1037Emily M GarufiIndia2024-05-19Chapman, Ross E Esq NEGOTIATION79Asiya Javayant
1038Octavia H MarrierAustralia2024-05-25Morlong Associates NEW60Ivan Magalhaes
1039Ricardo J RimGermany2024-06-17Benton, John B Jr NEGOTIATION5Elwin Sharvill
1040Adams K GlickGermany2024-05-30Feltz Printing Service QUALIFIED0Bernardo Dominic
1041Arvin A DilliardItaly2024-05-23King, Christopher A Esq NEW33Bernardo Dominic
1042Smith E FerenczGermany2024-06-06Feltz Printing Service RENEWAL15Ioni Bowcher
1043Nicolas H AlbaresCanada2024-05-20Buckley Miller Wright PROPOSAL38Anna Fali
1044Silvio Q GarufiAustralia2024-05-25Commercial Press NEGOTIATION15Asiya Javayant
1045Emily Q CaudyFrance2024-06-03Dorl, James J Esq QUALIFIED49Ioni Bowcher
1046Francesco N GauchoAustralia2024-05-27Rangoni Of Florence QUALIFIED75Bernardo Dominic
1047Nicolas X SaylorsArgentina2024-06-15Chanay, Jeffrey A Esq RENEWAL18Stephen Shaw
1048Darci V WaycottAustralia2024-05-25Chapman, Ross E Esq RENEWAL54Anna Fali
1049Nicolas C RutaRussia2024-06-17Morlong Associates PROPOSAL42Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Tony O SlusarskiIndiaAmy Elsner RENEWAL
Jefferson A StockhamUnited KingdomElwin Sharvill QUALIFIED
Isabel Y SchemmerAustraliaIoni Bowcher NEGOTIATION
Jennifer L FerenczItalyIoni Bowcher PROPOSAL
Stacey D MarrierIndiaAmy Elsner PROPOSAL
Aruna T SchemmerFranceAmy Elsner PROPOSAL
Darci K RimJapanAsiya Javayant NEW
Darci I RoysterRussiaOnyama Limba RENEWAL
Antonio E CampainGermanyElwin Sharvill RENEWAL
Ashley S DoeSpainXuxue Feng RENEWAL
Ricardo E GauchoCanadaAmy Elsner QUALIFIED
David T PerinArgentinaStephen Shaw UNQUALIFIED
Mujtaba G PoquetteJapanXuxue Feng QUALIFIED
Juan V VenereIndiaElwin Sharvill NEW
Murillo D SergiFranceOnyama Limba RENEWAL
Maria W FollerUnited KingdomIvan Magalhaes QUALIFIED
Kaitlin Z FerenczAustraliaAsiya Javayant QUALIFIED
Jeanfrancois G ShinkoArgentinaElwin Sharvill NEGOTIATION
Jennifer E SlusarskiArgentinaAnna Fali RENEWAL
Aika M OstroskyCanadaXuxue Feng NEGOTIATION
Nicolas M PoquetteAustraliaXuxue Feng QUALIFIED
Sinclair K FigeroaBrazilAnna Fali NEGOTIATION
Arvin K InouyeBrazilElwin Sharvill NEW
Smith G StockhamItalyAmy Elsner PROPOSAL
Mayumi P RimUnited KingdomAnna Fali NEW
Rodrigues C RutaBrazilIvan Magalhaes NEGOTIATION
Jennifer C TollnerItalyIoni Bowcher QUALIFIED
Francesco A WaycottSpainOnyama Limba NEW
Juan K FlosiIndiaXuxue Feng NEW
Morrow G RutaIndiaStephen Shaw QUALIFIED
Jeanfrancois I MacleadItalyXuxue Feng RENEWAL
Antonio T SergiBrazilXuxue Feng UNQUALIFIED
Smith A DarakjyGermanyBernardo Dominic NEW
Misaki J CaudyRussiaAsiya Javayant PROPOSAL
Sinclair O IturbideBrazilAsiya Javayant NEGOTIATION
Aruna K AlbaresUnited KingdomAsiya Javayant PROPOSAL
Claire S BowleyGermanyIvan Magalhaes UNQUALIFIED
Emily K SchemmerItalyAsiya Javayant PROPOSAL
Octavia L PerinBrazilXuxue Feng NEGOTIATION
Greenwood W MacleadRussiaElwin Sharvill PROPOSAL
Isabel U GillianUnited KingdomIoni Bowcher RENEWAL
Alejandro H KuskoAustraliaBernardo Dominic UNQUALIFIED
Rodrigues Y PoquetteUnited KingdomElwin Sharvill PROPOSAL
Morrow N GauchoCanadaAsiya Javayant UNQUALIFIED
Octavia J CaldareraAustraliaAnna Fali RENEWAL
Munro Y KolmetzGermanyAmy Elsner PROPOSAL
Jefferson Y DoeArgentinaIoni Bowcher NEGOTIATION
Ivar S FerenczBrazilIvan Magalhaes QUALIFIED
Darci B AmigonUnited KingdomAmy Elsner PROPOSAL
Arvin T TollnerRussiaAmy Elsner PROPOSAL
Frozen Columns
Name
Aditya D Gaucho
Izzy R Bowley
Aditya W Shinko
Emily I Campain
Morrow I Amigon
Leja M Paprocki
Mujtaba S Poquette
Claire L Gaucho
Arvin B Schemmer
Kadeem V Stenseth
Claire A Iturbide
Isabel S Oldroyd
Alejandro M Doe
Sinclair T Briddick
Alejandro E Kusko
Aruna H Tollner
Izzy B Glick
Munro A Ferencz
Ricardo D Ferencz
Murillo A Inouye
Mayumi S Foller
Mujtaba C Rim
David R Tollner
Aruna D Royster
Silvio M Flosi
Aika O Venere
Ricardo S Inouye
Francesco S Venere
Misaki E Sergi
Juan C Amigon
Silvio M Schemmer
Leja G Schemmer
Maria C Slusarski
Sinclair W Gillian
Tony J Ferencz
Morrow N Wieser
Kadeem M Iturbide
Maria K Dilliard
Emily J Campain
Antonio A Stenseth
Munro T Bowley
Juan Y Gaucho
Clifford A Poquette
Aditya M Kusko
Aditya S Morasca
Aditya M Shinko
Octavia K Stockham
Faith D Perin
Arvin P Figeroa
Leja J Vocelka
IdCountryDate
1000India2024-06-02
1001India2024-06-04
1002Japan2024-05-29
1003France2024-06-16
1004Canada2024-05-31
1005India2024-05-22
1006Italy2024-05-29
1007Canada2024-06-09
1008India2024-05-22
1009India2024-06-10
1010India2024-05-21
1011Russia2024-05-31
1012Japan2024-06-06
1013Italy2024-06-11
1014Germany2024-06-07
1015Italy2024-05-27
1016Germany2024-05-19
1017Germany2024-05-24
1018United Kingdom2024-05-26
1019France2024-05-26
1020India2024-05-28
1021Spain2024-06-17
1022Spain2024-06-10
1023Canada2024-06-11
1024Germany2024-05-25
1025Russia2024-06-06
1026Australia2024-06-03
1027Australia2024-06-11
1028Canada2024-06-08
1029Argentina2024-06-01
1030Brazil2024-05-31
1031Canada2024-05-26
1032Argentina2024-05-25
1033Russia2024-06-05
1034Russia2024-06-07
1035Italy2024-05-20
1036Japan2024-06-13
1037Spain2024-06-10
1038France2024-06-02
1039Russia2024-05-27
1040Russia2024-06-17
1041United Kingdom2024-06-08
1042Germany2024-06-10
1043France2024-05-30
1044Italy2024-05-30
1045Brazil2024-06-09
1046France2024-06-07
1047Japan2024-05-28
1048France2024-06-15
1049Canada2024-05-20

On-Demand Data

NameIdCountryDate
Alejandro J Marrier1000Russia2024-06-17
Octavia P Paprocki1001Brazil2024-06-01
Julie H Schemmer1002Argentina2024-06-02
Darci B Oldroyd1003Russia2024-05-23
Jefferson H Gaucho1004Canada2024-06-01
Smith I Saylors1005Argentina2024-05-23
Jones Z Caldarera1006Argentina2024-06-10
Chavez H Morasca1007Brazil2024-05-30
Silvio Q Nicka1008Spain2024-06-15
Aika U Bowley1009United Kingdom2024-06-16
Aditya H Bolognia1010Japan2024-06-14
Costa P Bolognia1011United Kingdom2024-06-12
Ricardo J Iturbide1012Japan2024-06-15
Wickens M Glick1013Canada2024-06-17
Faith A Bolognia1014Spain2024-05-20
David X Kusko1015Spain2024-06-15
Mujtaba P Inouye1016Brazil2024-05-19
Jeanfrancois M Waycott1017United Kingdom2024-06-17
Kaitlin Y Paprocki1018Spain2024-06-14
Antonio P Flosi1019Russia2024-06-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna B FollerItalyStephen Shaw UNQUALIFIED
Mujtaba Q WieserSpainAnna Fali QUALIFIED
Darci X FollerSpainIoni Bowcher PROPOSAL
Chavez T DarakjyItalyXuxue Feng NEGOTIATION
Faith F MarrierUnited KingdomAnna Fali NEW
Sinclair O GarufiItalyBernardo Dominic NEW
Greenwood D StockhamBrazilStephen Shaw NEGOTIATION
Adams E MacleadGermanyIvan Magalhaes RENEWAL
Ashley D KuskoItalyOnyama Limba NEGOTIATION
Aruna J InouyeIndiaBernardo Dominic UNQUALIFIED
Claire D FlosiSpainAmy Elsner UNQUALIFIED
Tony X FlosiUnited KingdomStephen Shaw QUALIFIED
Aditya H FerenczCanadaStephen Shaw NEW
Aruna Z SaylorsFranceIvan Magalhaes UNQUALIFIED
Julie L NestleFranceBernardo Dominic NEW
Claire E MorascaAustraliaBernardo Dominic PROPOSAL
Nicolas T MacleadArgentinaAsiya Javayant UNQUALIFIED
Adams V SlusarskiIndiaAmy Elsner QUALIFIED
Sinclair I BologniaSpainBernardo Dominic QUALIFIED
Julie Z SlusarskiItalyElwin Sharvill RENEWAL
Kaitlin I PoquetteSpainStephen Shaw PROPOSAL
James D DarakjySpainIvan Magalhaes NEW
Isabel H IturbideItalyElwin Sharvill NEW
Jefferson Q GarufiSpainAmy Elsner NEGOTIATION
Jennifer I VocelkaJapanBernardo Dominic NEW
Octavia D TollnerAustraliaAmy Elsner NEGOTIATION
Sinclair U BriddickArgentinaElwin Sharvill UNQUALIFIED
Ivar C BologniaJapanXuxue Feng QUALIFIED
Kaitlin C PoquetteIndiaOnyama Limba QUALIFIED
Faith M RutaJapanElwin Sharvill NEGOTIATION
Ashley E PoquetteItalyBernardo Dominic UNQUALIFIED
Adams Z FollerBrazilIoni Bowcher NEW
Deepesh K WaycottGermanyStephen Shaw RENEWAL
James J KolmetzBrazilIoni Bowcher NEW
Munro V StensethSpainAsiya Javayant NEGOTIATION
Mujtaba L SergiCanadaStephen Shaw NEGOTIATION
Greenwood K ShinkoArgentinaBernardo Dominic PROPOSAL
Juan F SaylorsIndiaAmy Elsner RENEWAL
Aruna M MaletUnited KingdomElwin Sharvill RENEWAL
Kaitlin R KuskoSpainAmy Elsner 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>