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
Aika G MacleadItalyAnna Fali UNQUALIFIED
Juan Y RulapaughCanadaElwin Sharvill NEW
Maisha X OldroydRussiaAmy Elsner NEW
Aditya Q MacleadUnited KingdomBernardo Dominic NEW
Juan I VenereIndiaAnna Fali UNQUALIFIED
Isabel M OldroydAustraliaAsiya Javayant RENEWAL
Sinclair X MarrierItalyXuxue Feng UNQUALIFIED
Jefferson Y WieserBrazilAnna Fali NEGOTIATION
Murillo F ShinkoRussiaXuxue Feng UNQUALIFIED
Greenwood H StockhamBrazilIvan Magalhaes UNQUALIFIED
Smith C BriddickIndiaOnyama Limba NEW
Arvin B KuskoItalyAsiya Javayant UNQUALIFIED
Adams H NestleSpainStephen Shaw NEGOTIATION
Adams A StockhamAustraliaAsiya Javayant RENEWAL
Aruna L MaletCanadaOnyama Limba NEGOTIATION
Jeanfrancois U FlosiSpainOnyama Limba QUALIFIED
Deepesh N BowleyGermanyIvan Magalhaes RENEWAL
Leon E OstroskyFranceIvan Magalhaes QUALIFIED
Nicolas G SchemmerJapanAmy Elsner UNQUALIFIED
Kaitlin W StensethBrazilOnyama Limba QUALIFIED
Ashley E StensethGermanyStephen Shaw RENEWAL
Jones U RulapaughCanadaElwin Sharvill PROPOSAL
Misaki W SaylorsGermanyAmy Elsner NEW
Wickens F StockhamJapanAnna Fali PROPOSAL
Aika J WieserItalyXuxue Feng QUALIFIED
Silvio N PerinJapanStephen Shaw UNQUALIFIED
Clifford N OstroskyUnited KingdomAmy Elsner QUALIFIED
Isabel Y WieserBrazilXuxue Feng RENEWAL
Kadeem M PerinSpainAnna Fali RENEWAL
Jefferson I FollerCanadaAmy Elsner RENEWAL
Izzy J SaylorsAustraliaStephen Shaw QUALIFIED
Leja O MaletIndiaBernardo Dominic NEGOTIATION
Murillo H GlickArgentinaIoni Bowcher NEW
Greenwood G AmigonArgentinaStephen Shaw QUALIFIED
Maisha A MarrierGermanyBernardo Dominic NEW
Cody Z OldroydSpainOnyama Limba UNQUALIFIED
Salvatore P VocelkaRussiaAsiya Javayant RENEWAL
Ivar F SaylorsJapanAmy Elsner NEGOTIATION
Clifford Y ButtRussiaOnyama Limba QUALIFIED
Costa F WieserSpainXuxue Feng QUALIFIED
Chavez Q PoquetteCanadaAmy Elsner QUALIFIED
Tony A InouyeItalyAsiya Javayant UNQUALIFIED
Maria S SaylorsSpainIoni Bowcher UNQUALIFIED
Stacey N MaletJapanStephen Shaw NEGOTIATION
Sinclair J ButtBrazilElwin Sharvill RENEWAL
Tony R OldroydIndiaBernardo Dominic NEGOTIATION
Johnson Y StensethUnited KingdomBernardo Dominic RENEWAL
Izzy V DilliardItalyOnyama Limba NEW
Jones P DilliardGermanyOnyama Limba QUALIFIED
Ivar M CaudySpainAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Tony G CampainIndiaIvan Magalhaes RENEWAL
Mujtaba F DilliardSpainOnyama Limba NEW
Aruna S AmigonSpainAnna Fali PROPOSAL
Ashley U RutaItalyBernardo Dominic NEW
Isabel Y GlickArgentinaElwin Sharvill NEW
Mayumi G BriddickCanadaXuxue Feng UNQUALIFIED
Chavez I CampainUnited KingdomBernardo Dominic UNQUALIFIED
Arvin L SlusarskiBrazilOnyama Limba UNQUALIFIED
Antonio A StockhamUnited KingdomXuxue Feng UNQUALIFIED
Francesco P ButtGermanyBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci U ChuiIndia2024-06-13Commercial Press UNQUALIFIED47Bernardo Dominic
1001Isabel O InouyeFrance2024-06-11Morlong Associates NEW83Asiya Javayant
1002Jefferson P FlosiSpain2024-06-01Buckley Miller Wright NEW40Bernardo Dominic
1003Mayumi W IturbideFrance2024-06-03Feiner Bros UNQUALIFIED48Xuxue Feng
1004Chavez A TollnerItaly2024-06-20Dorl, James J Esq NEW77Bernardo Dominic
1005Sinclair U NickaBrazil2024-06-08Dorl, James J Esq PROPOSAL5Ioni Bowcher
1006Juan R PaprockiGermany2024-06-08Chanay, Jeffrey A Esq QUALIFIED29Ioni Bowcher
1007Cody I SlusarskiAustralia2024-05-24Chapman, Ross E Esq NEW19Anna Fali
1008Aditya S OldroydFrance2024-05-27Morlong Associates RENEWAL95Anna Fali
1009Salvatore S KuskoSpain2024-06-04Dorl, James J Esq QUALIFIED64Elwin Sharvill
1010Costa C FollerSpain2024-06-02Chemel, James L Cpa RENEWAL97Amy Elsner
1011Aika U MacleadFrance2024-06-13Commercial Press NEW75Xuxue Feng
1012Ricardo Y SchemmerAustralia2024-06-16Commercial Press NEGOTIATION57Stephen Shaw
1013Emily P MacleadBrazil2024-06-17Benton, John B Jr PROPOSAL55Ivan Magalhaes
1014Tony C ButtItaly2024-05-30Truhlar And Truhlar Attys UNQUALIFIED20Ioni Bowcher
1015Octavia K NickaAustralia2024-06-18Truhlar And Truhlar Attys UNQUALIFIED59Ivan Magalhaes
1016Deepesh O FerenczArgentina2024-05-28Printing Dimensions NEGOTIATION56Stephen Shaw
1017Arvin T MaletAustralia2024-06-12Printing Dimensions UNQUALIFIED77Onyama Limba
1018Jennifer E KuskoFrance2024-06-12Buckley Miller Wright NEW98Anna Fali
1019Ricardo L ButtFrance2024-06-05King, Christopher A Esq NEGOTIATION79Xuxue Feng
1020Jefferson C GlickGermany2024-06-11Chapman, Ross E Esq NEGOTIATION41Anna Fali
1021Octavia F BriddickJapan2024-05-24Benton, John B Jr PROPOSAL12Stephen Shaw
1022Rodrigues H StensethArgentina2024-06-18Chemel, James L Cpa PROPOSAL7Onyama Limba
1023Ashley E MaletIndia2024-06-09Truhlar And Truhlar Attys RENEWAL64Onyama Limba
1024Smith F SergiAustralia2024-06-02Truhlar And Truhlar Attys UNQUALIFIED91Onyama Limba
1025Leja W FlosiIndia2024-06-22King, Christopher A Esq NEGOTIATION24Asiya Javayant
1026Jefferson U FigeroaIndia2024-06-21Dorl, James J Esq UNQUALIFIED3Ioni Bowcher
1027Arvin H WaycottIndia2024-06-15Rangoni Of Florence NEW27Elwin Sharvill
1028Morrow N AmigonItaly2024-06-03Printing Dimensions NEW63Amy Elsner
1029Misaki Y GarufiUnited Kingdom2024-06-22Rousseaux, Michael Esq NEW43Stephen Shaw
1030Isabel O MorascaRussia2024-06-11Chemel, James L Cpa NEW40Bernardo Dominic
1031Claire V GlickSpain2024-06-08Chapman, Ross E Esq QUALIFIED70Asiya Javayant
1032Nicolas B BriddickRussia2024-06-15Morlong Associates QUALIFIED14Elwin Sharvill
1033Kaitlin K GlickCanada2024-06-22Buckley Miller Wright RENEWAL82Xuxue Feng
1034Wickens T CaldareraJapan2024-06-18Rousseaux, Michael Esq QUALIFIED89Elwin Sharvill
1035Jeanfrancois D SergiItaly2024-05-24Feiner Bros NEW27Ivan Magalhaes
1036Ricardo V PaprockiItaly2024-05-27Feiner Bros UNQUALIFIED16Elwin Sharvill
1037Jefferson B PoquetteFrance2024-06-21King, Christopher A Esq UNQUALIFIED52Xuxue Feng
1038Kadeem V CaldareraArgentina2024-06-16Rousseaux, Michael Esq UNQUALIFIED45Onyama Limba
1039Sinclair L MacleadItaly2024-06-22Printing Dimensions RENEWAL10Bernardo Dominic
1040Aditya Q GillianIndia2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED3Amy Elsner
1041Juan V IturbideRussia2024-05-24Commercial Press RENEWAL93Ioni Bowcher
1042Ashley N OstroskyUnited Kingdom2024-06-03Printing Dimensions NEW4Asiya Javayant
1043Johnson V TollnerGermany2024-05-25Chemel, James L Cpa PROPOSAL66Xuxue Feng
1044Mayumi I CampainJapan2024-06-07Morlong Associates RENEWAL17Amy Elsner
1045Morrow Q TollnerArgentina2024-05-30Truhlar And Truhlar Attys PROPOSAL26Elwin Sharvill
1046Stacey R WaycottArgentina2024-05-28Morlong Associates QUALIFIED28Elwin Sharvill
1047Mayumi S GillianRussia2024-06-02Dorl, James J Esq NEW46Ivan Magalhaes
1048Sinclair J MaletSpain2024-06-21Chapman, Ross E Esq UNQUALIFIED61Elwin Sharvill
1049Mayumi P CampainRussia2024-06-22Rangoni Of Florence PROPOSAL91Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Wickens Y AmigonCanadaOnyama Limba RENEWAL
Silvio T DilliardBrazilIoni Bowcher UNQUALIFIED
Jeanfrancois A FlosiBrazilElwin Sharvill UNQUALIFIED
Jefferson O FlosiArgentinaElwin Sharvill RENEWAL
Greenwood N FerenczGermanyAmy Elsner NEGOTIATION
James O StockhamCanadaAmy Elsner NEGOTIATION
Alejandro O IturbideRussiaAsiya Javayant NEGOTIATION
Aika F AmigonUnited KingdomOnyama Limba RENEWAL
Cody J MacleadRussiaOnyama Limba NEGOTIATION
Murillo W RoysterGermanyIoni Bowcher PROPOSAL
Rodrigues Y FollerArgentinaIoni Bowcher QUALIFIED
Chavez X DoeGermanyIvan Magalhaes NEGOTIATION
Ivar Q WhobreyIndiaAmy Elsner NEW
Cody S KuskoIndiaAsiya Javayant UNQUALIFIED
Maisha X VenereSpainStephen Shaw UNQUALIFIED
Nicolas K ShinkoRussiaIvan Magalhaes QUALIFIED
Mayumi A StockhamFranceAsiya Javayant PROPOSAL
Ricardo Z RoysterFranceIvan Magalhaes NEW
Stacey G MacleadRussiaAmy Elsner QUALIFIED
Julie N OldroydJapanXuxue Feng NEGOTIATION
Claire N NickaUnited KingdomIoni Bowcher PROPOSAL
Smith I NickaRussiaBernardo Dominic QUALIFIED
James S BriddickItalyElwin Sharvill RENEWAL
Misaki A KuskoUnited KingdomAmy Elsner QUALIFIED
James D FollerArgentinaXuxue Feng UNQUALIFIED
Antonio E MaletItalyOnyama Limba PROPOSAL
Leon M KolmetzFranceAsiya Javayant UNQUALIFIED
Alejandro N NickaGermanyIvan Magalhaes UNQUALIFIED
Aika T GauchoUnited KingdomAsiya Javayant PROPOSAL
Johnson H KolmetzArgentinaElwin Sharvill NEGOTIATION
Maria K RulapaughSpainAmy Elsner UNQUALIFIED
Cody H CampainSpainIoni Bowcher UNQUALIFIED
Emily R RulapaughRussiaIoni Bowcher PROPOSAL
Smith A FerenczSpainXuxue Feng PROPOSAL
Leon X RutaUnited KingdomStephen Shaw UNQUALIFIED
David K AlbaresGermanyElwin Sharvill UNQUALIFIED
Jones R KolmetzJapanAsiya Javayant NEGOTIATION
Ricardo K NestleIndiaStephen Shaw PROPOSAL
Claire B RoysterItalyStephen Shaw RENEWAL
Faith F MacleadAustraliaBernardo Dominic NEW
Rodrigues E OldroydItalyStephen Shaw NEW
Stacey W SergiRussiaOnyama Limba PROPOSAL
Arvin B NestleFranceAsiya Javayant RENEWAL
Mayumi S MacleadFranceElwin Sharvill PROPOSAL
Faith A BriddickArgentinaAnna Fali RENEWAL
Deepesh J FerenczAustraliaIvan Magalhaes QUALIFIED
Tony B MacleadArgentinaAsiya Javayant PROPOSAL
Aditya D GlickUnited KingdomAsiya Javayant UNQUALIFIED
Costa B MorascaCanadaIvan Magalhaes NEW
Ricardo V MarrierArgentinaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Leon H Garufi
Jones M Tollner
Emily C Ruta
Nicolas R Doe
Tony J Venere
Jeanfrancois T Vocelka
Julie U Kusko
Mayumi C Saylors
Kadeem M Oldroyd
Murillo S Dilliard
James L Iturbide
Stacey X Marrier
Izzy E Slusarski
Murillo Q Amigon
Silvio H Gillian
Nicolas E Shinko
Maria F Stenseth
Maria S Poquette
Smith V Stockham
Leon H Rulapaugh
Izzy X Caudy
Tony S Flosi
Isabel I Venere
Leon I Morasca
Octavia H Foller
Aika B Vocelka
Arvin D Garufi
Kaitlin A Paprocki
David G Gillian
Sinclair E Figeroa
Rodrigues H Gaucho
Isabel J Caudy
David W Caudy
Jennifer V Morasca
Ricardo G Glick
Ashley K Marrier
Mujtaba Y Bolognia
Chavez E Caudy
Cody J Morasca
Claire T Bowley
Leon T Perin
Leja A Stenseth
Johnson A Malet
Aika Y Butt
Misaki L Rim
Munro K Foller
Aditya Z Schemmer
Costa G Ostrosky
Greenwood H Garufi
Misaki B Ostrosky
IdCountryDate
1000Brazil2024-06-20
1001Germany2024-06-20
1002Brazil2024-06-15
1003Spain2024-06-01
1004Canada2024-06-02
1005India2024-06-13
1006Argentina2024-06-12
1007Italy2024-06-05
1008India2024-05-27
1009Japan2024-06-01
1010Germany2024-06-17
1011Germany2024-06-15
1012France2024-06-14
1013Brazil2024-06-16
1014Spain2024-06-11
1015France2024-05-25
1016United Kingdom2024-06-09
1017Brazil2024-05-25
1018Canada2024-05-31
1019Japan2024-06-05
1020Japan2024-06-07
1021India2024-06-06
1022Argentina2024-06-21
1023Brazil2024-06-15
1024India2024-06-07
1025France2024-06-13
1026Argentina2024-06-06
1027India2024-06-05
1028Argentina2024-06-15
1029Japan2024-06-05
1030Brazil2024-05-25
1031India2024-06-22
1032Brazil2024-06-16
1033India2024-05-26
1034Japan2024-06-22
1035France2024-06-22
1036Argentina2024-06-19
1037India2024-05-24
1038Australia2024-06-14
1039France2024-05-24
1040United Kingdom2024-06-14
1041Germany2024-06-07
1042Australia2024-06-01
1043Canada2024-05-31
1044Russia2024-06-03
1045Argentina2024-06-14
1046Brazil2024-06-05
1047Australia2024-06-06
1048Argentina2024-06-03
1049Canada2024-06-01

On-Demand Data

NameIdCountryDate
Deepesh N Poquette1000Brazil2024-05-25
Tony U Malet1001Japan2024-05-31
Jeanfrancois I Royster1002Brazil2024-06-07
Ashley J Flosi1003Canada2024-06-14
Leja T Ostrosky1004Italy2024-05-29
Chavez Z Gillian1005Brazil2024-05-28
Morrow O Dilliard1006Russia2024-06-16
Claire X Gaucho1007Italy2024-06-21
Faith M Campain1008France2024-05-26
Isabel G Venere1009Australia2024-05-25
Izzy N Oldroyd1010Argentina2024-05-25
Leon O Garufi1011Brazil2024-05-24
Aditya P Campain1012Japan2024-05-28
Ivar X Venere1013Spain2024-06-03
David O Rim1014Italy2024-06-07
Stacey P Chui1015Germany2024-06-14
Francesco P Vocelka1016Argentina2024-06-02
Chavez H Dilliard1017India2024-06-19
Maria J Gillian1018Brazil2024-05-31
Aruna H Malet1019France2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria U WaycottIndiaIvan Magalhaes NEGOTIATION
Alejandro M PoquetteIndiaOnyama Limba PROPOSAL
Mujtaba T OldroydBrazilStephen Shaw QUALIFIED
Johnson B AlbaresJapanBernardo Dominic QUALIFIED
Jefferson N CampainCanadaIvan Magalhaes UNQUALIFIED
Darci K MaletIndiaIvan Magalhaes NEGOTIATION
Maisha I MaletItalyAnna Fali PROPOSAL
Smith I FigeroaRussiaXuxue Feng RENEWAL
Leja W NickaArgentinaIoni Bowcher NEGOTIATION
Isabel H MorascaItalyStephen Shaw QUALIFIED
Adams L PoquetteArgentinaAmy Elsner PROPOSAL
Costa G InouyeItalyOnyama Limba UNQUALIFIED
Arvin F DoeJapanXuxue Feng NEGOTIATION
Chavez K GauchoIndiaAsiya Javayant PROPOSAL
Emily T MaletRussiaBernardo Dominic PROPOSAL
James Y NestleBrazilBernardo Dominic NEW
Alejandro P ShinkoBrazilIoni Bowcher UNQUALIFIED
Aditya A MaletRussiaAmy Elsner UNQUALIFIED
Maisha A FerenczArgentinaAmy Elsner RENEWAL
Murillo U AmigonGermanyAsiya Javayant RENEWAL
Ashley H FigeroaFranceIvan Magalhaes RENEWAL
Faith G VocelkaArgentinaAnna Fali NEW
Leon I AlbaresFranceXuxue Feng PROPOSAL
Aditya S SaylorsJapanXuxue Feng NEGOTIATION
Tony E RulapaughAustraliaStephen Shaw PROPOSAL
Mujtaba T VocelkaIndiaStephen Shaw UNQUALIFIED
Tony W FlosiBrazilIoni Bowcher NEGOTIATION
Aruna F BologniaSpainStephen Shaw PROPOSAL
Aruna W GillianItalyAnna Fali NEW
Stacey X StockhamGermanyStephen Shaw PROPOSAL
Leon O WaycottCanadaStephen Shaw NEW
Cody X KuskoSpainAmy Elsner UNQUALIFIED
Jennifer F GlickJapanStephen Shaw RENEWAL
Darci K SchemmerItalyAmy Elsner PROPOSAL
Sinclair F MacleadSpainAmy Elsner UNQUALIFIED
Jones T FerenczJapanAnna Fali NEGOTIATION
Claire H KolmetzIndiaBernardo Dominic QUALIFIED
Francesco O RimCanadaIvan Magalhaes QUALIFIED
Maisha B ChuiRussiaAsiya Javayant UNQUALIFIED
Ricardo L PoquetteSpainIvan Magalhaes 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>