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
James D KolmetzFranceIoni Bowcher QUALIFIED
Chavez B OldroydArgentinaXuxue Feng QUALIFIED
Costa R FerenczSpainElwin Sharvill NEW
Claire C GlickBrazilIvan Magalhaes NEGOTIATION
Adams G SlusarskiIndiaIoni Bowcher NEGOTIATION
Salvatore V RimFranceAsiya Javayant QUALIFIED
Faith O TollnerRussiaXuxue Feng NEGOTIATION
Kaitlin P OldroydItalyStephen Shaw PROPOSAL
Alejandro F VocelkaIndiaStephen Shaw UNQUALIFIED
Aika P PerinIndiaElwin Sharvill QUALIFIED
Octavia Y BriddickCanadaAsiya Javayant QUALIFIED
Morrow O KolmetzIndiaIoni Bowcher NEGOTIATION
Smith B GauchoSpainBernardo Dominic NEW
Leon O MacleadArgentinaStephen Shaw PROPOSAL
Misaki I CaldareraArgentinaElwin Sharvill PROPOSAL
Faith W TollnerRussiaAnna Fali RENEWAL
Ashley L FigeroaCanadaAsiya Javayant UNQUALIFIED
Munro G RulapaughSpainAnna Fali RENEWAL
Greenwood M WaycottRussiaOnyama Limba UNQUALIFIED
Adams X PoquetteSpainBernardo Dominic NEGOTIATION
Emily L FigeroaFranceOnyama Limba PROPOSAL
Johnson P GarufiAustraliaStephen Shaw QUALIFIED
Juan A BowleyArgentinaAsiya Javayant RENEWAL
Rodrigues V RimFranceOnyama Limba NEGOTIATION
Greenwood F IturbideArgentinaXuxue Feng NEW
Maisha C BologniaJapanBernardo Dominic QUALIFIED
Darci G GauchoJapanAmy Elsner PROPOSAL
Francesco K PoquetteFranceIvan Magalhaes NEW
James Z SaylorsArgentinaStephen Shaw NEGOTIATION
Ivar M DoeBrazilStephen Shaw NEW
Ashley D FollerGermanyOnyama Limba QUALIFIED
Cody J MorascaGermanyElwin Sharvill NEW
Darci E FigeroaJapanAsiya Javayant UNQUALIFIED
Salvatore W SergiGermanyOnyama Limba RENEWAL
Greenwood L NestleUnited KingdomIoni Bowcher PROPOSAL
Jones H MarrierRussiaOnyama Limba NEW
Ricardo R FlosiAustraliaAsiya Javayant UNQUALIFIED
Claire K GillianBrazilAnna Fali NEGOTIATION
Ashley C MaletAustraliaAmy Elsner PROPOSAL
Costa W AlbaresUnited KingdomAsiya Javayant UNQUALIFIED
Johnson Z BriddickAustraliaXuxue Feng QUALIFIED
Costa Y NestleJapanElwin Sharvill PROPOSAL
Aditya O ChuiIndiaXuxue Feng PROPOSAL
Aditya K SaylorsFranceBernardo Dominic NEW
Maisha Q MarrierIndiaAsiya Javayant NEW
Darci T WhobreyIndiaIoni Bowcher UNQUALIFIED
Leja C WieserCanadaAsiya Javayant NEGOTIATION
Faith V MorascaAustraliaIoni Bowcher RENEWAL
Izzy K AlbaresUnited KingdomIvan Magalhaes NEW
Aruna X TollnerCanadaAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Izzy X WaycottSpainXuxue Feng PROPOSAL
Faith W NestleBrazilXuxue Feng PROPOSAL
Kadeem E RoysterIndiaAmy Elsner NEW
Adams P SchemmerIndiaStephen Shaw UNQUALIFIED
Isabel B FerenczGermanyIoni Bowcher QUALIFIED
Ivar B TollnerSpainIvan Magalhaes RENEWAL
Aika J VenereJapanOnyama Limba PROPOSAL
Leja U NestleAustraliaIoni Bowcher RENEWAL
Alejandro O StockhamUnited KingdomElwin Sharvill QUALIFIED
Silvio T FigeroaArgentinaStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia I MacleadIndia2024-05-27Morlong Associates NEW75Anna Fali
1001Kadeem V AmigonGermany2024-06-13King, Christopher A Esq PROPOSAL56Asiya Javayant
1002Maisha B WhobreyBrazil2024-06-19Morlong Associates PROPOSAL24Ioni Bowcher
1003Darci Y KuskoItaly2024-06-18Commercial Press PROPOSAL47Ioni Bowcher
1004Maria V FigeroaIndia2024-06-24Printing Dimensions NEGOTIATION76Elwin Sharvill
1005Ivar S KolmetzGermany2024-06-14Chanay, Jeffrey A Esq NEW38Bernardo Dominic
1006Rodrigues D IturbideCanada2024-06-16Feiner Bros NEGOTIATION69Onyama Limba
1007Sinclair X VenereFrance2024-06-24Commercial Press QUALIFIED89Amy Elsner
1008David E KolmetzCanada2024-05-30Chemel, James L Cpa NEGOTIATION38Anna Fali
1009Chavez P OstroskyJapan2024-06-09Chapman, Ross E Esq NEGOTIATION96Ioni Bowcher
1010Rodrigues W DarakjyItaly2024-06-11Dorl, James J Esq QUALIFIED81Stephen Shaw
1011Darci A BologniaCanada2024-06-02Printing Dimensions RENEWAL32Asiya Javayant
1012Deepesh V SergiSpain2024-05-26Printing Dimensions NEW31Anna Fali
1013Octavia F GarufiItaly2024-05-29Printing Dimensions NEW71Anna Fali
1014Francesco L StensethArgentina2024-06-07Chemel, James L Cpa NEW37Xuxue Feng
1015Jefferson A AlbaresBrazil2024-06-24Rousseaux, Michael Esq UNQUALIFIED96Amy Elsner
1016Murillo G GlickUnited Kingdom2024-06-11Rousseaux, Michael Esq RENEWAL3Ivan Magalhaes
1017Johnson B NickaBrazil2024-06-22Feiner Bros RENEWAL65Onyama Limba
1018Octavia D KuskoCanada2024-05-30Buckley Miller Wright NEW0Amy Elsner
1019Antonio E PoquetteRussia2024-06-16Buckley Miller Wright QUALIFIED31Onyama Limba
1020Juan M RoysterAustralia2024-06-02King, Christopher A Esq UNQUALIFIED53Onyama Limba
1021Smith P SergiGermany2024-06-09Feiner Bros UNQUALIFIED23Xuxue Feng
1022Costa U FollerRussia2024-06-09Rangoni Of Florence UNQUALIFIED44Stephen Shaw
1023Octavia W MaletFrance2024-06-09Chemel, James L Cpa NEW16Stephen Shaw
1024Aika T MaletRussia2024-06-13Rangoni Of Florence NEGOTIATION43Asiya Javayant
1025Murillo A WieserBrazil2024-06-03Dorl, James J Esq NEW1Anna Fali
1026Maisha A PoquetteUnited Kingdom2024-06-21Benton, John B Jr NEGOTIATION33Bernardo Dominic
1027Wickens F DilliardIndia2024-06-18Printing Dimensions NEW34Asiya Javayant
1028Silvio M SlusarskiIndia2024-06-23Benton, John B Jr QUALIFIED7Amy Elsner
1029Jennifer B SaylorsItaly2024-06-22Chanay, Jeffrey A Esq UNQUALIFIED12Stephen Shaw
1030Deepesh N OstroskyCanada2024-05-31Morlong Associates UNQUALIFIED8Ivan Magalhaes
1031Morrow D IturbideJapan2024-06-20King, Christopher A Esq NEW33Stephen Shaw
1032Octavia F RutaUnited Kingdom2024-06-13Benton, John B Jr NEW65Xuxue Feng
1033Rodrigues T StensethCanada2024-06-24King, Christopher A Esq QUALIFIED28Elwin Sharvill
1034Salvatore S GlickGermany2024-06-02Buckley Miller Wright RENEWAL6Asiya Javayant
1035Kaitlin P GlickRussia2024-06-18Truhlar And Truhlar Attys UNQUALIFIED16Stephen Shaw
1036Octavia F AlbaresAustralia2024-06-24Rangoni Of Florence UNQUALIFIED27Xuxue Feng
1037Misaki Y RimCanada2024-06-11Buckley Miller Wright NEW53Bernardo Dominic
1038Deepesh D BowleyArgentina2024-05-28Chanay, Jeffrey A Esq QUALIFIED6Asiya Javayant
1039Aika I GillianAustralia2024-06-03Printing Dimensions NEW53Asiya Javayant
1040Rodrigues Q RutaAustralia2024-05-28Benton, John B Jr NEGOTIATION99Ivan Magalhaes
1041Izzy I WhobreyArgentina2024-05-27Dorl, James J Esq RENEWAL29Amy Elsner
1042Adams H PerinRussia2024-06-01Rousseaux, Michael Esq PROPOSAL52Bernardo Dominic
1043Maisha U CaldareraFrance2024-05-31Feiner Bros NEW19Xuxue Feng
1044Clifford C BriddickFrance2024-06-24Feltz Printing Service NEW61Elwin Sharvill
1045Francesco Z InouyeGermany2024-05-27Dorl, James J Esq RENEWAL78Xuxue Feng
1046Leja R TollnerRussia2024-06-18Commercial Press NEW70Bernardo Dominic
1047Clifford H WhobreyArgentina2024-06-06Feltz Printing Service RENEWAL34Anna Fali
1048Jones R StockhamRussia2024-06-05Buckley Miller Wright RENEWAL6Onyama Limba
1049David N RimArgentina2024-06-08Chemel, James L Cpa QUALIFIED13Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Nicolas Y OldroydUnited KingdomElwin Sharvill RENEWAL
Misaki U NickaIndiaBernardo Dominic PROPOSAL
Ashley D PoquetteAustraliaIvan Magalhaes UNQUALIFIED
Salvatore U TollnerRussiaElwin Sharvill NEW
Jefferson G InouyeItalyBernardo Dominic QUALIFIED
Jeanfrancois X PerinAustraliaStephen Shaw QUALIFIED
Adams X OldroydBrazilAmy Elsner UNQUALIFIED
Leja E CaudyRussiaIoni Bowcher RENEWAL
Faith R NickaBrazilOnyama Limba NEGOTIATION
Cody I VocelkaJapanIvan Magalhaes NEGOTIATION
Jennifer O IturbideGermanyAmy Elsner QUALIFIED
Ricardo T RimAustraliaAnna Fali PROPOSAL
Mayumi F DilliardCanadaAmy Elsner UNQUALIFIED
Darci N KolmetzSpainIvan Magalhaes NEGOTIATION
Antonio F PerinIndiaIvan Magalhaes UNQUALIFIED
Munro H CampainAustraliaElwin Sharvill UNQUALIFIED
Ivar K InouyeRussiaElwin Sharvill NEGOTIATION
Jennifer K WaycottFranceStephen Shaw NEGOTIATION
Misaki X PerinJapanAmy Elsner NEW
Stacey V GillianIndiaStephen Shaw NEW
Jennifer N PoquetteItalyXuxue Feng QUALIFIED
Adams A BowleyFranceXuxue Feng RENEWAL
Munro H MaletSpainXuxue Feng RENEWAL
Cody R NickaSpainOnyama Limba QUALIFIED
Chavez H WaycottGermanyAnna Fali UNQUALIFIED
James Q RoysterSpainElwin Sharvill QUALIFIED
Johnson M FigeroaItalyStephen Shaw QUALIFIED
Leon C CaldareraAustraliaAmy Elsner QUALIFIED
Jefferson G CampainIndiaAnna Fali QUALIFIED
Claire S RutaBrazilAnna Fali NEGOTIATION
Izzy D ShinkoIndiaIvan Magalhaes PROPOSAL
Ivar L ButtJapanAmy Elsner PROPOSAL
Antonio W StensethItalyOnyama Limba PROPOSAL
Jennifer I DarakjyIndiaAnna Fali UNQUALIFIED
Ivar T CampainItalyElwin Sharvill QUALIFIED
Aruna F MorascaJapanAnna Fali NEGOTIATION
Stacey R MorascaUnited KingdomAmy Elsner NEW
Salvatore H KuskoArgentinaOnyama Limba NEGOTIATION
Silvio U PoquetteJapanOnyama Limba NEGOTIATION
Silvio N RimCanadaAnna Fali NEW
Leja H DoeFranceXuxue Feng UNQUALIFIED
Maisha B SergiAustraliaIoni Bowcher UNQUALIFIED
Julie T PaprockiSpainElwin Sharvill NEW
Ivar E SchemmerCanadaAsiya Javayant QUALIFIED
Ashley C GarufiArgentinaAsiya Javayant NEGOTIATION
Aditya U GauchoFranceIoni Bowcher NEW
Emily O FigeroaBrazilOnyama Limba QUALIFIED
Leon K WaycottSpainAnna Fali UNQUALIFIED
Aika A KolmetzUnited KingdomIvan Magalhaes QUALIFIED
Tony N WhobreySpainIoni Bowcher NEW
Frozen Columns
Name
Emily I Royster
Izzy V Ostrosky
Morrow O Briddick
Arvin U Darakjy
Faith D Malet
Greenwood Q Perin
Jones Q Foller
Leon Z Stockham
Ivar Y Poquette
Aika N Stockham
David A Chui
Ivar H Waycott
Kaitlin J Wieser
Leon Z Wieser
Chavez X Ferencz
Stacey Z Paprocki
Emily Z Bolognia
Isabel V Malet
David K Amigon
Maisha D Malet
Adams L Doe
Francesco Y Perin
Jennifer N Dilliard
Octavia V Whobrey
Claire H Slusarski
Deepesh M Flosi
Aika C Dilliard
Stacey T Bolognia
Clifford X Rulapaugh
Kadeem F Malet
Johnson D Caldarera
Sinclair U Nestle
Chavez W Tollner
Darci E Foller
Leja A Venere
Jennifer P Doe
Kadeem C Nicka
Jennifer M Perin
David B Glick
Emily C Chui
Antonio P Flosi
Kadeem U Kolmetz
Jennifer O Kusko
Misaki L Flosi
Antonio W Tollner
Faith G Royster
Octavia L Flosi
Jones J Iturbide
Silvio H Albares
Ricardo J Gaucho
IdCountryDate
1000Japan2024-06-21
1001United Kingdom2024-06-17
1002Argentina2024-05-27
1003Spain2024-06-05
1004Australia2024-06-02
1005Spain2024-06-06
1006Russia2024-06-03
1007Spain2024-06-02
1008Spain2024-06-20
1009United Kingdom2024-06-16
1010Spain2024-06-17
1011Spain2024-06-13
1012Argentina2024-05-31
1013Italy2024-06-06
1014Germany2024-05-29
1015Argentina2024-06-21
1016Russia2024-06-14
1017Spain2024-06-12
1018France2024-05-28
1019Australia2024-06-05
1020Japan2024-06-11
1021India2024-06-03
1022Germany2024-06-21
1023France2024-06-17
1024Italy2024-06-02
1025Spain2024-06-22
1026Russia2024-05-28
1027Argentina2024-06-09
1028Australia2024-06-10
1029Australia2024-06-10
1030Canada2024-05-27
1031Italy2024-06-16
1032Brazil2024-06-07
1033Canada2024-06-16
1034Australia2024-06-19
1035Argentina2024-06-17
1036Spain2024-06-03
1037India2024-06-02
1038Brazil2024-06-11
1039Canada2024-06-13
1040France2024-06-07
1041Germany2024-06-19
1042Germany2024-06-10
1043India2024-06-09
1044Italy2024-06-06
1045Germany2024-06-22
1046France2024-05-31
1047India2024-06-09
1048Canada2024-06-08
1049United Kingdom2024-06-19

On-Demand Data

NameIdCountryDate
Octavia Q Saylors1000France2024-06-06
Murillo Q Figeroa1001France2024-06-11
Kadeem R Garufi1002India2024-06-18
Murillo Z Poquette1003Italy2024-06-03
Aruna O Darakjy1004Japan2024-06-21
Morrow O Nicka1005Australia2024-05-30
Ashley R Gillian1006Germany2024-06-03
Adams F Kusko1007India2024-06-13
Wickens M Briddick1008Japan2024-06-12
Greenwood H Sergi1009India2024-06-14
Ivar J Bowley1010Canada2024-06-24
Jefferson D Dilliard1011India2024-05-31
Leon N Morasca1012Australia2024-06-07
Jeanfrancois D Rulapaugh1013Japan2024-06-07
Antonio V Darakjy1014Germany2024-06-16
Isabel V Caudy1015Brazil2024-06-18
Aruna G Darakjy1016Australia2024-06-02
Jefferson K Ferencz1017Australia2024-05-30
Jefferson E Caudy1018Canada2024-06-18
Munro T Kusko1019Italy2024-06-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba H OldroydFranceOnyama Limba UNQUALIFIED
Jefferson W ShinkoJapanBernardo Dominic UNQUALIFIED
Jennifer K SaylorsCanadaAmy Elsner NEW
Misaki F KolmetzArgentinaXuxue Feng NEW
Jeanfrancois D DarakjyIndiaAmy Elsner UNQUALIFIED
Chavez E FerenczRussiaElwin Sharvill NEW
Arvin U InouyeUnited KingdomXuxue Feng PROPOSAL
Chavez R GillianSpainIoni Bowcher NEGOTIATION
Izzy F FigeroaItalyIoni Bowcher QUALIFIED
Munro Q GlickJapanAmy Elsner RENEWAL
Maisha D StockhamBrazilElwin Sharvill NEW
Octavia N DoeCanadaAsiya Javayant PROPOSAL
Leon P BowleyUnited KingdomXuxue Feng PROPOSAL
Murillo F PoquetteArgentinaAsiya Javayant RENEWAL
Jones H InouyeArgentinaXuxue Feng NEW
Stacey R OstroskyFranceAnna Fali UNQUALIFIED
Arvin O PoquetteSpainAsiya Javayant NEW
Adams P BologniaSpainXuxue Feng QUALIFIED
Ivar B InouyeFranceOnyama Limba PROPOSAL
Kadeem E GlickCanadaOnyama Limba PROPOSAL
Wickens F GlickIndiaStephen Shaw RENEWAL
Murillo C KolmetzSpainStephen Shaw RENEWAL
Isabel A ShinkoCanadaAnna Fali PROPOSAL
Jefferson R AlbaresAustraliaOnyama Limba UNQUALIFIED
Izzy Q StensethArgentinaAsiya Javayant PROPOSAL
Maisha E KolmetzGermanyAmy Elsner PROPOSAL
Munro U MaletJapanAnna Fali PROPOSAL
Aruna M OstroskyRussiaElwin Sharvill UNQUALIFIED
Salvatore U GlickJapanOnyama Limba NEGOTIATION
Johnson V FigeroaBrazilBernardo Dominic RENEWAL
Maria P WhobreyUnited KingdomStephen Shaw NEW
Clifford C PerinItalyBernardo Dominic UNQUALIFIED
Wickens K MacleadJapanOnyama Limba QUALIFIED
Morrow R SchemmerUnited KingdomElwin Sharvill RENEWAL
Leja U ChuiBrazilIoni Bowcher NEW
Greenwood I StensethGermanyIoni Bowcher RENEWAL
Octavia E ChuiGermanyElwin Sharvill NEW
Ivar Q InouyeAustraliaIoni Bowcher QUALIFIED
Maisha M SchemmerSpainOnyama Limba PROPOSAL
Isabel S BologniaArgentinaElwin Sharvill 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>