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 N VenereRussiaBernardo Dominic QUALIFIED
Izzy G VocelkaBrazilIoni Bowcher RENEWAL
Nicolas Z KuskoJapanIoni Bowcher NEW
Faith L BologniaSpainStephen Shaw QUALIFIED
Misaki Q WhobreyFranceIoni Bowcher UNQUALIFIED
Chavez P MorascaIndiaXuxue Feng NEW
Antonio S DilliardAustraliaStephen Shaw QUALIFIED
Cody H CampainIndiaAmy Elsner UNQUALIFIED
Sinclair E DoeBrazilOnyama Limba QUALIFIED
David M RulapaughGermanyAsiya Javayant QUALIFIED
Smith Y MarrierAustraliaAnna Fali PROPOSAL
Greenwood R MacleadAustraliaIvan Magalhaes NEW
Morrow D GillianCanadaIoni Bowcher NEW
Claire S SchemmerCanadaOnyama Limba UNQUALIFIED
Darci T MorascaItalyStephen Shaw NEGOTIATION
Isabel F PoquetteGermanyXuxue Feng UNQUALIFIED
Francesco T MaletUnited KingdomAsiya Javayant QUALIFIED
Mayumi U WieserRussiaAsiya Javayant NEGOTIATION
Jefferson X ShinkoArgentinaAsiya Javayant QUALIFIED
Kadeem Q PoquetteIndiaStephen Shaw QUALIFIED
Chavez H NestleJapanElwin Sharvill NEGOTIATION
Sinclair V WhobreySpainStephen Shaw PROPOSAL
Antonio Y SchemmerBrazilOnyama Limba NEGOTIATION
Rodrigues U CaudyRussiaStephen Shaw RENEWAL
Jennifer U GillianUnited KingdomAsiya Javayant RENEWAL
Maisha Q ShinkoCanadaStephen Shaw RENEWAL
Izzy H CaudyIndiaStephen Shaw NEW
Maria E BowleyUnited KingdomXuxue Feng UNQUALIFIED
Isabel U SlusarskiAustraliaElwin Sharvill RENEWAL
Isabel E WaycottBrazilIoni Bowcher UNQUALIFIED
Rodrigues Z KuskoCanadaElwin Sharvill PROPOSAL
Leon D RimItalyStephen Shaw NEGOTIATION
Antonio F MaletArgentinaXuxue Feng NEW
Nicolas P TollnerAustraliaStephen Shaw PROPOSAL
Antonio E DilliardUnited KingdomStephen Shaw NEW
Silvio Y PaprockiUnited KingdomXuxue Feng QUALIFIED
Wickens S BowleyGermanyXuxue Feng PROPOSAL
Jennifer Y BologniaFranceStephen Shaw RENEWAL
Salvatore W FlosiGermanyElwin Sharvill QUALIFIED
Rodrigues D MaletJapanIoni Bowcher NEW
Cody H OldroydBrazilStephen Shaw PROPOSAL
Rodrigues R OldroydIndiaIoni Bowcher NEW
Adams G FlosiFranceElwin Sharvill NEW
Deepesh J MacleadBrazilStephen Shaw RENEWAL
Costa X AlbaresBrazilStephen Shaw UNQUALIFIED
Arvin G GillianBrazilElwin Sharvill PROPOSAL
Octavia O MarrierJapanBernardo Dominic UNQUALIFIED
Leon W DoeSpainIoni Bowcher NEW
Juan J AlbaresArgentinaOnyama Limba PROPOSAL
Jones G PoquetteAustraliaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Isabel U FigeroaArgentinaBernardo Dominic NEW
Sinclair O CaldareraAustraliaAnna Fali PROPOSAL
Alejandro N FollerIndiaIvan Magalhaes NEGOTIATION
Isabel I GarufiItalyAnna Fali RENEWAL
Nicolas B AmigonIndiaOnyama Limba PROPOSAL
Clifford E FlosiArgentinaAmy Elsner QUALIFIED
Mayumi Z OstroskyFranceStephen Shaw QUALIFIED
Clifford B GlickFranceAsiya Javayant PROPOSAL
Isabel M FollerFranceElwin Sharvill PROPOSAL
Jones J FlosiAustraliaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody W AmigonBrazil2024-06-04Rousseaux, Michael Esq NEW63Asiya Javayant
1001Ricardo T FigeroaBrazil2024-06-08Chemel, James L Cpa NEW85Ioni Bowcher
1002Tony F PaprockiGermany2024-05-30Chanay, Jeffrey A Esq QUALIFIED78Ioni Bowcher
1003Aditya S PaprockiJapan2024-06-11Commercial Press QUALIFIED22Onyama Limba
1004Aditya O MacleadItaly2024-06-10Rousseaux, Michael Esq UNQUALIFIED31Ivan Magalhaes
1005Mujtaba X GillianAustralia2024-06-03Commercial Press PROPOSAL81Ivan Magalhaes
1006Julie Y FlosiItaly2024-06-07Feltz Printing Service NEGOTIATION56Elwin Sharvill
1007Faith M WieserAustralia2024-06-18Dorl, James J Esq RENEWAL11Ioni Bowcher
1008Stacey L NickaUnited Kingdom2024-05-30Chapman, Ross E Esq NEW47Anna Fali
1009Wickens E ButtJapan2024-06-22Chemel, James L Cpa RENEWAL57Bernardo Dominic
1010Kaitlin L KuskoFrance2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED89Anna Fali
1011Sinclair P VenereCanada2024-05-30King, Christopher A Esq NEGOTIATION84Ioni Bowcher
1012Jeanfrancois N GlickGermany2024-06-21Chapman, Ross E Esq PROPOSAL5Stephen Shaw
1013Costa L ShinkoJapan2024-06-05Buckley Miller Wright QUALIFIED25Asiya Javayant
1014Jefferson L GarufiIndia2024-06-09King, Christopher A Esq UNQUALIFIED60Bernardo Dominic
1015Smith D DoeSpain2024-06-20Morlong Associates QUALIFIED96Stephen Shaw
1016Silvio H DilliardJapan2024-06-07King, Christopher A Esq RENEWAL10Ioni Bowcher
1017Leon Q MacleadItaly2024-05-30Benton, John B Jr RENEWAL67Ioni Bowcher
1018Cody M MorascaFrance2024-06-16Feltz Printing Service NEGOTIATION52Asiya Javayant
1019Leon E KolmetzArgentina2024-06-03Morlong Associates NEGOTIATION8Amy Elsner
1020Nicolas N GarufiAustralia2024-06-12Benton, John B Jr RENEWAL86Bernardo Dominic
1021Ricardo W MorascaSpain2024-06-15Dorl, James J Esq UNQUALIFIED62Onyama Limba
1022Salvatore G CaudyAustralia2024-05-26Buckley Miller Wright PROPOSAL63Asiya Javayant
1023Johnson C SlusarskiIndia2024-05-29Commercial Press QUALIFIED85Ivan Magalhaes
1024Kadeem V ButtUnited Kingdom2024-05-28Buckley Miller Wright UNQUALIFIED61Elwin Sharvill
1025Octavia F BowleyBrazil2024-06-18Buckley Miller Wright PROPOSAL34Xuxue Feng
1026Darci Z WaycottItaly2024-06-20Chanay, Jeffrey A Esq UNQUALIFIED56Ioni Bowcher
1027David R NestleArgentina2024-06-10Chapman, Ross E Esq QUALIFIED72Anna Fali
1028Cody P DoeGermany2024-06-19Dorl, James J Esq QUALIFIED76Onyama Limba
1029Salvatore D MacleadFrance2024-06-21Rousseaux, Michael Esq NEGOTIATION99Asiya Javayant
1030James K TollnerSpain2024-06-19Rangoni Of Florence NEW48Xuxue Feng
1031Mujtaba W PerinBrazil2024-06-15Dorl, James J Esq UNQUALIFIED48Bernardo Dominic
1032Greenwood Z ShinkoBrazil2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED75Bernardo Dominic
1033Isabel J KuskoFrance2024-05-29Commercial Press QUALIFIED28Ioni Bowcher
1034Jeanfrancois Q RimCanada2024-05-26Commercial Press UNQUALIFIED36Amy Elsner
1035Faith N GlickItaly2024-06-09Morlong Associates PROPOSAL56Elwin Sharvill
1036Stacey E RutaFrance2024-05-28Rangoni Of Florence QUALIFIED16Xuxue Feng
1037Francesco P KuskoUnited Kingdom2024-06-08Morlong Associates NEGOTIATION50Stephen Shaw
1038Isabel V StockhamAustralia2024-06-19Truhlar And Truhlar Attys RENEWAL49Onyama Limba
1039Morrow I ChuiCanada2024-05-26Buckley Miller Wright QUALIFIED3Asiya Javayant
1040Chavez V PoquetteIndia2024-06-03Chapman, Ross E Esq UNQUALIFIED28Amy Elsner
1041Cody J BologniaBrazil2024-06-20King, Christopher A Esq RENEWAL81Elwin Sharvill
1042Arvin R WaycottFrance2024-05-29Rousseaux, Michael Esq NEW2Xuxue Feng
1043Ivar A CaldareraAustralia2024-06-14Rousseaux, Michael Esq UNQUALIFIED70Ivan Magalhaes
1044Chavez V PerinArgentina2024-06-05Printing Dimensions UNQUALIFIED76Bernardo Dominic
1045Kadeem E RimItaly2024-06-10King, Christopher A Esq UNQUALIFIED49Xuxue Feng
1046Arvin E SlusarskiUnited Kingdom2024-06-11Dorl, James J Esq RENEWAL20Amy Elsner
1047Ashley V SergiBrazil2024-06-13Feltz Printing Service PROPOSAL50Asiya Javayant
1048Antonio E SchemmerBrazil2024-06-12Dorl, James J Esq PROPOSAL89Amy Elsner
1049David I ChuiFrance2024-06-15Rousseaux, Michael Esq RENEWAL38Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Chavez O BriddickSpainStephen Shaw QUALIFIED
Francesco V OldroydArgentinaIvan Magalhaes NEW
Juan B TollnerAustraliaStephen Shaw PROPOSAL
Francesco Z PoquetteSpainOnyama Limba RENEWAL
Octavia P GlickJapanAmy Elsner QUALIFIED
Julie B KuskoGermanyBernardo Dominic NEGOTIATION
Morrow M MacleadJapanAsiya Javayant UNQUALIFIED
Ashley J OstroskyItalyElwin Sharvill NEGOTIATION
Jennifer H WhobreyBrazilAmy Elsner NEGOTIATION
Darci T GarufiFranceBernardo Dominic PROPOSAL
Morrow J DoeFranceOnyama Limba PROPOSAL
Aditya J OstroskyAustraliaIoni Bowcher UNQUALIFIED
Greenwood S GillianFranceIoni Bowcher NEGOTIATION
Tony C ButtUnited KingdomAsiya Javayant QUALIFIED
Mujtaba Z CaudyItalyStephen Shaw NEGOTIATION
Chavez J BowleyRussiaStephen Shaw UNQUALIFIED
Julie Y IturbideRussiaElwin Sharvill UNQUALIFIED
Nicolas J MaletCanadaAmy Elsner NEW
Leon A NestleFranceIoni Bowcher NEGOTIATION
Leja W VocelkaRussiaAsiya Javayant RENEWAL
Misaki N FollerJapanStephen Shaw NEGOTIATION
Deepesh A PaprockiRussiaIoni Bowcher NEW
Cody J BologniaUnited KingdomStephen Shaw NEGOTIATION
Octavia G IturbideSpainIoni Bowcher NEGOTIATION
Jennifer T ButtUnited KingdomAnna Fali NEGOTIATION
Arvin N CaldareraCanadaOnyama Limba UNQUALIFIED
Chavez E GauchoRussiaAmy Elsner QUALIFIED
Murillo P AmigonFranceBernardo Dominic NEW
Wickens H TollnerCanadaOnyama Limba UNQUALIFIED
Mujtaba Q ChuiItalyOnyama Limba PROPOSAL
Maisha H StensethIndiaStephen Shaw NEGOTIATION
Aruna O RutaItalyAnna Fali PROPOSAL
Rodrigues E DilliardArgentinaIvan Magalhaes UNQUALIFIED
Tony G DarakjyFranceIoni Bowcher NEW
Morrow R RimAustraliaXuxue Feng PROPOSAL
Cody M GarufiBrazilXuxue Feng UNQUALIFIED
Salvatore W AmigonBrazilXuxue Feng PROPOSAL
Ricardo B RimCanadaStephen Shaw QUALIFIED
Murillo Q BriddickBrazilAmy Elsner QUALIFIED
Costa Z TollnerJapanXuxue Feng UNQUALIFIED
Arvin O InouyeIndiaIvan Magalhaes RENEWAL
Leon P StockhamCanadaXuxue Feng QUALIFIED
Munro O NickaFranceAmy Elsner RENEWAL
Deepesh M AmigonFranceAnna Fali NEW
Octavia I NickaFranceXuxue Feng UNQUALIFIED
Arvin J DilliardRussiaAnna Fali PROPOSAL
Leja X VocelkaUnited KingdomIoni Bowcher RENEWAL
Cody K BriddickUnited KingdomStephen Shaw PROPOSAL
Greenwood D FollerIndiaOnyama Limba NEGOTIATION
Francesco R StensethIndiaIvan Magalhaes QUALIFIED
Frozen Columns
Name
Ricardo P Tollner
Aruna P Paprocki
Salvatore R Kusko
Octavia N Foller
Clifford K Vocelka
Greenwood H Bolognia
Francesco C Nestle
Jones Z Butt
Izzy I Glick
Costa D Maclead
David G Malet
Octavia A Dilliard
David A Malet
Octavia L Slusarski
Misaki U Morasca
Jennifer P Bolognia
Izzy A Gillian
Greenwood G Poquette
Julie P Malet
Emily G Ostrosky
Arvin X Doe
Rodrigues T Rim
Kadeem E Flosi
Smith H Schemmer
Clifford C Wieser
James J Rulapaugh
Juan U Saylors
Jefferson H Iturbide
Costa Q Malet
Darci X Briddick
Aditya S Stockham
Alejandro V Saylors
Aruna H Rim
Darci C Slusarski
Cody X Butt
Murillo R Saylors
Nicolas N Glick
Sinclair C Marrier
Julie V Garufi
Tony K Kusko
Mujtaba G Darakjy
Julie D Venere
Sinclair E Shinko
Morrow C Amigon
Ashley V Darakjy
Jeanfrancois H Doe
Julie O Amigon
Darci A Vocelka
Jennifer N Campain
Octavia V Butt
IdCountryDate
1000Italy2024-05-30
1001India2024-05-27
1002Japan2024-06-10
1003Italy2024-06-08
1004Japan2024-06-19
1005India2024-06-02
1006Australia2024-05-25
1007Germany2024-06-15
1008Canada2024-06-23
1009Argentina2024-06-10
1010France2024-06-08
1011Italy2024-06-05
1012Spain2024-06-17
1013India2024-06-03
1014India2024-06-15
1015Japan2024-05-26
1016France2024-06-08
1017Japan2024-06-03
1018Germany2024-06-01
1019Australia2024-06-03
1020Italy2024-06-22
1021France2024-06-09
1022Argentina2024-06-05
1023Russia2024-06-22
1024Canada2024-06-12
1025Japan2024-06-16
1026Australia2024-06-18
1027United Kingdom2024-06-20
1028India2024-06-17
1029Spain2024-06-14
1030Russia2024-05-25
1031United Kingdom2024-06-15
1032Italy2024-06-04
1033Russia2024-06-09
1034Argentina2024-06-10
1035United Kingdom2024-06-23
1036Canada2024-06-11
1037India2024-06-01
1038Russia2024-06-08
1039Canada2024-06-20
1040Brazil2024-05-31
1041Italy2024-06-12
1042Russia2024-06-19
1043Australia2024-06-12
1044India2024-06-02
1045Italy2024-06-03
1046Canada2024-06-01
1047India2024-06-22
1048Russia2024-05-25
1049India2024-06-08

On-Demand Data

NameIdCountryDate
Chavez S Flosi1000France2024-06-15
Munro I Caldarera1001Japan2024-06-20
Jeanfrancois N Oldroyd1002Australia2024-05-30
Aruna F Briddick1003Russia2024-06-23
Chavez X Inouye1004Brazil2024-06-01
Maisha P Morasca1005Australia2024-06-18
Ricardo X Nicka1006United Kingdom2024-06-01
Misaki R Bowley1007Australia2024-06-17
Tony D Chui1008Italy2024-05-29
Silvio H Glick1009Germany2024-06-16
Rodrigues A Rulapaugh1010Brazil2024-06-21
Clifford P Gaucho1011Spain2024-06-19
Francesco X Campain1012Russia2024-06-19
Juan J Maclead1013Canada2024-06-20
Cody Q Saylors1014Brazil2024-06-10
Chavez A Bolognia1015Spain2024-06-16
Misaki L Stockham1016Spain2024-06-04
Greenwood C Albares1017Australia2024-06-04
Emily G Glick1018India2024-06-06
Smith I Wieser1019Australia2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson U FerenczUnited KingdomAnna Fali UNQUALIFIED
Costa D CaldareraItalyAnna Fali NEGOTIATION
Aditya P OldroydAustraliaXuxue Feng NEGOTIATION
David H NestleIndiaOnyama Limba RENEWAL
Stacey B PerinItalyElwin Sharvill QUALIFIED
Murillo O DoeBrazilBernardo Dominic NEGOTIATION
Salvatore B IturbideGermanyAsiya Javayant RENEWAL
Deepesh U NestleGermanyIoni Bowcher NEGOTIATION
Ricardo B NickaFranceIvan Magalhaes NEW
Misaki J RoysterJapanIoni Bowcher PROPOSAL
Sinclair U PerinFranceStephen Shaw NEW
Ivar H MacleadGermanyOnyama Limba UNQUALIFIED
Misaki G FlosiGermanyIoni Bowcher UNQUALIFIED
Murillo U SaylorsSpainAnna Fali PROPOSAL
Jones J CaudyIndiaAmy Elsner NEW
Sinclair N InouyeCanadaAsiya Javayant PROPOSAL
Kadeem U AmigonArgentinaOnyama Limba QUALIFIED
Julie M StensethRussiaStephen Shaw PROPOSAL
Octavia I VocelkaAustraliaXuxue Feng NEGOTIATION
Mayumi N RulapaughArgentinaElwin Sharvill QUALIFIED
Jones Z SchemmerCanadaBernardo Dominic NEW
Ricardo Y WhobreyBrazilIvan Magalhaes UNQUALIFIED
Chavez C KuskoAustraliaElwin Sharvill RENEWAL
Aditya E MaletFranceAsiya Javayant QUALIFIED
Stacey R GarufiItalyElwin Sharvill NEGOTIATION
Johnson X MaletSpainIvan Magalhaes UNQUALIFIED
Ricardo M MacleadArgentinaAmy Elsner UNQUALIFIED
Leon Q ChuiSpainStephen Shaw UNQUALIFIED
Morrow A WieserJapanElwin Sharvill UNQUALIFIED
Chavez R DoeCanadaXuxue Feng QUALIFIED
Kaitlin T PoquetteArgentinaStephen Shaw UNQUALIFIED
Julie L TollnerArgentinaIvan Magalhaes UNQUALIFIED
Clifford G MarrierBrazilAnna Fali NEGOTIATION
Julie J OldroydRussiaXuxue Feng UNQUALIFIED
Johnson B PerinCanadaStephen Shaw NEGOTIATION
Jefferson G OstroskyUnited KingdomIoni Bowcher RENEWAL
Jefferson J NickaUnited KingdomAmy Elsner PROPOSAL
Antonio X NickaRussiaXuxue Feng UNQUALIFIED
Tony S IturbideFranceOnyama Limba QUALIFIED
Silvio I WhobreyUnited KingdomStephen Shaw UNQUALIFIED

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