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
Mayumi K RutaUnited KingdomOnyama Limba UNQUALIFIED
Emily J SchemmerIndiaOnyama Limba PROPOSAL
Aika L GlickItalyAsiya Javayant RENEWAL
Jones G GillianFranceOnyama Limba QUALIFIED
Greenwood S SaylorsIndiaAmy Elsner UNQUALIFIED
Emily I GillianItalyIoni Bowcher PROPOSAL
Emily M FigeroaIndiaAmy Elsner NEGOTIATION
Kaitlin Q SergiBrazilXuxue Feng PROPOSAL
Claire T KuskoFranceBernardo Dominic NEGOTIATION
Isabel U TollnerGermanyAsiya Javayant RENEWAL
Cody R PerinSpainIoni Bowcher PROPOSAL
Leja D VenereAustraliaBernardo Dominic RENEWAL
Izzy T MorascaIndiaAnna Fali RENEWAL
Salvatore U RimItalyOnyama Limba NEGOTIATION
Jefferson F DoeBrazilIvan Magalhaes PROPOSAL
David P StensethItalyElwin Sharvill NEW
David F FollerJapanXuxue Feng UNQUALIFIED
Ivar N SaylorsFranceElwin Sharvill UNQUALIFIED
Sinclair T BologniaFranceIvan Magalhaes NEW
Jones V RutaItalyXuxue Feng PROPOSAL
Aditya C KolmetzItalyBernardo Dominic PROPOSAL
Chavez O PoquetteUnited KingdomElwin Sharvill NEGOTIATION
Johnson K RimRussiaAmy Elsner NEGOTIATION
Emily T InouyeAustraliaOnyama Limba NEGOTIATION
Isabel Z OstroskyJapanStephen Shaw NEW
Darci E ButtFranceAnna Fali QUALIFIED
Aditya I GlickCanadaOnyama Limba UNQUALIFIED
Izzy L FigeroaAustraliaOnyama Limba NEGOTIATION
Rodrigues M IturbideRussiaIvan Magalhaes RENEWAL
Sinclair P BowleyAustraliaAmy Elsner RENEWAL
Misaki W ChuiCanadaIoni Bowcher RENEWAL
Smith Q PaprockiArgentinaIvan Magalhaes QUALIFIED
Aruna S CaldareraUnited KingdomElwin Sharvill NEW
Mayumi U PoquetteIndiaXuxue Feng UNQUALIFIED
Silvio C NestleBrazilBernardo Dominic RENEWAL
Aruna X TollnerItalyIoni Bowcher NEW
Ricardo L ShinkoBrazilElwin Sharvill QUALIFIED
Octavia E PerinRussiaAmy Elsner NEGOTIATION
Juan V WaycottItalyAnna Fali RENEWAL
Johnson V RulapaughJapanIoni Bowcher NEGOTIATION
Greenwood A MorascaSpainBernardo Dominic UNQUALIFIED
Emily M ChuiCanadaBernardo Dominic RENEWAL
Smith O ShinkoGermanyAnna Fali NEGOTIATION
Johnson R CaldareraItalyStephen Shaw PROPOSAL
Tony M GauchoSpainIoni Bowcher QUALIFIED
Mayumi C WieserAustraliaAnna Fali UNQUALIFIED
Maisha E CampainCanadaStephen Shaw PROPOSAL
Octavia S PerinBrazilAmy Elsner UNQUALIFIED
Aruna R RoysterSpainStephen Shaw UNQUALIFIED
Jones Y CaudyFranceAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Wickens I NickaArgentinaAmy Elsner NEW
Mayumi C CaudySpainAmy Elsner RENEWAL
Kadeem X PaprockiGermanyAmy Elsner NEGOTIATION
Ashley V DilliardBrazilAmy Elsner PROPOSAL
Ashley C WieserAustraliaAnna Fali NEW
Smith L ButtSpainIoni Bowcher QUALIFIED
Isabel C DarakjyArgentinaAmy Elsner PROPOSAL
Jeanfrancois Z FollerSpainAsiya Javayant NEW
Juan W ButtAustraliaElwin Sharvill PROPOSAL
Silvio O NickaGermanyIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois W DoeGermany2024-06-09Printing Dimensions NEW67Stephen Shaw
1001James F GarufiJapan2024-05-26Chapman, Ross E Esq RENEWAL34Elwin Sharvill
1002Claire O CaldareraSpain2024-06-22Chanay, Jeffrey A Esq NEW24Bernardo Dominic
1003Juan O FerenczArgentina2024-06-19Feiner Bros NEW7Stephen Shaw
1004Tony W CampainSpain2024-06-10Truhlar And Truhlar Attys PROPOSAL94Stephen Shaw
1005Deepesh Y PerinArgentina2024-05-25Commercial Press PROPOSAL68Xuxue Feng
1006Nicolas U FollerCanada2024-06-05Feltz Printing Service NEW54Stephen Shaw
1007Johnson B PoquetteArgentina2024-06-14Rousseaux, Michael Esq UNQUALIFIED75Stephen Shaw
1008David R FigeroaSpain2024-06-06Truhlar And Truhlar Attys RENEWAL63Ivan Magalhaes
1009Emily M RoysterSpain2024-06-15Chapman, Ross E Esq PROPOSAL3Anna Fali
1010Tony C SaylorsIndia2024-06-13Rangoni Of Florence UNQUALIFIED18Bernardo Dominic
1011Salvatore C FigeroaArgentina2024-06-11Rousseaux, Michael Esq RENEWAL94Bernardo Dominic
1012Mayumi M RulapaughIndia2024-06-03Chemel, James L Cpa QUALIFIED11Bernardo Dominic
1013Claire M AlbaresBrazil2024-06-20Printing Dimensions QUALIFIED97Ioni Bowcher
1014Aditya O DarakjyArgentina2024-06-13Truhlar And Truhlar Attys NEW26Amy Elsner
1015David F ShinkoItaly2024-06-08Printing Dimensions NEW68Ivan Magalhaes
1016Kaitlin N OldroydGermany2024-06-04Feltz Printing Service QUALIFIED26Amy Elsner
1017Greenwood E BologniaAustralia2024-06-11Chapman, Ross E Esq NEGOTIATION56Asiya Javayant
1018Murillo N GauchoIndia2024-06-02Commercial Press UNQUALIFIED86Amy Elsner
1019Maria Z SergiSpain2024-06-04Feiner Bros NEGOTIATION10Ivan Magalhaes
1020Ricardo A NestleItaly2024-05-24Printing Dimensions RENEWAL37Onyama Limba
1021Francesco G GarufiFrance2024-06-09Chanay, Jeffrey A Esq UNQUALIFIED43Ioni Bowcher
1022Octavia N WhobreyAustralia2024-06-16Printing Dimensions RENEWAL19Xuxue Feng
1023Mayumi C SaylorsCanada2024-05-27Morlong Associates NEW49Elwin Sharvill
1024Adams P PoquetteSpain2024-06-02Chemel, James L Cpa UNQUALIFIED31Ivan Magalhaes
1025Munro B WhobreyItaly2024-06-01Chapman, Ross E Esq PROPOSAL43Amy Elsner
1026Julie Q RimArgentina2024-06-05Chemel, James L Cpa RENEWAL56Bernardo Dominic
1027Leon F SlusarskiFrance2024-06-02Rousseaux, Michael Esq UNQUALIFIED10Xuxue Feng
1028Jefferson C MarrierCanada2024-06-18Printing Dimensions NEW16Amy Elsner
1029Murillo D BologniaBrazil2024-06-04Rousseaux, Michael Esq RENEWAL39Elwin Sharvill
1030Sinclair P RutaItaly2024-05-25Truhlar And Truhlar Attys NEW72Onyama Limba
1031Antonio G StensethGermany2024-06-18Benton, John B Jr UNQUALIFIED72Elwin Sharvill
1032Emily I FlosiUnited Kingdom2024-05-26Morlong Associates RENEWAL16Anna Fali
1033Emily W PerinIndia2024-05-31Buckley Miller Wright QUALIFIED3Amy Elsner
1034Chavez H GillianGermany2024-06-20Chapman, Ross E Esq NEW37Bernardo Dominic
1035Maria Q InouyeSpain2024-06-15Rousseaux, Michael Esq RENEWAL29Anna Fali
1036Ricardo C FlosiCanada2024-06-03Buckley Miller Wright RENEWAL20Bernardo Dominic
1037Chavez U FlosiAustralia2024-06-22Rousseaux, Michael Esq PROPOSAL65Asiya Javayant
1038Mujtaba Z InouyeJapan2024-06-15Rousseaux, Michael Esq RENEWAL73Bernardo Dominic
1039Antonio H DarakjyUnited Kingdom2024-06-06Buckley Miller Wright NEW43Onyama Limba
1040Rodrigues S BowleyAustralia2024-06-17Feiner Bros RENEWAL68Amy Elsner
1041Francesco N GauchoUnited Kingdom2024-06-13Dorl, James J Esq UNQUALIFIED29Ioni Bowcher
1042Stacey P KolmetzIndia2024-05-31Rangoni Of Florence QUALIFIED31Onyama Limba
1043Cody X FollerSpain2024-06-14Dorl, James J Esq NEW38Stephen Shaw
1044Wickens D SchemmerGermany2024-05-31Morlong Associates RENEWAL49Bernardo Dominic
1045Deepesh Y DoeItaly2024-06-21King, Christopher A Esq RENEWAL99Elwin Sharvill
1046Aditya R AlbaresBrazil2024-05-29Chapman, Ross E Esq UNQUALIFIED3Onyama Limba
1047Deepesh H BriddickBrazil2024-06-20Chapman, Ross E Esq NEW44Onyama Limba
1048Murillo X ShinkoGermany2024-06-21Rangoni Of Florence NEGOTIATION43Xuxue Feng
1049Aruna P StensethCanada2024-05-30Feiner Bros NEW45Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Isabel Z OldroydAustraliaStephen Shaw NEGOTIATION
Aika N DoeSpainIvan Magalhaes PROPOSAL
Deepesh N SchemmerJapanStephen Shaw RENEWAL
Darci H VenereRussiaOnyama Limba RENEWAL
Jennifer C BriddickBrazilXuxue Feng UNQUALIFIED
Octavia L NestleAustraliaStephen Shaw UNQUALIFIED
Juan U ButtRussiaAmy Elsner QUALIFIED
James Q GillianUnited KingdomXuxue Feng RENEWAL
Chavez R DoeAustraliaAnna Fali NEW
Silvio Q ChuiGermanyAnna Fali UNQUALIFIED
Antonio Y DilliardBrazilElwin Sharvill QUALIFIED
Kadeem M FigeroaSpainOnyama Limba UNQUALIFIED
David W FigeroaArgentinaBernardo Dominic UNQUALIFIED
Sinclair Z PaprockiUnited KingdomIoni Bowcher NEW
Antonio U FlosiCanadaStephen Shaw UNQUALIFIED
Deepesh P VocelkaIndiaAmy Elsner RENEWAL
Nicolas B DilliardAustraliaAsiya Javayant NEGOTIATION
Aika E BowleyAustraliaIoni Bowcher QUALIFIED
Kadeem A RutaBrazilIoni Bowcher NEW
Leon V KuskoFranceAmy Elsner NEGOTIATION
Kadeem I KuskoCanadaElwin Sharvill RENEWAL
Tony E KuskoAustraliaBernardo Dominic NEGOTIATION
Maria M DilliardCanadaAsiya Javayant RENEWAL
Ashley Q DilliardSpainIvan Magalhaes UNQUALIFIED
Salvatore D ShinkoGermanyIoni Bowcher NEW
David R InouyeGermanyIvan Magalhaes NEGOTIATION
Arvin G MaletRussiaIvan Magalhaes PROPOSAL
Silvio H CaldareraItalyXuxue Feng UNQUALIFIED
Faith M WaycottFranceXuxue Feng QUALIFIED
Ricardo I GarufiUnited KingdomBernardo Dominic RENEWAL
Octavia P BowleyRussiaElwin Sharvill RENEWAL
Sinclair L NestleBrazilStephen Shaw RENEWAL
Isabel Q MacleadBrazilIoni Bowcher UNQUALIFIED
Jennifer R OstroskySpainBernardo Dominic RENEWAL
Salvatore V ChuiUnited KingdomOnyama Limba UNQUALIFIED
Jennifer Z FollerFranceIvan Magalhaes NEW
Nicolas T PaprockiAustraliaAsiya Javayant NEW
Antonio R PaprockiFranceElwin Sharvill NEGOTIATION
Johnson G PoquetteBrazilOnyama Limba PROPOSAL
Antonio R ChuiJapanAmy Elsner PROPOSAL
Rodrigues D NickaFranceAnna Fali NEGOTIATION
Francesco D RutaFranceIvan Magalhaes NEGOTIATION
Jefferson L SlusarskiAustraliaBernardo Dominic PROPOSAL
Emily E GauchoGermanyXuxue Feng UNQUALIFIED
Leon T StensethItalyIoni Bowcher NEGOTIATION
Claire R BowleyIndiaAmy Elsner NEGOTIATION
Kadeem O InouyeIndiaIoni Bowcher RENEWAL
Silvio U DoeAustraliaAsiya Javayant RENEWAL
Maria G OstroskyRussiaXuxue Feng PROPOSAL
Kadeem O DilliardJapanBernardo Dominic QUALIFIED
Frozen Columns
Name
Alejandro W Sergi
Salvatore Y Flosi
Jefferson I Glick
Wickens L Nicka
Arvin P Saylors
Johnson H Doe
Adams V Flosi
Rodrigues G Inouye
Clifford Y Albares
Murillo V Saylors
Isabel U Bolognia
Alejandro W Nicka
Mayumi R Kolmetz
Maria D Albares
Mujtaba H Amigon
Aditya J Bolognia
Aditya P Rulapaugh
Kaitlin U Stockham
Juan M Waycott
Izzy Q Sergi
Ricardo S Flosi
Chavez Z Venere
Leon Y Butt
Greenwood B Kusko
Emily K Gillian
Adams Z Royster
Jeanfrancois G Vocelka
Alejandro F Stockham
Kadeem Z Glick
Misaki W Caldarera
Munro J Flosi
Maisha N Bowley
Misaki B Inouye
Smith Z Campain
Juan Z Bowley
Alejandro X Malet
Greenwood R Ostrosky
Johnson F Iturbide
Ricardo G Waycott
Aruna Z Maclead
Mujtaba V Nestle
James K Schemmer
Misaki O Ruta
Leja C Campain
Ashley I Garufi
Stacey I Nicka
Maria L Slusarski
Aruna K Saylors
Claire X Royster
Chavez T Figeroa
IdCountryDate
1000Argentina2024-06-12
1001Brazil2024-06-03
1002Argentina2024-06-21
1003Spain2024-06-06
1004Italy2024-05-25
1005Argentina2024-05-27
1006Spain2024-06-03
1007Brazil2024-06-13
1008Germany2024-06-05
1009India2024-06-01
1010Canada2024-06-14
1011Spain2024-05-24
1012Japan2024-06-12
1013India2024-05-31
1014France2024-06-12
1015Australia2024-05-27
1016Spain2024-06-05
1017Argentina2024-06-22
1018Australia2024-06-03
1019Argentina2024-06-04
1020Australia2024-05-29
1021Argentina2024-05-25
1022Italy2024-06-11
1023Russia2024-06-18
1024Canada2024-05-26
1025Japan2024-06-12
1026Russia2024-06-14
1027Italy2024-06-21
1028Italy2024-05-27
1029Canada2024-06-06
1030Italy2024-05-26
1031Canada2024-05-26
1032United Kingdom2024-06-13
1033United Kingdom2024-06-06
1034Russia2024-05-28
1035Japan2024-05-27
1036Russia2024-05-29
1037Canada2024-06-20
1038France2024-06-05
1039Argentina2024-06-11
1040Brazil2024-06-17
1041France2024-06-05
1042Argentina2024-05-28
1043Germany2024-05-26
1044Germany2024-06-05
1045Japan2024-06-07
1046United Kingdom2024-06-17
1047Russia2024-05-29
1048Brazil2024-06-01
1049Brazil2024-06-21

On-Demand Data

NameIdCountryDate
Leja Q Perin1000India2024-06-12
Darci O Oldroyd1001France2024-06-03
Murillo Q Perin1002Japan2024-06-10
Juan X Malet1003Canada2024-05-29
Julie U Chui1004Germany2024-05-28
Francesco S Perin1005Germany2024-06-08
Silvio I Tollner1006United Kingdom2024-06-03
Francesco K Ruta1007Spain2024-06-13
Maisha T Rulapaugh1008Argentina2024-06-05
Misaki J Tollner1009Canada2024-06-02
Leon E Stenseth1010Russia2024-06-09
Murillo B Malet1011France2024-06-19
Isabel M Doe1012India2024-06-06
Cody E Venere1013United Kingdom2024-06-09
Tony M Caldarera1014Canada2024-06-06
Nicolas P Caudy1015Japan2024-05-25
Sinclair H Ruta1016Spain2024-06-13
Misaki R Bowley1017Italy2024-06-09
Chavez I Saylors1018United Kingdom2024-05-29
Darci W Perin1019Russia2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones I OstroskyArgentinaAnna Fali PROPOSAL
Octavia L PoquetteJapanAnna Fali QUALIFIED
Johnson P CaudyUnited KingdomAmy Elsner UNQUALIFIED
Mujtaba P OldroydIndiaIoni Bowcher RENEWAL
Clifford U MarrierJapanOnyama Limba PROPOSAL
Mayumi S SchemmerItalyAsiya Javayant RENEWAL
Faith U WaycottItalyOnyama Limba UNQUALIFIED
Costa M OldroydItalyAnna Fali QUALIFIED
Deepesh T MorascaItalyXuxue Feng PROPOSAL
Sinclair P OstroskyArgentinaAsiya Javayant RENEWAL
Jennifer J GauchoCanadaXuxue Feng UNQUALIFIED
Stacey I AlbaresBrazilAnna Fali NEW
Silvio O BowleyRussiaElwin Sharvill PROPOSAL
Isabel C DarakjyRussiaIvan Magalhaes NEGOTIATION
Chavez D DarakjyJapanElwin Sharvill UNQUALIFIED
Claire L NestleArgentinaXuxue Feng NEGOTIATION
Claire P KuskoItalyAmy Elsner QUALIFIED
Leon K CaldareraUnited KingdomIoni Bowcher NEW
Leja K GarufiRussiaElwin Sharvill RENEWAL
Arvin Y FlosiUnited KingdomIvan Magalhaes RENEWAL
Wickens O MorascaAustraliaAmy Elsner UNQUALIFIED
Stacey J DarakjyGermanyOnyama Limba QUALIFIED
Misaki D BowleySpainBernardo Dominic RENEWAL
Wickens P KolmetzRussiaXuxue Feng NEGOTIATION
Munro H OstroskyArgentinaXuxue Feng QUALIFIED
Clifford A DilliardUnited KingdomElwin Sharvill NEGOTIATION
Stacey D CaldareraBrazilIvan Magalhaes UNQUALIFIED
Wickens W RutaIndiaAmy Elsner NEGOTIATION
Salvatore T SaylorsRussiaElwin Sharvill NEGOTIATION
Stacey A TollnerCanadaBernardo Dominic UNQUALIFIED
Wickens K BowleyIndiaOnyama Limba PROPOSAL
Arvin B NickaRussiaIoni Bowcher PROPOSAL
Mayumi W DilliardUnited KingdomAmy Elsner PROPOSAL
Claire J WhobreyGermanyElwin Sharvill UNQUALIFIED
Johnson P BriddickBrazilElwin Sharvill UNQUALIFIED
Jeanfrancois K WieserGermanyAsiya Javayant RENEWAL
Leja R WaycottSpainBernardo Dominic PROPOSAL
Julie Q FlosiItalyIoni Bowcher RENEWAL
Munro J CaudyUnited KingdomIoni Bowcher RENEWAL
Emily S InouyeGermanyAnna Fali 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>