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
Aruna T VenereIndiaIoni Bowcher RENEWAL
David R TollnerRussiaAmy Elsner NEGOTIATION
Costa R GlickCanadaIoni Bowcher QUALIFIED
Arvin I RimUnited KingdomAnna Fali QUALIFIED
Mayumi O GauchoRussiaBernardo Dominic PROPOSAL
Wickens V StockhamJapanAnna Fali QUALIFIED
Adams G CaldareraAustraliaElwin Sharvill RENEWAL
James I WhobreyArgentinaBernardo Dominic NEW
Silvio R OstroskyRussiaIoni Bowcher NEW
Leon W FerenczAustraliaAmy Elsner NEW
Misaki P MarrierIndiaAnna Fali PROPOSAL
Rodrigues R KolmetzAustraliaIvan Magalhaes RENEWAL
Mujtaba T IturbideIndiaOnyama Limba PROPOSAL
Rodrigues W KolmetzIndiaOnyama Limba RENEWAL
Maria B CaudyUnited KingdomOnyama Limba RENEWAL
Aditya P RulapaughUnited KingdomAmy Elsner RENEWAL
Munro Y MaletFranceAmy Elsner NEW
Antonio R StensethSpainOnyama Limba NEW
Sinclair W WieserSpainAsiya Javayant PROPOSAL
Munro X WaycottSpainBernardo Dominic NEGOTIATION
Antonio R GillianFranceIoni Bowcher PROPOSAL
Leja L AlbaresItalyIvan Magalhaes QUALIFIED
Clifford R StensethItalyElwin Sharvill PROPOSAL
Adams I MorascaArgentinaAnna Fali NEW
Ashley P PerinSpainOnyama Limba NEW
Morrow Z MaletIndiaOnyama Limba NEW
Munro V InouyeArgentinaAnna Fali UNQUALIFIED
Faith K SchemmerItalyStephen Shaw QUALIFIED
Aditya Z DoeUnited KingdomBernardo Dominic PROPOSAL
Arvin B CampainItalyAnna Fali QUALIFIED
Octavia P PoquetteBrazilStephen Shaw QUALIFIED
Nicolas X PerinBrazilBernardo Dominic NEGOTIATION
Wickens X PaprockiIndiaIvan Magalhaes NEGOTIATION
Aika P MarrierFranceXuxue Feng NEW
Leon I MacleadBrazilIvan Magalhaes QUALIFIED
Ricardo Q NestleArgentinaIvan Magalhaes QUALIFIED
Claire Z BologniaGermanyBernardo Dominic PROPOSAL
Adams J TollnerUnited KingdomIvan Magalhaes UNQUALIFIED
Chavez R BriddickCanadaIoni Bowcher NEW
Adams K MarrierJapanXuxue Feng QUALIFIED
Cody M CampainRussiaIoni Bowcher PROPOSAL
Mujtaba X CaldareraRussiaIvan Magalhaes PROPOSAL
Kadeem K GauchoIndiaBernardo Dominic NEW
Jones J DilliardGermanyAsiya Javayant UNQUALIFIED
Munro E ShinkoBrazilBernardo Dominic PROPOSAL
Izzy H SlusarskiUnited KingdomAsiya Javayant PROPOSAL
Aika B FerenczJapanAsiya Javayant NEW
Ivar U OldroydUnited KingdomAsiya Javayant NEGOTIATION
Kaitlin B CaldareraRussiaXuxue Feng UNQUALIFIED
Francesco Q PoquetteBrazilStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Emily T IturbideRussiaAmy Elsner NEW
Aruna R NestleItalyAsiya Javayant UNQUALIFIED
Morrow U RulapaughJapanElwin Sharvill QUALIFIED
Costa V KuskoFranceAnna Fali PROPOSAL
Salvatore L CaldareraItalyStephen Shaw RENEWAL
Mujtaba H DoeCanadaAmy Elsner UNQUALIFIED
Julie L WieserJapanAsiya Javayant UNQUALIFIED
Emily H RoysterItalyAnna Fali UNQUALIFIED
Johnson U DilliardIndiaXuxue Feng NEGOTIATION
Salvatore D CampainAustraliaAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar E DoeJapan2024-05-18Buckley Miller Wright QUALIFIED59Amy Elsner
1001Ricardo M GillianAustralia2024-05-04Chanay, Jeffrey A Esq NEW47Stephen Shaw
1002Costa H SaylorsItaly2024-05-08Benton, John B Jr UNQUALIFIED36Ioni Bowcher
1003Cody N GarufiArgentina2024-05-06Chanay, Jeffrey A Esq PROPOSAL92Ioni Bowcher
1004Aika E WaycottItaly2024-05-24Truhlar And Truhlar Attys RENEWAL76Asiya Javayant
1005Emily I SergiRussia2024-05-25Benton, John B Jr NEW69Amy Elsner
1006Nicolas S NestleAustralia2024-05-12Buckley Miller Wright QUALIFIED65Elwin Sharvill
1007Mayumi V ChuiBrazil2024-05-06King, Christopher A Esq RENEWAL72Anna Fali
1008Jeanfrancois O OldroydRussia2024-05-19Rousseaux, Michael Esq NEW9Anna Fali
1009Johnson A PerinItaly2024-05-01Rangoni Of Florence QUALIFIED82Asiya Javayant
1010Murillo Y FigeroaFrance2024-05-13Chapman, Ross E Esq UNQUALIFIED9Onyama Limba
1011Silvio H RoysterBrazil2024-05-19Morlong Associates NEW86Stephen Shaw
1012Arvin A NestleJapan2024-05-15Printing Dimensions NEW39Stephen Shaw
1013Arvin Y CaudyUnited Kingdom2024-05-27Truhlar And Truhlar Attys UNQUALIFIED24Ivan Magalhaes
1014Jefferson J SchemmerGermany2024-05-27Rangoni Of Florence QUALIFIED96Stephen Shaw
1015Leja A SchemmerSpain2024-05-24Dorl, James J Esq NEW70Elwin Sharvill
1016Adams R GillianItaly2024-05-10Chemel, James L Cpa PROPOSAL11Asiya Javayant
1017Costa I CaudyArgentina2024-05-15King, Christopher A Esq QUALIFIED77Stephen Shaw
1018Rodrigues S BowleyJapan2024-05-11Morlong Associates PROPOSAL31Elwin Sharvill
1019Jefferson Z SlusarskiAustralia2024-05-21Buckley Miller Wright PROPOSAL77Asiya Javayant
1020Aruna Q RoysterItaly2024-05-14Rousseaux, Michael Esq PROPOSAL98Elwin Sharvill
1021Mujtaba U KolmetzArgentina2024-05-06Rousseaux, Michael Esq NEW2Onyama Limba
1022Stacey Q RulapaughSpain2024-05-30Benton, John B Jr QUALIFIED44Onyama Limba
1023Darci Z DarakjyJapan2024-05-27Feiner Bros RENEWAL76Asiya Javayant
1024Aika F KuskoSpain2024-05-09Printing Dimensions PROPOSAL53Onyama Limba
1025Misaki P FerenczAustralia2024-05-17King, Christopher A Esq PROPOSAL89Ivan Magalhaes
1026Ricardo J KolmetzItaly2024-05-15Chemel, James L Cpa RENEWAL68Asiya Javayant
1027Claire N PaprockiFrance2024-05-26Buckley Miller Wright NEGOTIATION49Amy Elsner
1028Mujtaba E PoquetteUnited Kingdom2024-05-05Morlong Associates NEGOTIATION57Xuxue Feng
1029Adams V TollnerRussia2024-05-28Morlong Associates UNQUALIFIED93Bernardo Dominic
1030Silvio L VocelkaFrance2024-05-05Chapman, Ross E Esq NEW30Xuxue Feng
1031Rodrigues G MarrierSpain2024-05-02Morlong Associates NEGOTIATION74Ioni Bowcher
1032Smith V ButtArgentina2024-05-17Feiner Bros PROPOSAL93Anna Fali
1033Rodrigues I DilliardArgentina2024-05-10Morlong Associates UNQUALIFIED45Ioni Bowcher
1034Arvin M IturbideItaly2024-05-20Truhlar And Truhlar Attys PROPOSAL21Elwin Sharvill
1035Jennifer V MarrierCanada2024-05-02Benton, John B Jr QUALIFIED64Amy Elsner
1036Octavia W RutaBrazil2024-05-26Rousseaux, Michael Esq RENEWAL57Stephen Shaw
1037Silvio E KuskoRussia2024-05-24Morlong Associates PROPOSAL66Asiya Javayant
1038Silvio X AlbaresJapan2024-05-23Rousseaux, Michael Esq UNQUALIFIED23Elwin Sharvill
1039David D FerenczSpain2024-05-23Rangoni Of Florence NEW80Xuxue Feng
1040Munro J InouyeRussia2024-05-12Benton, John B Jr UNQUALIFIED87Asiya Javayant
1041Rodrigues E DarakjyItaly2024-05-29Chemel, James L Cpa PROPOSAL15Onyama Limba
1042Stacey R MaletBrazil2024-05-03Dorl, James J Esq UNQUALIFIED18Xuxue Feng
1043Salvatore A CaldareraSpain2024-05-03Morlong Associates QUALIFIED91Stephen Shaw
1044Misaki R AmigonGermany2024-05-16Rangoni Of Florence NEW68Ioni Bowcher
1045Deepesh M VocelkaArgentina2024-05-16Rangoni Of Florence UNQUALIFIED52Amy Elsner
1046Aditya K BriddickItaly2024-05-16Rangoni Of Florence QUALIFIED81Onyama Limba
1047Leja Q MarrierCanada2024-05-03Dorl, James J Esq NEGOTIATION79Bernardo Dominic
1048Aika I GarufiCanada2024-05-29Dorl, James J Esq PROPOSAL55Ivan Magalhaes
1049Jennifer U SchemmerAustralia2024-05-18Benton, John B Jr NEGOTIATION95Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jennifer S NickaBrazilBernardo Dominic RENEWAL
Mayumi F IturbideItalyXuxue Feng PROPOSAL
Arvin U TollnerItalyIoni Bowcher RENEWAL
Jeanfrancois W PaprockiJapanStephen Shaw NEGOTIATION
Chavez I FerenczRussiaBernardo Dominic PROPOSAL
Smith A OldroydCanadaStephen Shaw RENEWAL
Izzy Q FlosiUnited KingdomStephen Shaw NEW
Mayumi B RoysterJapanIvan Magalhaes QUALIFIED
Alejandro M VocelkaFranceOnyama Limba NEGOTIATION
Wickens E AlbaresGermanyStephen Shaw NEW
Aruna B PaprockiJapanStephen Shaw QUALIFIED
David L AlbaresItalyXuxue Feng RENEWAL
Greenwood P NickaBrazilIvan Magalhaes QUALIFIED
David X NestleAustraliaIoni Bowcher RENEWAL
Munro E MaletGermanyIoni Bowcher NEW
Wickens T ButtIndiaOnyama Limba NEGOTIATION
Izzy K KolmetzCanadaAsiya Javayant NEGOTIATION
Isabel K TollnerIndiaOnyama Limba RENEWAL
Munro X IturbideRussiaAsiya Javayant RENEWAL
Octavia J PerinUnited KingdomBernardo Dominic QUALIFIED
Cody A BologniaFranceAnna Fali NEW
Salvatore V SlusarskiCanadaElwin Sharvill UNQUALIFIED
Misaki B CaldareraArgentinaXuxue Feng NEGOTIATION
Mujtaba P RulapaughArgentinaStephen Shaw UNQUALIFIED
Cody P PoquetteBrazilAnna Fali NEGOTIATION
Wickens E OldroydItalyStephen Shaw NEGOTIATION
Cody K MorascaFranceIoni Bowcher QUALIFIED
Darci R PaprockiSpainIvan Magalhaes QUALIFIED
Munro D SergiGermanyAsiya Javayant RENEWAL
Clifford I SlusarskiAustraliaXuxue Feng UNQUALIFIED
Misaki H WhobreyIndiaStephen Shaw RENEWAL
Izzy K NestleFranceAmy Elsner NEW
Emily K DoeIndiaAmy Elsner QUALIFIED
Morrow M StensethUnited KingdomXuxue Feng NEGOTIATION
Adams A CaudyRussiaOnyama Limba NEW
Emily T PoquetteJapanBernardo Dominic PROPOSAL
Smith L ShinkoIndiaIvan Magalhaes PROPOSAL
Arvin G VenereAustraliaBernardo Dominic RENEWAL
Alejandro Q CampainBrazilAnna Fali UNQUALIFIED
Aditya F WhobreyItalyElwin Sharvill NEW
Jeanfrancois T GauchoArgentinaIoni Bowcher RENEWAL
Faith O StockhamBrazilXuxue Feng UNQUALIFIED
Aruna E PaprockiRussiaXuxue Feng PROPOSAL
Jennifer H StensethRussiaAmy Elsner NEGOTIATION
Faith A KuskoCanadaAnna Fali UNQUALIFIED
Clifford C PaprockiRussiaAnna Fali RENEWAL
Aruna S BologniaRussiaBernardo Dominic UNQUALIFIED
Antonio V VenereItalyIoni Bowcher UNQUALIFIED
Silvio S GlickArgentinaElwin Sharvill QUALIFIED
Johnson Q PoquetteUnited KingdomIoni Bowcher QUALIFIED
Frozen Columns
Name
Julie I Kolmetz
Rodrigues O Morasca
Ivar P Schemmer
Sinclair J Figeroa
James N Malet
Johnson Q Perin
Wickens N Iturbide
Sinclair R Venere
Alejandro D Sergi
Ricardo L Albares
Salvatore K Figeroa
Costa Y Waycott
James R Vocelka
David C Iturbide
Isabel I Figeroa
Smith V Bowley
Costa A Paprocki
Claire A Maclead
Claire R Stenseth
Mayumi G Waycott
David D Chui
Kaitlin M Campain
James S Ruta
Silvio H Whobrey
Aditya O Royster
Juan W Rulapaugh
Aika J Waycott
Rodrigues R Venere
Mujtaba I Sergi
Mayumi P Bowley
Ivar K Garufi
David Q Chui
Faith Q Kusko
Costa I Dilliard
Arvin V Schemmer
Greenwood E Nestle
Julie L Inouye
Munro I Shinko
Clifford T Whobrey
Wickens R Flosi
Tony Q Sergi
Izzy C Kolmetz
Ricardo C Foller
Arvin E Bowley
Clifford F Whobrey
Mujtaba H Kusko
Jones S Flosi
Nicolas U Malet
Jefferson C Kolmetz
Julie S Venere
IdCountryDate
1000Australia2024-05-21
1001Brazil2024-05-27
1002Germany2024-05-12
1003Germany2024-05-02
1004Spain2024-05-10
1005Australia2024-05-28
1006India2024-05-17
1007Russia2024-05-03
1008Russia2024-05-12
1009Italy2024-05-20
1010Brazil2024-05-20
1011United Kingdom2024-05-07
1012Australia2024-05-11
1013Germany2024-05-06
1014Italy2024-05-26
1015Australia2024-05-21
1016Japan2024-05-19
1017Australia2024-05-15
1018France2024-05-08
1019India2024-05-22
1020France2024-05-10
1021Australia2024-05-08
1022France2024-05-03
1023India2024-05-06
1024Australia2024-05-06
1025Canada2024-05-19
1026Australia2024-05-09
1027Italy2024-05-29
1028Germany2024-05-15
1029Argentina2024-05-28
1030United Kingdom2024-05-08
1031Canada2024-05-01
1032Spain2024-05-22
1033Russia2024-05-23
1034Japan2024-05-08
1035Brazil2024-05-18
1036Australia2024-05-05
1037Canada2024-05-18
1038Germany2024-05-06
1039Canada2024-05-03
1040Russia2024-05-12
1041Japan2024-05-10
1042United Kingdom2024-05-04
1043Germany2024-05-27
1044Spain2024-05-06
1045Brazil2024-05-15
1046Argentina2024-05-11
1047Argentina2024-05-19
1048Spain2024-05-25
1049Argentina2024-05-23

On-Demand Data

NameIdCountryDate
Jones R Caldarera1000United Kingdom2024-05-20
Julie L Waycott1001Japan2024-05-15
Leja C Royster1002Italy2024-05-06
Jones X Sergi1003France2024-05-26
Jefferson K Nestle1004Japan2024-05-27
Antonio X Whobrey1005Canada2024-05-30
Mujtaba N Whobrey1006Argentina2024-05-12
Sinclair A Flosi1007Germany2024-05-14
Antonio L Malet1008Argentina2024-05-17
Faith U Perin1009Australia2024-05-07
Jones H Paprocki1010United Kingdom2024-05-25
Izzy S Morasca1011Spain2024-05-29
Maisha F Rim1012Germany2024-05-23
Jefferson Z Kolmetz1013Argentina2024-05-27
Leja S Stockham1014Italy2024-05-07
Leon U Perin1015Italy2024-05-15
Stacey T Campain1016Italy2024-05-02
Stacey W Darakjy1017Japan2024-05-22
Leon A Iturbide1018United Kingdom2024-05-10
Juan T Bowley1019Germany2024-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika N SaylorsBrazilAnna Fali QUALIFIED
Ivar V WhobreyJapanElwin Sharvill PROPOSAL
Adams U SlusarskiFranceIoni Bowcher UNQUALIFIED
Chavez Y GillianAustraliaStephen Shaw NEGOTIATION
Antonio Y TollnerUnited KingdomAnna Fali UNQUALIFIED
Stacey Y RutaRussiaAmy Elsner UNQUALIFIED
Morrow Y NickaUnited KingdomAmy Elsner QUALIFIED
Nicolas T StockhamIndiaOnyama Limba QUALIFIED
Izzy T BowleyRussiaOnyama Limba RENEWAL
Faith D VocelkaIndiaStephen Shaw RENEWAL
Ricardo S PoquetteCanadaIvan Magalhaes NEGOTIATION
Clifford J PaprockiItalyStephen Shaw PROPOSAL
Ashley P ChuiBrazilAnna Fali QUALIFIED
Antonio T SlusarskiFranceStephen Shaw NEGOTIATION
Munro H FollerCanadaAmy Elsner UNQUALIFIED
Izzy B KolmetzCanadaIoni Bowcher QUALIFIED
Leja O DarakjyGermanyAsiya Javayant NEW
Maria D MarrierBrazilBernardo Dominic NEW
Salvatore A CaudyUnited KingdomAmy Elsner UNQUALIFIED
Ivar A GlickAustraliaStephen Shaw UNQUALIFIED
Faith Q RulapaughRussiaBernardo Dominic NEW
Deepesh M AmigonUnited KingdomIoni Bowcher NEW
Silvio H BowleyRussiaIvan Magalhaes QUALIFIED
Clifford V RutaIndiaElwin Sharvill RENEWAL
Mujtaba T IturbideGermanyStephen Shaw QUALIFIED
Cody S GillianCanadaAmy Elsner UNQUALIFIED
Arvin Y StensethGermanyAnna Fali NEGOTIATION
Stacey A MarrierArgentinaBernardo Dominic NEW
Munro E OstroskyBrazilIoni Bowcher QUALIFIED
Ashley Y CampainSpainXuxue Feng PROPOSAL
Cody X VenereRussiaXuxue Feng UNQUALIFIED
Isabel B KolmetzFranceIoni Bowcher UNQUALIFIED
Aika W PaprockiCanadaOnyama Limba NEW
Mayumi X FlosiSpainAsiya Javayant QUALIFIED
Jeanfrancois P SergiIndiaOnyama Limba NEW
Ivar C ButtBrazilBernardo Dominic NEGOTIATION
Salvatore R CaudyIndiaXuxue Feng NEW
Isabel J SchemmerGermanyAsiya Javayant RENEWAL
Stacey P GauchoRussiaAsiya Javayant UNQUALIFIED
Jennifer K OldroydRussiaIvan Magalhaes 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>