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
Aditya S TollnerIndiaElwin Sharvill RENEWAL
Murillo C InouyeJapanStephen Shaw UNQUALIFIED
Morrow E WieserItalyAmy Elsner NEGOTIATION
Costa R BowleyGermanyElwin Sharvill RENEWAL
Jones P BologniaBrazilXuxue Feng RENEWAL
Arvin Z RimUnited KingdomAmy Elsner PROPOSAL
Leon Z BologniaUnited KingdomAnna Fali UNQUALIFIED
Claire F GillianJapanAmy Elsner QUALIFIED
Rodrigues P KolmetzIndiaIvan Magalhaes QUALIFIED
Sinclair P VocelkaAustraliaAsiya Javayant PROPOSAL
Stacey Q SchemmerGermanyAsiya Javayant QUALIFIED
Isabel W GillianJapanBernardo Dominic QUALIFIED
Aditya C ButtSpainAsiya Javayant NEGOTIATION
Octavia H MorascaIndiaIoni Bowcher NEGOTIATION
Kadeem G NickaJapanStephen Shaw NEW
Ashley J FollerGermanyAsiya Javayant QUALIFIED
Jeanfrancois L StockhamGermanyIvan Magalhaes NEGOTIATION
Leja G GillianCanadaXuxue Feng PROPOSAL
Murillo Z BologniaGermanyAnna Fali UNQUALIFIED
Mujtaba D AmigonFranceAmy Elsner NEGOTIATION
Wickens S FigeroaGermanyAsiya Javayant PROPOSAL
Francesco U GarufiGermanyIvan Magalhaes NEW
Kadeem J AmigonSpainAnna Fali NEGOTIATION
David H ChuiRussiaIoni Bowcher NEGOTIATION
Juan T BriddickJapanXuxue Feng NEGOTIATION
Octavia G PerinBrazilStephen Shaw PROPOSAL
Leja S MaletGermanyStephen Shaw RENEWAL
Tony W WieserArgentinaStephen Shaw NEGOTIATION
Salvatore S NestleItalyBernardo Dominic NEGOTIATION
James D VocelkaGermanyAnna Fali NEW
James H BologniaItalyBernardo Dominic RENEWAL
Salvatore A NickaUnited KingdomAnna Fali NEW
Sinclair K AlbaresAustraliaBernardo Dominic UNQUALIFIED
Alejandro D RoysterFranceIvan Magalhaes QUALIFIED
Greenwood J DilliardItalyElwin Sharvill NEGOTIATION
Darci N FigeroaUnited KingdomOnyama Limba NEGOTIATION
Leon D GarufiUnited KingdomAmy Elsner UNQUALIFIED
Mujtaba K ChuiIndiaBernardo Dominic NEW
Francesco A MaletFranceXuxue Feng UNQUALIFIED
David N BologniaGermanyOnyama Limba RENEWAL
Mayumi O SaylorsItalyElwin Sharvill PROPOSAL
Alejandro Y WaycottJapanIoni Bowcher PROPOSAL
Arvin Y CampainFranceElwin Sharvill QUALIFIED
Munro R KuskoFranceOnyama Limba NEGOTIATION
Leja G NickaCanadaBernardo Dominic RENEWAL
Wickens Q KolmetzIndiaAmy Elsner RENEWAL
Aditya N SlusarskiUnited KingdomAmy Elsner RENEWAL
Wickens J PerinArgentinaIoni Bowcher PROPOSAL
Clifford A VenereBrazilOnyama Limba RENEWAL
Faith K OstroskyUnited KingdomBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Deepesh I WieserFranceAnna Fali RENEWAL
Silvio E PaprockiAustraliaAnna Fali UNQUALIFIED
Cody M SchemmerSpainStephen Shaw PROPOSAL
Smith N NestleSpainIvan Magalhaes RENEWAL
Darci P StockhamRussiaAnna Fali UNQUALIFIED
Maisha T SlusarskiItalyAmy Elsner PROPOSAL
Maria V StensethItalyAnna Fali PROPOSAL
Mayumi C RulapaughAustraliaAnna Fali PROPOSAL
Kadeem G WhobreyRussiaIvan Magalhaes NEW
Cody M AlbaresGermanyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha F BologniaItaly2024-06-23Rousseaux, Michael Esq RENEWAL64Onyama Limba
1001Emily F MacleadCanada2024-05-28Buckley Miller Wright PROPOSAL11Ioni Bowcher
1002Rodrigues P MaletBrazil2024-06-24Feiner Bros QUALIFIED64Onyama Limba
1003Adams H MacleadCanada2024-06-20Feltz Printing Service UNQUALIFIED33Bernardo Dominic
1004Sinclair X CampainRussia2024-06-22Truhlar And Truhlar Attys NEW62Onyama Limba
1005Rodrigues D WaycottFrance2024-06-19Chanay, Jeffrey A Esq UNQUALIFIED98Asiya Javayant
1006Munro Q CaldareraCanada2024-06-06Printing Dimensions RENEWAL12Ioni Bowcher
1007Faith H MorascaAustralia2024-06-14Chanay, Jeffrey A Esq NEGOTIATION4Elwin Sharvill
1008Maisha E MaletRussia2024-06-19Chanay, Jeffrey A Esq PROPOSAL65Asiya Javayant
1009Deepesh X RulapaughJapan2024-06-08Printing Dimensions QUALIFIED31Bernardo Dominic
1010Francesco U VenereFrance2024-06-22Buckley Miller Wright NEW32Anna Fali
1011Jefferson C OldroydSpain2024-06-09Benton, John B Jr QUALIFIED43Stephen Shaw
1012Munro W VocelkaIndia2024-05-31Chapman, Ross E Esq QUALIFIED68Amy Elsner
1013Deepesh N PoquetteBrazil2024-06-10Feltz Printing Service UNQUALIFIED43Stephen Shaw
1014Ricardo T KuskoArgentina2024-06-03Rangoni Of Florence RENEWAL11Bernardo Dominic
1015Izzy B WieserJapan2024-06-06Printing Dimensions UNQUALIFIED19Ivan Magalhaes
1016Munro E PaprockiIndia2024-06-24Morlong Associates QUALIFIED3Ivan Magalhaes
1017Leon O FollerIndia2024-06-19Dorl, James J Esq NEGOTIATION28Ioni Bowcher
1018Aika W CaldareraItaly2024-06-06Morlong Associates UNQUALIFIED54Xuxue Feng
1019Murillo D GillianRussia2024-06-23Rousseaux, Michael Esq NEW71Ioni Bowcher
1020Mayumi O RimUnited Kingdom2024-06-17Printing Dimensions NEW54Amy Elsner
1021Antonio G CampainRussia2024-06-10Feltz Printing Service NEGOTIATION80Stephen Shaw
1022Leja A MarrierCanada2024-05-31Rangoni Of Florence PROPOSAL69Stephen Shaw
1023Kaitlin L StockhamIndia2024-06-15Printing Dimensions UNQUALIFIED34Anna Fali
1024Julie H CaudyGermany2024-06-24Morlong Associates QUALIFIED62Ivan Magalhaes
1025Sinclair D GauchoFrance2024-06-01Commercial Press QUALIFIED36Anna Fali
1026Munro T MacleadFrance2024-05-30King, Christopher A Esq UNQUALIFIED83Anna Fali
1027Aruna I WhobreyItaly2024-06-05Chanay, Jeffrey A Esq RENEWAL49Xuxue Feng
1028Misaki W BologniaSpain2024-06-14Dorl, James J Esq QUALIFIED72Ivan Magalhaes
1029Faith Q RoysterUnited Kingdom2024-05-28Rousseaux, Michael Esq NEW45Stephen Shaw
1030Aika B FlosiGermany2024-06-15Benton, John B Jr UNQUALIFIED77Onyama Limba
1031Claire K SergiCanada2024-06-07Benton, John B Jr NEW69Asiya Javayant
1032Nicolas X BowleyFrance2024-06-19Morlong Associates QUALIFIED97Bernardo Dominic
1033Adams L ShinkoCanada2024-05-26Feltz Printing Service PROPOSAL49Xuxue Feng
1034Sinclair A RulapaughUnited Kingdom2024-06-03Dorl, James J Esq PROPOSAL91Amy Elsner
1035Aruna V PaprockiUnited Kingdom2024-06-14Chemel, James L Cpa QUALIFIED26Bernardo Dominic
1036Munro W CampainFrance2024-06-06Rousseaux, Michael Esq NEW93Elwin Sharvill
1037Claire N TollnerGermany2024-06-06Printing Dimensions NEW45Xuxue Feng
1038Darci R StensethSpain2024-06-07Commercial Press QUALIFIED70Asiya Javayant
1039Nicolas D GillianBrazil2024-06-07Truhlar And Truhlar Attys QUALIFIED27Stephen Shaw
1040Silvio I TollnerItaly2024-06-06Benton, John B Jr NEW46Asiya Javayant
1041Ivar K CaudyItaly2024-06-20Feiner Bros PROPOSAL5Stephen Shaw
1042Kaitlin L OstroskyIndia2024-06-16Buckley Miller Wright QUALIFIED92Ivan Magalhaes
1043Claire B SlusarskiRussia2024-06-13Benton, John B Jr QUALIFIED25Ioni Bowcher
1044James V WaycottRussia2024-06-16Feltz Printing Service UNQUALIFIED77Elwin Sharvill
1045Ivar P RutaJapan2024-05-26Buckley Miller Wright PROPOSAL37Xuxue Feng
1046Octavia E CaldareraIndia2024-05-29Morlong Associates NEGOTIATION55Stephen Shaw
1047Leon C FigeroaBrazil2024-06-14Chanay, Jeffrey A Esq NEW35Bernardo Dominic
1048Ivar F WaycottArgentina2024-06-20Feiner Bros UNQUALIFIED72Ioni Bowcher
1049Chavez F AmigonCanada2024-06-15Chemel, James L Cpa NEGOTIATION83Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Chavez M AmigonRussiaAnna Fali NEW
Rodrigues B AmigonFranceBernardo Dominic QUALIFIED
Francesco N GillianBrazilElwin Sharvill UNQUALIFIED
Chavez N RimGermanyStephen Shaw PROPOSAL
Jennifer A BowleyGermanyIoni Bowcher QUALIFIED
James M KuskoFranceAnna Fali NEGOTIATION
Izzy Z OldroydGermanyAsiya Javayant NEW
Isabel A GauchoRussiaIoni Bowcher NEGOTIATION
Cody T ChuiArgentinaXuxue Feng QUALIFIED
Smith O MacleadIndiaAnna Fali PROPOSAL
Kadeem K PoquetteRussiaIvan Magalhaes RENEWAL
James W TollnerGermanyBernardo Dominic QUALIFIED
Jennifer I PerinAustraliaStephen Shaw NEGOTIATION
Ivar O ShinkoBrazilIoni Bowcher QUALIFIED
Murillo H IturbideBrazilElwin Sharvill QUALIFIED
Francesco D ButtAustraliaElwin Sharvill NEW
Adams X MacleadFranceXuxue Feng PROPOSAL
Tony Y PoquetteUnited KingdomStephen Shaw NEW
Darci F SlusarskiCanadaXuxue Feng QUALIFIED
Salvatore V OldroydAustraliaIvan Magalhaes QUALIFIED
Jones V SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
Maisha D GarufiArgentinaOnyama Limba NEGOTIATION
Adams S WaycottItalyAsiya Javayant UNQUALIFIED
Claire U AlbaresRussiaAsiya Javayant NEGOTIATION
Leja K NickaGermanyElwin Sharvill PROPOSAL
Greenwood Z StensethItalyIoni Bowcher NEW
Stacey G CaldareraRussiaBernardo Dominic RENEWAL
Mujtaba V PoquetteSpainAsiya Javayant RENEWAL
Octavia B KuskoArgentinaIvan Magalhaes RENEWAL
David F SergiArgentinaAnna Fali NEGOTIATION
Tony E OldroydItalyXuxue Feng QUALIFIED
Deepesh J RimCanadaIoni Bowcher RENEWAL
Aditya P PerinJapanStephen Shaw RENEWAL
Deepesh D SaylorsAustraliaIvan Magalhaes UNQUALIFIED
Ricardo E OldroydFranceBernardo Dominic NEGOTIATION
Rodrigues Q FollerUnited KingdomStephen Shaw RENEWAL
Juan M MaletJapanOnyama Limba NEW
Clifford Y WhobreyIndiaIoni Bowcher QUALIFIED
David Y WieserCanadaBernardo Dominic NEW
Tony I RutaFranceElwin Sharvill PROPOSAL
Rodrigues C RimRussiaBernardo Dominic UNQUALIFIED
Sinclair Y RulapaughJapanXuxue Feng UNQUALIFIED
Morrow H DoeBrazilOnyama Limba NEW
Juan H BowleyFranceAsiya Javayant UNQUALIFIED
Aika P VenereRussiaAmy Elsner PROPOSAL
James Q MorascaItalyElwin Sharvill NEGOTIATION
Ashley N IturbideSpainAsiya Javayant UNQUALIFIED
Jefferson M MarrierSpainOnyama Limba NEGOTIATION
Aditya R BologniaJapanAnna Fali NEGOTIATION
Salvatore U KolmetzFranceAsiya Javayant NEW
Frozen Columns
Name
Izzy R Perin
David B Caudy
Misaki E Waycott
Alejandro Q Nestle
Kaitlin O Saylors
Ivar O Royster
Isabel D Malet
Ricardo B Malet
Tony R Saylors
Antonio R Ferencz
Murillo O Bowley
Morrow Y Ferencz
David C Campain
Nicolas Y Stockham
Faith G Marrier
Deepesh E Wieser
Misaki C Dilliard
Antonio G Ferencz
Julie Q Rim
Darci Z Caldarera
Darci O Bowley
Salvatore Z Malet
Adams L Waycott
Claire L Ferencz
Maria B Slusarski
Aruna T Paprocki
Mujtaba O Doe
Jones Q Waycott
Mujtaba V Butt
Ashley M Saylors
Nicolas W Vocelka
Aika J Foller
Leja G Albares
Greenwood C Albares
Ricardo O Maclead
Arvin I Wieser
Mujtaba N Kolmetz
Chavez H Iturbide
Kadeem S Ferencz
David G Chui
Alejandro P Saylors
Murillo P Rulapaugh
Jones I Butt
Chavez L Caudy
Mayumi Z Kolmetz
Leon C Sergi
Jefferson S Flosi
Claire Z Caudy
Chavez I Whobrey
Leja V Amigon
IdCountryDate
1000Argentina2024-06-12
1001Brazil2024-06-09
1002Italy2024-06-16
1003Germany2024-06-17
1004India2024-06-06
1005Germany2024-06-24
1006Australia2024-06-06
1007Russia2024-06-23
1008Australia2024-06-01
1009Spain2024-06-10
1010India2024-06-17
1011Canada2024-06-20
1012France2024-06-07
1013Spain2024-06-01
1014United Kingdom2024-06-04
1015Italy2024-06-09
1016Russia2024-06-01
1017Spain2024-06-24
1018India2024-06-15
1019Italy2024-06-01
1020Spain2024-06-14
1021India2024-06-19
1022Brazil2024-06-19
1023Argentina2024-06-14
1024Japan2024-06-12
1025Argentina2024-06-02
1026Spain2024-06-08
1027Spain2024-05-28
1028Australia2024-06-17
1029Argentina2024-06-04
1030Spain2024-06-10
1031Italy2024-06-14
1032Germany2024-06-06
1033Canada2024-06-12
1034Germany2024-06-18
1035Argentina2024-05-27
1036United Kingdom2024-06-15
1037Germany2024-06-08
1038Argentina2024-06-04
1039Argentina2024-05-30
1040Italy2024-05-27
1041Brazil2024-06-10
1042France2024-06-01
1043Japan2024-06-19
1044Brazil2024-06-04
1045Canada2024-05-30
1046India2024-06-04
1047Argentina2024-06-01
1048India2024-06-24
1049Russia2024-05-27

On-Demand Data

NameIdCountryDate
Clifford P Iturbide1000Australia2024-05-29
Maisha G Wieser1001Argentina2024-05-31
Maisha Q Kusko1002Australia2024-06-12
Cody L Gillian1003Spain2024-06-10
Emily R Poquette1004United Kingdom2024-06-17
James Q Gillian1005Spain2024-06-20
Smith R Caldarera1006Italy2024-06-01
Deepesh D Dilliard1007Japan2024-06-17
Darci V Bowley1008Brazil2024-06-17
Julie X Venere1009Germany2024-06-23
Johnson Z Rulapaugh1010Russia2024-05-29
Tony B Kolmetz1011Russia2024-06-10
Smith X Sergi1012Canada2024-05-31
Arvin D Albares1013Spain2024-06-17
Tony L Albares1014Brazil2024-06-17
Ricardo W Albares1015Japan2024-06-13
Johnson Q Campain1016Germany2024-06-03
David L Ruta1017Canada2024-05-30
Munro Y Shinko1018Australia2024-06-16
Johnson P Sergi1019United Kingdom2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio G WhobreyAustraliaAmy Elsner RENEWAL
Emily B StockhamUnited KingdomIvan Magalhaes QUALIFIED
Jefferson E TollnerRussiaOnyama Limba NEW
Rodrigues A IturbideGermanyBernardo Dominic NEW
Morrow P StockhamAustraliaOnyama Limba PROPOSAL
Leon G FerenczRussiaAmy Elsner RENEWAL
Claire Q MacleadArgentinaAmy Elsner NEGOTIATION
Mayumi V SaylorsItalyOnyama Limba RENEWAL
Adams N FollerIndiaElwin Sharvill NEGOTIATION
Clifford F OstroskyIndiaIoni Bowcher RENEWAL
Julie G PaprockiArgentinaIoni Bowcher RENEWAL
Jennifer U SergiArgentinaStephen Shaw UNQUALIFIED
Claire C CaldareraCanadaBernardo Dominic RENEWAL
Smith T MacleadFranceAnna Fali RENEWAL
Francesco W ShinkoAustraliaAsiya Javayant QUALIFIED
Mujtaba T ShinkoItalyElwin Sharvill UNQUALIFIED
Greenwood A FerenczAustraliaIoni Bowcher RENEWAL
Adams Z ButtUnited KingdomBernardo Dominic QUALIFIED
Ashley G StockhamAustraliaAmy Elsner NEW
Nicolas H CaudyFranceAmy Elsner PROPOSAL
Antonio D GauchoUnited KingdomBernardo Dominic NEGOTIATION
Faith B MarrierRussiaElwin Sharvill QUALIFIED
David C FollerItalyOnyama Limba NEGOTIATION
Stacey L SchemmerCanadaAmy Elsner QUALIFIED
Maria S CampainUnited KingdomElwin Sharvill QUALIFIED
Wickens M WaycottFranceBernardo Dominic RENEWAL
Greenwood R FigeroaArgentinaXuxue Feng UNQUALIFIED
Alejandro K BriddickRussiaStephen Shaw RENEWAL
Alejandro B SlusarskiBrazilIvan Magalhaes QUALIFIED
Maria Q WhobreyBrazilIoni Bowcher UNQUALIFIED
Morrow Q WieserIndiaElwin Sharvill QUALIFIED
Ivar N ButtUnited KingdomOnyama Limba NEW
David G VocelkaBrazilAsiya Javayant PROPOSAL
Greenwood T TollnerSpainStephen Shaw QUALIFIED
Stacey F GillianRussiaAsiya Javayant NEW
Izzy O OldroydArgentinaAmy Elsner NEW
Ricardo L KuskoSpainElwin Sharvill QUALIFIED
Isabel Z WaycottAustraliaIoni Bowcher NEGOTIATION
Arvin W SaylorsArgentinaIoni Bowcher RENEWAL
Mujtaba U OldroydArgentinaIoni Bowcher 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>