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
Ivar M RoysterBrazilIvan Magalhaes NEW
Clifford Q SlusarskiAustraliaIvan Magalhaes NEW
Misaki R FollerAustraliaAsiya Javayant UNQUALIFIED
Greenwood Y StensethFranceAmy Elsner RENEWAL
Stacey A SergiGermanyAmy Elsner QUALIFIED
Juan P CaldareraFranceOnyama Limba UNQUALIFIED
Francesco K MarrierJapanAmy Elsner UNQUALIFIED
Misaki C ButtFranceXuxue Feng QUALIFIED
Greenwood J MaletJapanElwin Sharvill QUALIFIED
Antonio W MorascaRussiaBernardo Dominic UNQUALIFIED
Ricardo I FigeroaItalyAnna Fali NEW
Leon C WieserCanadaElwin Sharvill NEW
Maisha A OldroydAustraliaIoni Bowcher NEGOTIATION
Arvin O OstroskyBrazilOnyama Limba NEGOTIATION
Stacey T RimUnited KingdomStephen Shaw UNQUALIFIED
Morrow S WaycottBrazilIoni Bowcher NEW
Morrow B CaldareraJapanXuxue Feng RENEWAL
Maria W StensethGermanyXuxue Feng PROPOSAL
Clifford W WhobreyJapanAnna Fali QUALIFIED
Murillo V GarufiIndiaBernardo Dominic UNQUALIFIED
Faith Q BologniaItalyIvan Magalhaes NEW
Clifford A ButtFranceOnyama Limba UNQUALIFIED
Arvin G WhobreyArgentinaAsiya Javayant PROPOSAL
David J ChuiAustraliaIoni Bowcher QUALIFIED
Jennifer B WaycottCanadaXuxue Feng PROPOSAL
Claire T VenereItalyIvan Magalhaes NEW
Jeanfrancois W RoysterFranceAsiya Javayant QUALIFIED
Claire I PoquetteIndiaElwin Sharvill NEGOTIATION
Chavez P KolmetzRussiaOnyama Limba UNQUALIFIED
Costa Z KuskoFranceIvan Magalhaes RENEWAL
Ashley T FollerUnited KingdomIoni Bowcher PROPOSAL
Sinclair Z NestleArgentinaIvan Magalhaes RENEWAL
Smith C ChuiRussiaAmy Elsner UNQUALIFIED
Arvin P BologniaRussiaXuxue Feng PROPOSAL
Cody Y ChuiGermanyAsiya Javayant RENEWAL
Kadeem T MaletItalyOnyama Limba NEGOTIATION
Julie C MacleadJapanAmy Elsner UNQUALIFIED
Octavia O GillianGermanyBernardo Dominic UNQUALIFIED
Clifford B CaldareraJapanBernardo Dominic UNQUALIFIED
Clifford Y GauchoBrazilXuxue Feng PROPOSAL
Isabel F BologniaItalyStephen Shaw PROPOSAL
Aditya C GarufiGermanyElwin Sharvill UNQUALIFIED
Claire S SaylorsRussiaAmy Elsner NEGOTIATION
Salvatore K ShinkoFranceIoni Bowcher QUALIFIED
Jeanfrancois Z PaprockiGermanyIvan Magalhaes NEW
Morrow V BriddickArgentinaIvan Magalhaes QUALIFIED
Octavia F SlusarskiBrazilXuxue Feng PROPOSAL
David N GauchoArgentinaAsiya Javayant UNQUALIFIED
Wickens D WieserArgentinaElwin Sharvill RENEWAL
Ivar Q DoeArgentinaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Leja P ShinkoAustraliaAsiya Javayant UNQUALIFIED
Alejandro G GauchoRussiaBernardo Dominic QUALIFIED
Aika U AmigonIndiaXuxue Feng RENEWAL
Costa O MaletGermanyOnyama Limba NEW
Juan A GarufiUnited KingdomElwin Sharvill QUALIFIED
Chavez U FollerUnited KingdomXuxue Feng PROPOSAL
Claire R SchemmerFranceAsiya Javayant NEGOTIATION
Claire Q CaldareraArgentinaAmy Elsner UNQUALIFIED
Silvio C BriddickAustraliaStephen Shaw QUALIFIED
Wickens S VenereFranceIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie K MaletIndia2024-06-01Commercial Press PROPOSAL72Bernardo Dominic
1001Adams K CaudyFrance2024-05-31Morlong Associates RENEWAL10Xuxue Feng
1002Antonio E RimArgentina2024-05-19Commercial Press NEW90Asiya Javayant
1003Smith W RutaJapan2024-05-25Feltz Printing Service NEGOTIATION25Elwin Sharvill
1004Tony U DoeAustralia2024-05-20Truhlar And Truhlar Attys PROPOSAL39Amy Elsner
1005Chavez K IturbideSpain2024-06-01Feltz Printing Service QUALIFIED42Elwin Sharvill
1006Antonio C KolmetzIndia2024-06-05Rousseaux, Michael Esq RENEWAL95Amy Elsner
1007Leon F DilliardJapan2024-05-26Morlong Associates UNQUALIFIED68Ioni Bowcher
1008Antonio T RimIndia2024-05-27Feltz Printing Service NEW30Ivan Magalhaes
1009Clifford L FigeroaItaly2024-06-13Chapman, Ross E Esq NEW56Asiya Javayant
1010Tony W FerenczItaly2024-06-01Feltz Printing Service PROPOSAL48Amy Elsner
1011Emily F FigeroaSpain2024-06-13Printing Dimensions QUALIFIED21Amy Elsner
1012Tony I SchemmerItaly2024-05-23Rousseaux, Michael Esq NEW45Anna Fali
1013Chavez X FigeroaAustralia2024-06-11Benton, John B Jr QUALIFIED40Ioni Bowcher
1014Kaitlin X ChuiAustralia2024-05-27Feiner Bros PROPOSAL19Amy Elsner
1015Jennifer U DarakjySpain2024-05-23King, Christopher A Esq PROPOSAL5Ivan Magalhaes
1016Aditya I StockhamUnited Kingdom2024-06-02Buckley Miller Wright UNQUALIFIED12Asiya Javayant
1017Costa T MarrierItaly2024-06-11King, Christopher A Esq RENEWAL79Ioni Bowcher
1018Jefferson J WieserCanada2024-06-07Commercial Press QUALIFIED11Anna Fali
1019Silvio Y NickaFrance2024-06-06Rousseaux, Michael Esq NEW54Stephen Shaw
1020Tony D GarufiCanada2024-05-26Chapman, Ross E Esq UNQUALIFIED49Asiya Javayant
1021Emily K RoysterFrance2024-06-06Dorl, James J Esq PROPOSAL40Xuxue Feng
1022Aruna A StockhamSpain2024-05-20Truhlar And Truhlar Attys RENEWAL55Onyama Limba
1023Francesco I DilliardAustralia2024-05-23Buckley Miller Wright PROPOSAL9Asiya Javayant
1024Rodrigues U GillianBrazil2024-06-02Chemel, James L Cpa NEGOTIATION77Asiya Javayant
1025Ashley R DarakjyArgentina2024-06-04King, Christopher A Esq NEW90Ivan Magalhaes
1026Chavez L CaudySpain2024-06-10King, Christopher A Esq PROPOSAL34Xuxue Feng
1027Mayumi O KuskoFrance2024-05-28Chanay, Jeffrey A Esq NEW33Anna Fali
1028Morrow M OldroydJapan2024-05-29Chemel, James L Cpa NEGOTIATION38Asiya Javayant
1029Ricardo Z PerinJapan2024-06-02Printing Dimensions NEW16Amy Elsner
1030Morrow Y VenereSpain2024-06-01Feiner Bros NEW58Ioni Bowcher
1031Mayumi V SaylorsFrance2024-06-06Chemel, James L Cpa PROPOSAL68Xuxue Feng
1032Sinclair C KuskoJapan2024-05-31Buckley Miller Wright PROPOSAL89Amy Elsner
1033Francesco U IturbideJapan2024-06-01Benton, John B Jr RENEWAL28Bernardo Dominic
1034Cody K WieserArgentina2024-05-31Dorl, James J Esq NEGOTIATION98Asiya Javayant
1035Kadeem E IturbideItaly2024-05-29Buckley Miller Wright QUALIFIED52Ioni Bowcher
1036Juan U AlbaresFrance2024-05-22Rangoni Of Florence PROPOSAL80Asiya Javayant
1037Izzy A RulapaughRussia2024-06-06Chanay, Jeffrey A Esq RENEWAL1Stephen Shaw
1038Kadeem F GarufiIndia2024-06-13Chanay, Jeffrey A Esq UNQUALIFIED98Onyama Limba
1039Nicolas B NestleGermany2024-05-24Rangoni Of Florence NEGOTIATION82Stephen Shaw
1040Costa J WaycottJapan2024-06-14Printing Dimensions NEW33Stephen Shaw
1041Morrow J SlusarskiSpain2024-06-14Buckley Miller Wright NEW48Stephen Shaw
1042Wickens Y AlbaresSpain2024-06-13Feiner Bros PROPOSAL70Elwin Sharvill
1043James R RutaAustralia2024-05-17Rangoni Of Florence PROPOSAL88Xuxue Feng
1044Greenwood R ShinkoItaly2024-06-10Commercial Press NEW0Asiya Javayant
1045Claire A RutaIndia2024-06-04Chapman, Ross E Esq NEGOTIATION36Xuxue Feng
1046Clifford J WieserItaly2024-05-19Morlong Associates PROPOSAL36Onyama Limba
1047Maria D CaudyGermany2024-06-13Rousseaux, Michael Esq NEGOTIATION66Asiya Javayant
1048Morrow L FlosiSpain2024-05-30Truhlar And Truhlar Attys PROPOSAL97Ivan Magalhaes
1049Aditya G RulapaughJapan2024-05-28Rousseaux, Michael Esq NEGOTIATION33Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Ashley W CaudyRussiaStephen Shaw NEW
Ricardo W SaylorsCanadaIoni Bowcher PROPOSAL
Ivar C PoquetteCanadaAnna Fali PROPOSAL
Leon C ShinkoAustraliaIvan Magalhaes NEGOTIATION
Juan F DilliardAustraliaAnna Fali RENEWAL
Isabel A BriddickItalyBernardo Dominic UNQUALIFIED
Isabel N DarakjyItalyAmy Elsner QUALIFIED
Leja D StockhamArgentinaIoni Bowcher QUALIFIED
Johnson W MorascaSpainAsiya Javayant RENEWAL
David H MarrierFranceAsiya Javayant QUALIFIED
Sinclair U DoeAustraliaAnna Fali UNQUALIFIED
Jeanfrancois T GillianRussiaElwin Sharvill NEGOTIATION
Maria A MacleadUnited KingdomAmy Elsner QUALIFIED
Clifford S WhobreyBrazilStephen Shaw PROPOSAL
Murillo J NickaIndiaIvan Magalhaes UNQUALIFIED
Ivar E MaletJapanAmy Elsner QUALIFIED
Mayumi V VocelkaJapanElwin Sharvill RENEWAL
Isabel O GillianRussiaIoni Bowcher RENEWAL
Chavez U FerenczFranceElwin Sharvill UNQUALIFIED
Mayumi L DilliardFranceElwin Sharvill PROPOSAL
Murillo V OstroskyRussiaOnyama Limba PROPOSAL
Mujtaba M BologniaAustraliaIoni Bowcher UNQUALIFIED
Munro N GarufiArgentinaAnna Fali PROPOSAL
Maisha H BologniaArgentinaAnna Fali PROPOSAL
Emily J RulapaughAustraliaElwin Sharvill QUALIFIED
Greenwood V WieserSpainAmy Elsner UNQUALIFIED
Faith J FigeroaGermanyElwin Sharvill QUALIFIED
Ricardo H CaudyArgentinaAnna Fali QUALIFIED
Salvatore Y MorascaIndiaAnna Fali NEGOTIATION
Sinclair P RutaRussiaAsiya Javayant RENEWAL
Chavez E OstroskyIndiaOnyama Limba QUALIFIED
Kadeem K StockhamCanadaAsiya Javayant NEW
Greenwood C NickaSpainStephen Shaw UNQUALIFIED
James Z RimSpainAnna Fali UNQUALIFIED
Kadeem H CaudyUnited KingdomAsiya Javayant QUALIFIED
Wickens R InouyeItalyAnna Fali RENEWAL
Wickens F BowleyRussiaIoni Bowcher NEW
Izzy P FollerAustraliaElwin Sharvill QUALIFIED
Silvio P WhobreyBrazilIvan Magalhaes NEW
Juan C VenereIndiaAnna Fali UNQUALIFIED
Aruna Z CampainRussiaAsiya Javayant NEW
Ashley Y VocelkaUnited KingdomXuxue Feng PROPOSAL
Aika F StensethUnited KingdomOnyama Limba UNQUALIFIED
Morrow T FlosiJapanIoni Bowcher PROPOSAL
Salvatore B RutaAustraliaIvan Magalhaes NEW
Alejandro F InouyeBrazilStephen Shaw QUALIFIED
Sinclair R DilliardAustraliaXuxue Feng PROPOSAL
Salvatore J ChuiAustraliaElwin Sharvill NEGOTIATION
Mujtaba T GarufiAustraliaIoni Bowcher QUALIFIED
Rodrigues O BowleyBrazilIvan Magalhaes QUALIFIED
Frozen Columns
Name
Johnson A Ferencz
Aika H Marrier
Mujtaba Z Sergi
James G Nestle
Mujtaba J Inouye
Francesco K Whobrey
Jennifer Z Bowley
Aika G Garufi
Sinclair J Caudy
Izzy V Inouye
Claire Q Marrier
Aruna U Tollner
Jefferson G Darakjy
Murillo V Whobrey
Clifford N Royster
Tony Z Vocelka
James R Royster
Alejandro C Oldroyd
Chavez H Albares
Jefferson J Paprocki
Aika L Briddick
Claire K Ferencz
Greenwood Y Gaucho
Misaki O Inouye
Julie W Gaucho
Leja G Rim
Misaki M Gillian
Costa D Albares
Sinclair E Bolognia
Silvio B Morasca
Jones Q Butt
Octavia Y Flosi
Darci A Perin
Arvin I Doe
Costa N Nicka
Kadeem W Ruta
Jeanfrancois Q Amigon
Maria Y Butt
Ivar A Saylors
Greenwood M Darakjy
Izzy V Marrier
Costa Y Gillian
Mujtaba N Wieser
Wickens U Perin
Johnson J Malet
Izzy R Whobrey
Faith C Butt
Claire F Wieser
Darci Z Royster
Izzy E Oldroyd
IdCountryDate
1000France2024-06-05
1001Germany2024-06-03
1002Russia2024-05-26
1003United Kingdom2024-05-16
1004Japan2024-06-11
1005France2024-05-28
1006Spain2024-06-02
1007Australia2024-05-29
1008Australia2024-06-08
1009Italy2024-06-01
1010United Kingdom2024-06-05
1011France2024-05-25
1012United Kingdom2024-05-25
1013Canada2024-05-20
1014Japan2024-05-21
1015Russia2024-05-25
1016Italy2024-05-21
1017Australia2024-05-21
1018France2024-06-12
1019France2024-05-22
1020United Kingdom2024-05-16
1021Italy2024-05-29
1022Argentina2024-06-09
1023Australia2024-06-13
1024Italy2024-05-22
1025Australia2024-05-22
1026Argentina2024-06-03
1027India2024-05-16
1028Argentina2024-06-14
1029Italy2024-05-17
1030Germany2024-06-07
1031Canada2024-06-12
1032Argentina2024-06-03
1033Brazil2024-06-01
1034Brazil2024-05-23
1035Italy2024-05-23
1036Brazil2024-06-08
1037Brazil2024-05-19
1038United Kingdom2024-05-30
1039France2024-06-07
1040Australia2024-06-10
1041Canada2024-05-30
1042United Kingdom2024-06-14
1043Brazil2024-06-02
1044Australia2024-05-27
1045Japan2024-05-26
1046Germany2024-06-01
1047United Kingdom2024-05-19
1048Spain2024-06-07
1049Germany2024-06-01

On-Demand Data

NameIdCountryDate
Francesco Q Wieser1000Italy2024-06-05
Leon C Butt1001Spain2024-06-04
Costa X Ferencz1002United Kingdom2024-05-28
Jeanfrancois T Royster1003Japan2024-05-26
Francesco K Caudy1004United Kingdom2024-06-07
Isabel X Schemmer1005India2024-06-05
Greenwood P Inouye1006Italy2024-05-22
Jones O Saylors1007India2024-05-28
Leja W Waycott1008Japan2024-06-05
Tony I Chui1009United Kingdom2024-05-19
Arvin E Marrier1010United Kingdom2024-06-04
Morrow C Royster1011France2024-05-29
Julie S Kusko1012Russia2024-05-30
Leja X Saylors1013Australia2024-05-25
Ivar Z Stockham1014France2024-05-22
Julie Y Butt1015United Kingdom2024-05-27
Salvatore A Campain1016Italy2024-06-01
Clifford B Whobrey1017Brazil2024-06-13
Murillo S Briddick1018Canada2024-05-17
Aditya P Rim1019Italy2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria D ShinkoFranceAmy Elsner NEGOTIATION
Arvin G RimUnited KingdomIoni Bowcher RENEWAL
Aika C PerinAustraliaElwin Sharvill QUALIFIED
Darci U NestleBrazilIoni Bowcher NEGOTIATION
Mujtaba R ChuiCanadaIoni Bowcher NEGOTIATION
Wickens J CampainGermanyIvan Magalhaes UNQUALIFIED
Antonio I WaycottBrazilBernardo Dominic PROPOSAL
Kadeem A FigeroaItalyAmy Elsner NEW
Ashley E NickaGermanyIoni Bowcher NEW
Mujtaba U MorascaUnited KingdomOnyama Limba NEW
Aika Z NickaAustraliaStephen Shaw QUALIFIED
Adams M GauchoItalyAmy Elsner QUALIFIED
Claire Y IturbideArgentinaAsiya Javayant PROPOSAL
Maisha O CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Silvio J ShinkoBrazilStephen Shaw NEGOTIATION
Nicolas C DarakjyIndiaIvan Magalhaes NEW
Salvatore J IturbideItalyStephen Shaw QUALIFIED
Maisha Y AlbaresFranceIvan Magalhaes RENEWAL
Francesco D FerenczRussiaIoni Bowcher UNQUALIFIED
Antonio H AlbaresFranceBernardo Dominic UNQUALIFIED
Sinclair R VenereRussiaXuxue Feng QUALIFIED
Jefferson X AmigonItalyStephen Shaw NEGOTIATION
Costa Y SlusarskiBrazilBernardo Dominic NEW
Sinclair G CaudyGermanyAsiya Javayant PROPOSAL
Faith E NestleAustraliaElwin Sharvill NEGOTIATION
Costa J MaletUnited KingdomOnyama Limba QUALIFIED
David U TollnerIndiaOnyama Limba NEGOTIATION
Mujtaba X MaletArgentinaOnyama Limba RENEWAL
Chavez K AmigonItalyXuxue Feng QUALIFIED
Aditya S DilliardBrazilIoni Bowcher NEW
Smith U RoysterSpainIoni Bowcher QUALIFIED
Aditya U BowleyFranceAsiya Javayant NEGOTIATION
Alejandro S InouyeJapanBernardo Dominic NEW
Sinclair Q AlbaresFranceBernardo Dominic NEGOTIATION
Jefferson A WieserAustraliaIvan Magalhaes QUALIFIED
Deepesh Y RimRussiaIvan Magalhaes PROPOSAL
Chavez D SchemmerSpainAsiya Javayant UNQUALIFIED
Murillo K GlickUnited KingdomIoni Bowcher NEW
Faith Q KolmetzAustraliaBernardo Dominic PROPOSAL
Munro M ChuiUnited KingdomXuxue Feng 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>