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 I FerenczSpainBernardo Dominic NEGOTIATION
Chavez N IturbideUnited KingdomOnyama Limba NEGOTIATION
Greenwood M SaylorsAustraliaAsiya Javayant NEGOTIATION
Darci B GillianCanadaAsiya Javayant NEW
Leon U RulapaughGermanyElwin Sharvill NEW
Aika M StensethItalyAnna Fali PROPOSAL
Aditya I GauchoFranceOnyama Limba UNQUALIFIED
Deepesh A PoquetteIndiaElwin Sharvill NEGOTIATION
Murillo K RulapaughRussiaBernardo Dominic QUALIFIED
Isabel V GarufiBrazilAnna Fali PROPOSAL
Sinclair N RoysterIndiaAnna Fali UNQUALIFIED
Jefferson D IturbideJapanIvan Magalhaes PROPOSAL
Alejandro X ShinkoIndiaAsiya Javayant PROPOSAL
Cody N CampainRussiaBernardo Dominic QUALIFIED
Nicolas H DilliardSpainElwin Sharvill PROPOSAL
Claire U MorascaJapanAmy Elsner NEW
Octavia D SergiBrazilIoni Bowcher UNQUALIFIED
Adams E GlickAustraliaOnyama Limba NEW
Jeanfrancois X WaycottCanadaIvan Magalhaes PROPOSAL
Jones H MorascaFranceIvan Magalhaes QUALIFIED
Kaitlin M AmigonRussiaElwin Sharvill UNQUALIFIED
Ricardo K SergiArgentinaStephen Shaw PROPOSAL
Emily C PerinIndiaAnna Fali NEGOTIATION
Stacey E StensethIndiaAmy Elsner NEGOTIATION
Darci I MaletArgentinaElwin Sharvill RENEWAL
Francesco R KuskoJapanAsiya Javayant QUALIFIED
David H WaycottUnited KingdomAnna Fali PROPOSAL
Maria A GillianGermanyIoni Bowcher RENEWAL
Jefferson Z MacleadRussiaStephen Shaw QUALIFIED
Maisha X MaletSpainBernardo Dominic NEGOTIATION
Leja C RulapaughGermanyIvan Magalhaes RENEWAL
Smith B GlickIndiaBernardo Dominic NEW
Maisha B AlbaresGermanyStephen Shaw NEW
Greenwood K ChuiRussiaStephen Shaw QUALIFIED
Juan E ButtGermanyAsiya Javayant NEGOTIATION
Octavia E RulapaughUnited KingdomAsiya Javayant QUALIFIED
Johnson A RoysterIndiaAmy Elsner PROPOSAL
Clifford T CaldareraCanadaAsiya Javayant RENEWAL
Munro W AlbaresRussiaXuxue Feng UNQUALIFIED
Murillo R WhobreyJapanElwin Sharvill QUALIFIED
Aruna N CampainBrazilOnyama Limba PROPOSAL
Jeanfrancois L PaprockiItalyAnna Fali UNQUALIFIED
James N MaletAustraliaAsiya Javayant QUALIFIED
David Z MacleadIndiaAnna Fali RENEWAL
Adams W DilliardGermanyAsiya Javayant NEW
Mayumi N FigeroaFranceOnyama Limba RENEWAL
Alejandro B FlosiJapanAmy Elsner UNQUALIFIED
James T FlosiUnited KingdomBernardo Dominic NEW
Salvatore R BowleyUnited KingdomIvan Magalhaes UNQUALIFIED
Faith M DoeIndiaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco P MarrierSpainAnna Fali UNQUALIFIED
Clifford W InouyeSpainAmy Elsner PROPOSAL
Smith F DoeFranceAnna Fali UNQUALIFIED
Maria D RulapaughItalyBernardo Dominic NEW
David F StensethIndiaAmy Elsner RENEWAL
Maria Y BologniaRussiaAmy Elsner PROPOSAL
Silvio M WhobreyRussiaBernardo Dominic PROPOSAL
Jefferson C SaylorsGermanyAsiya Javayant PROPOSAL
Sinclair S WieserJapanElwin Sharvill QUALIFIED
Stacey E FollerFranceAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore S MaletArgentina2024-05-24Chapman, Ross E Esq NEW18Elwin Sharvill
1001Antonio Q PerinUnited Kingdom2024-05-28Dorl, James J Esq RENEWAL66Amy Elsner
1002Aditya D GlickBrazil2024-06-07Chapman, Ross E Esq UNQUALIFIED14Xuxue Feng
1003Aruna A BologniaGermany2024-05-23Benton, John B Jr NEGOTIATION66Asiya Javayant
1004Mujtaba U FerenczJapan2024-05-21Benton, John B Jr QUALIFIED30Anna Fali
1005Murillo W InouyeArgentina2024-06-02Chapman, Ross E Esq UNQUALIFIED42Asiya Javayant
1006Costa J GlickCanada2024-06-12Benton, John B Jr NEW82Ivan Magalhaes
1007Darci J MorascaArgentina2024-06-11Morlong Associates NEGOTIATION49Asiya Javayant
1008Ivar C KuskoJapan2024-06-10Feltz Printing Service NEW0Ioni Bowcher
1009Munro N StockhamUnited Kingdom2024-06-01Chemel, James L Cpa NEGOTIATION65Stephen Shaw
1010Greenwood E StockhamItaly2024-05-19Truhlar And Truhlar Attys UNQUALIFIED48Ivan Magalhaes
1011Darci G CaudyArgentina2024-06-10Feltz Printing Service NEGOTIATION20Ioni Bowcher
1012Faith R PoquetteSpain2024-06-05Feltz Printing Service NEGOTIATION18Elwin Sharvill
1013David X CaldareraJapan2024-05-18Feltz Printing Service UNQUALIFIED95Stephen Shaw
1014Ivar K FerenczSpain2024-06-09Chemel, James L Cpa NEW50Elwin Sharvill
1015Mayumi F MaletSpain2024-06-03Rangoni Of Florence UNQUALIFIED66Amy Elsner
1016Ashley B StensethCanada2024-06-05Chemel, James L Cpa PROPOSAL63Elwin Sharvill
1017Smith B ShinkoIndia2024-06-03Rousseaux, Michael Esq NEGOTIATION90Amy Elsner
1018Mayumi L WhobreyArgentina2024-05-16Rousseaux, Michael Esq RENEWAL70Anna Fali
1019Jefferson I InouyeArgentina2024-05-22Rousseaux, Michael Esq QUALIFIED39Ioni Bowcher
1020Francesco B PerinGermany2024-05-24Commercial Press PROPOSAL14Stephen Shaw
1021Jones H NestleIndia2024-06-11Dorl, James J Esq RENEWAL96Ivan Magalhaes
1022Silvio D MarrierJapan2024-05-19Printing Dimensions UNQUALIFIED21Ioni Bowcher
1023Jennifer Q BowleyArgentina2024-05-20Commercial Press RENEWAL61Anna Fali
1024Aika H DoeAustralia2024-05-20Truhlar And Truhlar Attys NEW12Amy Elsner
1025Greenwood C DarakjySpain2024-06-12Rangoni Of Florence NEW9Amy Elsner
1026Tony T StensethCanada2024-05-18Chemel, James L Cpa UNQUALIFIED59Ioni Bowcher
1027Julie G OldroydAustralia2024-06-04Feltz Printing Service NEGOTIATION59Xuxue Feng
1028Jefferson L FollerCanada2024-05-31Benton, John B Jr NEGOTIATION50Anna Fali
1029Antonio W WhobreyItaly2024-05-27Rangoni Of Florence QUALIFIED9Stephen Shaw
1030Stacey A RoysterBrazil2024-05-21Feiner Bros NEGOTIATION92Asiya Javayant
1031David I SchemmerGermany2024-05-30Chanay, Jeffrey A Esq NEW3Ioni Bowcher
1032Morrow Q DilliardIndia2024-05-15Rangoni Of Florence UNQUALIFIED57Ioni Bowcher
1033Claire E AlbaresGermany2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED5Xuxue Feng
1034Leja P PerinAustralia2024-05-19Feltz Printing Service NEGOTIATION25Xuxue Feng
1035Cody N StensethGermany2024-05-25Rousseaux, Michael Esq RENEWAL51Amy Elsner
1036Costa B BologniaBrazil2024-06-01Dorl, James J Esq QUALIFIED76Elwin Sharvill
1037Munro L KolmetzCanada2024-06-05Truhlar And Truhlar Attys QUALIFIED35Ivan Magalhaes
1038Faith X WhobreyItaly2024-06-01Feltz Printing Service QUALIFIED64Asiya Javayant
1039Wickens O NestleJapan2024-06-04Feltz Printing Service PROPOSAL34Amy Elsner
1040Arvin B RoysterGermany2024-06-05Feiner Bros UNQUALIFIED25Elwin Sharvill
1041Cody I CampainGermany2024-05-24Printing Dimensions NEGOTIATION36Amy Elsner
1042Johnson P SaylorsFrance2024-05-22Chapman, Ross E Esq UNQUALIFIED60Onyama Limba
1043Tony M StockhamRussia2024-06-08Chanay, Jeffrey A Esq NEGOTIATION32Ioni Bowcher
1044Octavia Q PoquetteArgentina2024-06-01Printing Dimensions PROPOSAL66Asiya Javayant
1045Stacey U MarrierAustralia2024-05-28Chanay, Jeffrey A Esq RENEWAL9Anna Fali
1046Misaki Q BowleyAustralia2024-06-12Feiner Bros NEGOTIATION19Amy Elsner
1047Clifford M VenereUnited Kingdom2024-06-09Dorl, James J Esq RENEWAL11Ivan Magalhaes
1048Faith U NestleSpain2024-05-23Truhlar And Truhlar Attys NEGOTIATION58Anna Fali
1049Juan Q GillianAustralia2024-06-01Chemel, James L Cpa PROPOSAL55Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Jefferson L ButtIndiaIvan Magalhaes PROPOSAL
Jeanfrancois I OldroydRussiaAsiya Javayant UNQUALIFIED
Chavez I FlosiIndiaOnyama Limba NEGOTIATION
Leon Y PaprockiFranceBernardo Dominic UNQUALIFIED
Kaitlin A BologniaIndiaBernardo Dominic PROPOSAL
Ivar R FollerCanadaAnna Fali PROPOSAL
Cody D PerinJapanIvan Magalhaes RENEWAL
Munro E MaletCanadaXuxue Feng NEW
Ivar M ShinkoItalyStephen Shaw QUALIFIED
Costa A VenereItalyIvan Magalhaes NEW
Deepesh X MorascaJapanStephen Shaw QUALIFIED
Nicolas X IturbideAustraliaIvan Magalhaes UNQUALIFIED
Salvatore C GlickItalyBernardo Dominic QUALIFIED
Jeanfrancois M BologniaJapanIoni Bowcher RENEWAL
Murillo V WhobreyGermanyBernardo Dominic QUALIFIED
Salvatore J RulapaughIndiaOnyama Limba NEW
Maisha D AlbaresItalyStephen Shaw NEW
Adams O DilliardCanadaStephen Shaw NEW
Silvio S CaudySpainOnyama Limba QUALIFIED
Leon M BologniaArgentinaStephen Shaw PROPOSAL
Smith I PerinArgentinaIoni Bowcher QUALIFIED
Costa R MaletBrazilOnyama Limba QUALIFIED
Murillo E MarrierGermanyStephen Shaw NEW
Cody U NestleIndiaStephen Shaw NEGOTIATION
Leon X BologniaSpainStephen Shaw UNQUALIFIED
Morrow K FerenczRussiaOnyama Limba QUALIFIED
Stacey I MaletRussiaIvan Magalhaes UNQUALIFIED
Aika Q DilliardGermanyStephen Shaw NEW
Leon L GarufiItalyAmy Elsner UNQUALIFIED
Ricardo W FollerFranceIoni Bowcher NEGOTIATION
Ashley U NickaFranceStephen Shaw NEW
Mayumi M StockhamCanadaIvan Magalhaes PROPOSAL
Ashley M CaldareraCanadaAsiya Javayant NEGOTIATION
David E MaletUnited KingdomIoni Bowcher QUALIFIED
Aditya T CaldareraRussiaIvan Magalhaes QUALIFIED
Francesco O SlusarskiBrazilElwin Sharvill NEGOTIATION
Wickens D MacleadSpainIoni Bowcher UNQUALIFIED
Chavez X PoquetteIndiaIoni Bowcher QUALIFIED
Stacey W MorascaAustraliaIvan Magalhaes UNQUALIFIED
Silvio H MorascaUnited KingdomStephen Shaw QUALIFIED
Mujtaba W OldroydUnited KingdomIvan Magalhaes UNQUALIFIED
Aditya U GarufiFranceIoni Bowcher RENEWAL
Claire D DarakjyBrazilAsiya Javayant RENEWAL
Maria U RoysterJapanAsiya Javayant QUALIFIED
Aditya T MaletAustraliaIoni Bowcher NEW
Mayumi Y BologniaSpainXuxue Feng QUALIFIED
Leon P CaldareraRussiaIvan Magalhaes QUALIFIED
Ivar N PaprockiAustraliaAsiya Javayant NEW
Rodrigues C FerenczItalyIvan Magalhaes UNQUALIFIED
James Z SergiJapanStephen Shaw UNQUALIFIED
Frozen Columns
Name
Aditya E Iturbide
Jones M Ostrosky
Murillo W Waycott
Deepesh B Campain
Kadeem K Darakjy
Greenwood G Morasca
Aditya F Maclead
Julie N Ferencz
Morrow E Ferencz
David R Nicka
Jeanfrancois Q Foller
Silvio X Maclead
Deepesh P Ostrosky
Darci W Perin
Costa G Ferencz
Clifford K Perin
Kadeem N Flosi
Maria N Morasca
Rodrigues K Perin
Clifford Y Albares
Munro F Inouye
Kadeem G Nicka
Salvatore N Stenseth
Munro G Campain
Cody U Sergi
Munro J Amigon
Clifford R Whobrey
Octavia C Nicka
David X Bolognia
Misaki R Foller
Antonio Y Doe
Jones N Ferencz
Aditya U Morasca
Darci C Schemmer
Jennifer N Chui
Ricardo K Sergi
Salvatore R Chui
Stacey N Marrier
Misaki W Campain
James B Royster
Izzy L Saylors
Silvio W Campain
Kadeem Z Slusarski
Francesco F Ostrosky
Claire X Chui
Nicolas U Sergi
Kadeem Z Dilliard
Julie O Schemmer
Misaki Y Venere
Jones U Oldroyd
IdCountryDate
1000Italy2024-05-22
1001Australia2024-05-30
1002France2024-05-25
1003Italy2024-06-12
1004Spain2024-05-19
1005Japan2024-05-18
1006United Kingdom2024-05-19
1007Japan2024-06-07
1008Italy2024-06-11
1009Australia2024-06-13
1010France2024-05-27
1011Canada2024-05-29
1012Japan2024-05-31
1013Japan2024-06-06
1014Spain2024-06-06
1015Italy2024-05-28
1016Brazil2024-06-05
1017United Kingdom2024-05-24
1018Italy2024-05-22
1019Germany2024-05-29
1020Argentina2024-05-19
1021India2024-06-12
1022Japan2024-05-20
1023Italy2024-06-03
1024India2024-05-15
1025Germany2024-05-28
1026Spain2024-06-01
1027Canada2024-06-02
1028Spain2024-06-05
1029Germany2024-05-25
1030Argentina2024-06-13
1031Spain2024-05-30
1032Argentina2024-05-16
1033France2024-06-12
1034Italy2024-06-06
1035Canada2024-05-22
1036Canada2024-06-10
1037Spain2024-05-28
1038Spain2024-06-10
1039Japan2024-05-23
1040Australia2024-06-05
1041Australia2024-05-16
1042Brazil2024-05-31
1043India2024-06-03
1044Italy2024-05-29
1045Argentina2024-05-27
1046Russia2024-06-12
1047Brazil2024-06-08
1048Canada2024-06-10
1049India2024-05-31

On-Demand Data

NameIdCountryDate
Aruna S Ferencz1000Japan2024-05-26
Mujtaba N Stenseth1001France2024-06-01
Maisha J Gaucho1002Italy2024-05-16
Greenwood H Foller1003United Kingdom2024-06-09
Jennifer Z Waycott1004France2024-06-01
Silvio V Caldarera1005Italy2024-06-01
Aika Y Stockham1006Germany2024-05-20
Costa Y Schemmer1007Germany2024-05-21
Wickens X Darakjy1008Italy2024-06-12
Juan X Oldroyd1009Canada2024-06-06
Johnson E Kusko1010United Kingdom2024-05-16
Jeanfrancois F Darakjy1011Japan2024-05-26
Stacey D Shinko1012United Kingdom2024-06-09
Darci N Bolognia1013Australia2024-06-02
Wickens T Wieser1014Italy2024-05-27
Leja W Briddick1015France2024-05-19
Sinclair Q Flosi1016Australia2024-06-11
Clifford K Poquette1017Italy2024-05-15
Johnson R Dilliard1018Russia2024-06-07
Darci J Whobrey1019United Kingdom2024-06-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika H RulapaughBrazilAmy Elsner UNQUALIFIED
Costa W PerinUnited KingdomStephen Shaw UNQUALIFIED
Octavia Z AmigonSpainBernardo Dominic NEW
Isabel X RulapaughItalyAmy Elsner QUALIFIED
Jeanfrancois A MacleadArgentinaAsiya Javayant PROPOSAL
Johnson Y GillianArgentinaAmy Elsner NEW
Deepesh E CaldareraRussiaBernardo Dominic RENEWAL
Ashley N GauchoFranceIvan Magalhaes PROPOSAL
Clifford U KuskoJapanIoni Bowcher RENEWAL
Ashley Y AlbaresBrazilElwin Sharvill NEGOTIATION
Alejandro A RulapaughBrazilOnyama Limba PROPOSAL
Kaitlin Z StockhamSpainIvan Magalhaes UNQUALIFIED
Juan G FlosiBrazilAsiya Javayant RENEWAL
Adams A MaletCanadaAnna Fali UNQUALIFIED
Morrow B SchemmerRussiaOnyama Limba UNQUALIFIED
Jeanfrancois W MaletFranceOnyama Limba NEW
Clifford T MarrierRussiaIoni Bowcher QUALIFIED
Antonio A WieserRussiaIvan Magalhaes PROPOSAL
Francesco W PoquetteArgentinaStephen Shaw NEW
Deepesh I WaycottUnited KingdomOnyama Limba PROPOSAL
Jones M MaletJapanIoni Bowcher UNQUALIFIED
Leja V PerinBrazilAmy Elsner RENEWAL
Jones Y PaprockiItalyOnyama Limba PROPOSAL
Wickens A BologniaSpainIoni Bowcher NEGOTIATION
Aruna J MacleadArgentinaIoni Bowcher PROPOSAL
Maisha H OstroskyCanadaElwin Sharvill RENEWAL
Smith I ShinkoJapanBernardo Dominic NEGOTIATION
Aika K InouyeUnited KingdomElwin Sharvill UNQUALIFIED
Chavez B RoysterAustraliaElwin Sharvill NEW
Juan Y BriddickSpainXuxue Feng UNQUALIFIED
Antonio T StensethSpainAnna Fali NEGOTIATION
Antonio E MaletAustraliaElwin Sharvill PROPOSAL
Aruna Y RimGermanyElwin Sharvill QUALIFIED
Murillo G GillianSpainIoni Bowcher PROPOSAL
Johnson E RoysterCanadaIvan Magalhaes NEGOTIATION
Adams E BriddickGermanyAnna Fali NEW
Stacey T InouyeBrazilElwin Sharvill UNQUALIFIED
Mayumi L BologniaJapanBernardo Dominic NEGOTIATION
Sinclair R SchemmerFranceIoni Bowcher UNQUALIFIED
Jones P ShinkoGermanyIoni Bowcher 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>