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
Clifford K BowleyItalyAsiya Javayant PROPOSAL
David L PaprockiGermanyIoni Bowcher PROPOSAL
James X InouyeArgentinaBernardo Dominic NEW
Jones R OstroskyItalyIvan Magalhaes NEW
Darci A BriddickSpainIvan Magalhaes NEW
Maria C WaycottBrazilXuxue Feng PROPOSAL
Johnson R MaletFranceAmy Elsner UNQUALIFIED
Morrow E GlickBrazilIvan Magalhaes PROPOSAL
Mayumi B MaletItalyAsiya Javayant NEW
Salvatore M CampainUnited KingdomBernardo Dominic QUALIFIED
Deepesh C GlickCanadaIvan Magalhaes NEGOTIATION
Faith M AlbaresUnited KingdomXuxue Feng UNQUALIFIED
Francesco H NickaFranceXuxue Feng QUALIFIED
Aika I NestleAustraliaStephen Shaw NEW
Jennifer Q VenereUnited KingdomStephen Shaw NEW
Emily L AmigonAustraliaOnyama Limba PROPOSAL
Stacey Q WhobreyCanadaAmy Elsner RENEWAL
James T MacleadCanadaOnyama Limba NEW
Izzy E WhobreySpainXuxue Feng PROPOSAL
Jones R FigeroaBrazilIoni Bowcher NEGOTIATION
Jefferson I ShinkoCanadaAmy Elsner QUALIFIED
Costa T CampainGermanyXuxue Feng UNQUALIFIED
Ricardo J KuskoCanadaStephen Shaw UNQUALIFIED
Leja U OldroydIndiaAsiya Javayant NEW
Ashley S MarrierBrazilAsiya Javayant UNQUALIFIED
Ivar V SlusarskiArgentinaIvan Magalhaes PROPOSAL
Kadeem Z StockhamJapanAsiya Javayant UNQUALIFIED
Izzy Z PoquetteArgentinaXuxue Feng QUALIFIED
Julie B VenereGermanyAsiya Javayant PROPOSAL
Murillo E BriddickJapanIoni Bowcher PROPOSAL
Francesco V RoysterJapanIvan Magalhaes UNQUALIFIED
Julie Q VenereSpainBernardo Dominic NEGOTIATION
Tony H NickaArgentinaIvan Magalhaes RENEWAL
Leja J CampainAustraliaXuxue Feng NEW
Aruna T WaycottUnited KingdomElwin Sharvill QUALIFIED
Misaki A GauchoArgentinaAmy Elsner PROPOSAL
Ivar U RulapaughFranceAsiya Javayant QUALIFIED
Emily K SergiFranceOnyama Limba UNQUALIFIED
Mayumi G RulapaughGermanyStephen Shaw RENEWAL
Sinclair O CaudyCanadaXuxue Feng NEGOTIATION
Francesco U OstroskyGermanyXuxue Feng NEGOTIATION
Aruna E GillianItalyIvan Magalhaes QUALIFIED
Kaitlin J GillianItalyIoni Bowcher NEW
David J GarufiCanadaAsiya Javayant NEGOTIATION
Juan C FlosiAustraliaXuxue Feng NEGOTIATION
Jones V AmigonCanadaAnna Fali QUALIFIED
Ashley N NestleArgentinaIoni Bowcher NEW
Ashley D StockhamUnited KingdomAmy Elsner RENEWAL
Costa R RimIndiaIvan Magalhaes NEW
Adams M BriddickRussiaBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Deepesh P TollnerBrazilAmy Elsner QUALIFIED
Julie D ButtAustraliaAnna Fali NEW
James O WieserItalyElwin Sharvill PROPOSAL
James Q OldroydItalyAnna Fali QUALIFIED
Costa N SchemmerIndiaStephen Shaw QUALIFIED
Costa Q CaldareraJapanOnyama Limba RENEWAL
Costa C WhobreyGermanyIoni Bowcher PROPOSAL
Leja W MacleadSpainAnna Fali QUALIFIED
Chavez L MaletSpainAnna Fali RENEWAL
Jefferson O OldroydArgentinaIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja Y StockhamArgentina2024-05-04Rangoni Of Florence QUALIFIED33Ivan Magalhaes
1001Wickens J CaudySpain2024-05-05Truhlar And Truhlar Attys UNQUALIFIED94Xuxue Feng
1002Leon F RulapaughBrazil2024-05-10Chapman, Ross E Esq QUALIFIED56Asiya Javayant
1003Misaki L MorascaFrance2024-05-09Feiner Bros NEW96Xuxue Feng
1004Murillo B ChuiArgentina2024-05-15Chanay, Jeffrey A Esq NEW68Ioni Bowcher
1005Maria Y ShinkoRussia2024-05-26Rousseaux, Michael Esq NEW26Onyama Limba
1006Faith N RoysterUnited Kingdom2024-05-18Chanay, Jeffrey A Esq QUALIFIED67Bernardo Dominic
1007Cody H NickaAustralia2024-05-27King, Christopher A Esq RENEWAL19Ivan Magalhaes
1008Rodrigues W GauchoSpain2024-05-25Chapman, Ross E Esq RENEWAL57Ioni Bowcher
1009Maisha N WhobreyItaly2024-05-13Feltz Printing Service NEW96Ioni Bowcher
1010Morrow B SchemmerAustralia2024-05-13Morlong Associates RENEWAL96Elwin Sharvill
1011James W CaldareraBrazil2024-05-12Rousseaux, Michael Esq NEGOTIATION16Onyama Limba
1012Deepesh G GillianArgentina2024-05-11Chanay, Jeffrey A Esq QUALIFIED24Elwin Sharvill
1013Nicolas I FigeroaFrance2024-05-08Truhlar And Truhlar Attys PROPOSAL4Onyama Limba
1014Leon O GarufiBrazil2024-05-21Chemel, James L Cpa QUALIFIED92Bernardo Dominic
1015Arvin G StensethIndia2024-05-24Rousseaux, Michael Esq NEGOTIATION91Bernardo Dominic
1016Jeanfrancois E PerinBrazil2024-05-17Chanay, Jeffrey A Esq UNQUALIFIED22Ivan Magalhaes
1017Faith F BriddickBrazil2024-05-27Rousseaux, Michael Esq QUALIFIED40Stephen Shaw
1018Johnson K OstroskyArgentina2024-05-04Rousseaux, Michael Esq NEGOTIATION91Asiya Javayant
1019Aika N RoysterItaly2024-05-04Feltz Printing Service QUALIFIED98Anna Fali
1020Wickens K StensethGermany2024-05-11Chemel, James L Cpa UNQUALIFIED86Onyama Limba
1021Emily B WaycottRussia2024-05-09Dorl, James J Esq RENEWAL79Onyama Limba
1022Adams T ShinkoSpain2024-05-25Rangoni Of Florence PROPOSAL8Ivan Magalhaes
1023Maria J GauchoRussia2024-05-26King, Christopher A Esq NEW4Xuxue Feng
1024Emily A NickaArgentina2024-05-18Rangoni Of Florence RENEWAL95Amy Elsner
1025Ashley V AlbaresUnited Kingdom2024-05-23Rousseaux, Michael Esq UNQUALIFIED46Bernardo Dominic
1026Mayumi Q AmigonCanada2024-05-11King, Christopher A Esq NEW85Stephen Shaw
1027Stacey J DoeAustralia2024-05-17King, Christopher A Esq PROPOSAL8Ivan Magalhaes
1028Munro U WhobreyIndia2024-05-15Feltz Printing Service PROPOSAL57Asiya Javayant
1029Clifford O SaylorsGermany2024-05-07Feiner Bros UNQUALIFIED87Asiya Javayant
1030Francesco D GauchoItaly2024-05-05Rangoni Of Florence UNQUALIFIED76Anna Fali
1031Julie K StockhamSpain2024-05-10Benton, John B Jr RENEWAL74Onyama Limba
1032Deepesh G RimIndia2024-05-20Commercial Press PROPOSAL44Xuxue Feng
1033Munro J IturbideIndia2024-05-26Rangoni Of Florence QUALIFIED89Ivan Magalhaes
1034Morrow Z OstroskyUnited Kingdom2024-04-30Feltz Printing Service UNQUALIFIED76Onyama Limba
1035Deepesh I VocelkaSpain2024-05-03Morlong Associates RENEWAL59Onyama Limba
1036Emily I BriddickCanada2024-05-05Chapman, Ross E Esq QUALIFIED66Anna Fali
1037Silvio L MorascaSpain2024-05-06Commercial Press NEGOTIATION80Bernardo Dominic
1038Nicolas M FollerItaly2024-05-02Chanay, Jeffrey A Esq UNQUALIFIED20Anna Fali
1039Salvatore I AlbaresItaly2024-05-18Chemel, James L Cpa NEGOTIATION78Xuxue Feng
1040Wickens R ChuiFrance2024-05-10Chemel, James L Cpa RENEWAL89Stephen Shaw
1041Adams Z DilliardIndia2024-05-02Feltz Printing Service NEGOTIATION79Ioni Bowcher
1042Maisha M OstroskyCanada2024-05-13Truhlar And Truhlar Attys RENEWAL92Stephen Shaw
1043Isabel M MacleadCanada2024-05-23King, Christopher A Esq QUALIFIED1Onyama Limba
1044Jones M WaycottSpain2024-05-21Chanay, Jeffrey A Esq PROPOSAL12Stephen Shaw
1045Julie S SaylorsFrance2024-04-30Feiner Bros NEW30Elwin Sharvill
1046Clifford U FollerIndia2024-05-21Feltz Printing Service QUALIFIED93Ioni Bowcher
1047Deepesh K NickaArgentina2024-05-27Chanay, Jeffrey A Esq RENEWAL12Anna Fali
1048Johnson B StensethBrazil2024-05-14Rousseaux, Michael Esq QUALIFIED98Ioni Bowcher
1049Juan Z AlbaresItaly2024-05-23King, Christopher A Esq QUALIFIED79Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Leon Z FollerUnited KingdomElwin Sharvill UNQUALIFIED
Faith W RulapaughItalyAnna Fali QUALIFIED
Claire O RimRussiaOnyama Limba NEW
Alejandro L DilliardBrazilIoni Bowcher NEGOTIATION
James G GarufiGermanyOnyama Limba RENEWAL
Sinclair Q DilliardCanadaXuxue Feng PROPOSAL
Mujtaba L GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Francesco I PaprockiArgentinaStephen Shaw QUALIFIED
Aditya T MaletRussiaElwin Sharvill QUALIFIED
Murillo W PaprockiArgentinaAnna Fali UNQUALIFIED
Munro L VenereUnited KingdomAmy Elsner NEGOTIATION
Kaitlin F MaletFranceBernardo Dominic NEW
Francesco T TollnerAustraliaOnyama Limba RENEWAL
Munro Q TollnerAustraliaElwin Sharvill PROPOSAL
Greenwood L GlickAustraliaAnna Fali QUALIFIED
Arvin O ShinkoJapanOnyama Limba NEGOTIATION
Deepesh T PerinIndiaOnyama Limba RENEWAL
Sinclair J OldroydItalyStephen Shaw PROPOSAL
Wickens L MaletRussiaIvan Magalhaes PROPOSAL
Antonio L AmigonIndiaIvan Magalhaes RENEWAL
Emily X PoquetteGermanyStephen Shaw NEGOTIATION
Ricardo N BologniaJapanXuxue Feng QUALIFIED
Chavez K ChuiArgentinaStephen Shaw NEGOTIATION
Maria E InouyeSpainAsiya Javayant UNQUALIFIED
Misaki L CaldareraAustraliaAmy Elsner PROPOSAL
Emily Y GauchoRussiaBernardo Dominic UNQUALIFIED
Isabel L SlusarskiRussiaOnyama Limba RENEWAL
Costa D MacleadFranceAmy Elsner QUALIFIED
Juan S KuskoBrazilXuxue Feng QUALIFIED
Silvio V ShinkoFranceIvan Magalhaes NEGOTIATION
Aruna R WaycottJapanAmy Elsner UNQUALIFIED
Francesco F DilliardFranceIvan Magalhaes PROPOSAL
Julie I GlickUnited KingdomElwin Sharvill QUALIFIED
Jefferson I FollerBrazilIvan Magalhaes UNQUALIFIED
Mayumi I RoysterCanadaAmy Elsner PROPOSAL
Maria M BologniaFranceAmy Elsner QUALIFIED
Nicolas F PoquetteUnited KingdomBernardo Dominic RENEWAL
Kadeem U OldroydSpainXuxue Feng QUALIFIED
Adams S MaletFranceElwin Sharvill RENEWAL
Sinclair C BriddickArgentinaElwin Sharvill RENEWAL
Francesco O MaletUnited KingdomAmy Elsner PROPOSAL
Faith Z FerenczRussiaStephen Shaw QUALIFIED
Salvatore U RimSpainStephen Shaw RENEWAL
Chavez O TollnerGermanyXuxue Feng PROPOSAL
Jennifer S FigeroaIndiaBernardo Dominic NEGOTIATION
Rodrigues P RulapaughFranceStephen Shaw PROPOSAL
Clifford F VenereItalyAmy Elsner QUALIFIED
Julie Z InouyeBrazilAsiya Javayant NEW
Aditya D MarrierCanadaStephen Shaw QUALIFIED
Jefferson T WaycottSpainElwin Sharvill NEGOTIATION
Frozen Columns
Name
Ivar E Oldroyd
Ashley H Shinko
Munro O Schemmer
Chavez F Gillian
Morrow Z Malet
Jones A Briddick
Sinclair X Schemmer
Jennifer Z Glick
Wickens T Ferencz
Munro D Vocelka
Misaki M Whobrey
Nicolas J Kolmetz
Tony U Ostrosky
Antonio K Rim
Izzy O Flosi
Jennifer Q Poquette
Emily A Dilliard
Deepesh D Wieser
Faith D Rulapaugh
Nicolas J Shinko
Francesco N Nicka
Faith R Ruta
Wickens Z Malet
Alejandro T Darakjy
Darci D Perin
Costa G Waycott
Faith Z Foller
Deepesh K Flosi
Rodrigues J Wieser
David L Ostrosky
Misaki G Glick
Juan E Morasca
Ricardo X Whobrey
Jennifer K Marrier
Greenwood T Caudy
Claire O Briddick
Ricardo E Butt
Leja X Ferencz
Costa S Albares
Morrow W Bowley
Morrow N Shinko
Stacey D Flosi
Aditya H Albares
Darci C Malet
Jennifer Q Ruta
Nicolas K Glick
Jefferson J Saylors
Octavia G Malet
Adams Z Ruta
Deepesh Z Nicka
IdCountryDate
1000Germany2024-05-20
1001United Kingdom2024-05-26
1002France2024-05-11
1003Russia2024-05-15
1004India2024-05-14
1005Spain2024-05-26
1006Canada2024-05-06
1007Germany2024-05-18
1008France2024-05-25
1009France2024-05-03
1010India2024-05-10
1011Russia2024-05-06
1012Japan2024-05-05
1013United Kingdom2024-04-30
1014United Kingdom2024-05-03
1015Argentina2024-04-30
1016India2024-05-23
1017Australia2024-05-12
1018Japan2024-05-06
1019Australia2024-05-05
1020Canada2024-05-20
1021Russia2024-05-02
1022Brazil2024-05-15
1023Germany2024-05-16
1024Italy2024-05-13
1025Japan2024-05-27
1026Germany2024-05-23
1027Japan2024-05-05
1028Japan2024-05-21
1029India2024-04-29
1030Argentina2024-05-04
1031Australia2024-05-10
1032Spain2024-05-27
1033Spain2024-05-23
1034Germany2024-04-28
1035Italy2024-05-25
1036Japan2024-05-06
1037Russia2024-05-20
1038United Kingdom2024-05-11
1039Australia2024-05-09
1040Brazil2024-05-22
1041Russia2024-05-21
1042Russia2024-05-21
1043Japan2024-05-05
1044Brazil2024-05-18
1045Italy2024-05-14
1046Russia2024-05-13
1047Germany2024-05-24
1048Japan2024-05-22
1049Russia2024-05-26

On-Demand Data

NameIdCountryDate
Antonio D Gaucho1000United Kingdom2024-05-03
Morrow P Malet1001Argentina2024-05-02
Ivar B Tollner1002Brazil2024-04-30
Aika Y Ruta1003India2024-05-25
Wickens N Briddick1004Canada2024-05-02
Cody C Glick1005Spain2024-05-16
David E Shinko1006Australia2024-05-09
Jennifer V Malet1007United Kingdom2024-04-30
Antonio A Rim1008India2024-05-24
Aditya X Dilliard1009Argentina2024-05-05
Salvatore O Dilliard1010Germany2024-05-04
Sinclair P Garufi1011Canada2024-05-23
Clifford F Kusko1012Brazil2024-05-09
Claire S Ostrosky1013United Kingdom2024-05-16
Julie L Albares1014Germany2024-05-22
Munro M Stockham1015Spain2024-04-29
Costa M Malet1016France2024-05-12
Clifford E Schemmer1017Argentina2024-05-26
Ivar U Ostrosky1018Russia2024-05-27
Mayumi Y Bowley1019United Kingdom2024-05-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson V MacleadBrazilStephen Shaw NEW
Julie E DarakjyGermanyAsiya Javayant NEGOTIATION
Antonio V MaletJapanAsiya Javayant NEGOTIATION
Ashley Z WieserJapanIvan Magalhaes NEGOTIATION
James I BologniaJapanOnyama Limba NEGOTIATION
Aditya N ShinkoArgentinaIoni Bowcher RENEWAL
Ricardo C KuskoUnited KingdomXuxue Feng QUALIFIED
Arvin M BowleyBrazilIvan Magalhaes QUALIFIED
Maria I BriddickBrazilElwin Sharvill RENEWAL
Greenwood M FerenczAustraliaBernardo Dominic UNQUALIFIED
Smith F DoeFranceAmy Elsner PROPOSAL
Jones R MorascaCanadaBernardo Dominic UNQUALIFIED
Julie N RulapaughAustraliaStephen Shaw UNQUALIFIED
Murillo V MacleadFranceXuxue Feng RENEWAL
Rodrigues Y SergiUnited KingdomXuxue Feng NEGOTIATION
Darci C CampainSpainBernardo Dominic NEW
Izzy P ChuiRussiaElwin Sharvill NEGOTIATION
Aika T FerenczArgentinaBernardo Dominic NEW
Cody Q WhobreyFranceAmy Elsner RENEWAL
Francesco X OldroydIndiaElwin Sharvill QUALIFIED
Tony I FerenczAustraliaStephen Shaw NEGOTIATION
Izzy X AmigonCanadaIoni Bowcher NEGOTIATION
Juan M CampainUnited KingdomIoni Bowcher QUALIFIED
Mujtaba D TollnerUnited KingdomOnyama Limba PROPOSAL
Nicolas K DarakjyUnited KingdomAsiya Javayant NEGOTIATION
Francesco V NestleCanadaIvan Magalhaes QUALIFIED
Ivar X FerenczBrazilElwin Sharvill UNQUALIFIED
Clifford N MacleadArgentinaStephen Shaw NEW
Costa N RutaItalyIoni Bowcher PROPOSAL
Jefferson V RulapaughItalyIoni Bowcher RENEWAL
Salvatore D StensethArgentinaAmy Elsner RENEWAL
Alejandro P FollerArgentinaOnyama Limba PROPOSAL
Morrow H NestleSpainStephen Shaw PROPOSAL
Smith Z MacleadRussiaElwin Sharvill PROPOSAL
Octavia I GlickGermanyAsiya Javayant RENEWAL
Kaitlin O PerinArgentinaOnyama Limba RENEWAL
Ricardo Z KuskoCanadaOnyama Limba UNQUALIFIED
Emily H DilliardAustraliaIvan Magalhaes PROPOSAL
Francesco A KuskoArgentinaXuxue Feng NEGOTIATION
Chavez I WaycottGermanyIvan Magalhaes 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>