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
Isabel S PaprockiCanadaBernardo Dominic RENEWAL
Ashley T CampainBrazilIoni Bowcher NEW
Arvin X KolmetzIndiaAsiya Javayant QUALIFIED
Nicolas R BowleyGermanyIvan Magalhaes PROPOSAL
Maria A FerenczCanadaBernardo Dominic NEW
Octavia V DilliardSpainStephen Shaw NEGOTIATION
Misaki A GillianGermanyXuxue Feng NEGOTIATION
Francesco B StensethGermanyElwin Sharvill NEGOTIATION
Ivar H NickaCanadaAmy Elsner RENEWAL
Izzy Q InouyeItalyXuxue Feng UNQUALIFIED
Wickens G WhobreyAustraliaAsiya Javayant QUALIFIED
Tony Q MorascaFranceIvan Magalhaes NEW
Faith H StensethFranceAsiya Javayant NEGOTIATION
Cody G FerenczArgentinaOnyama Limba NEGOTIATION
Kadeem A AmigonSpainElwin Sharvill QUALIFIED
Leja Q WhobreyIndiaAmy Elsner NEGOTIATION
James L FerenczBrazilAnna Fali QUALIFIED
Sinclair Y DoeJapanIoni Bowcher QUALIFIED
Jones X AmigonUnited KingdomElwin Sharvill NEGOTIATION
Maisha T SaylorsAustraliaXuxue Feng RENEWAL
Aruna R MorascaUnited KingdomAnna Fali NEW
Antonio I ShinkoCanadaIvan Magalhaes NEGOTIATION
Nicolas N AmigonAustraliaAsiya Javayant PROPOSAL
Aditya R FollerCanadaAsiya Javayant UNQUALIFIED
Munro I NestleFranceStephen Shaw PROPOSAL
Alejandro K GarufiJapanOnyama Limba UNQUALIFIED
Leja X SergiCanadaAmy Elsner QUALIFIED
Mujtaba S AmigonItalyElwin Sharvill QUALIFIED
Leja P GarufiItalyStephen Shaw NEW
Maisha Z PaprockiGermanyAsiya Javayant QUALIFIED
Leon D MorascaFranceIvan Magalhaes RENEWAL
Kadeem K DarakjyCanadaAnna Fali UNQUALIFIED
Claire R GlickCanadaStephen Shaw NEW
Maria R GauchoJapanBernardo Dominic PROPOSAL
Jefferson S WhobreyIndiaAmy Elsner NEW
Clifford N GauchoUnited KingdomAmy Elsner RENEWAL
Aditya O WaycottRussiaStephen Shaw QUALIFIED
Murillo T RoysterRussiaElwin Sharvill NEGOTIATION
Cody M OstroskyUnited KingdomIoni Bowcher NEW
Faith A ButtItalyXuxue Feng NEW
Misaki M MorascaSpainXuxue Feng PROPOSAL
Arvin A RoysterAustraliaIvan Magalhaes PROPOSAL
Faith O BriddickRussiaBernardo Dominic PROPOSAL
Rodrigues A SlusarskiItalyAsiya Javayant NEW
Greenwood N AlbaresUnited KingdomElwin Sharvill QUALIFIED
Jones W VocelkaIndiaAnna Fali NEGOTIATION
Misaki V PaprockiSpainStephen Shaw RENEWAL
Aika S FlosiGermanyBernardo Dominic QUALIFIED
Ricardo K OldroydRussiaOnyama Limba RENEWAL
Clifford Q BriddickIndiaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Aika T CaldareraBrazilElwin Sharvill PROPOSAL
Ashley R VocelkaJapanElwin Sharvill QUALIFIED
Jones R OldroydArgentinaIoni Bowcher QUALIFIED
Alejandro C DoeIndiaIvan Magalhaes RENEWAL
Tony J ButtBrazilElwin Sharvill RENEWAL
Costa E FigeroaAustraliaAnna Fali QUALIFIED
Misaki Q FlosiGermanyBernardo Dominic NEGOTIATION
David H RutaAustraliaIoni Bowcher NEGOTIATION
Silvio D DilliardGermanyAnna Fali RENEWAL
Johnson U GauchoIndiaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan K MorascaArgentina2024-05-16Truhlar And Truhlar Attys NEGOTIATION20Ivan Magalhaes
1001Jennifer B DoeCanada2024-05-13Commercial Press RENEWAL94Onyama Limba
1002Chavez I RutaBrazil2024-05-09Rousseaux, Michael Esq NEW73Elwin Sharvill
1003James Y VocelkaFrance2024-05-04Printing Dimensions UNQUALIFIED46Ivan Magalhaes
1004Murillo H ButtAustralia2024-05-05Feltz Printing Service RENEWAL24Xuxue Feng
1005Arvin Q WhobreyItaly2024-05-07Truhlar And Truhlar Attys PROPOSAL55Asiya Javayant
1006Izzy X AmigonItaly2024-05-05Printing Dimensions QUALIFIED75Xuxue Feng
1007Francesco M CampainBrazil2024-05-25Dorl, James J Esq NEW8Anna Fali
1008Silvio U MorascaBrazil2024-05-25Feltz Printing Service RENEWAL24Asiya Javayant
1009Aditya W FollerGermany2024-05-06Buckley Miller Wright NEW94Ivan Magalhaes
1010Costa H MarrierArgentina2024-05-19Benton, John B Jr RENEWAL27Asiya Javayant
1011Emily E GauchoRussia2024-05-12Morlong Associates RENEWAL14Stephen Shaw
1012Ashley B BriddickCanada2024-05-12Dorl, James J Esq RENEWAL67Stephen Shaw
1013Isabel Y MaletAustralia2024-05-01Printing Dimensions PROPOSAL4Onyama Limba
1014Maisha K RutaUnited Kingdom2024-05-08Benton, John B Jr QUALIFIED40Bernardo Dominic
1015Sinclair E MarrierItaly2024-05-16Benton, John B Jr UNQUALIFIED44Ivan Magalhaes
1016James E VenereFrance2024-04-30Printing Dimensions RENEWAL98Stephen Shaw
1017Jennifer H OldroydSpain2024-05-21Dorl, James J Esq UNQUALIFIED90Onyama Limba
1018Johnson K VocelkaCanada2024-05-24Benton, John B Jr NEGOTIATION5Asiya Javayant
1019Silvio D FerenczUnited Kingdom2024-05-01Benton, John B Jr PROPOSAL4Xuxue Feng
1020Chavez M DoeSpain2024-05-07Benton, John B Jr NEW94Asiya Javayant
1021Izzy W NestleArgentina2024-05-23Printing Dimensions QUALIFIED97Xuxue Feng
1022Ashley H DoeCanada2024-05-07Rousseaux, Michael Esq NEW19Stephen Shaw
1023Smith N IturbideAustralia2024-05-14Benton, John B Jr QUALIFIED20Stephen Shaw
1024Alejandro J DarakjyAustralia2024-04-29Chanay, Jeffrey A Esq NEGOTIATION2Asiya Javayant
1025Izzy N WaycottSpain2024-05-16Buckley Miller Wright RENEWAL31Stephen Shaw
1026Greenwood F TollnerCanada2024-05-16Feiner Bros UNQUALIFIED72Ioni Bowcher
1027Salvatore E MacleadRussia2024-05-08Morlong Associates RENEWAL49Bernardo Dominic
1028Faith R NickaItaly2024-05-14Rangoni Of Florence NEW68Ivan Magalhaes
1029Wickens C StockhamIndia2024-05-15King, Christopher A Esq NEGOTIATION12Bernardo Dominic
1030Aditya A DilliardRussia2024-05-07Rousseaux, Michael Esq NEW60Asiya Javayant
1031Arvin E VocelkaRussia2024-05-03Rousseaux, Michael Esq UNQUALIFIED23Onyama Limba
1032Sinclair B FlosiGermany2024-05-26King, Christopher A Esq QUALIFIED67Ioni Bowcher
1033Jennifer Q WaycottBrazil2024-04-28Chapman, Ross E Esq RENEWAL95Amy Elsner
1034Costa L CampainAustralia2024-05-07Commercial Press QUALIFIED66Asiya Javayant
1035Ivar R VenereCanada2024-05-07Printing Dimensions NEGOTIATION36Elwin Sharvill
1036Ashley Z WieserGermany2024-05-25Morlong Associates UNQUALIFIED16Asiya Javayant
1037Greenwood M GlickUnited Kingdom2024-05-15Printing Dimensions UNQUALIFIED73Ioni Bowcher
1038Ivar U FerenczBrazil2024-04-29Rangoni Of Florence QUALIFIED49Anna Fali
1039Antonio P RutaJapan2024-05-23Chapman, Ross E Esq UNQUALIFIED88Stephen Shaw
1040Leja R OldroydArgentina2024-05-23King, Christopher A Esq NEW54Stephen Shaw
1041Jefferson X MacleadCanada2024-05-20Chemel, James L Cpa UNQUALIFIED33Asiya Javayant
1042Stacey J FerenczIndia2024-05-19Rousseaux, Michael Esq PROPOSAL5Anna Fali
1043Aditya B GauchoCanada2024-05-11Chemel, James L Cpa UNQUALIFIED21Asiya Javayant
1044Alejandro R PerinIndia2024-05-14Buckley Miller Wright QUALIFIED4Asiya Javayant
1045Isabel J RoysterCanada2024-04-29Feiner Bros PROPOSAL3Asiya Javayant
1046Kadeem O MacleadGermany2024-05-02Truhlar And Truhlar Attys UNQUALIFIED13Bernardo Dominic
1047Leon T FigeroaArgentina2024-05-18Rousseaux, Michael Esq NEGOTIATION10Ivan Magalhaes
1048Clifford K RulapaughAustralia2024-05-04Chanay, Jeffrey A Esq NEW97Elwin Sharvill
1049Nicolas L IturbideItaly2024-05-23Rousseaux, Michael Esq RENEWAL90Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Misaki Z KuskoUnited KingdomOnyama Limba RENEWAL
Emily U MaletFranceStephen Shaw UNQUALIFIED
Smith M CaudyItalyElwin Sharvill UNQUALIFIED
Aika T OstroskyIndiaOnyama Limba QUALIFIED
Aika A FlosiAustraliaBernardo Dominic UNQUALIFIED
David T KuskoIndiaOnyama Limba NEGOTIATION
Maria M NickaFranceAmy Elsner RENEWAL
Maisha M DarakjyJapanXuxue Feng UNQUALIFIED
Smith I AmigonUnited KingdomOnyama Limba NEW
Munro P VenereFranceAsiya Javayant RENEWAL
Kaitlin I FigeroaItalyElwin Sharvill UNQUALIFIED
Aditya N StockhamBrazilAmy Elsner NEGOTIATION
Kadeem Q OldroydJapanAsiya Javayant UNQUALIFIED
Kaitlin V CaldareraUnited KingdomAsiya Javayant UNQUALIFIED
Kadeem W FigeroaItalyBernardo Dominic NEW
Costa X RimUnited KingdomIvan Magalhaes NEGOTIATION
Jennifer L WieserBrazilXuxue Feng QUALIFIED
Aditya X MaletJapanOnyama Limba PROPOSAL
Julie G RoysterBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois Y OstroskyJapanAnna Fali PROPOSAL
Claire C MaletIndiaElwin Sharvill NEW
Sinclair E DarakjyBrazilAmy Elsner NEGOTIATION
Emily W StockhamCanadaStephen Shaw PROPOSAL
Emily D MaletArgentinaStephen Shaw UNQUALIFIED
James A GauchoArgentinaIoni Bowcher NEW
Darci H KuskoRussiaBernardo Dominic NEW
Adams L PaprockiArgentinaStephen Shaw QUALIFIED
Mayumi T WieserFranceAsiya Javayant RENEWAL
Nicolas Y CampainBrazilOnyama Limba RENEWAL
Francesco B AlbaresFranceAsiya Javayant RENEWAL
Darci D BriddickJapanIvan Magalhaes NEW
Cody F OldroydCanadaIoni Bowcher QUALIFIED
Greenwood J GillianUnited KingdomAsiya Javayant RENEWAL
Maisha S GlickCanadaAmy Elsner RENEWAL
Costa G KuskoBrazilOnyama Limba UNQUALIFIED
Jennifer L VocelkaIndiaAnna Fali UNQUALIFIED
Claire C InouyeJapanAnna Fali NEGOTIATION
Aruna E MaletIndiaIvan Magalhaes RENEWAL
Stacey A OstroskyBrazilAnna Fali PROPOSAL
Cody E WhobreyIndiaBernardo Dominic QUALIFIED
Aika V SlusarskiJapanElwin Sharvill PROPOSAL
Wickens V AmigonUnited KingdomElwin Sharvill PROPOSAL
Francesco E SchemmerFranceIvan Magalhaes NEGOTIATION
Rodrigues J GauchoFranceIvan Magalhaes NEW
Aika W NickaAustraliaAmy Elsner PROPOSAL
Greenwood X AlbaresItalyOnyama Limba NEGOTIATION
Johnson L DoeItalyOnyama Limba RENEWAL
Leon H VenereArgentinaOnyama Limba PROPOSAL
Claire G WhobreyItalyBernardo Dominic UNQUALIFIED
Izzy L IturbideBrazilIoni Bowcher RENEWAL
Frozen Columns
Name
Greenwood I Rulapaugh
Jeanfrancois U Poquette
Jeanfrancois Z Figeroa
Aika C Maclead
Misaki R Darakjy
Morrow W Saylors
Kaitlin T Inouye
Isabel Q Malet
Greenwood Q Glick
Adams V Figeroa
Alejandro K Rim
Morrow I Royster
Leja C Wieser
Ashley Q Foller
Aruna M Schemmer
Aika B Figeroa
Leon P Malet
Silvio F Butt
Sinclair X Iturbide
Kaitlin G Bolognia
Ivar Z Darakjy
Ashley O Perin
Aruna R Rulapaugh
Arvin N Albares
Greenwood S Caldarera
Julie J Paprocki
Tony G Campain
Claire W Ferencz
Greenwood L Inouye
Maria A Shinko
Faith Y Rim
Rodrigues H Nicka
Mayumi O Maclead
Ivar M Shinko
Isabel W Ferencz
Faith C Vocelka
Izzy H Paprocki
Wickens W Chui
Jefferson G Amigon
Antonio H Albares
Darci J Darakjy
Kaitlin H Perin
Arvin E Gillian
Tony G Venere
Aditya B Campain
Costa G Doe
Ivar B Shinko
Antonio B Morasca
Darci Y Flosi
Faith W Inouye
IdCountryDate
1000Brazil2024-05-21
1001United Kingdom2024-05-13
1002Argentina2024-05-02
1003Australia2024-05-14
1004Argentina2024-05-18
1005Canada2024-05-06
1006Canada2024-05-07
1007Italy2024-05-03
1008Argentina2024-05-01
1009India2024-05-19
1010Brazil2024-05-09
1011Russia2024-05-19
1012Australia2024-05-26
1013United Kingdom2024-04-28
1014France2024-05-27
1015Australia2024-05-10
1016Brazil2024-05-08
1017Australia2024-05-22
1018Brazil2024-04-28
1019Brazil2024-04-30
1020Russia2024-05-17
1021India2024-05-26
1022Russia2024-05-15
1023Argentina2024-05-27
1024France2024-05-25
1025Brazil2024-05-19
1026Brazil2024-05-19
1027Canada2024-05-07
1028France2024-05-27
1029Argentina2024-05-15
1030Brazil2024-05-06
1031United Kingdom2024-05-02
1032India2024-05-02
1033Russia2024-04-28
1034Italy2024-05-25
1035Germany2024-05-02
1036Australia2024-05-17
1037Japan2024-05-26
1038India2024-05-12
1039Canada2024-04-28
1040Japan2024-04-29
1041Brazil2024-05-11
1042Spain2024-05-10
1043Italy2024-05-15
1044Canada2024-05-21
1045Australia2024-05-14
1046Australia2024-05-03
1047India2024-05-17
1048United Kingdom2024-05-16
1049France2024-05-19

On-Demand Data

NameIdCountryDate
Greenwood Y Kolmetz1000Australia2024-05-27
Antonio J Stenseth1001Australia2024-05-23
Jones Z Campain1002Russia2024-05-01
Maisha O Oldroyd1003Germany2024-05-02
Juan J Doe1004France2024-05-23
Murillo X Paprocki1005Italy2024-05-26
Claire Z Gillian1006Italy2024-04-30
David A Waycott1007Brazil2024-05-10
Kaitlin A Stockham1008Japan2024-05-16
Francesco C Ruta1009Brazil2024-05-23
Nicolas E Venere1010Argentina2024-05-01
Claire C Gaucho1011Australia2024-05-15
Deepesh F Royster1012Italy2024-05-19
Wickens G Inouye1013Japan2024-05-12
Silvio Y Amigon1014Canada2024-05-02
Jeanfrancois Z Maclead1015Australia2024-05-20
Jones J Ferencz1016Canada2024-05-04
Mayumi H Albares1017United Kingdom2024-05-05
Aruna V Briddick1018Argentina2024-05-10
David X Nicka1019Argentina2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci V BologniaUnited KingdomElwin Sharvill NEW
Nicolas B GarufiBrazilStephen Shaw QUALIFIED
Leon G ShinkoJapanAmy Elsner NEGOTIATION
Adams Z ChuiAustraliaAmy Elsner RENEWAL
David C WaycottCanadaAnna Fali QUALIFIED
Isabel S CaldareraSpainBernardo Dominic QUALIFIED
Aika B SaylorsBrazilElwin Sharvill PROPOSAL
Francesco L CampainBrazilOnyama Limba RENEWAL
Munro O SaylorsRussiaBernardo Dominic RENEWAL
Emily N OstroskyGermanyOnyama Limba NEGOTIATION
Misaki O KuskoBrazilAsiya Javayant PROPOSAL
Silvio Q MaletCanadaXuxue Feng UNQUALIFIED
Emily L PoquetteUnited KingdomIoni Bowcher PROPOSAL
Leja X OstroskyJapanElwin Sharvill RENEWAL
Clifford R MacleadSpainIvan Magalhaes UNQUALIFIED
Faith L RutaFranceStephen Shaw PROPOSAL
Morrow K FigeroaFranceStephen Shaw NEW
Aika E WaycottGermanyIvan Magalhaes RENEWAL
Aika W NestleBrazilXuxue Feng QUALIFIED
Silvio Y SaylorsRussiaBernardo Dominic NEW
James O GauchoRussiaStephen Shaw PROPOSAL
Leja J DilliardRussiaElwin Sharvill QUALIFIED
Aika J MaletFranceXuxue Feng NEW
Murillo H NestleBrazilXuxue Feng NEGOTIATION
Deepesh N PaprockiIndiaIoni Bowcher PROPOSAL
Clifford T BologniaAustraliaElwin Sharvill NEW
Rodrigues Y FigeroaArgentinaIvan Magalhaes QUALIFIED
Leon C PerinAustraliaAmy Elsner QUALIFIED
Chavez O BriddickAustraliaIvan Magalhaes UNQUALIFIED
Morrow L VenereGermanyXuxue Feng RENEWAL
Leon W FlosiUnited KingdomAmy Elsner QUALIFIED
Mujtaba Y CaudyCanadaAmy Elsner NEW
Murillo C AmigonItalyXuxue Feng UNQUALIFIED
Morrow U MarrierSpainStephen Shaw QUALIFIED
Munro T ButtCanadaBernardo Dominic NEGOTIATION
Claire Y MarrierCanadaAmy Elsner NEW
Smith C ButtIndiaXuxue Feng QUALIFIED
Francesco P RutaArgentinaAsiya Javayant RENEWAL
Mujtaba U MarrierGermanyOnyama Limba UNQUALIFIED
Julie E DarakjyBrazilIvan 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>