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
Mayumi D NestleItalyElwin Sharvill NEGOTIATION
Emily D GillianJapanAnna Fali RENEWAL
Tony R BowleyJapanAmy Elsner QUALIFIED
Costa F KuskoIndiaIvan Magalhaes PROPOSAL
Salvatore K MacleadGermanyOnyama Limba NEW
Rodrigues K MarrierAustraliaBernardo Dominic QUALIFIED
Greenwood G BriddickCanadaAnna Fali QUALIFIED
Silvio E TollnerSpainAmy Elsner RENEWAL
Octavia I DilliardCanadaBernardo Dominic UNQUALIFIED
Morrow J CaudyBrazilAmy Elsner NEGOTIATION
Francesco J ShinkoFranceStephen Shaw RENEWAL
Maisha I GarufiCanadaElwin Sharvill RENEWAL
James X MacleadAustraliaElwin Sharvill RENEWAL
Greenwood H MacleadCanadaAsiya Javayant QUALIFIED
Leja U StensethFranceOnyama Limba UNQUALIFIED
Aruna J SaylorsBrazilElwin Sharvill UNQUALIFIED
Chavez K MaletJapanXuxue Feng NEGOTIATION
Munro U SergiRussiaAnna Fali QUALIFIED
Adams K OstroskyRussiaAsiya Javayant UNQUALIFIED
Chavez K StockhamItalyIvan Magalhaes UNQUALIFIED
Alejandro O InouyeSpainElwin Sharvill NEGOTIATION
Juan R MarrierRussiaIoni Bowcher NEW
Juan U KolmetzFranceAnna Fali PROPOSAL
Aika R BriddickCanadaIvan Magalhaes NEGOTIATION
Nicolas K BowleyItalyBernardo Dominic PROPOSAL
Cody V CaudySpainOnyama Limba UNQUALIFIED
Cody D BowleyIndiaIvan Magalhaes PROPOSAL
Ricardo J DoeRussiaStephen Shaw RENEWAL
Sinclair T ButtFranceAsiya Javayant PROPOSAL
Costa Z FlosiGermanyIvan Magalhaes QUALIFIED
Claire K BowleySpainAsiya Javayant PROPOSAL
Maria H ButtSpainOnyama Limba NEW
Misaki H StockhamSpainIvan Magalhaes UNQUALIFIED
Murillo H RulapaughAustraliaOnyama Limba NEW
Faith Z OldroydIndiaAmy Elsner RENEWAL
Jeanfrancois B RulapaughFranceIoni Bowcher UNQUALIFIED
Wickens X PoquetteGermanyAmy Elsner QUALIFIED
Cody E RimCanadaOnyama Limba NEGOTIATION
Rodrigues S ShinkoRussiaIvan Magalhaes QUALIFIED
Salvatore L WhobreyItalyStephen Shaw NEW
Jennifer Q KuskoCanadaBernardo Dominic QUALIFIED
Mayumi J SaylorsFranceIoni Bowcher QUALIFIED
Rodrigues G KolmetzIndiaAsiya Javayant RENEWAL
Silvio W FerenczJapanBernardo Dominic NEW
Chavez Y ShinkoCanadaIvan Magalhaes NEW
Kadeem K StensethItalyStephen Shaw UNQUALIFIED
Deepesh N CaldareraAustraliaElwin Sharvill QUALIFIED
Alejandro H AmigonAustraliaStephen Shaw NEW
Salvatore O DarakjyAustraliaAnna Fali QUALIFIED
Ricardo B SaylorsRussiaIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Nicolas U AmigonGermanyAsiya Javayant UNQUALIFIED
Costa T DoeGermanyElwin Sharvill UNQUALIFIED
Mujtaba D GarufiArgentinaElwin Sharvill QUALIFIED
Faith T GlickIndiaXuxue Feng NEW
Isabel D MaletBrazilIvan Magalhaes RENEWAL
Stacey F StensethJapanElwin Sharvill NEGOTIATION
James Q CaudyArgentinaOnyama Limba UNQUALIFIED
Aruna U RoysterBrazilStephen Shaw QUALIFIED
Leja H DoeGermanyAsiya Javayant RENEWAL
Arvin I FerenczRussiaIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson Z TollnerFrance2024-05-01Printing Dimensions RENEWAL40Ivan Magalhaes
1001Francesco E MaletFrance2024-05-10Morlong Associates RENEWAL92Asiya Javayant
1002Mujtaba G DoeCanada2024-04-27Chemel, James L Cpa PROPOSAL47Xuxue Feng
1003Isabel L MaletUnited Kingdom2024-05-09Morlong Associates RENEWAL90Stephen Shaw
1004Nicolas L MorascaAustralia2024-05-13Chapman, Ross E Esq QUALIFIED85Amy Elsner
1005Faith J IturbideBrazil2024-05-23King, Christopher A Esq PROPOSAL87Ivan Magalhaes
1006Morrow X FigeroaJapan2024-05-06Commercial Press NEW77Xuxue Feng
1007Cody R CaldareraBrazil2024-05-11Printing Dimensions RENEWAL17Ivan Magalhaes
1008Munro B MarrierFrance2024-04-28Dorl, James J Esq RENEWAL6Ivan Magalhaes
1009Smith C MaletItaly2024-05-09Chanay, Jeffrey A Esq NEW75Xuxue Feng
1010Jones T MacleadIndia2024-04-25Dorl, James J Esq NEGOTIATION21Onyama Limba
1011Ricardo M WhobreyCanada2024-05-04Commercial Press QUALIFIED40Anna Fali
1012Tony R GarufiSpain2024-05-06Printing Dimensions PROPOSAL76Ioni Bowcher
1013Jefferson A FerenczJapan2024-05-24Commercial Press NEGOTIATION11Stephen Shaw
1014Aika X RimArgentina2024-05-11Printing Dimensions PROPOSAL72Onyama Limba
1015Sinclair U PoquetteItaly2024-05-18Commercial Press NEGOTIATION86Elwin Sharvill
1016Ashley R PoquetteFrance2024-05-11King, Christopher A Esq NEGOTIATION31Ioni Bowcher
1017Morrow Z RimUnited Kingdom2024-05-02Dorl, James J Esq UNQUALIFIED57Bernardo Dominic
1018Aditya H FlosiRussia2024-05-21Feiner Bros QUALIFIED21Bernardo Dominic
1019Misaki N OstroskyArgentina2024-05-11Rousseaux, Michael Esq QUALIFIED8Stephen Shaw
1020Ivar I RimGermany2024-05-12Chapman, Ross E Esq NEGOTIATION17Amy Elsner
1021Jefferson M MorascaIndia2024-05-19Truhlar And Truhlar Attys UNQUALIFIED83Ioni Bowcher
1022Munro Q GarufiAustralia2024-05-13Feiner Bros RENEWAL87Anna Fali
1023Salvatore D RimSpain2024-05-15King, Christopher A Esq NEW80Xuxue Feng
1024Isabel X SaylorsSpain2024-05-23Benton, John B Jr NEW9Elwin Sharvill
1025Leja I AmigonBrazil2024-05-17Chemel, James L Cpa UNQUALIFIED49Asiya Javayant
1026Adams L NestleSpain2024-05-02Morlong Associates QUALIFIED89Stephen Shaw
1027Antonio T WhobreyRussia2024-04-30Chapman, Ross E Esq UNQUALIFIED39Elwin Sharvill
1028Octavia K OstroskyBrazil2024-05-11Feltz Printing Service QUALIFIED62Ioni Bowcher
1029Kadeem Q FollerFrance2024-05-12Chemel, James L Cpa UNQUALIFIED98Ivan Magalhaes
1030Silvio R ShinkoAustralia2024-05-15Printing Dimensions NEGOTIATION67Ioni Bowcher
1031Deepesh F GarufiUnited Kingdom2024-05-23Printing Dimensions QUALIFIED99Xuxue Feng
1032Jennifer K PerinFrance2024-05-16Truhlar And Truhlar Attys NEGOTIATION91Xuxue Feng
1033Cody H GlickBrazil2024-05-07Morlong Associates UNQUALIFIED23Amy Elsner
1034Isabel E FigeroaUnited Kingdom2024-04-25Benton, John B Jr PROPOSAL9Asiya Javayant
1035James P TollnerBrazil2024-05-05Rangoni Of Florence QUALIFIED33Asiya Javayant
1036Ricardo L MarrierGermany2024-05-02Chanay, Jeffrey A Esq UNQUALIFIED94Stephen Shaw
1037Sinclair Y CaldareraFrance2024-05-09Commercial Press UNQUALIFIED60Amy Elsner
1038James R BowleyArgentina2024-05-11Commercial Press RENEWAL53Elwin Sharvill
1039Izzy E RoysterBrazil2024-04-27Benton, John B Jr UNQUALIFIED62Ioni Bowcher
1040Octavia R CaudyJapan2024-05-18Rousseaux, Michael Esq QUALIFIED21Onyama Limba
1041Morrow E MaletRussia2024-05-18Rangoni Of Florence QUALIFIED28Amy Elsner
1042Tony T FlosiRussia2024-05-16Morlong Associates UNQUALIFIED68Asiya Javayant
1043Antonio L VenereBrazil2024-04-30Rangoni Of Florence NEW70Asiya Javayant
1044Jennifer L MorascaSpain2024-05-22King, Christopher A Esq PROPOSAL77Elwin Sharvill
1045Kadeem D RutaItaly2024-05-20Rousseaux, Michael Esq RENEWAL80Stephen Shaw
1046Nicolas N PoquetteArgentina2024-05-21Morlong Associates PROPOSAL4Bernardo Dominic
1047Smith E PaprockiBrazil2024-04-25Truhlar And Truhlar Attys UNQUALIFIED92Elwin Sharvill
1048Darci S AlbaresRussia2024-05-01Benton, John B Jr PROPOSAL67Amy Elsner
1049Izzy D KolmetzAustralia2024-05-17Chapman, Ross E Esq NEW77Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leja E RulapaughJapanOnyama Limba NEGOTIATION
Cody A MorascaBrazilElwin Sharvill NEW
Johnson J BriddickIndiaAmy Elsner PROPOSAL
Cody B WhobreySpainAsiya Javayant QUALIFIED
Adams W WieserRussiaIvan Magalhaes NEGOTIATION
Cody W RimCanadaXuxue Feng NEW
Juan A NickaUnited KingdomIoni Bowcher QUALIFIED
Adams D StockhamAustraliaIvan Magalhaes UNQUALIFIED
Claire U WhobreyBrazilBernardo Dominic QUALIFIED
Maria A FigeroaArgentinaAmy Elsner NEGOTIATION
Ricardo L InouyeUnited KingdomOnyama Limba PROPOSAL
Johnson L SchemmerSpainElwin Sharvill NEGOTIATION
Faith B VenereArgentinaElwin Sharvill NEW
Izzy Y SlusarskiGermanyXuxue Feng QUALIFIED
Chavez Z FigeroaGermanyElwin Sharvill NEGOTIATION
Jennifer L BriddickIndiaAnna Fali QUALIFIED
Kadeem N DilliardIndiaIvan Magalhaes UNQUALIFIED
Darci Z GlickBrazilIvan Magalhaes RENEWAL
Kaitlin H BowleySpainIoni Bowcher NEW
Juan R IturbideRussiaAsiya Javayant NEGOTIATION
Leon K GauchoFranceAnna Fali QUALIFIED
Stacey X CaudyRussiaIvan Magalhaes PROPOSAL
Isabel Z GlickGermanyBernardo Dominic PROPOSAL
Maisha Q ButtFranceAsiya Javayant PROPOSAL
Izzy P MorascaFranceStephen Shaw UNQUALIFIED
Deepesh A GlickSpainOnyama Limba NEGOTIATION
James P VenereFranceElwin Sharvill RENEWAL
Munro S RulapaughAustraliaOnyama Limba PROPOSAL
Aruna K InouyeSpainBernardo Dominic PROPOSAL
Greenwood M CaudyBrazilOnyama Limba NEGOTIATION
Maisha H NestleSpainIoni Bowcher NEGOTIATION
Mujtaba B SlusarskiGermanyXuxue Feng NEGOTIATION
Jeanfrancois X SlusarskiFranceAmy Elsner PROPOSAL
Julie H StockhamArgentinaIoni Bowcher QUALIFIED
Darci K MaletAustraliaStephen Shaw NEGOTIATION
Jefferson B NestleGermanyAsiya Javayant RENEWAL
Claire P RutaFranceAmy Elsner PROPOSAL
Izzy I SchemmerUnited KingdomOnyama Limba PROPOSAL
Izzy N VenereArgentinaElwin Sharvill PROPOSAL
Aika I TollnerJapanOnyama Limba PROPOSAL
Morrow P CampainRussiaXuxue Feng UNQUALIFIED
Mayumi H FlosiItalyAnna Fali UNQUALIFIED
Aika X InouyeJapanXuxue Feng RENEWAL
Munro E ShinkoSpainBernardo Dominic PROPOSAL
Greenwood K CampainArgentinaIoni Bowcher RENEWAL
Arvin Z DoeRussiaStephen Shaw NEGOTIATION
Arvin Y RulapaughArgentinaBernardo Dominic UNQUALIFIED
Stacey J DoeBrazilAsiya Javayant PROPOSAL
Murillo N StockhamRussiaAnna Fali NEW
Tony M MaletItalyAsiya Javayant PROPOSAL
Frozen Columns
Name
Alejandro Z Stockham
Adams T Ostrosky
Misaki G Stenseth
Claire R Poquette
Costa Q Doe
Izzy F Morasca
Kaitlin T Maclead
Ricardo D Garufi
Kaitlin P Caldarera
Francesco G Kolmetz
Sinclair I Tollner
Smith A Dilliard
Costa B Briddick
Morrow N Perin
Kaitlin J Whobrey
Alejandro P Campain
Darci N Tollner
Julie W Butt
Ricardo O Wieser
David E Perin
Claire T Ferencz
Leja R Whobrey
Octavia V Kusko
Kaitlin V Whobrey
Alejandro C Ostrosky
Isabel X Tollner
Jefferson R Campain
Mujtaba Z Butt
Faith J Stockham
Arvin N Garufi
Aika Q Rulapaugh
Deepesh P Shinko
Greenwood F Stockham
Smith H Malet
Claire C Whobrey
Murillo O Vocelka
Sinclair V Waycott
Kadeem V Shinko
Sinclair H Malet
Jones E Kusko
Aruna B Campain
Arvin I Bowley
Sinclair L Ostrosky
Tony T Whobrey
Maisha S Bowley
Emily U Stockham
Chavez U Garufi
Smith X Waycott
Clifford A Malet
Jefferson I Tollner
IdCountryDate
1000Japan2024-04-29
1001Argentina2024-04-26
1002Japan2024-05-07
1003Spain2024-05-12
1004Brazil2024-05-15
1005Spain2024-05-04
1006United Kingdom2024-05-06
1007Russia2024-05-09
1008Canada2024-04-27
1009India2024-05-15
1010India2024-05-04
1011Italy2024-05-20
1012Canada2024-05-22
1013Russia2024-04-26
1014Spain2024-05-18
1015Italy2024-05-20
1016Brazil2024-05-20
1017Russia2024-05-19
1018Germany2024-04-27
1019France2024-05-11
1020Spain2024-05-02
1021Canada2024-05-03
1022Spain2024-05-06
1023Spain2024-05-12
1024United Kingdom2024-05-19
1025Argentina2024-05-06
1026Germany2024-04-28
1027India2024-05-01
1028Japan2024-04-25
1029Spain2024-04-27
1030Australia2024-05-08
1031Italy2024-05-23
1032France2024-05-10
1033France2024-05-07
1034India2024-04-30
1035India2024-05-14
1036France2024-05-07
1037Brazil2024-05-23
1038France2024-05-01
1039Italy2024-04-28
1040India2024-05-08
1041Spain2024-05-22
1042Italy2024-05-18
1043Japan2024-05-20
1044Argentina2024-05-17
1045Brazil2024-05-17
1046India2024-05-06
1047Russia2024-05-24
1048Canada2024-05-04
1049Brazil2024-05-04

On-Demand Data

NameIdCountryDate
Leon Z Oldroyd1000Argentina2024-05-20
Jefferson W Bowley1001India2024-04-27
Darci X Maclead1002Japan2024-05-13
Adams N Kolmetz1003France2024-05-20
Munro A Venere1004Japan2024-05-23
Juan H Albares1005Canada2024-05-11
Izzy A Stenseth1006Japan2024-05-06
Silvio W Rulapaugh1007Italy2024-05-21
Izzy S Rim1008Canada2024-04-30
Darci E Bowley1009Japan2024-05-20
James E Foller1010United Kingdom2024-05-24
Julie R Kusko1011Brazil2024-05-13
Alejandro Z Gaucho1012France2024-05-21
Mujtaba B Sergi1013Brazil2024-05-22
Costa J Garufi1014France2024-05-01
Stacey B Morasca1015Japan2024-05-17
Aika Q Shinko1016Canada2024-05-18
Francesco J Nicka1017Russia2024-05-05
Clifford O Perin1018United Kingdom2024-04-26
Aditya T Oldroyd1019France2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore U MaletArgentinaXuxue Feng PROPOSAL
Leja F ShinkoUnited KingdomAsiya Javayant PROPOSAL
Kadeem T FigeroaSpainOnyama Limba NEW
Adams G FerenczBrazilElwin Sharvill PROPOSAL
Greenwood M RutaFranceIvan Magalhaes QUALIFIED
Jennifer P KolmetzItalyOnyama Limba NEGOTIATION
Wickens W ShinkoFranceIvan Magalhaes RENEWAL
Mayumi T MaletGermanyBernardo Dominic PROPOSAL
Maisha H PerinRussiaIvan Magalhaes QUALIFIED
Johnson M PerinCanadaIoni Bowcher RENEWAL
Jefferson P WieserCanadaXuxue Feng NEGOTIATION
Mujtaba B VocelkaIndiaBernardo Dominic NEGOTIATION
Silvio K NickaCanadaAmy Elsner NEW
Mayumi H RimRussiaXuxue Feng NEGOTIATION
Darci L WieserCanadaXuxue Feng RENEWAL
Costa T AmigonUnited KingdomElwin Sharvill NEW
Morrow Z CaudyItalyIoni Bowcher QUALIFIED
Aika F WieserCanadaIvan Magalhaes PROPOSAL
Aika L GauchoCanadaIoni Bowcher NEW
Cody L GarufiUnited KingdomAnna Fali UNQUALIFIED
Leja Q DarakjyAustraliaBernardo Dominic PROPOSAL
Claire J SaylorsItalyStephen Shaw PROPOSAL
Deepesh R SlusarskiIndiaBernardo Dominic QUALIFIED
Misaki O WaycottGermanyAsiya Javayant RENEWAL
Maisha U DoeAustraliaIoni Bowcher QUALIFIED
Nicolas L FlosiFranceIvan Magalhaes QUALIFIED
James D DoeItalyStephen Shaw NEW
Kaitlin W StensethItalyElwin Sharvill UNQUALIFIED
Leja Z NickaCanadaBernardo Dominic QUALIFIED
Chavez U KolmetzArgentinaAmy Elsner QUALIFIED
Darci B DilliardBrazilAsiya Javayant PROPOSAL
Ashley G NestleGermanyOnyama Limba RENEWAL
Johnson D TollnerCanadaIvan Magalhaes UNQUALIFIED
Leon B VocelkaIndiaStephen Shaw PROPOSAL
Octavia F DarakjyArgentinaAmy Elsner RENEWAL
Darci K PoquetteBrazilElwin Sharvill QUALIFIED
Leja F MaletUnited KingdomBernardo Dominic RENEWAL
Misaki D SergiAustraliaAmy Elsner PROPOSAL
Chavez F FlosiArgentinaElwin Sharvill PROPOSAL
Julie O MorascaCanadaAmy Elsner QUALIFIED

<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>