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
Salvatore R MaletRussiaAsiya Javayant QUALIFIED
Salvatore M SergiJapanOnyama Limba RENEWAL
Izzy G WaycottItalyAsiya Javayant NEW
Greenwood C RutaArgentinaXuxue Feng UNQUALIFIED
Francesco X BriddickIndiaAnna Fali NEW
Smith R GillianGermanyStephen Shaw NEW
Faith W VenereGermanyAnna Fali RENEWAL
Ricardo B RimSpainAnna Fali PROPOSAL
Octavia O DarakjyJapanAsiya Javayant UNQUALIFIED
Jones N KolmetzCanadaElwin Sharvill QUALIFIED
Morrow L MarrierUnited KingdomOnyama Limba QUALIFIED
Kadeem I DoeAustraliaAsiya Javayant UNQUALIFIED
Clifford V DarakjyRussiaElwin Sharvill QUALIFIED
Adams Y DarakjyRussiaAmy Elsner PROPOSAL
Mujtaba E NestleSpainAsiya Javayant NEGOTIATION
Jefferson H DoeSpainAmy Elsner NEGOTIATION
Aika G RoysterArgentinaStephen Shaw PROPOSAL
Ricardo H TollnerCanadaAnna Fali QUALIFIED
Julie Q PoquetteArgentinaXuxue Feng NEW
Aditya X SaylorsBrazilXuxue Feng UNQUALIFIED
Rodrigues Q StensethCanadaElwin Sharvill RENEWAL
Sinclair V PoquetteBrazilIvan Magalhaes RENEWAL
Kaitlin R RulapaughItalyStephen Shaw PROPOSAL
Francesco T DoeArgentinaBernardo Dominic UNQUALIFIED
Ashley L PaprockiIndiaIvan Magalhaes UNQUALIFIED
Costa I RutaSpainAmy Elsner UNQUALIFIED
Sinclair Z SlusarskiIndiaElwin Sharvill PROPOSAL
Alejandro J GauchoFranceAmy Elsner NEGOTIATION
Arvin U CaldareraIndiaOnyama Limba QUALIFIED
Claire L PoquetteItalyAnna Fali NEGOTIATION
Aditya Y FollerSpainAnna Fali RENEWAL
Tony O GlickUnited KingdomAmy Elsner PROPOSAL
Isabel F VocelkaRussiaAsiya Javayant NEGOTIATION
Clifford O DoeCanadaAnna Fali NEGOTIATION
Nicolas H SergiIndiaBernardo Dominic NEGOTIATION
Adams W VocelkaItalyIvan Magalhaes NEW
Tony B ButtBrazilStephen Shaw PROPOSAL
Silvio Y OstroskyArgentinaOnyama Limba PROPOSAL
Aruna S WaycottBrazilAsiya Javayant UNQUALIFIED
Greenwood Q PerinItalyStephen Shaw NEW
Rodrigues U IturbideBrazilElwin Sharvill NEGOTIATION
Salvatore Y SchemmerItalyAnna Fali NEGOTIATION
Ricardo M OstroskyAustraliaAnna Fali QUALIFIED
Jefferson H KolmetzArgentinaBernardo Dominic NEGOTIATION
Izzy B BowleyItalyStephen Shaw RENEWAL
Ricardo J SlusarskiJapanAsiya Javayant QUALIFIED
Maria R BologniaSpainBernardo Dominic NEGOTIATION
Izzy T InouyeArgentinaAnna Fali PROPOSAL
Arvin N SaylorsRussiaBernardo Dominic NEW
Leja R OldroydAustraliaOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Deepesh J WaycottUnited KingdomOnyama Limba QUALIFIED
Jennifer E GlickFranceElwin Sharvill UNQUALIFIED
David M ButtIndiaIoni Bowcher PROPOSAL
Chavez O DilliardGermanyIvan Magalhaes QUALIFIED
Julie K WaycottArgentinaAnna Fali NEGOTIATION
Costa K VocelkaCanadaIoni Bowcher RENEWAL
Morrow G CampainGermanyIvan Magalhaes RENEWAL
Maisha S MacleadAustraliaBernardo Dominic QUALIFIED
Ricardo A BowleyRussiaElwin Sharvill NEW
Rodrigues F WhobreyCanadaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro S CaudyItaly2024-05-04King, Christopher A Esq NEGOTIATION2Anna Fali
1001Jennifer N RimCanada2024-05-05Buckley Miller Wright RENEWAL10Onyama Limba
1002Jeanfrancois Q WieserAustralia2024-04-29Buckley Miller Wright QUALIFIED82Bernardo Dominic
1003Murillo I CaudyItaly2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED66Onyama Limba
1004Julie W FlosiSpain2024-04-28Benton, John B Jr NEGOTIATION52Amy Elsner
1005Aruna R MorascaArgentina2024-04-25King, Christopher A Esq NEGOTIATION85Elwin Sharvill
1006Aika T VocelkaGermany2024-05-23Printing Dimensions RENEWAL90Onyama Limba
1007Aruna W WaycottBrazil2024-05-13Chanay, Jeffrey A Esq PROPOSAL4Bernardo Dominic
1008Jennifer L RoysterItaly2024-05-24Rousseaux, Michael Esq QUALIFIED47Anna Fali
1009Mayumi V StockhamRussia2024-05-02Buckley Miller Wright NEGOTIATION14Stephen Shaw
1010Mayumi P GillianItaly2024-05-07Truhlar And Truhlar Attys UNQUALIFIED75Anna Fali
1011Kaitlin D GillianJapan2024-05-13King, Christopher A Esq NEGOTIATION97Onyama Limba
1012Octavia H TollnerCanada2024-05-19Printing Dimensions RENEWAL10Anna Fali
1013Mujtaba W TollnerArgentina2024-05-08Feiner Bros RENEWAL75Bernardo Dominic
1014Kaitlin T PaprockiRussia2024-05-14Buckley Miller Wright RENEWAL48Amy Elsner
1015Julie Y OstroskyBrazil2024-05-08Buckley Miller Wright NEGOTIATION38Elwin Sharvill
1016Johnson L DarakjyArgentina2024-05-03Chapman, Ross E Esq NEGOTIATION78Ioni Bowcher
1017Jones B OstroskyArgentina2024-05-14Feiner Bros QUALIFIED15Ivan Magalhaes
1018Faith X CaldareraAustralia2024-04-26Morlong Associates RENEWAL10Stephen Shaw
1019Deepesh R GlickSpain2024-05-13Rousseaux, Michael Esq NEW48Onyama Limba
1020Morrow V FerenczRussia2024-05-01Feltz Printing Service NEW57Ivan Magalhaes
1021Antonio B MaletCanada2024-05-16Dorl, James J Esq NEW71Onyama Limba
1022Cody S CaldareraBrazil2024-05-21Rousseaux, Michael Esq NEGOTIATION50Asiya Javayant
1023Greenwood F GauchoSpain2024-05-21Chemel, James L Cpa NEGOTIATION61Bernardo Dominic
1024Emily G StensethItaly2024-05-24Chanay, Jeffrey A Esq PROPOSAL25Onyama Limba
1025Deepesh G FollerFrance2024-05-16Benton, John B Jr RENEWAL59Bernardo Dominic
1026Jefferson M OldroydSpain2024-04-29Benton, John B Jr UNQUALIFIED29Elwin Sharvill
1027Julie W InouyeRussia2024-05-12Chanay, Jeffrey A Esq RENEWAL37Ioni Bowcher
1028Silvio X BologniaRussia2024-05-15Chemel, James L Cpa QUALIFIED3Ivan Magalhaes
1029Aruna M PerinRussia2024-05-15Chanay, Jeffrey A Esq QUALIFIED81Amy Elsner
1030Nicolas Q MaletCanada2024-05-22Feltz Printing Service UNQUALIFIED51Elwin Sharvill
1031Ivar D CaldareraSpain2024-05-18Chanay, Jeffrey A Esq NEGOTIATION50Anna Fali
1032Aika F GillianGermany2024-05-13Buckley Miller Wright QUALIFIED44Bernardo Dominic
1033Chavez P ShinkoItaly2024-05-24Truhlar And Truhlar Attys PROPOSAL90Ioni Bowcher
1034Julie M NestleArgentina2024-05-19Buckley Miller Wright UNQUALIFIED42Onyama Limba
1035Adams F SaylorsBrazil2024-05-11Benton, John B Jr PROPOSAL0Stephen Shaw
1036Darci G RulapaughJapan2024-05-12Dorl, James J Esq NEGOTIATION90Asiya Javayant
1037Misaki Y NestleItaly2024-05-03Benton, John B Jr NEW11Elwin Sharvill
1038Juan C PaprockiAustralia2024-05-07Morlong Associates QUALIFIED9Amy Elsner
1039Claire S MaletGermany2024-05-08Chapman, Ross E Esq PROPOSAL32Asiya Javayant
1040Sinclair L RutaRussia2024-05-22King, Christopher A Esq PROPOSAL11Xuxue Feng
1041Darci A StensethGermany2024-05-19Chemel, James L Cpa QUALIFIED92Bernardo Dominic
1042James Q VenereSpain2024-04-25Morlong Associates QUALIFIED90Amy Elsner
1043Jefferson T FerenczGermany2024-05-04Chemel, James L Cpa NEW29Onyama Limba
1044Misaki E ShinkoArgentina2024-05-08Buckley Miller Wright NEGOTIATION62Anna Fali
1045Alejandro D FollerJapan2024-05-24Buckley Miller Wright NEGOTIATION96Ioni Bowcher
1046Jefferson J ShinkoItaly2024-05-10Commercial Press NEW84Xuxue Feng
1047James C IturbideCanada2024-05-21Feiner Bros RENEWAL0Ivan Magalhaes
1048Wickens P DilliardGermany2024-05-10Morlong Associates NEGOTIATION71Bernardo Dominic
1049Darci L ButtItaly2024-05-18Rangoni Of Florence UNQUALIFIED33Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Mayumi P MorascaUnited KingdomIvan Magalhaes QUALIFIED
Clifford Y PoquetteBrazilIoni Bowcher QUALIFIED
Maisha L ChuiBrazilAsiya Javayant NEGOTIATION
Johnson R SlusarskiArgentinaBernardo Dominic NEGOTIATION
Isabel J InouyeAustraliaIoni Bowcher NEGOTIATION
Mujtaba I CaldareraCanadaAmy Elsner NEW
Ivar Y RimSpainAmy Elsner NEW
Wickens I RoysterAustraliaElwin Sharvill NEGOTIATION
Adams G MorascaBrazilXuxue Feng PROPOSAL
Jennifer S CampainJapanIvan Magalhaes PROPOSAL
Smith L SlusarskiRussiaAnna Fali QUALIFIED
Juan Q SchemmerGermanyIvan Magalhaes PROPOSAL
Tony D MacleadBrazilXuxue Feng RENEWAL
Clifford L GillianItalyAnna Fali QUALIFIED
Ricardo H ButtAustraliaIoni Bowcher NEGOTIATION
Cody R OstroskyCanadaElwin Sharvill PROPOSAL
Izzy U CaldareraJapanIoni Bowcher QUALIFIED
Darci M OldroydSpainAmy Elsner PROPOSAL
Silvio C ShinkoArgentinaIvan Magalhaes UNQUALIFIED
Kadeem R CampainArgentinaIvan Magalhaes NEW
Antonio B MarrierRussiaOnyama Limba PROPOSAL
Leon O MorascaBrazilElwin Sharvill NEGOTIATION
Aditya K PaprockiUnited KingdomOnyama Limba RENEWAL
Kaitlin X KolmetzRussiaStephen Shaw UNQUALIFIED
Clifford K BriddickCanadaAmy Elsner QUALIFIED
Aditya G WhobreyUnited KingdomXuxue Feng QUALIFIED
Leon L KolmetzSpainAnna Fali PROPOSAL
Sinclair I IturbideIndiaIoni Bowcher NEGOTIATION
Leja U RimRussiaBernardo Dominic QUALIFIED
Ashley L FerenczSpainAsiya Javayant PROPOSAL
Nicolas N RimCanadaOnyama Limba RENEWAL
Aditya K StockhamUnited KingdomIvan Magalhaes NEGOTIATION
Smith N CaldareraArgentinaAsiya Javayant UNQUALIFIED
Jennifer N DoeCanadaXuxue Feng NEGOTIATION
Mujtaba N BowleyRussiaIoni Bowcher RENEWAL
Chavez R CaudyIndiaBernardo Dominic QUALIFIED
Stacey K CampainJapanStephen Shaw NEW
Munro J PerinIndiaElwin Sharvill NEW
Greenwood V GlickArgentinaBernardo Dominic QUALIFIED
Jennifer G VenereAustraliaIvan Magalhaes UNQUALIFIED
Misaki D DoeItalyIvan Magalhaes QUALIFIED
Octavia C WhobreyBrazilOnyama Limba PROPOSAL
Maisha I VocelkaAustraliaStephen Shaw NEGOTIATION
Antonio Q FlosiJapanAmy Elsner NEGOTIATION
Julie S NestleAustraliaOnyama Limba RENEWAL
Arvin H StockhamBrazilIvan Magalhaes NEGOTIATION
Adams F VenereItalyIvan Magalhaes UNQUALIFIED
Aditya X MaletCanadaOnyama Limba RENEWAL
Nicolas X RutaItalyElwin Sharvill PROPOSAL
Ricardo E StockhamGermanyStephen Shaw NEGOTIATION
Frozen Columns
Name
Maisha U Bowley
Murillo M Flosi
James Z Whobrey
Deepesh Q Ostrosky
Misaki P Briddick
Smith Z Bolognia
Juan G Stenseth
Leon Q Whobrey
Kadeem Q Rulapaugh
Arvin J Wieser
Mujtaba U Royster
Clifford C Ostrosky
Julie J Bowley
Costa T Ruta
Cody P Poquette
Nicolas L Garufi
Leon K Stenseth
Aruna N Ruta
Faith K Kolmetz
Johnson K Wieser
Ivar T Shinko
Kaitlin T Malet
Munro U Vocelka
Salvatore X Gaucho
Arvin J Bolognia
Arvin J Flosi
Leja J Malet
Costa F Marrier
Claire M Bolognia
Mujtaba S Bolognia
Arvin T Stockham
Morrow U Paprocki
Maria U Malet
Adams D Ostrosky
Smith C Waycott
Alejandro I Wieser
Murillo V Rulapaugh
Faith C Ruta
Alejandro C Butt
Morrow G Wieser
Stacey B Caudy
Alejandro M Saylors
Stacey F Nestle
Claire H Inouye
Jennifer T Malet
Costa E Ferencz
Kaitlin P Nestle
Francesco K Malet
Francesco M Malet
Francesco Q Royster
IdCountryDate
1000India2024-05-23
1001Japan2024-05-13
1002United Kingdom2024-05-13
1003Brazil2024-05-21
1004France2024-05-07
1005Brazil2024-04-26
1006Japan2024-05-01
1007Spain2024-04-29
1008Brazil2024-05-15
1009Brazil2024-05-13
1010Canada2024-05-07
1011Russia2024-05-09
1012Canada2024-05-05
1013India2024-04-28
1014Germany2024-05-06
1015Argentina2024-05-17
1016Italy2024-05-20
1017Japan2024-05-05
1018Russia2024-05-13
1019Italy2024-05-13
1020Russia2024-05-20
1021Argentina2024-05-07
1022Russia2024-04-27
1023United Kingdom2024-05-07
1024Canada2024-05-21
1025India2024-04-27
1026France2024-05-15
1027France2024-05-16
1028Argentina2024-04-25
1029France2024-05-05
1030Spain2024-05-19
1031United Kingdom2024-05-11
1032Australia2024-04-25
1033Spain2024-05-17
1034Argentina2024-05-10
1035Russia2024-05-18
1036Canada2024-04-28
1037Russia2024-05-21
1038Brazil2024-05-06
1039Italy2024-05-07
1040Spain2024-05-03
1041United Kingdom2024-05-20
1042Argentina2024-05-22
1043Germany2024-04-25
1044Japan2024-05-03
1045Brazil2024-05-08
1046Australia2024-05-12
1047Australia2024-05-09
1048Brazil2024-05-23
1049Germany2024-04-25

On-Demand Data

NameIdCountryDate
Aika A Malet1000Brazil2024-05-03
Salvatore N Malet1001Japan2024-04-28
Julie T Kolmetz1002Brazil2024-05-23
Aika X Vocelka1003Russia2024-05-22
Costa H Vocelka1004Italy2024-05-06
Nicolas P Waycott1005Italy2024-05-18
Morrow H Paprocki1006United Kingdom2024-05-13
Salvatore H Oldroyd1007France2024-05-10
Adams S Paprocki1008Spain2024-04-25
Chavez Q Poquette1009Argentina2024-05-03
Wickens K Wieser1010Brazil2024-04-27
Nicolas D Malet1011Japan2024-05-17
Ricardo Z Albares1012Spain2024-05-02
Ivar Z Sergi1013France2024-05-23
Darci G Ostrosky1014Germany2024-05-04
Kaitlin F Morasca1015Spain2024-05-14
Aika C Amigon1016Spain2024-05-24
Murillo H Briddick1017Brazil2024-04-27
Julie L Rim1018Germany2024-05-10
Kaitlin F Whobrey1019France2024-05-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody Y StockhamFranceStephen Shaw NEW
Emily A CampainFranceAmy Elsner PROPOSAL
Juan A GarufiRussiaOnyama Limba PROPOSAL
Emily J WieserBrazilOnyama Limba NEGOTIATION
Leja U OstroskyJapanIoni Bowcher NEGOTIATION
Murillo Q BowleyFranceAsiya Javayant QUALIFIED
Johnson V MarrierArgentinaBernardo Dominic RENEWAL
Octavia B StockhamCanadaElwin Sharvill NEW
Kaitlin G GauchoAustraliaXuxue Feng RENEWAL
Juan X OstroskyBrazilXuxue Feng UNQUALIFIED
Kaitlin F InouyeItalyElwin Sharvill UNQUALIFIED
Adams A GarufiItalyBernardo Dominic QUALIFIED
Tony L InouyeFranceXuxue Feng PROPOSAL
Mujtaba W CaudyBrazilBernardo Dominic PROPOSAL
Kadeem D DoeArgentinaElwin Sharvill UNQUALIFIED
Octavia P GauchoBrazilIoni Bowcher QUALIFIED
Jones C MarrierArgentinaBernardo Dominic RENEWAL
Isabel J GillianFranceAmy Elsner RENEWAL
Nicolas E IturbideJapanElwin Sharvill NEW
Octavia R RoysterItalyBernardo Dominic UNQUALIFIED
Jefferson U RimBrazilElwin Sharvill RENEWAL
Alejandro O GlickAustraliaAsiya Javayant PROPOSAL
Sinclair L GauchoBrazilAsiya Javayant NEGOTIATION
Kaitlin H OldroydItalyXuxue Feng UNQUALIFIED
Misaki Z SaylorsJapanOnyama Limba UNQUALIFIED
Wickens M ShinkoFranceStephen Shaw NEGOTIATION
Antonio W IturbideAustraliaAsiya Javayant RENEWAL
Arvin W KuskoUnited KingdomIoni Bowcher PROPOSAL
Sinclair W PaprockiRussiaBernardo Dominic NEW
Morrow D KolmetzArgentinaAsiya Javayant NEW
Kadeem A TollnerItalyOnyama Limba QUALIFIED
Jennifer N FollerGermanyAsiya Javayant PROPOSAL
Ashley H AlbaresArgentinaElwin Sharvill NEGOTIATION
Ashley R CaldareraIndiaOnyama Limba NEW
Johnson T NickaSpainAnna Fali QUALIFIED
Juan S WieserItalyBernardo Dominic NEW
Isabel U KolmetzIndiaIoni Bowcher PROPOSAL
Sinclair X TollnerUnited KingdomIvan Magalhaes RENEWAL
Octavia F KolmetzRussiaStephen Shaw UNQUALIFIED
Adams C ShinkoRussiaOnyama Limba RENEWAL

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