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 Z FigeroaBrazilIvan Magalhaes NEW
Ashley V KuskoRussiaAmy Elsner QUALIFIED
Greenwood P RoysterIndiaOnyama Limba NEGOTIATION
Wickens M DarakjySpainAmy Elsner RENEWAL
Juan D IturbideCanadaIoni Bowcher QUALIFIED
Cody R GlickCanadaElwin Sharvill RENEWAL
Cody Z ShinkoAustraliaIvan Magalhaes RENEWAL
Ivar S KolmetzJapanAmy Elsner NEGOTIATION
Aika K RoysterFranceStephen Shaw QUALIFIED
Wickens Y SlusarskiIndiaIvan Magalhaes PROPOSAL
David W WaycottIndiaStephen Shaw RENEWAL
Jeanfrancois A DarakjyItalyAmy Elsner QUALIFIED
James W AmigonBrazilXuxue Feng NEW
Francesco G VocelkaAustraliaIoni Bowcher NEW
Morrow X MaletIndiaAmy Elsner PROPOSAL
Maisha I GlickAustraliaStephen Shaw NEW
Isabel D TollnerArgentinaOnyama Limba PROPOSAL
Tony I GauchoJapanElwin Sharvill PROPOSAL
Jones G InouyeBrazilBernardo Dominic PROPOSAL
Antonio C CaudyFranceOnyama Limba NEW
Maria U MaletGermanyXuxue Feng NEGOTIATION
Aruna L ButtUnited KingdomXuxue Feng PROPOSAL
Claire L GlickItalyAnna Fali PROPOSAL
Aika O PerinArgentinaAnna Fali NEW
Antonio F GillianBrazilOnyama Limba NEW
Isabel S PaprockiBrazilBernardo Dominic RENEWAL
Stacey P GarufiJapanAsiya Javayant NEGOTIATION
Tony B AmigonFranceOnyama Limba NEW
Jones W MorascaUnited KingdomIoni Bowcher RENEWAL
Mujtaba O ChuiJapanIvan Magalhaes NEGOTIATION
Sinclair Y NestleJapanXuxue Feng NEW
Costa F RoysterArgentinaXuxue Feng UNQUALIFIED
Darci F RimSpainStephen Shaw PROPOSAL
Jefferson B SlusarskiRussiaAnna Fali UNQUALIFIED
Ashley U OstroskyUnited KingdomAnna Fali NEW
Munro Y SlusarskiJapanStephen Shaw NEW
Antonio D WhobreyGermanyAmy Elsner NEGOTIATION
Ashley I NestleSpainElwin Sharvill PROPOSAL
Stacey F CaudyJapanAnna Fali RENEWAL
Chavez R VocelkaAustraliaAmy Elsner PROPOSAL
Alejandro R SchemmerItalyBernardo Dominic RENEWAL
Sinclair J DilliardBrazilAsiya Javayant NEGOTIATION
Adams T ShinkoItalyAmy Elsner NEGOTIATION
Juan K AlbaresAustraliaAnna Fali NEW
Rodrigues F MorascaRussiaBernardo Dominic RENEWAL
Claire Z StockhamUnited KingdomAsiya Javayant UNQUALIFIED
Leon H MaletAustraliaAnna Fali PROPOSAL
Izzy O StockhamFranceElwin Sharvill NEW
Smith F WieserFranceIvan Magalhaes UNQUALIFIED
Aika P VocelkaAustraliaBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika X GillianBrazilXuxue Feng PROPOSAL
Jones Q CampainItalyIoni Bowcher UNQUALIFIED
Jones O PoquetteBrazilBernardo Dominic UNQUALIFIED
Adams K VenereSpainXuxue Feng UNQUALIFIED
David Q DoeIndiaAsiya Javayant PROPOSAL
Aika D WieserRussiaElwin Sharvill UNQUALIFIED
Mujtaba G MaletIndiaAnna Fali QUALIFIED
Ivar A FigeroaArgentinaOnyama Limba RENEWAL
Octavia X OstroskySpainAmy Elsner NEGOTIATION
Arvin C ChuiFranceAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel K GauchoGermany2024-05-23Rousseaux, Michael Esq NEGOTIATION5Bernardo Dominic
1001Chavez K GillianItaly2024-06-03Dorl, James J Esq UNQUALIFIED89Xuxue Feng
1002Aditya Z RoysterIndia2024-06-20Printing Dimensions UNQUALIFIED43Onyama Limba
1003Adams X DarakjyJapan2024-06-16Morlong Associates UNQUALIFIED80Anna Fali
1004Silvio S WieserIndia2024-05-27Printing Dimensions PROPOSAL57Onyama Limba
1005Ivar U CampainRussia2024-06-21Truhlar And Truhlar Attys QUALIFIED36Bernardo Dominic
1006Julie H GlickUnited Kingdom2024-06-17Benton, John B Jr UNQUALIFIED92Ioni Bowcher
1007Jeanfrancois L ShinkoRussia2024-06-14Truhlar And Truhlar Attys QUALIFIED69Stephen Shaw
1008Smith Q WaycottIndia2024-06-20King, Christopher A Esq NEW81Ioni Bowcher
1009David T FigeroaCanada2024-05-25Chemel, James L Cpa PROPOSAL63Elwin Sharvill
1010Ricardo P CaudyUnited Kingdom2024-06-01Rousseaux, Michael Esq NEGOTIATION72Bernardo Dominic
1011Juan H VocelkaJapan2024-05-26Dorl, James J Esq NEW11Asiya Javayant
1012Aditya Q FollerFrance2024-06-10Buckley Miller Wright QUALIFIED33Amy Elsner
1013Sinclair H GillianUnited Kingdom2024-05-26Feltz Printing Service NEW57Ivan Magalhaes
1014Sinclair I MaletItaly2024-06-13Rousseaux, Michael Esq NEGOTIATION44Xuxue Feng
1015Jennifer J NestleItaly2024-06-21Dorl, James J Esq RENEWAL54Stephen Shaw
1016Leja S MarrierJapan2024-05-29Chapman, Ross E Esq NEGOTIATION85Ioni Bowcher
1017Smith B FigeroaItaly2024-06-16Dorl, James J Esq RENEWAL52Onyama Limba
1018Emily B CaudyItaly2024-06-11Commercial Press RENEWAL67Amy Elsner
1019Adams S VocelkaUnited Kingdom2024-06-03Truhlar And Truhlar Attys NEGOTIATION71Anna Fali
1020Leja F FlosiFrance2024-05-29Printing Dimensions QUALIFIED63Xuxue Feng
1021Faith Q FigeroaItaly2024-06-12Truhlar And Truhlar Attys RENEWAL4Xuxue Feng
1022David Z AmigonIndia2024-06-09Commercial Press QUALIFIED80Onyama Limba
1023Morrow T OldroydAustralia2024-06-18Rangoni Of Florence UNQUALIFIED77Anna Fali
1024Deepesh H OldroydFrance2024-06-08Feiner Bros UNQUALIFIED19Anna Fali
1025Antonio A VocelkaAustralia2024-06-07Feiner Bros UNQUALIFIED3Bernardo Dominic
1026Greenwood P ButtFrance2024-06-04Rangoni Of Florence NEGOTIATION23Anna Fali
1027Cody M NickaArgentina2024-06-15Benton, John B Jr UNQUALIFIED35Anna Fali
1028Mayumi L WaycottAustralia2024-06-16Rousseaux, Michael Esq UNQUALIFIED79Bernardo Dominic
1029Antonio E CampainRussia2024-06-09Chapman, Ross E Esq RENEWAL52Anna Fali
1030Deepesh I RulapaughUnited Kingdom2024-06-20Rousseaux, Michael Esq PROPOSAL97Stephen Shaw
1031Julie Z RulapaughRussia2024-06-13King, Christopher A Esq RENEWAL23Asiya Javayant
1032Morrow I TollnerGermany2024-06-20Morlong Associates QUALIFIED38Bernardo Dominic
1033Claire D CampainIndia2024-05-31Feiner Bros NEW52Ioni Bowcher
1034Faith Q CampainIndia2024-06-10Rangoni Of Florence NEGOTIATION86Stephen Shaw
1035Izzy H FollerArgentina2024-05-24Truhlar And Truhlar Attys NEW30Elwin Sharvill
1036Chavez I TollnerBrazil2024-06-02King, Christopher A Esq UNQUALIFIED57Amy Elsner
1037Smith O RimArgentina2024-06-17Chemel, James L Cpa NEGOTIATION62Stephen Shaw
1038Aika B SaylorsFrance2024-06-01Commercial Press NEW12Stephen Shaw
1039Izzy A CampainUnited Kingdom2024-06-14Truhlar And Truhlar Attys QUALIFIED72Stephen Shaw
1040Salvatore P VocelkaGermany2024-05-27Rousseaux, Michael Esq RENEWAL19Ioni Bowcher
1041Salvatore W SergiIndia2024-06-19Rousseaux, Michael Esq NEGOTIATION80Stephen Shaw
1042Claire L KuskoArgentina2024-05-27Morlong Associates RENEWAL49Ioni Bowcher
1043Misaki F ButtArgentina2024-06-14Printing Dimensions UNQUALIFIED76Bernardo Dominic
1044Johnson B DilliardJapan2024-06-10Feiner Bros QUALIFIED86Ioni Bowcher
1045Faith I NickaBrazil2024-05-25Commercial Press UNQUALIFIED98Stephen Shaw
1046Rodrigues D SlusarskiIndia2024-05-24Chanay, Jeffrey A Esq NEGOTIATION19Onyama Limba
1047Salvatore R AmigonFrance2024-05-26Feiner Bros RENEWAL40Ioni Bowcher
1048Antonio S NickaBrazil2024-06-08Rousseaux, Michael Esq NEW19Elwin Sharvill
1049Aditya A BowleyIndia2024-06-02Dorl, James J Esq PROPOSAL51Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Greenwood D KolmetzGermanyAmy Elsner NEGOTIATION
Morrow J PaprockiRussiaAmy Elsner NEGOTIATION
Juan M WaycottGermanyBernardo Dominic QUALIFIED
Antonio N GarufiJapanAnna Fali UNQUALIFIED
Jennifer W GillianRussiaIvan Magalhaes RENEWAL
Wickens Y PoquetteUnited KingdomAnna Fali RENEWAL
Juan P CampainItalyElwin Sharvill NEGOTIATION
Tony P OstroskyCanadaAnna Fali QUALIFIED
Rodrigues K CaudySpainIoni Bowcher UNQUALIFIED
Munro U AlbaresIndiaAsiya Javayant NEW
Mayumi Q SlusarskiJapanIoni Bowcher NEGOTIATION
Silvio X RoysterJapanOnyama Limba NEW
Octavia L WieserFranceAmy Elsner QUALIFIED
Rodrigues V ShinkoAustraliaAnna Fali NEGOTIATION
Morrow X OstroskyArgentinaAsiya Javayant RENEWAL
Arvin T CaudyRussiaIoni Bowcher NEGOTIATION
Jefferson U VocelkaBrazilElwin Sharvill PROPOSAL
Mujtaba Y DarakjyCanadaXuxue Feng QUALIFIED
Sinclair K TollnerGermanyBernardo Dominic RENEWAL
David U CampainRussiaBernardo Dominic QUALIFIED
Mujtaba L AmigonIndiaIoni Bowcher QUALIFIED
Octavia M BowleyGermanyIoni Bowcher PROPOSAL
Aika N OldroydAustraliaAsiya Javayant NEGOTIATION
Emily A OstroskySpainOnyama Limba UNQUALIFIED
Octavia Y FlosiCanadaIvan Magalhaes PROPOSAL
Jennifer S GlickRussiaAnna Fali RENEWAL
Juan X SchemmerUnited KingdomStephen Shaw NEGOTIATION
Misaki U NestleIndiaAnna Fali PROPOSAL
Emily D RimJapanXuxue Feng UNQUALIFIED
Johnson I GarufiJapanIvan Magalhaes NEGOTIATION
Sinclair W DilliardAustraliaStephen Shaw UNQUALIFIED
Misaki V StockhamSpainAmy Elsner UNQUALIFIED
Octavia R GauchoUnited KingdomOnyama Limba PROPOSAL
Jennifer G PaprockiArgentinaOnyama Limba RENEWAL
Morrow H DoeRussiaIvan Magalhaes QUALIFIED
Antonio G PerinCanadaBernardo Dominic QUALIFIED
Chavez K RoysterItalyElwin Sharvill UNQUALIFIED
Misaki W PoquetteUnited KingdomIoni Bowcher RENEWAL
Clifford O GillianIndiaAnna Fali UNQUALIFIED
Tony A ChuiSpainIoni Bowcher RENEWAL
Silvio I ChuiBrazilElwin Sharvill NEW
Darci U DilliardJapanAnna Fali RENEWAL
Emily L BowleyAustraliaElwin Sharvill RENEWAL
Greenwood K SaylorsJapanBernardo Dominic UNQUALIFIED
Clifford Z AlbaresFranceXuxue Feng RENEWAL
James J DoeCanadaAnna Fali NEGOTIATION
Ashley V OldroydItalyOnyama Limba NEGOTIATION
Wickens V NickaArgentinaAnna Fali UNQUALIFIED
Arvin A GillianUnited KingdomElwin Sharvill QUALIFIED
Arvin Z BriddickJapanIoni Bowcher RENEWAL
Frozen Columns
Name
Salvatore V Iturbide
Misaki X Nestle
Rodrigues V Amigon
Chavez H Perin
Kaitlin J Bolognia
Jefferson D Slusarski
Darci V Ostrosky
Stacey E Campain
Jones H Perin
James T Wieser
Francesco S Darakjy
Wickens G Briddick
Misaki M Caudy
Salvatore H Dilliard
Ricardo S Gaucho
Octavia D Chui
Sinclair S Marrier
Octavia P Maclead
Juan C Venere
Mujtaba G Flosi
Antonio R Flosi
Murillo N Ferencz
Stacey J Schemmer
Maria N Albares
Arvin I Inouye
Francesco F Maclead
Johnson Y Poquette
Isabel D Foller
Chavez G Gillian
Wickens T Bolognia
Francesco U Whobrey
Francesco W Stenseth
Claire B Paprocki
Isabel L Darakjy
Darci R Marrier
Antonio Z Darakjy
Silvio V Marrier
Ashley I Shinko
Faith X Royster
David F Rulapaugh
Antonio Z Stockham
Faith I Poquette
Johnson W Marrier
Kaitlin K Figeroa
Arvin D Stenseth
Faith H Whobrey
Octavia S Paprocki
Alejandro P Glick
Julie S Venere
Sinclair N Glick
IdCountryDate
1000Russia2024-06-06
1001Spain2024-06-11
1002France2024-06-08
1003Australia2024-06-16
1004Australia2024-06-19
1005Italy2024-06-21
1006Canada2024-06-01
1007Australia2024-06-13
1008Russia2024-06-15
1009Argentina2024-05-31
1010Spain2024-05-29
1011United Kingdom2024-06-08
1012India2024-06-01
1013Brazil2024-06-20
1014Japan2024-06-14
1015Brazil2024-06-21
1016India2024-06-06
1017Italy2024-06-15
1018Italy2024-05-28
1019India2024-05-27
1020Canada2024-06-08
1021Italy2024-05-26
1022Canada2024-05-30
1023Australia2024-05-27
1024Germany2024-06-15
1025Germany2024-06-09
1026Canada2024-05-26
1027Spain2024-05-30
1028Canada2024-06-07
1029Spain2024-06-20
1030Australia2024-06-01
1031Japan2024-06-04
1032Canada2024-06-09
1033Argentina2024-06-21
1034Canada2024-06-16
1035Germany2024-06-18
1036United Kingdom2024-05-29
1037Germany2024-06-03
1038Australia2024-05-29
1039Brazil2024-06-08
1040Germany2024-06-08
1041India2024-05-27
1042Canada2024-05-31
1043United Kingdom2024-06-10
1044Canada2024-06-03
1045Germany2024-06-08
1046Argentina2024-05-28
1047Canada2024-06-10
1048Spain2024-05-26
1049United Kingdom2024-06-09

On-Demand Data

NameIdCountryDate
Sinclair I Marrier1000Spain2024-05-25
Kadeem C Waycott1001Argentina2024-05-25
Arvin W Amigon1002Argentina2024-06-11
Jones K Kolmetz1003Italy2024-06-02
Aika N Caudy1004Argentina2024-06-15
Adams K Gillian1005Russia2024-06-08
Chavez W Inouye1006Germany2024-06-11
James M Morasca1007Spain2024-05-28
Alejandro K Gaucho1008Argentina2024-06-21
Leja O Paprocki1009France2024-05-31
Smith G Venere1010Australia2024-05-30
Octavia A Ostrosky1011Spain2024-05-26
Darci P Ruta1012Japan2024-06-06
Ashley A Nestle1013Germany2024-06-12
Stacey M Dilliard1014Germany2024-06-14
Claire L Inouye1015Australia2024-06-17
Jefferson O Kusko1016Japan2024-05-23
Ashley O Wieser1017France2024-06-09
Aruna E Saylors1018Germany2024-05-27
Misaki B Marrier1019Spain2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro L GarufiItalyXuxue Feng NEGOTIATION
Maisha Y GarufiItalyOnyama Limba UNQUALIFIED
Deepesh R VocelkaCanadaIvan Magalhaes PROPOSAL
Emily P BriddickIndiaAnna Fali PROPOSAL
Aika F InouyeAustraliaIvan Magalhaes NEW
Alejandro K DilliardSpainAnna Fali QUALIFIED
Arvin E RoysterJapanAnna Fali NEW
Julie H DarakjyRussiaIvan Magalhaes UNQUALIFIED
Clifford C OstroskyUnited KingdomIoni Bowcher NEGOTIATION
Clifford M SchemmerGermanyXuxue Feng PROPOSAL
Cody F KuskoFranceOnyama Limba PROPOSAL
David J DarakjyFranceBernardo Dominic RENEWAL
Aditya T FlosiJapanOnyama Limba QUALIFIED
Francesco J TollnerJapanIoni Bowcher RENEWAL
Maria R VocelkaFranceXuxue Feng NEW
Maisha S DilliardJapanAnna Fali NEW
Misaki A OstroskyRussiaAsiya Javayant QUALIFIED
Ricardo T MorascaJapanAnna Fali NEW
Rodrigues H ChuiBrazilElwin Sharvill UNQUALIFIED
Clifford U GillianRussiaAmy Elsner NEW
Adams N DarakjyFranceAnna Fali QUALIFIED
Cody I RulapaughAustraliaAsiya Javayant PROPOSAL
Kaitlin I ShinkoItalyStephen Shaw PROPOSAL
Morrow Q StensethBrazilXuxue Feng QUALIFIED
Maria Z WaycottBrazilIoni Bowcher NEW
Misaki I RimGermanyAsiya Javayant RENEWAL
Juan Z CaldareraFranceStephen Shaw RENEWAL
Izzy M MacleadAustraliaIvan Magalhaes UNQUALIFIED
Rodrigues Z SaylorsItalyAnna Fali QUALIFIED
Faith N FlosiUnited KingdomAnna Fali NEW
Juan X DoeAustraliaAnna Fali QUALIFIED
Isabel F ShinkoArgentinaAmy Elsner QUALIFIED
Silvio H KuskoItalyElwin Sharvill NEW
Cody Z OstroskyArgentinaElwin Sharvill PROPOSAL
Deepesh X MaletFranceAnna Fali NEW
Leon T SlusarskiUnited KingdomIoni Bowcher PROPOSAL
Izzy D VocelkaBrazilStephen Shaw NEW
Deepesh P GarufiRussiaAnna Fali UNQUALIFIED
Aditya O CaldareraUnited KingdomIoni Bowcher RENEWAL
Salvatore T ChuiItalyXuxue Feng 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>