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
Leon U FollerRussiaAmy Elsner UNQUALIFIED
Murillo O GauchoJapanOnyama Limba NEGOTIATION
Leja F NickaUnited KingdomStephen Shaw RENEWAL
Morrow N WaycottItalyAnna Fali PROPOSAL
Tony B MaletRussiaAnna Fali NEW
Morrow W SchemmerSpainIoni Bowcher NEW
Adams L KuskoSpainBernardo Dominic UNQUALIFIED
Leon R PoquetteSpainAsiya Javayant RENEWAL
Silvio W SaylorsCanadaAmy Elsner NEGOTIATION
Julie P NickaArgentinaIoni Bowcher NEGOTIATION
Francesco W PoquetteIndiaIoni Bowcher UNQUALIFIED
Costa E ButtUnited KingdomIvan Magalhaes RENEWAL
Leja Y KuskoItalyElwin Sharvill NEW
Maria M WhobreyJapanBernardo Dominic UNQUALIFIED
Maria P BowleyArgentinaAsiya Javayant QUALIFIED
Aika N StockhamItalyElwin Sharvill RENEWAL
Chavez M BowleyArgentinaAnna Fali RENEWAL
Jones S RutaArgentinaStephen Shaw NEW
Izzy T RimSpainStephen Shaw QUALIFIED
Murillo D MarrierJapanXuxue Feng QUALIFIED
Jefferson R VocelkaArgentinaIoni Bowcher NEW
Sinclair V DilliardArgentinaAsiya Javayant UNQUALIFIED
Isabel S VenereRussiaAmy Elsner NEGOTIATION
Jennifer O GlickUnited KingdomAnna Fali QUALIFIED
Costa K WieserItalyXuxue Feng RENEWAL
Smith Q KuskoIndiaAnna Fali RENEWAL
Arvin X MaletGermanyBernardo Dominic UNQUALIFIED
Ivar T DoeGermanyIvan Magalhaes QUALIFIED
Misaki K CaldareraArgentinaIoni Bowcher UNQUALIFIED
Julie F BowleyArgentinaOnyama Limba NEW
Arvin C WhobreySpainAsiya Javayant NEW
Jeanfrancois D PaprockiItalyAsiya Javayant NEGOTIATION
Octavia E DilliardAustraliaStephen Shaw UNQUALIFIED
Aditya V WhobreyUnited KingdomOnyama Limba PROPOSAL
Jefferson T VocelkaAustraliaElwin Sharvill QUALIFIED
Wickens N AlbaresAustraliaAmy Elsner NEGOTIATION
Mayumi E MacleadUnited KingdomBernardo Dominic QUALIFIED
Sinclair A GarufiRussiaStephen Shaw RENEWAL
Alejandro O FlosiSpainIoni Bowcher QUALIFIED
Arvin H VenereArgentinaIvan Magalhaes NEW
Arvin N OstroskyBrazilAsiya Javayant RENEWAL
Murillo I KuskoJapanBernardo Dominic PROPOSAL
Nicolas A SlusarskiJapanAsiya Javayant PROPOSAL
Deepesh J SlusarskiArgentinaAmy Elsner QUALIFIED
Tony G InouyeUnited KingdomBernardo Dominic PROPOSAL
Mujtaba R BriddickCanadaAnna Fali NEW
Jeanfrancois E PaprockiItalyOnyama Limba NEW
Aruna J StockhamRussiaXuxue Feng PROPOSAL
Cody Z DoeUnited KingdomBernardo Dominic QUALIFIED
Arvin J MarrierJapanElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Chavez D BriddickItalyOnyama Limba NEGOTIATION
Isabel V KuskoFranceXuxue Feng PROPOSAL
Greenwood F PerinJapanAsiya Javayant UNQUALIFIED
Misaki B RulapaughCanadaAsiya Javayant UNQUALIFIED
Octavia V ButtItalyAmy Elsner RENEWAL
Cody D NickaFranceAsiya Javayant NEGOTIATION
Tony A RulapaughArgentinaAnna Fali NEGOTIATION
Maria N TollnerCanadaAnna Fali QUALIFIED
Antonio W FollerUnited KingdomStephen Shaw RENEWAL
Munro T WieserJapanElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo R FigeroaRussia2024-06-03Buckley Miller Wright NEGOTIATION71Ioni Bowcher
1001Tony R NickaFrance2024-06-08Printing Dimensions NEW15Xuxue Feng
1002Darci N SchemmerGermany2024-05-31Feltz Printing Service RENEWAL31Amy Elsner
1003David N RulapaughGermany2024-05-26Chapman, Ross E Esq UNQUALIFIED9Asiya Javayant
1004Smith F RulapaughBrazil2024-05-30Chanay, Jeffrey A Esq RENEWAL77Anna Fali
1005Wickens L TollnerItaly2024-06-06Chapman, Ross E Esq PROPOSAL27Anna Fali
1006Francesco F OldroydGermany2024-06-20Buckley Miller Wright NEGOTIATION5Bernardo Dominic
1007Sinclair L GauchoUnited Kingdom2024-05-26Rousseaux, Michael Esq UNQUALIFIED89Anna Fali
1008Jeanfrancois W RutaRussia2024-06-23Commercial Press NEGOTIATION46Ivan Magalhaes
1009David S NestleSpain2024-06-09Truhlar And Truhlar Attys PROPOSAL45Asiya Javayant
1010Tony H FollerFrance2024-05-30Morlong Associates UNQUALIFIED45Stephen Shaw
1011Aruna X GlickSpain2024-05-30King, Christopher A Esq NEW26Stephen Shaw
1012Leja N CaldareraGermany2024-06-23Truhlar And Truhlar Attys UNQUALIFIED48Xuxue Feng
1013Chavez Q PerinIndia2024-06-14Chemel, James L Cpa NEGOTIATION18Bernardo Dominic
1014Maisha L ButtSpain2024-06-01Buckley Miller Wright QUALIFIED48Anna Fali
1015Stacey C WieserFrance2024-06-02Morlong Associates UNQUALIFIED24Amy Elsner
1016Ivar S BriddickBrazil2024-06-08Printing Dimensions PROPOSAL12Ivan Magalhaes
1017Arvin U VenereSpain2024-06-24Benton, John B Jr RENEWAL52Onyama Limba
1018Emily D FollerItaly2024-05-29Morlong Associates UNQUALIFIED7Bernardo Dominic
1019Faith D InouyeSpain2024-06-23Feiner Bros NEW69Ioni Bowcher
1020Greenwood G OldroydArgentina2024-06-08Chemel, James L Cpa QUALIFIED88Asiya Javayant
1021Mujtaba H StensethItaly2024-06-17Chanay, Jeffrey A Esq NEGOTIATION32Amy Elsner
1022Ashley L RutaArgentina2024-06-16Truhlar And Truhlar Attys RENEWAL66Stephen Shaw
1023Murillo F AlbaresArgentina2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED60Ioni Bowcher
1024Aruna X ChuiSpain2024-06-04Chapman, Ross E Esq NEW77Bernardo Dominic
1025Costa X FerenczUnited Kingdom2024-06-07Dorl, James J Esq NEW54Stephen Shaw
1026Silvio M StensethAustralia2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED61Anna Fali
1027Darci N CaldareraUnited Kingdom2024-06-02Truhlar And Truhlar Attys PROPOSAL15Elwin Sharvill
1028Ashley L AmigonJapan2024-06-07Dorl, James J Esq NEW85Ioni Bowcher
1029Aika U RimGermany2024-06-11Chemel, James L Cpa PROPOSAL85Elwin Sharvill
1030Jennifer A CaldareraUnited Kingdom2024-05-31Feltz Printing Service RENEWAL8Stephen Shaw
1031Aika W DarakjyBrazil2024-06-09Dorl, James J Esq UNQUALIFIED46Elwin Sharvill
1032Francesco P MorascaJapan2024-06-04Feltz Printing Service UNQUALIFIED48Ivan Magalhaes
1033Misaki G OstroskySpain2024-06-13Rousseaux, Michael Esq QUALIFIED70Ioni Bowcher
1034David T PaprockiCanada2024-05-29Feltz Printing Service NEGOTIATION10Amy Elsner
1035Jones Z WaycottItaly2024-06-23Feiner Bros PROPOSAL20Bernardo Dominic
1036Nicolas X MaletRussia2024-06-15Benton, John B Jr UNQUALIFIED46Elwin Sharvill
1037Arvin Z BriddickJapan2024-06-23King, Christopher A Esq NEW31Anna Fali
1038James W ChuiAustralia2024-05-28Chanay, Jeffrey A Esq RENEWAL8Asiya Javayant
1039Silvio A GillianIndia2024-06-13Truhlar And Truhlar Attys RENEWAL63Amy Elsner
1040Stacey U NickaJapan2024-06-13Buckley Miller Wright UNQUALIFIED78Xuxue Feng
1041Chavez B BowleyJapan2024-06-14Truhlar And Truhlar Attys QUALIFIED55Anna Fali
1042Rodrigues W MaletSpain2024-06-06Feiner Bros NEGOTIATION80Onyama Limba
1043Morrow D RulapaughIndia2024-05-29Benton, John B Jr NEGOTIATION0Asiya Javayant
1044James W OldroydRussia2024-06-14Rousseaux, Michael Esq RENEWAL45Bernardo Dominic
1045Kaitlin H WhobreyGermany2024-05-28Rangoni Of Florence QUALIFIED90Ivan Magalhaes
1046Antonio P MaletUnited Kingdom2024-06-22Chanay, Jeffrey A Esq RENEWAL87Onyama Limba
1047Ashley J StensethIndia2024-06-22Chemel, James L Cpa PROPOSAL6Bernardo Dominic
1048Aruna S SlusarskiSpain2024-06-06Chapman, Ross E Esq UNQUALIFIED80Anna Fali
1049Jefferson M RimSpain2024-06-22Truhlar And Truhlar Attys NEW45Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jennifer R FigeroaFranceElwin Sharvill QUALIFIED
Rodrigues G MaletFranceAsiya Javayant RENEWAL
Murillo C GlickJapanElwin Sharvill NEW
Aika J ButtFranceIvan Magalhaes QUALIFIED
Tony V SlusarskiBrazilAnna Fali QUALIFIED
Aditya Y RimBrazilAsiya Javayant QUALIFIED
Isabel I AlbaresJapanIvan Magalhaes PROPOSAL
Wickens A WhobreyBrazilOnyama Limba RENEWAL
Costa O StockhamItalyElwin Sharvill PROPOSAL
Izzy A IturbideFranceIvan Magalhaes PROPOSAL
Kaitlin K WieserGermanyAnna Fali RENEWAL
Juan E GlickGermanyIoni Bowcher QUALIFIED
Claire D OstroskyItalyBernardo Dominic RENEWAL
Faith A VocelkaRussiaIoni Bowcher NEGOTIATION
Johnson E DoeCanadaAsiya Javayant NEW
Leja S FollerCanadaAsiya Javayant UNQUALIFIED
Octavia F RimIndiaAmy Elsner QUALIFIED
Maisha M InouyeUnited KingdomBernardo Dominic PROPOSAL
Salvatore A GarufiIndiaAnna Fali QUALIFIED
Jones R VocelkaRussiaAnna Fali PROPOSAL
Misaki W NestleGermanyAmy Elsner NEGOTIATION
Aruna N GauchoBrazilBernardo Dominic QUALIFIED
Octavia P TollnerFranceElwin Sharvill UNQUALIFIED
Aika W AlbaresFranceAnna Fali NEW
Munro N ButtItalyStephen Shaw NEW
Cody V OldroydIndiaXuxue Feng QUALIFIED
Mayumi B BriddickItalyAmy Elsner NEW
Claire O ButtArgentinaStephen Shaw PROPOSAL
Claire T GlickCanadaBernardo Dominic QUALIFIED
Octavia P NickaSpainIoni Bowcher NEGOTIATION
Murillo M WieserGermanyXuxue Feng PROPOSAL
Murillo P GarufiRussiaIvan Magalhaes NEW
Misaki R NickaFranceBernardo Dominic UNQUALIFIED
Deepesh B BriddickIndiaOnyama Limba NEW
Salvatore H GillianAustraliaElwin Sharvill NEGOTIATION
Izzy I GauchoAustraliaIoni Bowcher UNQUALIFIED
Johnson Q GarufiItalyIvan Magalhaes UNQUALIFIED
Julie O StensethAustraliaElwin Sharvill NEGOTIATION
Jones I KolmetzSpainIoni Bowcher QUALIFIED
Ashley K FerenczFranceAnna Fali UNQUALIFIED
Nicolas S StockhamIndiaAnna Fali NEW
Darci K GlickJapanXuxue Feng RENEWAL
Antonio I KuskoItalyBernardo Dominic RENEWAL
Deepesh W PerinAustraliaElwin Sharvill PROPOSAL
Juan R MorascaAustraliaOnyama Limba UNQUALIFIED
Salvatore K BriddickCanadaAmy Elsner NEGOTIATION
Rodrigues Q MacleadAustraliaIvan Magalhaes PROPOSAL
Silvio W InouyeRussiaIvan Magalhaes PROPOSAL
Octavia R KolmetzBrazilAnna Fali NEW
Darci I SaylorsJapanAmy Elsner UNQUALIFIED
Frozen Columns
Name
Aika G Caldarera
Stacey M Royster
Izzy L Nestle
Wickens Z Caudy
Leja D Poquette
Ivar A Ferencz
Deepesh V Waycott
Tony T Flosi
Morrow P Paprocki
Costa M Briddick
Francesco Q Stenseth
Isabel R Paprocki
Francesco O Gaucho
Johnson H Dilliard
Nicolas C Paprocki
Izzy V Stenseth
Jennifer E Darakjy
Clifford B Chui
Emily A Tollner
Ashley X Wieser
Darci U Stockham
Ashley M Ruta
Claire G Gaucho
Maria B Ferencz
Mayumi N Figeroa
Munro G Doe
Isabel A Nestle
Kaitlin H Gaucho
Kadeem F Amigon
Misaki T Foller
Nicolas J Stenseth
Maisha W Campain
Wickens B Campain
Ricardo E Nestle
Alejandro W Briddick
Isabel Q Stockham
Alejandro H Marrier
Maisha T Ruta
Arvin T Marrier
Greenwood I Marrier
Faith S Ostrosky
Jefferson P Morasca
Jennifer H Figeroa
Alejandro P Darakjy
Izzy K Poquette
Maria H Rulapaugh
Aruna H Oldroyd
Morrow M Kusko
Maisha G Figeroa
Antonio G Ruta
IdCountryDate
1000Australia2024-06-11
1001Brazil2024-06-04
1002India2024-06-21
1003Spain2024-06-17
1004Canada2024-05-29
1005France2024-06-15
1006Germany2024-06-11
1007Australia2024-06-17
1008Australia2024-06-12
1009Japan2024-05-27
1010Japan2024-06-13
1011France2024-06-14
1012Japan2024-06-21
1013Italy2024-05-30
1014Germany2024-06-17
1015United Kingdom2024-06-17
1016Italy2024-06-02
1017United Kingdom2024-06-15
1018Canada2024-06-06
1019United Kingdom2024-06-10
1020Canada2024-05-26
1021Germany2024-06-13
1022Brazil2024-06-12
1023United Kingdom2024-06-12
1024Spain2024-06-15
1025Canada2024-06-12
1026France2024-05-31
1027Argentina2024-05-27
1028Canada2024-06-20
1029Canada2024-06-06
1030Germany2024-05-30
1031United Kingdom2024-06-01
1032Spain2024-05-27
1033Australia2024-06-11
1034Canada2024-05-28
1035Germany2024-06-03
1036Italy2024-05-29
1037Japan2024-05-28
1038Australia2024-06-11
1039Spain2024-05-26
1040India2024-06-14
1041United Kingdom2024-06-04
1042Brazil2024-06-12
1043Italy2024-06-19
1044Italy2024-05-28
1045Brazil2024-06-20
1046France2024-06-21
1047Argentina2024-06-15
1048India2024-05-26
1049United Kingdom2024-06-20

On-Demand Data

NameIdCountryDate
Emily S Dilliard1000Italy2024-06-17
Silvio G Malet1001United Kingdom2024-06-16
Chavez D Malet1002Germany2024-05-27
Ricardo I Rulapaugh1003Italy2024-06-08
Rodrigues G Saylors1004Australia2024-06-02
Nicolas O Venere1005Canada2024-06-04
Ashley W Slusarski1006Japan2024-05-29
Jefferson V Bowley1007United Kingdom2024-06-04
Julie T Amigon1008Italy2024-06-15
Claire X Tollner1009France2024-06-23
Alejandro U Briddick1010France2024-06-23
David B Ruta1011Australia2024-06-09
Jones I Amigon1012France2024-06-19
Leja T Dilliard1013India2024-06-13
Greenwood E Garufi1014Brazil2024-06-09
Cody Z Whobrey1015Canada2024-06-22
Ricardo H Figeroa1016Brazil2024-05-30
Maria E Garufi1017Australia2024-05-28
Nicolas J Sergi1018Italy2024-06-23
Cody C Stockham1019Russia2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan M VocelkaCanadaXuxue Feng NEGOTIATION
Aika J SchemmerBrazilIvan Magalhaes UNQUALIFIED
Ricardo K RulapaughIndiaStephen Shaw NEW
Ricardo X ButtAustraliaElwin Sharvill PROPOSAL
Alejandro R VenereUnited KingdomAnna Fali NEW
Mujtaba S DarakjyUnited KingdomAsiya Javayant NEGOTIATION
Chavez Y SchemmerAustraliaAnna Fali PROPOSAL
Juan C KolmetzGermanyIoni Bowcher UNQUALIFIED
Kadeem G WieserAustraliaXuxue Feng NEGOTIATION
Aika Z KolmetzArgentinaAnna Fali RENEWAL
Stacey M WhobreyCanadaAnna Fali QUALIFIED
Mayumi O PaprockiGermanyAsiya Javayant NEW
Faith W FlosiIndiaAnna Fali RENEWAL
Chavez M SchemmerRussiaIoni Bowcher QUALIFIED
Silvio K CampainIndiaIoni Bowcher PROPOSAL
Aika N InouyeBrazilIvan Magalhaes PROPOSAL
Mujtaba L NickaJapanXuxue Feng NEW
Darci R RoysterUnited KingdomXuxue Feng NEW
Costa J AmigonBrazilAsiya Javayant QUALIFIED
Jones V ChuiItalyOnyama Limba QUALIFIED
Tony C PaprockiArgentinaAmy Elsner UNQUALIFIED
Clifford Q PaprockiCanadaAmy Elsner RENEWAL
Darci L CaldareraJapanAmy Elsner NEW
Jennifer O VenereItalyXuxue Feng PROPOSAL
Mujtaba W AmigonCanadaElwin Sharvill QUALIFIED
David W VenereSpainElwin Sharvill NEGOTIATION
Aruna P CaldareraIndiaAsiya Javayant NEW
Rodrigues V SaylorsArgentinaStephen Shaw QUALIFIED
Clifford W WaycottGermanyOnyama Limba RENEWAL
Izzy J SaylorsJapanAmy Elsner NEW
Salvatore H ChuiJapanIvan Magalhaes UNQUALIFIED
Kaitlin X MorascaJapanXuxue Feng PROPOSAL
Leon P FlosiRussiaStephen Shaw QUALIFIED
Isabel F SchemmerJapanXuxue Feng QUALIFIED
James U PoquetteIndiaBernardo Dominic NEGOTIATION
Aika X BriddickGermanyElwin Sharvill PROPOSAL
Leon T SchemmerItalyAmy Elsner NEGOTIATION
Ashley O RimUnited KingdomElwin Sharvill RENEWAL
Murillo E BriddickRussiaAmy Elsner PROPOSAL
Isabel M PerinItalyAmy Elsner PROPOSAL

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