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
Deepesh I PerinFranceAnna Fali RENEWAL
Isabel X SaylorsJapanIoni Bowcher QUALIFIED
Octavia N VenereUnited KingdomXuxue Feng NEW
Murillo G VenereCanadaOnyama Limba PROPOSAL
Francesco I DilliardSpainElwin Sharvill NEW
Tony U WieserCanadaXuxue Feng UNQUALIFIED
Costa A SlusarskiBrazilAmy Elsner QUALIFIED
Juan E OstroskySpainElwin Sharvill QUALIFIED
Salvatore Y MacleadJapanStephen Shaw PROPOSAL
Misaki Z GauchoBrazilElwin Sharvill QUALIFIED
Mayumi N StensethJapanOnyama Limba UNQUALIFIED
Faith O SchemmerFranceOnyama Limba UNQUALIFIED
Antonio O GlickBrazilBernardo Dominic PROPOSAL
Nicolas Y SergiJapanAnna Fali NEW
James U WaycottAustraliaAnna Fali PROPOSAL
Costa P OstroskyArgentinaIvan Magalhaes RENEWAL
David E SchemmerUnited KingdomIoni Bowcher NEW
Costa I WieserUnited KingdomAnna Fali NEW
Claire E ChuiIndiaAsiya Javayant PROPOSAL
Aika J ChuiFranceBernardo Dominic QUALIFIED
Izzy X VocelkaJapanAmy Elsner NEW
Jennifer T DilliardItalyIvan Magalhaes NEW
Juan G CaudyGermanyAmy Elsner NEGOTIATION
Chavez Z MaletIndiaIvan Magalhaes NEGOTIATION
Murillo Z FigeroaIndiaOnyama Limba PROPOSAL
James K TollnerSpainAnna Fali QUALIFIED
Wickens G CaudySpainXuxue Feng NEGOTIATION
Jones N PerinUnited KingdomIoni Bowcher UNQUALIFIED
Chavez D WaycottAustraliaOnyama Limba RENEWAL
Wickens A FollerBrazilOnyama Limba PROPOSAL
Johnson Y VocelkaUnited KingdomBernardo Dominic QUALIFIED
Munro Q RulapaughCanadaXuxue Feng UNQUALIFIED
Claire N BologniaRussiaAsiya Javayant PROPOSAL
Octavia R RoysterBrazilBernardo Dominic NEGOTIATION
Aruna Z MorascaIndiaElwin Sharvill PROPOSAL
Aditya P DilliardArgentinaStephen Shaw UNQUALIFIED
Sinclair V BowleyRussiaXuxue Feng UNQUALIFIED
Greenwood J RimCanadaBernardo Dominic RENEWAL
Leon I WhobreySpainXuxue Feng QUALIFIED
Deepesh D ShinkoCanadaIoni Bowcher NEGOTIATION
Claire K PaprockiGermanyAsiya Javayant PROPOSAL
Silvio S GarufiArgentinaStephen Shaw RENEWAL
Nicolas K BologniaUnited KingdomAsiya Javayant PROPOSAL
Aika M SergiItalyXuxue Feng NEGOTIATION
Greenwood F KuskoJapanElwin Sharvill QUALIFIED
Aika T NestleJapanOnyama Limba QUALIFIED
Johnson B CaldareraGermanyStephen Shaw RENEWAL
Tony S RoysterRussiaStephen Shaw RENEWAL
Munro E PoquetteAustraliaAnna Fali PROPOSAL
Sinclair Q AmigonBrazilElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ricardo Y MacleadIndiaAsiya Javayant NEGOTIATION
Octavia O AlbaresArgentinaOnyama Limba RENEWAL
Arvin Q SaylorsRussiaBernardo Dominic NEW
Jennifer D CampainItalyAnna Fali RENEWAL
Aruna S GarufiArgentinaXuxue Feng QUALIFIED
Aditya T OstroskyGermanyAsiya Javayant NEGOTIATION
Octavia F DarakjyCanadaIoni Bowcher NEGOTIATION
Ivar P RutaSpainElwin Sharvill PROPOSAL
Octavia L VocelkaIndiaAnna Fali RENEWAL
Sinclair Y InouyeJapanBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan I DarakjyAustralia2024-05-14Buckley Miller Wright NEGOTIATION71Ioni Bowcher
1001Clifford G BriddickItaly2024-05-11Chanay, Jeffrey A Esq QUALIFIED50Onyama Limba
1002Johnson I ButtGermany2024-05-06Benton, John B Jr RENEWAL29Stephen Shaw
1003Alejandro F WaycottSpain2024-05-19Truhlar And Truhlar Attys UNQUALIFIED73Elwin Sharvill
1004Clifford A PoquetteFrance2024-05-24Dorl, James J Esq NEGOTIATION26Ivan Magalhaes
1005Cody H MorascaFrance2024-05-21Rousseaux, Michael Esq RENEWAL2Stephen Shaw
1006Johnson T ChuiFrance2024-05-22Chemel, James L Cpa QUALIFIED29Stephen Shaw
1007Leon K KolmetzBrazil2024-05-04Dorl, James J Esq PROPOSAL11Xuxue Feng
1008Misaki F OldroydRussia2024-05-27Printing Dimensions PROPOSAL8Elwin Sharvill
1009Kaitlin W ChuiItaly2024-05-30Chemel, James L Cpa RENEWAL82Bernardo Dominic
1010Ashley F PerinRussia2024-05-16Rousseaux, Michael Esq PROPOSAL3Xuxue Feng
1011Costa K GillianGermany2024-05-03Benton, John B Jr UNQUALIFIED10Onyama Limba
1012Misaki B RulapaughGermany2024-05-23Chanay, Jeffrey A Esq UNQUALIFIED27Bernardo Dominic
1013Alejandro H BowleyItaly2024-05-28Chanay, Jeffrey A Esq PROPOSAL61Onyama Limba
1014Silvio J FlosiUnited Kingdom2024-05-28Truhlar And Truhlar Attys QUALIFIED1Asiya Javayant
1015Johnson B FigeroaFrance2024-05-18Morlong Associates UNQUALIFIED79Xuxue Feng
1016Darci X SlusarskiItaly2024-05-14Chemel, James L Cpa PROPOSAL30Xuxue Feng
1017Adams L AmigonBrazil2024-05-29Chanay, Jeffrey A Esq QUALIFIED98Ioni Bowcher
1018Sinclair M NestleArgentina2024-05-03King, Christopher A Esq RENEWAL41Stephen Shaw
1019Johnson R MorascaRussia2024-05-26Commercial Press RENEWAL34Anna Fali
1020Aruna D CaudyRussia2024-05-09Feltz Printing Service NEW33Elwin Sharvill
1021Sinclair B PoquetteSpain2024-05-17Morlong Associates RENEWAL78Stephen Shaw
1022Chavez H DoeIndia2024-05-04Chapman, Ross E Esq RENEWAL91Ivan Magalhaes
1023Mujtaba F MaletAustralia2024-05-07Truhlar And Truhlar Attys NEW90Amy Elsner
1024James M InouyeSpain2024-05-11Benton, John B Jr NEW84Stephen Shaw
1025Wickens R MacleadFrance2024-05-13Morlong Associates UNQUALIFIED17Stephen Shaw
1026Maisha A RutaGermany2024-05-26Chemel, James L Cpa UNQUALIFIED97Ivan Magalhaes
1027Morrow U AlbaresIndia2024-05-29Buckley Miller Wright QUALIFIED17Bernardo Dominic
1028Ashley B RoysterCanada2024-05-21Chemel, James L Cpa RENEWAL40Anna Fali
1029Nicolas W PerinArgentina2024-05-05Chanay, Jeffrey A Esq RENEWAL54Amy Elsner
1030Morrow K MarrierBrazil2024-05-19Chapman, Ross E Esq NEGOTIATION22Asiya Javayant
1031Faith Z MorascaJapan2024-05-28Dorl, James J Esq NEGOTIATION90Ioni Bowcher
1032Antonio Z VenereJapan2024-05-25Printing Dimensions NEW20Stephen Shaw
1033Silvio R RoysterGermany2024-05-28Rangoni Of Florence NEW80Onyama Limba
1034James W DilliardIndia2024-05-23Chanay, Jeffrey A Esq RENEWAL58Ioni Bowcher
1035Ivar M StensethAustralia2024-05-10Truhlar And Truhlar Attys PROPOSAL33Ivan Magalhaes
1036Leon P VocelkaJapan2024-05-12Chemel, James L Cpa RENEWAL77Ivan Magalhaes
1037Jefferson D NickaSpain2024-05-03Rousseaux, Michael Esq NEGOTIATION94Ioni Bowcher
1038Kaitlin A FlosiIndia2024-05-22Chapman, Ross E Esq UNQUALIFIED5Anna Fali
1039Faith W CampainFrance2024-05-19Feiner Bros NEGOTIATION27Ivan Magalhaes
1040Sinclair A PaprockiUnited Kingdom2024-05-25Benton, John B Jr NEGOTIATION22Bernardo Dominic
1041Morrow V WhobreyAustralia2024-05-23Morlong Associates QUALIFIED76Asiya Javayant
1042Ivar R RutaSpain2024-05-31Dorl, James J Esq RENEWAL36Anna Fali
1043Costa O StockhamCanada2024-05-13Feltz Printing Service NEGOTIATION38Stephen Shaw
1044Misaki F MacleadRussia2024-05-21Chanay, Jeffrey A Esq UNQUALIFIED36Xuxue Feng
1045Morrow C DoeJapan2024-05-19Chanay, Jeffrey A Esq QUALIFIED4Amy Elsner
1046Misaki R SergiItaly2024-05-12Printing Dimensions RENEWAL71Bernardo Dominic
1047Alejandro V KuskoGermany2024-05-16Benton, John B Jr UNQUALIFIED58Ivan Magalhaes
1048Maisha C RutaGermany2024-05-04Rangoni Of Florence QUALIFIED16Ioni Bowcher
1049Murillo X RutaRussia2024-05-09Feiner Bros QUALIFIED13Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Isabel O FlosiFranceAsiya Javayant PROPOSAL
Jeanfrancois X InouyeSpainOnyama Limba PROPOSAL
Aika M MacleadUnited KingdomAmy Elsner NEGOTIATION
Stacey W IturbideGermanyIvan Magalhaes QUALIFIED
Aika T StockhamJapanIvan Magalhaes PROPOSAL
Aruna F DarakjyRussiaAsiya Javayant NEW
Sinclair S OldroydGermanyAsiya Javayant QUALIFIED
Isabel R GauchoJapanIoni Bowcher QUALIFIED
Clifford L CampainIndiaElwin Sharvill QUALIFIED
Costa O FigeroaFranceAsiya Javayant UNQUALIFIED
Maria G OldroydCanadaStephen Shaw PROPOSAL
Ashley I RoysterItalyElwin Sharvill NEGOTIATION
Sinclair F OldroydIndiaXuxue Feng NEGOTIATION
Johnson L ChuiAustraliaStephen Shaw NEGOTIATION
Julie I TollnerSpainIvan Magalhaes PROPOSAL
Ashley Z DoeUnited KingdomAnna Fali RENEWAL
Murillo O DilliardFranceIvan Magalhaes NEW
Izzy C ChuiFranceAnna Fali NEW
David C CaudyIndiaStephen Shaw NEGOTIATION
Murillo V InouyeSpainAnna Fali QUALIFIED
Kaitlin L ChuiIndiaOnyama Limba PROPOSAL
Salvatore D BriddickFranceIoni Bowcher RENEWAL
Aika G FollerUnited KingdomAsiya Javayant PROPOSAL
Smith N SlusarskiItalyIoni Bowcher PROPOSAL
Kaitlin O WhobreyGermanyOnyama Limba NEGOTIATION
David M GarufiGermanyStephen Shaw NEGOTIATION
Sinclair N RulapaughGermanyElwin Sharvill NEGOTIATION
Emily U FollerJapanIoni Bowcher QUALIFIED
Aruna T FerenczSpainAsiya Javayant QUALIFIED
Emily P OldroydAustraliaIoni Bowcher UNQUALIFIED
Antonio W VenereGermanyIoni Bowcher UNQUALIFIED
Claire V FerenczFranceAnna Fali NEGOTIATION
Darci F StockhamAustraliaAmy Elsner UNQUALIFIED
Johnson M CaldareraBrazilElwin Sharvill NEGOTIATION
Nicolas Z WhobreySpainOnyama Limba RENEWAL
Cody T ChuiCanadaStephen Shaw NEW
Wickens E SaylorsAustraliaAnna Fali RENEWAL
Costa V WieserSpainElwin Sharvill PROPOSAL
Maisha Y BowleyCanadaIoni Bowcher PROPOSAL
Francesco A MaletIndiaIoni Bowcher PROPOSAL
Leon U PaprockiBrazilXuxue Feng QUALIFIED
Clifford P AlbaresArgentinaStephen Shaw QUALIFIED
Silvio O InouyeUnited KingdomAmy Elsner QUALIFIED
David C ShinkoArgentinaOnyama Limba QUALIFIED
Leja B GarufiGermanyIvan Magalhaes NEW
Aditya L TollnerArgentinaStephen Shaw PROPOSAL
Leon W SergiItalyIvan Magalhaes NEGOTIATION
Ivar D CampainGermanyBernardo Dominic UNQUALIFIED
Jeanfrancois R MorascaItalyIvan Magalhaes UNQUALIFIED
Mujtaba P FerenczArgentinaIvan Magalhaes NEW
Frozen Columns
Name
Smith Z Ruta
Isabel D Darakjy
Francesco U Gaucho
Ashley Q Doe
Maisha J Perin
Emily T Caldarera
Isabel C Glick
Jennifer V Malet
Rodrigues K Dilliard
Ricardo O Foller
Smith H Slusarski
Nicolas C Oldroyd
Wickens I Foller
Mayumi V Briddick
Faith D Nestle
Rodrigues P Flosi
David O Saylors
Costa G Slusarski
Arvin O Glick
Izzy X Shinko
Cody B Gillian
Aika Q Ferencz
Isabel O Caldarera
Ivar P Doe
Antonio Q Venere
Mayumi H Bowley
Clifford Y Royster
Ivar R Caldarera
Rodrigues W Foller
Adams H Bowley
Deepesh C Nicka
Aruna A Chui
Jefferson C Dilliard
Sinclair D Marrier
Ricardo M Kolmetz
Francesco G Kusko
Jefferson U Ruta
Aika O Rim
Munro D Rulapaugh
Johnson D Shinko
Nicolas W Sergi
Octavia Q Shinko
Maisha P Poquette
Alejandro F Malet
Jefferson F Waycott
David C Nicka
Adams V Campain
Leja F Slusarski
Johnson Z Schemmer
Arvin X Shinko
IdCountryDate
1000Italy2024-05-16
1001Japan2024-05-09
1002Canada2024-05-16
1003Argentina2024-05-19
1004Russia2024-05-17
1005France2024-05-02
1006India2024-05-08
1007Italy2024-05-29
1008Australia2024-05-10
1009Spain2024-05-03
1010Russia2024-05-13
1011Australia2024-05-22
1012Italy2024-05-06
1013Japan2024-05-04
1014Spain2024-05-05
1015Canada2024-05-24
1016Canada2024-05-09
1017Argentina2024-05-13
1018Canada2024-05-07
1019Russia2024-05-15
1020United Kingdom2024-05-04
1021Russia2024-05-21
1022Russia2024-05-14
1023Germany2024-05-20
1024Spain2024-05-17
1025Russia2024-05-13
1026Argentina2024-05-04
1027United Kingdom2024-05-02
1028Japan2024-05-12
1029United Kingdom2024-05-06
1030India2024-05-29
1031Australia2024-05-16
1032United Kingdom2024-05-19
1033Canada2024-05-06
1034Germany2024-05-21
1035United Kingdom2024-05-19
1036Italy2024-05-09
1037Germany2024-05-22
1038India2024-05-16
1039Spain2024-05-02
1040Argentina2024-05-14
1041Argentina2024-05-27
1042United Kingdom2024-05-26
1043Spain2024-05-27
1044Brazil2024-05-17
1045Brazil2024-05-24
1046United Kingdom2024-05-26
1047Germany2024-05-12
1048Spain2024-05-20
1049France2024-05-24

On-Demand Data

NameIdCountryDate
Greenwood L Stockham1000Australia2024-05-05
Jefferson H Shinko1001Russia2024-05-17
Kadeem T Inouye1002Japan2024-05-07
Claire W Vocelka1003France2024-05-27
Emily S Tollner1004Spain2024-05-25
Emily M Kusko1005United Kingdom2024-05-12
Smith Q Campain1006Germany2024-05-03
Arvin P Campain1007Russia2024-05-20
Faith V Ferencz1008Canada2024-05-06
Jennifer I Caudy1009Argentina2024-05-31
Deepesh M Malet1010Italy2024-05-14
Aditya L Rim1011United Kingdom2024-05-11
Rodrigues O Briddick1012Japan2024-05-24
Kadeem A Royster1013France2024-05-19
Ivar H Ferencz1014India2024-05-25
Johnson V Slusarski1015Canada2024-05-15
Kaitlin D Iturbide1016Argentina2024-05-20
Jennifer I Bolognia1017Australia2024-05-12
Silvio I Malet1018Canada2024-05-19
Clifford D Malet1019Argentina2024-05-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo U WieserFranceAsiya Javayant UNQUALIFIED
Izzy P VocelkaIndiaAsiya Javayant PROPOSAL
Stacey G TollnerIndiaXuxue Feng UNQUALIFIED
Izzy Y VenereIndiaIoni Bowcher QUALIFIED
Johnson Y KolmetzItalyOnyama Limba NEGOTIATION
Julie Q MorascaJapanElwin Sharvill NEGOTIATION
Antonio K CaldareraCanadaOnyama Limba RENEWAL
Maria I TollnerItalyBernardo Dominic QUALIFIED
Juan D WhobreyUnited KingdomAnna Fali UNQUALIFIED
Claire H FigeroaBrazilBernardo Dominic RENEWAL
Juan T GillianAustraliaAmy Elsner NEGOTIATION
Misaki B BriddickAustraliaIvan Magalhaes NEGOTIATION
Antonio F RulapaughRussiaElwin Sharvill PROPOSAL
Smith C AmigonUnited KingdomOnyama Limba NEGOTIATION
Aditya C FerenczAustraliaIvan Magalhaes PROPOSAL
Mujtaba H MarrierSpainAmy Elsner PROPOSAL
Isabel S WhobreyJapanElwin Sharvill RENEWAL
Julie D BriddickIndiaIoni Bowcher RENEWAL
Arvin S FigeroaFranceAsiya Javayant QUALIFIED
Ashley O ButtCanadaAmy Elsner NEW
Maria Z AmigonIndiaAsiya Javayant RENEWAL
Greenwood B IturbideBrazilXuxue Feng RENEWAL
Ashley G RutaArgentinaOnyama Limba NEGOTIATION
Smith D KolmetzGermanyXuxue Feng QUALIFIED
Antonio M SlusarskiCanadaStephen Shaw PROPOSAL
Clifford S NestleCanadaIvan Magalhaes PROPOSAL
Alejandro G StockhamArgentinaStephen Shaw NEGOTIATION
Juan H AlbaresGermanyBernardo Dominic NEW
Maria Q BriddickRussiaIoni Bowcher PROPOSAL
Johnson R DilliardArgentinaAmy Elsner NEGOTIATION
Munro Q AmigonAustraliaAnna Fali PROPOSAL
Kadeem B WaycottItalyOnyama Limba UNQUALIFIED
Kaitlin X MaletArgentinaStephen Shaw RENEWAL
Sinclair Y RoysterUnited KingdomIvan Magalhaes QUALIFIED
Octavia A ButtAustraliaIvan Magalhaes NEGOTIATION
Chavez B InouyeCanadaBernardo Dominic RENEWAL
Claire C MarrierIndiaAmy Elsner UNQUALIFIED
Greenwood L GauchoJapanXuxue Feng NEW
Sinclair W SlusarskiItalyAnna Fali NEW
Misaki X CaudyIndiaElwin Sharvill NEW

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