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
Kadeem K WaycottCanadaBernardo Dominic NEW
Arvin H SlusarskiFranceIoni Bowcher PROPOSAL
Octavia X AmigonCanadaAmy Elsner NEW
Wickens M FerenczItalyOnyama Limba PROPOSAL
Octavia J MorascaItalyOnyama Limba UNQUALIFIED
Faith S CaldareraGermanyIoni Bowcher RENEWAL
Murillo U MaletUnited KingdomOnyama Limba RENEWAL
Clifford T WaycottGermanyIoni Bowcher RENEWAL
Jefferson N DoeUnited KingdomAmy Elsner NEW
Mayumi F StockhamRussiaStephen Shaw PROPOSAL
Julie H FerenczRussiaAmy Elsner UNQUALIFIED
Arvin T RutaUnited KingdomAsiya Javayant NEW
Silvio Y KolmetzFranceBernardo Dominic QUALIFIED
Deepesh I ChuiItalyElwin Sharvill QUALIFIED
Octavia R MacleadSpainAnna Fali RENEWAL
Maisha L MorascaFranceStephen Shaw NEW
Julie G TollnerGermanyStephen Shaw PROPOSAL
Chavez L OldroydGermanyBernardo Dominic NEW
Juan Y KuskoArgentinaXuxue Feng PROPOSAL
Izzy W CampainRussiaBernardo Dominic RENEWAL
Mujtaba T GarufiSpainBernardo Dominic NEW
Alejandro V CaldareraCanadaStephen Shaw PROPOSAL
Faith T WaycottRussiaAmy Elsner NEGOTIATION
Greenwood D KolmetzItalyIoni Bowcher UNQUALIFIED
Kaitlin G MaletAustraliaAsiya Javayant PROPOSAL
Wickens C PoquetteJapanStephen Shaw UNQUALIFIED
Antonio C FlosiCanadaIvan Magalhaes NEGOTIATION
Ricardo S DoeSpainAnna Fali QUALIFIED
Murillo H DilliardCanadaAmy Elsner NEW
Clifford P KuskoIndiaIvan Magalhaes RENEWAL
Darci Z KuskoRussiaAsiya Javayant NEGOTIATION
Deepesh B PaprockiIndiaStephen Shaw QUALIFIED
Izzy K MaletCanadaXuxue Feng UNQUALIFIED
Misaki P DilliardArgentinaElwin Sharvill PROPOSAL
Nicolas E FollerJapanAmy Elsner RENEWAL
Deepesh H PaprockiUnited KingdomStephen Shaw NEW
Rodrigues L InouyeCanadaElwin Sharvill NEW
Clifford D KuskoArgentinaOnyama Limba UNQUALIFIED
Aruna W GarufiIndiaIvan Magalhaes NEGOTIATION
Costa I RimArgentinaBernardo Dominic NEW
Morrow N MarrierRussiaIvan Magalhaes NEW
Alejandro W StockhamGermanyAnna Fali UNQUALIFIED
Emily Z GauchoFranceOnyama Limba NEW
Misaki T RimAustraliaAsiya Javayant UNQUALIFIED
Sinclair P CaudyRussiaAmy Elsner UNQUALIFIED
Mayumi R FollerSpainAsiya Javayant NEW
Maria C WaycottJapanAnna Fali NEGOTIATION
Darci R GillianRussiaXuxue Feng QUALIFIED
James E ShinkoGermanyElwin Sharvill NEW
Wickens G MacleadBrazilElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maisha Z MarrierJapanAnna Fali NEGOTIATION
Izzy X RoysterJapanXuxue Feng RENEWAL
Greenwood F ButtBrazilXuxue Feng RENEWAL
Maisha Z OldroydBrazilAsiya Javayant RENEWAL
Jones Q CaudyCanadaIoni Bowcher PROPOSAL
Smith I SlusarskiUnited KingdomAmy Elsner RENEWAL
Kadeem P RimAustraliaIvan Magalhaes NEW
Maria I CampainFranceIoni Bowcher NEGOTIATION
Ivar E ShinkoAustraliaElwin Sharvill NEGOTIATION
Leon N AlbaresBrazilElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh L DarakjyUnited Kingdom2024-05-25Dorl, James J Esq QUALIFIED68Ivan Magalhaes
1001Alejandro T ChuiArgentina2024-06-15Feltz Printing Service UNQUALIFIED91Bernardo Dominic
1002Silvio Z MaletCanada2024-05-21Printing Dimensions UNQUALIFIED23Ioni Bowcher
1003Aruna Z RimUnited Kingdom2024-06-08Feiner Bros QUALIFIED51Stephen Shaw
1004Tony K RutaUnited Kingdom2024-06-08Chemel, James L Cpa UNQUALIFIED12Onyama Limba
1005Cody D RimRussia2024-06-06Chapman, Ross E Esq NEW45Asiya Javayant
1006Deepesh Q SergiUnited Kingdom2024-05-19Rousseaux, Michael Esq PROPOSAL62Ioni Bowcher
1007Izzy C OstroskyCanada2024-05-31Rousseaux, Michael Esq UNQUALIFIED33Amy Elsner
1008Ricardo N VenereSpain2024-06-15Rousseaux, Michael Esq RENEWAL10Ivan Magalhaes
1009Maria K SaylorsArgentina2024-05-27Rangoni Of Florence NEW46Xuxue Feng
1010Jefferson Q MaletIndia2024-06-10Morlong Associates UNQUALIFIED91Stephen Shaw
1011Jones W SergiJapan2024-06-02Morlong Associates PROPOSAL15Onyama Limba
1012Stacey Y IturbideCanada2024-06-02Chanay, Jeffrey A Esq QUALIFIED86Elwin Sharvill
1013Octavia G MorascaFrance2024-06-01Feiner Bros NEGOTIATION37Xuxue Feng
1014Juan L VocelkaIndia2024-05-26Dorl, James J Esq RENEWAL39Onyama Limba
1015Antonio J FerenczJapan2024-05-23Buckley Miller Wright NEGOTIATION10Bernardo Dominic
1016Stacey A RimIndia2024-06-02Morlong Associates UNQUALIFIED6Ivan Magalhaes
1017Aika E InouyeIndia2024-06-04Chanay, Jeffrey A Esq RENEWAL94Ivan Magalhaes
1018Faith W BowleyFrance2024-05-30Chanay, Jeffrey A Esq QUALIFIED88Anna Fali
1019Alejandro K AmigonUnited Kingdom2024-06-07Morlong Associates NEW68Elwin Sharvill
1020Mujtaba J FerenczJapan2024-06-16Chemel, James L Cpa PROPOSAL22Elwin Sharvill
1021Munro E GlickSpain2024-06-06King, Christopher A Esq NEW65Anna Fali
1022Chavez Y ShinkoRussia2024-05-30Rousseaux, Michael Esq RENEWAL20Bernardo Dominic
1023Claire W OldroydSpain2024-06-02Printing Dimensions NEW6Xuxue Feng
1024Sinclair G SaylorsAustralia2024-05-27Chanay, Jeffrey A Esq NEGOTIATION56Anna Fali
1025Munro S MaletUnited Kingdom2024-05-30Chemel, James L Cpa NEW13Asiya Javayant
1026Isabel Y FerenczSpain2024-06-17Chapman, Ross E Esq NEGOTIATION82Elwin Sharvill
1027James I DarakjyIndia2024-05-29Buckley Miller Wright NEGOTIATION21Xuxue Feng
1028Silvio G FlosiBrazil2024-06-17Rousseaux, Michael Esq QUALIFIED3Ivan Magalhaes
1029Mayumi S KuskoUnited Kingdom2024-06-06Printing Dimensions NEW69Bernardo Dominic
1030Greenwood T MaletSpain2024-06-13Rangoni Of Florence PROPOSAL57Anna Fali
1031Ivar Q KuskoUnited Kingdom2024-06-11Commercial Press PROPOSAL81Amy Elsner
1032Chavez N BriddickBrazil2024-06-10Feltz Printing Service QUALIFIED50Ivan Magalhaes
1033Adams Z DarakjyBrazil2024-06-08Chapman, Ross E Esq RENEWAL8Ivan Magalhaes
1034Murillo W PerinFrance2024-06-17Benton, John B Jr UNQUALIFIED69Elwin Sharvill
1035Jones B PaprockiJapan2024-06-12Truhlar And Truhlar Attys QUALIFIED16Ioni Bowcher
1036Mujtaba Z RutaGermany2024-05-27Feiner Bros NEGOTIATION24Elwin Sharvill
1037Rodrigues G InouyeCanada2024-05-31Commercial Press NEW48Anna Fali
1038Aditya V PerinBrazil2024-06-02Commercial Press QUALIFIED74Amy Elsner
1039Nicolas C TollnerArgentina2024-05-26Chapman, Ross E Esq QUALIFIED83Onyama Limba
1040Jones W DilliardAustralia2024-06-04Commercial Press QUALIFIED37Asiya Javayant
1041Ashley Z GlickArgentina2024-05-28Rangoni Of Florence UNQUALIFIED75Ioni Bowcher
1042Maria A AmigonItaly2024-06-01Feiner Bros NEW42Onyama Limba
1043Juan L WaycottItaly2024-05-22Morlong Associates PROPOSAL41Stephen Shaw
1044Aruna D AlbaresGermany2024-06-16Rangoni Of Florence QUALIFIED34Amy Elsner
1045Isabel O AlbaresSpain2024-06-17Buckley Miller Wright NEW33Onyama Limba
1046Aditya W DilliardIndia2024-05-30Benton, John B Jr RENEWAL85Stephen Shaw
1047Alejandro M ChuiJapan2024-06-15Commercial Press RENEWAL96Stephen Shaw
1048Antonio Y AlbaresCanada2024-06-01Chapman, Ross E Esq UNQUALIFIED38Elwin Sharvill
1049Deepesh D BologniaGermany2024-06-16Chemel, James L Cpa NEW93Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Costa M GillianSpainIvan Magalhaes NEW
Jennifer L FigeroaIndiaAsiya Javayant QUALIFIED
Aruna J NestleIndiaElwin Sharvill NEW
Cody L NickaRussiaAsiya Javayant PROPOSAL
Antonio C OldroydFranceAsiya Javayant QUALIFIED
Morrow O VocelkaGermanyOnyama Limba PROPOSAL
Mujtaba A OldroydIndiaAnna Fali NEW
Mayumi V FlosiItalyXuxue Feng NEW
Kaitlin U OldroydAustraliaBernardo Dominic PROPOSAL
Leon G ButtGermanyXuxue Feng RENEWAL
Antonio P FollerBrazilAnna Fali UNQUALIFIED
Clifford J FerenczFranceXuxue Feng QUALIFIED
Maria I ShinkoIndiaIoni Bowcher NEW
Greenwood L CaldareraItalyStephen Shaw NEGOTIATION
Aruna C CampainItalyAnna Fali PROPOSAL
Nicolas L RutaRussiaAsiya Javayant NEW
Maisha W GauchoBrazilBernardo Dominic PROPOSAL
Leja G NickaItalyIoni Bowcher PROPOSAL
Maria D MaletBrazilBernardo Dominic NEGOTIATION
Kadeem L DoeFranceIoni Bowcher QUALIFIED
Izzy J GillianItalyAnna Fali RENEWAL
Murillo H CaldareraUnited KingdomOnyama Limba UNQUALIFIED
Murillo I ShinkoBrazilOnyama Limba NEGOTIATION
Alejandro H NestleUnited KingdomBernardo Dominic NEW
Antonio E BologniaBrazilIvan Magalhaes NEGOTIATION
Maisha J VenereJapanIvan Magalhaes NEW
Murillo F MarrierSpainStephen Shaw NEW
Tony V SaylorsItalyOnyama Limba QUALIFIED
Francesco Q MaletArgentinaOnyama Limba PROPOSAL
Kaitlin V MarrierBrazilElwin Sharvill RENEWAL
Smith E IturbideItalyOnyama Limba PROPOSAL
Deepesh C OstroskyUnited KingdomAsiya Javayant PROPOSAL
Izzy D GauchoIndiaIoni Bowcher NEW
Sinclair A RoysterIndiaAsiya Javayant PROPOSAL
Leja F SergiItalyAsiya Javayant NEW
Morrow O InouyeIndiaElwin Sharvill NEW
Misaki B AmigonCanadaXuxue Feng NEW
Izzy M InouyeIndiaBernardo Dominic NEGOTIATION
Antonio D WaycottAustraliaAmy Elsner UNQUALIFIED
Juan K FlosiRussiaAnna Fali UNQUALIFIED
Murillo C MacleadRussiaOnyama Limba PROPOSAL
Wickens R DoeItalyElwin Sharvill RENEWAL
David Z DarakjyItalyStephen Shaw NEW
Antonio N OstroskyItalyIoni Bowcher PROPOSAL
Juan E DilliardJapanOnyama Limba QUALIFIED
Tony S GauchoFranceOnyama Limba UNQUALIFIED
Alejandro Q BowleyRussiaElwin Sharvill RENEWAL
Deepesh C BologniaGermanyElwin Sharvill QUALIFIED
Francesco Z MaletItalyIvan Magalhaes RENEWAL
Cody F CaldareraAustraliaAmy Elsner NEGOTIATION
Frozen Columns
Name
Mujtaba U Campain
Jennifer A Sergi
Deepesh O Sergi
Wickens M Oldroyd
David P Bowley
Johnson W Gillian
Francesco I Sergi
Izzy J Tollner
Leon S Sergi
Jones K Ostrosky
Nicolas M Malet
Ashley Y Ruta
Claire X Oldroyd
Kaitlin V Butt
Clifford F Gillian
Tony N Figeroa
Tony L Chui
Mayumi S Butt
Aditya Z Maclead
Costa F Darakjy
Salvatore F Figeroa
Juan Y Gillian
Francesco W Ruta
Munro H Malet
Ashley Q Iturbide
Izzy D Stenseth
Adams X Poquette
Francesco J Royster
Faith F Doe
Jeanfrancois U Gillian
Mujtaba A Butt
Juan H Sergi
Jennifer J Bolognia
Clifford Z Nestle
Ashley C Morasca
Juan H Bowley
Darci X Malet
Sinclair Z Bowley
Claire W Stenseth
Aditya O Figeroa
Murillo W Malet
Ivar L Poquette
Tony G Butt
Jefferson T Gillian
Alejandro B Caudy
Tony V Briddick
Aruna L Doe
Costa L Slusarski
Aruna O Campain
Smith J Tollner
IdCountryDate
1000Germany2024-05-20
1001Argentina2024-06-04
1002Russia2024-05-29
1003Brazil2024-06-16
1004Germany2024-05-21
1005Brazil2024-06-15
1006United Kingdom2024-06-06
1007India2024-06-07
1008Australia2024-06-11
1009United Kingdom2024-05-31
1010Australia2024-06-08
1011France2024-05-20
1012Argentina2024-05-26
1013India2024-05-22
1014Brazil2024-06-10
1015Brazil2024-05-29
1016Russia2024-06-03
1017Argentina2024-05-19
1018Argentina2024-06-11
1019Germany2024-06-02
1020Argentina2024-06-07
1021Spain2024-06-12
1022Spain2024-05-29
1023Spain2024-05-20
1024Australia2024-06-17
1025Russia2024-05-31
1026Australia2024-06-07
1027Italy2024-06-12
1028Italy2024-06-15
1029United Kingdom2024-06-17
1030Italy2024-05-19
1031United Kingdom2024-06-02
1032Spain2024-05-26
1033Japan2024-06-07
1034Spain2024-05-29
1035France2024-05-22
1036United Kingdom2024-05-31
1037Russia2024-05-28
1038Japan2024-06-08
1039Russia2024-06-15
1040Russia2024-05-20
1041Japan2024-05-25
1042United Kingdom2024-06-08
1043France2024-05-31
1044Russia2024-06-05
1045Brazil2024-05-27
1046Argentina2024-06-05
1047Japan2024-05-27
1048India2024-06-11
1049Italy2024-06-11

On-Demand Data

NameIdCountryDate
Salvatore Q Chui1000Brazil2024-05-27
Mayumi R Sergi1001Australia2024-06-14
Aruna Y Butt1002Australia2024-05-20
Mayumi S Inouye1003Brazil2024-06-16
Munro A Schemmer1004Argentina2024-06-07
Jennifer K Rulapaugh1005Canada2024-06-12
Clifford A Kolmetz1006Spain2024-05-29
Ivar G Stenseth1007United Kingdom2024-05-22
James H Campain1008Canada2024-06-10
Ashley Y Campain1009United Kingdom2024-05-20
Cody L Slusarski1010Canada2024-05-19
Munro Y Iturbide1011Japan2024-06-10
Jennifer W Venere1012Canada2024-06-02
Wickens F Glick1013Spain2024-05-25
Silvio F Marrier1014Japan2024-06-16
Alejandro I Briddick1015Italy2024-06-04
Morrow I Oldroyd1016France2024-06-07
Jeanfrancois V Iturbide1017Brazil2024-05-31
Ivar X Dilliard1018Spain2024-06-06
Jones L Glick1019Australia2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley D OstroskyItalyAnna Fali NEGOTIATION
Morrow I BowleyFranceXuxue Feng RENEWAL
Emily G AlbaresCanadaElwin Sharvill PROPOSAL
Salvatore G ShinkoGermanyStephen Shaw QUALIFIED
Sinclair I KolmetzGermanyIoni Bowcher RENEWAL
Munro H VocelkaFranceOnyama Limba NEW
Aruna H SchemmerIndiaBernardo Dominic NEW
Jeanfrancois L BowleyArgentinaBernardo Dominic NEW
Murillo W FollerSpainAmy Elsner NEW
Francesco J StensethGermanyStephen Shaw QUALIFIED
Deepesh I ChuiAustraliaIvan Magalhaes RENEWAL
Jennifer B CampainItalyAnna Fali RENEWAL
Tony T OldroydItalyAmy Elsner QUALIFIED
Ricardo H IturbideSpainBernardo Dominic UNQUALIFIED
Isabel J AlbaresGermanyAsiya Javayant NEW
Emily S RutaArgentinaIvan Magalhaes QUALIFIED
Izzy M KuskoItalyAmy Elsner NEGOTIATION
Emily P FollerFranceElwin Sharvill NEGOTIATION
Ricardo G MarrierIndiaIvan Magalhaes PROPOSAL
Chavez A BowleyUnited KingdomStephen Shaw QUALIFIED
Munro Y FollerAustraliaXuxue Feng QUALIFIED
Greenwood E GarufiBrazilOnyama Limba NEW
Cody O AlbaresRussiaBernardo Dominic QUALIFIED
Murillo S GillianUnited KingdomStephen Shaw RENEWAL
Jones L SlusarskiFranceIvan Magalhaes QUALIFIED
Julie H BriddickAustraliaStephen Shaw QUALIFIED
Jennifer S CaldareraGermanyAnna Fali PROPOSAL
Adams I GillianBrazilElwin Sharvill NEGOTIATION
Maisha J DoeFranceAnna Fali NEW
Morrow O SaylorsAustraliaAmy Elsner RENEWAL
Arvin N MarrierCanadaIoni Bowcher QUALIFIED
Julie U KolmetzFranceIoni Bowcher QUALIFIED
Francesco H GauchoSpainElwin Sharvill UNQUALIFIED
Francesco F GlickJapanOnyama Limba QUALIFIED
Leon Y MaletUnited KingdomAnna Fali QUALIFIED
Johnson Z VenereAustraliaStephen Shaw RENEWAL
Mujtaba T DarakjyBrazilXuxue Feng PROPOSAL
James I MorascaCanadaXuxue Feng RENEWAL
Claire J SlusarskiRussiaElwin Sharvill NEGOTIATION
Ashley F SchemmerSpainStephen Shaw RENEWAL

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