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
Alejandro A AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Kadeem R PoquetteBrazilElwin Sharvill NEGOTIATION
Smith Q OstroskyFranceAnna Fali NEW
Jefferson C CaldareraCanadaElwin Sharvill RENEWAL
Jefferson Z NestleRussiaIoni Bowcher QUALIFIED
Stacey B SaylorsIndiaXuxue Feng RENEWAL
Maria K VenereUnited KingdomStephen Shaw QUALIFIED
Maria Z PaprockiAustraliaElwin Sharvill RENEWAL
Antonio R BologniaArgentinaAsiya Javayant PROPOSAL
Francesco B BriddickSpainBernardo Dominic PROPOSAL
Clifford A ShinkoBrazilAmy Elsner NEW
Nicolas Z WhobreyArgentinaAmy Elsner UNQUALIFIED
Murillo Y RutaJapanXuxue Feng RENEWAL
Antonio K MacleadItalyStephen Shaw NEW
James H SchemmerIndiaBernardo Dominic NEW
Leja Z ShinkoItalyOnyama Limba QUALIFIED
Greenwood X NickaFranceAsiya Javayant PROPOSAL
Costa Y DilliardUnited KingdomOnyama Limba RENEWAL
Jones R SlusarskiIndiaElwin Sharvill NEW
Ricardo T WieserCanadaElwin Sharvill RENEWAL
Nicolas R CaldareraJapanOnyama Limba PROPOSAL
Octavia L NickaItalyAnna Fali PROPOSAL
Jefferson C GillianGermanyOnyama Limba UNQUALIFIED
Chavez L SergiAustraliaStephen Shaw NEGOTIATION
Silvio A VenereFranceXuxue Feng QUALIFIED
Francesco L ShinkoBrazilAsiya Javayant NEGOTIATION
Chavez U PoquetteAustraliaElwin Sharvill NEGOTIATION
Octavia P DarakjyIndiaAsiya Javayant QUALIFIED
Leja T MarrierJapanStephen Shaw NEW
Aruna T MorascaRussiaIoni Bowcher PROPOSAL
James P InouyeBrazilBernardo Dominic NEW
Isabel O BologniaItalyAsiya Javayant UNQUALIFIED
Silvio C FollerSpainElwin Sharvill RENEWAL
Silvio W KolmetzSpainAmy Elsner UNQUALIFIED
Chavez P KuskoAustraliaIoni Bowcher NEW
Alejandro W MaletSpainAsiya Javayant NEGOTIATION
Leon K RoysterGermanyAsiya Javayant PROPOSAL
Clifford D KuskoUnited KingdomStephen Shaw UNQUALIFIED
Juan M StensethCanadaStephen Shaw UNQUALIFIED
James U CaldareraJapanStephen Shaw NEGOTIATION
Jefferson J DarakjyRussiaAnna Fali NEGOTIATION
Ashley W SergiIndiaIoni Bowcher PROPOSAL
Murillo F ButtRussiaAmy Elsner NEGOTIATION
Maria L SaylorsFranceXuxue Feng UNQUALIFIED
Ivar F PerinRussiaStephen Shaw NEW
Izzy P BowleySpainElwin Sharvill UNQUALIFIED
Misaki H ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Smith D PaprockiArgentinaAnna Fali UNQUALIFIED
Greenwood V BriddickArgentinaAnna Fali RENEWAL
Chavez I DarakjyItalyAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Munro J WieserFranceAnna Fali QUALIFIED
Arvin M AmigonItalyAmy Elsner NEW
Antonio Q FollerItalyElwin Sharvill PROPOSAL
Adams E MacleadBrazilIoni Bowcher QUALIFIED
Munro R RoysterArgentinaXuxue Feng NEGOTIATION
Mujtaba T FerenczFranceElwin Sharvill NEW
Chavez B MacleadJapanAsiya Javayant QUALIFIED
Jones H RimUnited KingdomXuxue Feng RENEWAL
Ivar R RoysterRussiaOnyama Limba NEW
Isabel Q GillianAustraliaIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki S KolmetzRussia2024-08-27King, Christopher A Esq NEW92Stephen Shaw
1001Octavia I AmigonArgentina2024-09-24Truhlar And Truhlar Attys NEW82Xuxue Feng
1002Morrow U StensethAustralia2024-09-20Truhlar And Truhlar Attys PROPOSAL77Ivan Magalhaes
1003Wickens G TollnerAustralia2024-09-18Benton, John B Jr UNQUALIFIED77Bernardo Dominic
1004Deepesh L StensethJapan2024-09-16Feiner Bros NEW52Stephen Shaw
1005Aditya V MacleadJapan2024-08-30Rangoni Of Florence NEGOTIATION6Bernardo Dominic
1006Maria E StensethBrazil2024-09-01Chapman, Ross E Esq NEW74Onyama Limba
1007Leon M SchemmerArgentina2024-09-24Benton, John B Jr NEW48Amy Elsner
1008Ivar W AmigonGermany2024-08-30Printing Dimensions NEGOTIATION74Bernardo Dominic
1009Wickens M GarufiArgentina2024-08-27Rangoni Of Florence PROPOSAL5Bernardo Dominic
1010Leja D ButtBrazil2024-08-27Chemel, James L Cpa QUALIFIED17Onyama Limba
1011Chavez X WhobreyCanada2024-09-21Chanay, Jeffrey A Esq UNQUALIFIED4Xuxue Feng
1012Arvin A SaylorsRussia2024-09-24Rangoni Of Florence NEGOTIATION75Anna Fali
1013Aditya F ChuiItaly2024-09-14Feltz Printing Service NEGOTIATION1Asiya Javayant
1014Ricardo G SchemmerBrazil2024-09-15Dorl, James J Esq NEW70Anna Fali
1015Johnson X DoeUnited Kingdom2024-09-25Chemel, James L Cpa NEW35Anna Fali
1016Silvio Q WaycottItaly2024-09-10Commercial Press QUALIFIED85Ivan Magalhaes
1017Faith V GarufiItaly2024-09-23Printing Dimensions QUALIFIED28Stephen Shaw
1018Faith V AlbaresAustralia2024-09-25Benton, John B Jr QUALIFIED86Amy Elsner
1019Octavia Y InouyeUnited Kingdom2024-09-02King, Christopher A Esq RENEWAL41Ivan Magalhaes
1020Clifford P ChuiItaly2024-09-25Truhlar And Truhlar Attys NEW35Amy Elsner
1021Aditya O ChuiCanada2024-09-17Buckley Miller Wright QUALIFIED79Asiya Javayant
1022Antonio N CaudyGermany2024-09-15King, Christopher A Esq PROPOSAL31Ivan Magalhaes
1023Costa M SchemmerIndia2024-09-20Commercial Press QUALIFIED95Asiya Javayant
1024Misaki G ChuiCanada2024-08-27Truhlar And Truhlar Attys UNQUALIFIED14Asiya Javayant
1025Isabel T PerinBrazil2024-09-11Dorl, James J Esq QUALIFIED31Ivan Magalhaes
1026Smith U PoquetteItaly2024-08-27Printing Dimensions UNQUALIFIED69Ivan Magalhaes
1027Darci C StensethFrance2024-08-27Rousseaux, Michael Esq QUALIFIED69Ivan Magalhaes
1028Salvatore L RoysterAustralia2024-09-12King, Christopher A Esq UNQUALIFIED85Ivan Magalhaes
1029Adams H VocelkaFrance2024-08-29Benton, John B Jr RENEWAL20Elwin Sharvill
1030James G SaylorsIndia2024-08-29Commercial Press UNQUALIFIED59Elwin Sharvill
1031James X AmigonGermany2024-09-15Feiner Bros RENEWAL75Amy Elsner
1032Antonio F CampainRussia2024-08-28Commercial Press PROPOSAL91Anna Fali
1033Aika U VocelkaCanada2024-09-05Feltz Printing Service UNQUALIFIED79Bernardo Dominic
1034Greenwood J MacleadItaly2024-09-19Rousseaux, Michael Esq QUALIFIED78Ivan Magalhaes
1035Faith K GillianSpain2024-09-07Feiner Bros RENEWAL65Xuxue Feng
1036Kadeem C AmigonSpain2024-09-02Truhlar And Truhlar Attys PROPOSAL49Ioni Bowcher
1037Murillo D WaycottArgentina2024-09-11Chapman, Ross E Esq QUALIFIED26Asiya Javayant
1038Ivar G BowleyJapan2024-08-29Rousseaux, Michael Esq RENEWAL36Ioni Bowcher
1039Clifford B DoeArgentina2024-09-19Rousseaux, Michael Esq PROPOSAL34Ioni Bowcher
1040Ashley O DarakjyGermany2024-09-07Feiner Bros PROPOSAL61Xuxue Feng
1041Tony X ButtSpain2024-09-25Rousseaux, Michael Esq NEW18Ivan Magalhaes
1042Costa W MaletCanada2024-09-25Buckley Miller Wright NEW25Amy Elsner
1043Clifford P MarrierAustralia2024-09-15Rousseaux, Michael Esq PROPOSAL66Asiya Javayant
1044Arvin Y MarrierSpain2024-09-20Chapman, Ross E Esq PROPOSAL49Stephen Shaw
1045Claire N SlusarskiSpain2024-09-22Rousseaux, Michael Esq PROPOSAL88Asiya Javayant
1046Juan D WaycottItaly2024-08-30Printing Dimensions PROPOSAL18Anna Fali
1047Izzy C IturbideSpain2024-09-05Buckley Miller Wright UNQUALIFIED55Stephen Shaw
1048Octavia T DilliardAustralia2024-09-21Chapman, Ross E Esq NEW75Ivan Magalhaes
1049Kadeem L AlbaresCanada2024-09-12Chapman, Ross E Esq QUALIFIED61Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba H AmigonIndiaXuxue Feng NEW
Nicolas Z WieserBrazilOnyama Limba NEGOTIATION
David N MorascaArgentinaAsiya Javayant NEGOTIATION
Maria A KolmetzRussiaOnyama Limba QUALIFIED
Stacey H RutaIndiaElwin Sharvill UNQUALIFIED
Wickens X RimSpainOnyama Limba PROPOSAL
Adams X FigeroaItalyOnyama Limba QUALIFIED
Jeanfrancois Z SchemmerFranceAsiya Javayant NEGOTIATION
Deepesh F IturbideSpainAsiya Javayant NEGOTIATION
Smith Y ShinkoGermanyXuxue Feng NEW
Alejandro U GlickCanadaIvan Magalhaes QUALIFIED
Stacey Q MaletCanadaOnyama Limba NEGOTIATION
Ricardo G WieserUnited KingdomIoni Bowcher NEW
Arvin S PaprockiRussiaBernardo Dominic RENEWAL
Leon Y DoeIndiaOnyama Limba PROPOSAL
Adams U MacleadCanadaIoni Bowcher NEGOTIATION
Sinclair V CampainAustraliaXuxue Feng QUALIFIED
Ivar W GillianBrazilElwin Sharvill UNQUALIFIED
Faith P FlosiItalyIvan Magalhaes UNQUALIFIED
Sinclair A GarufiIndiaXuxue Feng NEW
Aruna N RimRussiaBernardo Dominic RENEWAL
Leon H BologniaRussiaIoni Bowcher NEGOTIATION
Maisha O AmigonUnited KingdomElwin Sharvill NEW
Morrow U CampainFranceXuxue Feng UNQUALIFIED
Salvatore K NickaJapanBernardo Dominic PROPOSAL
Stacey L CaldareraAustraliaAmy Elsner NEW
Silvio N AlbaresBrazilStephen Shaw NEGOTIATION
Deepesh S VenereIndiaBernardo Dominic PROPOSAL
Mujtaba Y RulapaughIndiaAnna Fali PROPOSAL
Costa Y SchemmerArgentinaIoni Bowcher RENEWAL
Deepesh V WieserJapanStephen Shaw PROPOSAL
Misaki R FlosiRussiaElwin Sharvill PROPOSAL
Francesco A SaylorsSpainAmy Elsner QUALIFIED
Mujtaba Y MaletUnited KingdomIoni Bowcher PROPOSAL
Juan B InouyeIndiaAmy Elsner RENEWAL
Isabel K ButtJapanElwin Sharvill RENEWAL
Aika O FlosiJapanAmy Elsner NEGOTIATION
Stacey X MacleadItalyIoni Bowcher RENEWAL
Tony I DilliardItalyAnna Fali NEGOTIATION
Francesco D GillianArgentinaOnyama Limba RENEWAL
Ivar P PerinJapanBernardo Dominic NEGOTIATION
Ricardo A BriddickUnited KingdomIvan Magalhaes UNQUALIFIED
Jefferson C StensethUnited KingdomOnyama Limba UNQUALIFIED
Stacey D SchemmerCanadaElwin Sharvill NEGOTIATION
Smith C SlusarskiItalyOnyama Limba UNQUALIFIED
James O PoquetteUnited KingdomBernardo Dominic NEGOTIATION
Deepesh J SchemmerCanadaStephen Shaw PROPOSAL
Jefferson G ChuiRussiaStephen Shaw PROPOSAL
Jeanfrancois W SchemmerIndiaBernardo Dominic RENEWAL
Jones S MorascaJapanAnna Fali QUALIFIED
Frozen Columns
Name
Emily Z Flosi
Julie F Malet
Rodrigues U Inouye
Murillo L Slusarski
Greenwood Y Whobrey
Adams E Paprocki
Claire Q Tollner
Leja D Marrier
Faith V Perin
James V Malet
Izzy U Paprocki
Costa V Iturbide
Ricardo L Whobrey
Faith H Darakjy
Octavia Z Foller
Arvin H Wieser
Misaki G Darakjy
Sinclair K Stockham
Leon H Stockham
Kaitlin Q Slusarski
Clifford E Malet
Cody V Chui
Aika O Saylors
Juan M Venere
Rodrigues G Nicka
Julie V Tollner
Deepesh U Bowley
Rodrigues B Whobrey
Salvatore C Malet
Arvin T Bowley
Salvatore P Rulapaugh
Wickens A Darakjy
Jennifer O Rim
Kadeem R Schemmer
Leja H Ferencz
Misaki T Bowley
Jefferson T Albares
Francesco J Malet
Costa T Briddick
Sinclair Z Wieser
Ashley B Morasca
Silvio Z Royster
Maria P Figeroa
Faith M Maclead
Costa P Stockham
Ashley P Oldroyd
Maria P Foller
Julie C Garufi
Aditya K Campain
Maisha T Amigon
IdCountryDate
1000Japan2024-09-22
1001Canada2024-09-09
1002Russia2024-09-10
1003Argentina2024-09-25
1004Italy2024-09-09
1005Japan2024-08-29
1006United Kingdom2024-09-16
1007Spain2024-09-13
1008France2024-09-11
1009France2024-09-24
1010France2024-09-07
1011Brazil2024-09-22
1012India2024-09-05
1013Australia2024-09-25
1014Brazil2024-09-18
1015India2024-09-06
1016United Kingdom2024-09-07
1017Canada2024-09-14
1018France2024-08-31
1019Russia2024-09-05
1020Argentina2024-09-10
1021Russia2024-09-08
1022United Kingdom2024-08-29
1023Australia2024-09-15
1024United Kingdom2024-09-06
1025France2024-09-09
1026Canada2024-09-13
1027Japan2024-09-15
1028Germany2024-09-01
1029Spain2024-09-21
1030Canada2024-09-14
1031Spain2024-09-14
1032Italy2024-09-13
1033France2024-09-08
1034Japan2024-09-24
1035Italy2024-09-20
1036Australia2024-09-14
1037Spain2024-09-07
1038France2024-09-16
1039France2024-09-24
1040Japan2024-08-30
1041Japan2024-09-24
1042United Kingdom2024-09-22
1043India2024-09-17
1044Spain2024-08-30
1045Australia2024-08-27
1046Spain2024-09-21
1047Japan2024-09-04
1048United Kingdom2024-09-24
1049Russia2024-08-31

On-Demand Data

NameIdCountryDate
Antonio H Rulapaugh1000India2024-08-31
Jones M Gaucho1001Canada2024-09-22
Jennifer H Amigon1002Russia2024-09-19
Jones Y Venere1003France2024-09-10
Octavia C Royster1004Russia2024-09-21
Cody J Shinko1005Spain2024-08-30
Deepesh N Caudy1006Brazil2024-09-16
Antonio Z Albares1007Japan2024-09-16
Ashley W Vocelka1008Canada2024-09-08
James G Waycott1009Brazil2024-09-25
Ricardo G Venere1010Argentina2024-08-29
Adams Z Maclead1011Australia2024-09-20
Jennifer V Kusko1012India2024-09-13
Aditya C Sergi1013Germany2024-09-13
Jennifer X Waycott1014India2024-08-30
Emily J Gillian1015Canada2024-09-21
Rodrigues S Butt1016India2024-09-04
Tony F Butt1017Brazil2024-09-13
Juan U Figeroa1018Canada2024-09-11
Darci Z Inouye1019Japan2024-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro P OstroskyGermanyXuxue Feng UNQUALIFIED
Cody P WhobreyJapanIvan Magalhaes NEGOTIATION
Mayumi G PaprockiArgentinaXuxue Feng UNQUALIFIED
Aditya K StockhamGermanyIvan Magalhaes NEW
Mayumi Z PoquetteAustraliaAsiya Javayant UNQUALIFIED
Izzy R DoeIndiaElwin Sharvill RENEWAL
Leon L FlosiJapanBernardo Dominic UNQUALIFIED
Stacey X NickaRussiaIoni Bowcher QUALIFIED
Nicolas K WhobreyIndiaXuxue Feng NEGOTIATION
Darci H PerinItalyOnyama Limba NEW
Johnson C ButtArgentinaStephen Shaw UNQUALIFIED
Emily A SlusarskiUnited KingdomOnyama Limba NEW
Rodrigues D CaudyAustraliaIoni Bowcher RENEWAL
Ricardo Z FigeroaItalyAnna Fali UNQUALIFIED
Ricardo Q BologniaFranceElwin Sharvill PROPOSAL
Maria F PoquetteIndiaXuxue Feng RENEWAL
Munro H SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Leja W OstroskyFranceAmy Elsner UNQUALIFIED
Deepesh F PaprockiJapanOnyama Limba PROPOSAL
Wickens H PaprockiIndiaXuxue Feng NEW
Isabel A MaletRussiaAnna Fali PROPOSAL
Claire Q OstroskyCanadaAsiya Javayant QUALIFIED
Aika D NestleGermanyXuxue Feng PROPOSAL
Stacey I CaldareraJapanAnna Fali UNQUALIFIED
Leon U ShinkoCanadaXuxue Feng UNQUALIFIED
Aika Z FlosiBrazilAmy Elsner NEW
Munro J NestleJapanAsiya Javayant QUALIFIED
Mujtaba I FollerItalyAsiya Javayant UNQUALIFIED
Emily P OldroydJapanAsiya Javayant RENEWAL
Mujtaba T SergiSpainBernardo Dominic UNQUALIFIED
David H MacleadSpainIoni Bowcher UNQUALIFIED
Johnson I IturbideCanadaAsiya Javayant NEGOTIATION
Aditya H GillianItalyBernardo Dominic NEGOTIATION
Maria X DoeUnited KingdomXuxue Feng RENEWAL
David M CaudyFranceStephen Shaw NEGOTIATION
Izzy J InouyeFranceOnyama Limba RENEWAL
Adams R SergiItalyIoni Bowcher QUALIFIED
Maisha S KuskoItalyIvan Magalhaes PROPOSAL
Wickens X FerenczCanadaAnna Fali UNQUALIFIED
Isabel Y PerinRussiaStephen Shaw NEGOTIATION

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