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
Ivar Q ChuiUnited KingdomXuxue Feng NEW
Jennifer W KolmetzUnited KingdomBernardo Dominic RENEWAL
Jeanfrancois R ShinkoItalyElwin Sharvill PROPOSAL
Rodrigues W CaudyUnited KingdomAnna Fali UNQUALIFIED
Claire H KolmetzSpainElwin Sharvill QUALIFIED
Costa F SergiArgentinaIoni Bowcher NEGOTIATION
Octavia X IturbideUnited KingdomAnna Fali RENEWAL
Sinclair P KolmetzRussiaElwin Sharvill RENEWAL
Tony F RulapaughIndiaOnyama Limba PROPOSAL
David Y PaprockiCanadaAmy Elsner QUALIFIED
Mayumi C StensethAustraliaOnyama Limba QUALIFIED
Kaitlin N CaudyUnited KingdomAsiya Javayant RENEWAL
Francesco P GillianFranceIvan Magalhaes PROPOSAL
Misaki L FlosiItalyOnyama Limba PROPOSAL
Julie Z ButtArgentinaIvan Magalhaes UNQUALIFIED
Claire L ChuiUnited KingdomXuxue Feng NEGOTIATION
Aruna F ShinkoGermanyIoni Bowcher UNQUALIFIED
Aruna A SaylorsJapanElwin Sharvill QUALIFIED
Julie Y KuskoArgentinaElwin Sharvill NEW
Isabel V GauchoUnited KingdomXuxue Feng PROPOSAL
Jennifer R BologniaFranceElwin Sharvill NEW
Wickens G RoysterFranceAsiya Javayant NEGOTIATION
Johnson J CampainCanadaAnna Fali PROPOSAL
Leon G NestleItalyIoni Bowcher NEGOTIATION
Chavez C WieserUnited KingdomAnna Fali QUALIFIED
Munro T CaudyAustraliaIoni Bowcher UNQUALIFIED
Izzy J OldroydItalyElwin Sharvill NEGOTIATION
Juan S FlosiFranceAsiya Javayant NEW
Rodrigues I DoeAustraliaBernardo Dominic NEGOTIATION
Juan A OstroskySpainOnyama Limba UNQUALIFIED
Kaitlin I GillianAustraliaOnyama Limba QUALIFIED
Johnson T WaycottUnited KingdomIvan Magalhaes PROPOSAL
Cody F GarufiRussiaIvan Magalhaes NEGOTIATION
Francesco W RutaCanadaStephen Shaw RENEWAL
Misaki F WaycottFranceIvan Magalhaes UNQUALIFIED
Jones W SergiIndiaIoni Bowcher PROPOSAL
Johnson R CampainUnited KingdomBernardo Dominic NEGOTIATION
Rodrigues Z StensethGermanyIvan Magalhaes UNQUALIFIED
Salvatore K FerenczItalyOnyama Limba NEGOTIATION
Jefferson B AlbaresAustraliaStephen Shaw NEW
Jeanfrancois U OldroydJapanXuxue Feng UNQUALIFIED
Antonio E VocelkaUnited KingdomAsiya Javayant PROPOSAL
Costa C NestleUnited KingdomStephen Shaw NEGOTIATION
Julie Z RulapaughUnited KingdomAmy Elsner PROPOSAL
Maisha K BriddickItalyXuxue Feng RENEWAL
Izzy D VenereCanadaIoni Bowcher PROPOSAL
Stacey M SergiSpainXuxue Feng RENEWAL
James V MarrierJapanAnna Fali NEGOTIATION
Jennifer K MarrierArgentinaOnyama Limba UNQUALIFIED
Julie N WieserBrazilIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Emily Y MaletGermanyBernardo Dominic UNQUALIFIED
Cody S InouyeGermanyStephen Shaw NEW
Darci O KolmetzCanadaXuxue Feng NEW
Juan A SlusarskiJapanAmy Elsner NEW
Darci X AmigonAustraliaAsiya Javayant UNQUALIFIED
Rodrigues H GlickGermanyOnyama Limba NEW
Ashley Q StockhamJapanElwin Sharvill UNQUALIFIED
Silvio F ShinkoJapanAnna Fali NEGOTIATION
Alejandro H FlosiFranceBernardo Dominic PROPOSAL
Clifford O SaylorsCanadaBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin U CampainArgentina2024-05-16Dorl, James J Esq NEW48Ivan Magalhaes
1001Darci J StockhamIndia2024-05-07Morlong Associates UNQUALIFIED47Anna Fali
1002Rodrigues F PoquetteUnited Kingdom2024-05-08Rousseaux, Michael Esq QUALIFIED7Ioni Bowcher
1003Ashley G OldroydRussia2024-05-20Rangoni Of Florence NEGOTIATION80Stephen Shaw
1004Morrow L FlosiRussia2024-05-11Dorl, James J Esq UNQUALIFIED14Asiya Javayant
1005Juan I TollnerBrazil2024-05-12Rangoni Of Florence PROPOSAL57Bernardo Dominic
1006David M KuskoGermany2024-05-23Rangoni Of Florence RENEWAL30Asiya Javayant
1007James U DoeRussia2024-05-01Rousseaux, Michael Esq RENEWAL23Onyama Limba
1008Smith D ShinkoJapan2024-05-12Truhlar And Truhlar Attys QUALIFIED72Amy Elsner
1009Morrow Q OstroskyArgentina2024-05-19King, Christopher A Esq RENEWAL47Ivan Magalhaes
1010Izzy A CaudyArgentina2024-05-23King, Christopher A Esq NEW85Bernardo Dominic
1011Jefferson D MaletAustralia2024-05-26Rousseaux, Michael Esq UNQUALIFIED96Asiya Javayant
1012Maisha H KolmetzRussia2024-05-23Rousseaux, Michael Esq QUALIFIED82Elwin Sharvill
1013Alejandro Y KuskoArgentina2024-05-16Chanay, Jeffrey A Esq NEGOTIATION58Bernardo Dominic
1014Greenwood I StockhamBrazil2024-04-30Printing Dimensions UNQUALIFIED37Xuxue Feng
1015Mujtaba E MorascaBrazil2024-05-04Feltz Printing Service NEGOTIATION47Stephen Shaw
1016Antonio N ButtFrance2024-05-22Chanay, Jeffrey A Esq QUALIFIED18Asiya Javayant
1017Darci F StensethAustralia2024-05-27Feltz Printing Service NEGOTIATION64Anna Fali
1018Stacey X VenereCanada2024-05-23Chapman, Ross E Esq QUALIFIED70Stephen Shaw
1019Stacey H BologniaBrazil2024-05-14Feltz Printing Service PROPOSAL64Xuxue Feng
1020Aika T WaycottRussia2024-05-15Commercial Press RENEWAL89Onyama Limba
1021Emily C BriddickAustralia2024-05-07Printing Dimensions NEW67Bernardo Dominic
1022Cody C RutaSpain2024-05-04Rangoni Of Florence UNQUALIFIED11Bernardo Dominic
1023Adams C SchemmerItaly2024-04-30Chapman, Ross E Esq NEW8Elwin Sharvill
1024Murillo E FigeroaGermany2024-05-27Chanay, Jeffrey A Esq RENEWAL81Stephen Shaw
1025Stacey Z NestleFrance2024-05-15Morlong Associates UNQUALIFIED0Onyama Limba
1026Deepesh I PoquetteSpain2024-05-01Morlong Associates RENEWAL57Stephen Shaw
1027Sinclair X AmigonRussia2024-05-12Benton, John B Jr RENEWAL13Ivan Magalhaes
1028Tony X RimAustralia2024-05-08Dorl, James J Esq QUALIFIED48Ioni Bowcher
1029Tony U IturbideItaly2024-05-14Commercial Press RENEWAL81Anna Fali
1030Alejandro R GauchoJapan2024-05-21Buckley Miller Wright NEW39Ioni Bowcher
1031Aditya P FlosiIndia2024-05-24Chemel, James L Cpa NEGOTIATION66Elwin Sharvill
1032Clifford R RimBrazil2024-05-17Chemel, James L Cpa UNQUALIFIED79Onyama Limba
1033Arvin F FollerIndia2024-05-06Commercial Press NEGOTIATION80Asiya Javayant
1034Kaitlin F FlosiArgentina2024-05-17Truhlar And Truhlar Attys NEW61Stephen Shaw
1035Mayumi M GarufiJapan2024-05-10Morlong Associates PROPOSAL39Onyama Limba
1036Francesco U WieserGermany2024-05-15Chanay, Jeffrey A Esq UNQUALIFIED88Bernardo Dominic
1037Jennifer I PoquetteUnited Kingdom2024-05-27King, Christopher A Esq RENEWAL16Elwin Sharvill
1038Jones G GarufiCanada2024-05-26Chanay, Jeffrey A Esq RENEWAL0Amy Elsner
1039Nicolas H MorascaArgentina2024-04-30Printing Dimensions NEW16Onyama Limba
1040Leon Z ShinkoIndia2024-05-11Feiner Bros UNQUALIFIED22Bernardo Dominic
1041Kadeem I VenereSpain2024-05-01Dorl, James J Esq QUALIFIED94Asiya Javayant
1042Emily B BologniaRussia2024-05-22King, Christopher A Esq NEW75Onyama Limba
1043James G WaycottRussia2024-05-22Chemel, James L Cpa RENEWAL6Xuxue Feng
1044Stacey N GarufiRussia2024-05-13Commercial Press NEW97Bernardo Dominic
1045Maria Q ButtGermany2024-05-24Chemel, James L Cpa UNQUALIFIED85Ivan Magalhaes
1046Wickens L CaudyIndia2024-04-29Truhlar And Truhlar Attys PROPOSAL24Anna Fali
1047Salvatore Z MaletUnited Kingdom2024-05-02King, Christopher A Esq NEGOTIATION34Stephen Shaw
1048Jeanfrancois P KolmetzSpain2024-05-24Rousseaux, Michael Esq PROPOSAL27Bernardo Dominic
1049Julie A FerenczSpain2024-05-11Truhlar And Truhlar Attys RENEWAL10Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Claire S VenereBrazilElwin Sharvill PROPOSAL
Deepesh D NestleCanadaAmy Elsner QUALIFIED
Costa R SlusarskiIndiaAnna Fali PROPOSAL
Stacey J ButtUnited KingdomAsiya Javayant PROPOSAL
Greenwood A GarufiIndiaIoni Bowcher NEGOTIATION
Aruna W PerinAustraliaAnna Fali UNQUALIFIED
Ashley G RutaAustraliaStephen Shaw NEW
Ivar L VenereCanadaXuxue Feng PROPOSAL
Kaitlin T CaldareraGermanyStephen Shaw NEGOTIATION
Faith W KuskoRussiaBernardo Dominic QUALIFIED
Chavez F AlbaresBrazilIoni Bowcher NEW
James M GauchoRussiaXuxue Feng RENEWAL
Aika L RutaSpainXuxue Feng UNQUALIFIED
Ashley S ShinkoUnited KingdomIvan Magalhaes PROPOSAL
Darci Y CaldareraArgentinaIoni Bowcher UNQUALIFIED
Chavez Q FlosiArgentinaIvan Magalhaes PROPOSAL
Wickens Q SaylorsJapanAnna Fali RENEWAL
Smith P SaylorsIndiaIoni Bowcher QUALIFIED
Johnson N FlosiIndiaXuxue Feng PROPOSAL
Arvin L RutaIndiaBernardo Dominic PROPOSAL
Claire K VocelkaBrazilAmy Elsner RENEWAL
Greenwood R WhobreyGermanyIvan Magalhaes NEGOTIATION
Johnson P StensethAustraliaAsiya Javayant QUALIFIED
Kadeem T VocelkaAustraliaOnyama Limba RENEWAL
Wickens D OldroydJapanAsiya Javayant QUALIFIED
Ivar E PerinRussiaBernardo Dominic QUALIFIED
Murillo H VocelkaFranceAsiya Javayant NEGOTIATION
Adams K VenereRussiaAnna Fali UNQUALIFIED
Silvio A VenereBrazilIoni Bowcher NEW
Alejandro H VenereFranceXuxue Feng NEW
Leon X VenereUnited KingdomAsiya Javayant NEGOTIATION
Clifford B ChuiAustraliaOnyama Limba UNQUALIFIED
Deepesh G KuskoAustraliaElwin Sharvill NEGOTIATION
Leon N InouyeCanadaIvan Magalhaes NEGOTIATION
Emily Q IturbideRussiaXuxue Feng NEGOTIATION
Julie L DilliardGermanyXuxue Feng UNQUALIFIED
Faith Q PoquetteItalyXuxue Feng PROPOSAL
Misaki F StockhamJapanXuxue Feng PROPOSAL
Ashley S ButtItalyIoni Bowcher RENEWAL
David K DarakjyRussiaAsiya Javayant RENEWAL
Francesco T MacleadSpainIoni Bowcher NEGOTIATION
Julie P FerenczUnited KingdomAmy Elsner PROPOSAL
Jeanfrancois O MaletRussiaAmy Elsner NEW
Salvatore M SaylorsAustraliaStephen Shaw QUALIFIED
Emily F MarrierJapanXuxue Feng QUALIFIED
Leja K GarufiRussiaBernardo Dominic UNQUALIFIED
Munro J IturbideUnited KingdomAnna Fali NEW
Mayumi C KolmetzGermanyIvan Magalhaes RENEWAL
Alejandro P NestleBrazilXuxue Feng PROPOSAL
Aditya X SergiRussiaElwin Sharvill NEW
Frozen Columns
Name
Johnson K Dilliard
Aruna V Malet
Munro W Bowley
Maisha K Nestle
David M Sergi
Ivar H Whobrey
Jefferson W Caudy
Maisha R Iturbide
Rodrigues B Sergi
Aruna R Slusarski
Jefferson W Whobrey
Arvin E Figeroa
Francesco E Figeroa
Faith I Morasca
Wickens D Inouye
Octavia M Schemmer
Leon I Perin
Misaki Z Malet
Jefferson Z Rim
Johnson P Nestle
Silvio Y Malet
Arvin R Marrier
Silvio O Campain
Aika S Rim
Deepesh A Chui
Izzy E Butt
Sinclair R Flosi
Ivar Z Albares
Claire B Iturbide
Aditya U Doe
Jennifer O Dilliard
David Q Royster
Antonio K Vocelka
Jones S Chui
David K Wieser
Julie F Campain
Faith G Royster
Misaki G Perin
Mujtaba B Royster
Wickens C Marrier
Mujtaba S Darakjy
Cody U Oldroyd
Rodrigues Y Shinko
Kaitlin A Foller
Aditya L Ferencz
Tony N Schemmer
Izzy N Glick
Stacey V Slusarski
Cody I Oldroyd
Costa T Amigon
IdCountryDate
1000Spain2024-05-06
1001Argentina2024-05-25
1002Argentina2024-05-11
1003Germany2024-05-20
1004United Kingdom2024-05-07
1005India2024-05-15
1006Russia2024-05-24
1007Brazil2024-05-05
1008Brazil2024-04-29
1009Canada2024-05-03
1010Argentina2024-05-16
1011Australia2024-05-26
1012Germany2024-04-28
1013Australia2024-04-29
1014Italy2024-04-29
1015Argentina2024-05-12
1016Italy2024-05-01
1017Australia2024-05-05
1018Russia2024-05-05
1019Argentina2024-05-05
1020Spain2024-05-27
1021Germany2024-05-10
1022Canada2024-05-02
1023Canada2024-05-08
1024Argentina2024-05-03
1025Argentina2024-05-12
1026Brazil2024-05-11
1027France2024-05-27
1028Canada2024-05-13
1029Australia2024-05-17
1030Brazil2024-05-09
1031Spain2024-05-09
1032Japan2024-05-05
1033Australia2024-05-20
1034Canada2024-05-19
1035Australia2024-05-23
1036Japan2024-05-04
1037Italy2024-05-09
1038Canada2024-05-05
1039Germany2024-05-18
1040Russia2024-05-12
1041Australia2024-05-06
1042Germany2024-05-01
1043Brazil2024-05-24
1044United Kingdom2024-05-15
1045Russia2024-05-18
1046India2024-04-28
1047Australia2024-05-16
1048Russia2024-05-26
1049Italy2024-05-15

On-Demand Data

NameIdCountryDate
Antonio S Ruta1000France2024-05-18
Tony U Oldroyd1001Brazil2024-05-19
Jones O Caudy1002Argentina2024-05-12
Mujtaba N Rulapaugh1003Australia2024-05-09
Smith D Gaucho1004Canada2024-05-09
Munro V Waycott1005Russia2024-05-08
Darci T Tollner1006Japan2024-05-18
James L Inouye1007Spain2024-04-28
Tony Z Ferencz1008France2024-05-27
Juan F Dilliard1009Argentina2024-05-15
Aditya H Inouye1010Brazil2024-05-21
Darci C Perin1011Argentina2024-05-07
Aika P Rulapaugh1012Russia2024-05-05
Sinclair U Rulapaugh1013Australia2024-05-21
Maisha R Oldroyd1014India2024-05-25
Nicolas P Stockham1015Australia2024-05-07
Smith B Marrier1016Canada2024-05-17
Maria O Marrier1017Argentina2024-05-01
Claire L Ostrosky1018Australia2024-05-16
Mayumi X Malet1019Japan2024-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues W DilliardBrazilAmy Elsner NEGOTIATION
Nicolas Z GlickFranceOnyama Limba NEGOTIATION
Kaitlin O GillianItalyIoni Bowcher QUALIFIED
Nicolas I TollnerArgentinaIoni Bowcher UNQUALIFIED
Emily R NestleUnited KingdomStephen Shaw PROPOSAL
Antonio F OldroydJapanAsiya Javayant RENEWAL
Nicolas F DilliardBrazilElwin Sharvill RENEWAL
Kaitlin N ButtCanadaAsiya Javayant UNQUALIFIED
Greenwood R OstroskyGermanyAmy Elsner PROPOSAL
Wickens Y VocelkaIndiaIoni Bowcher RENEWAL
Kaitlin Q FlosiArgentinaBernardo Dominic QUALIFIED
David Z SlusarskiAustraliaAnna Fali UNQUALIFIED
Aruna I FerenczCanadaAmy Elsner UNQUALIFIED
Ricardo C KuskoFranceAsiya Javayant UNQUALIFIED
Izzy V DoeBrazilXuxue Feng RENEWAL
Ricardo F GlickGermanyIvan Magalhaes NEGOTIATION
Cody C BowleyJapanIvan Magalhaes PROPOSAL
Jennifer W MarrierRussiaIoni Bowcher RENEWAL
Jennifer P NickaAustraliaBernardo Dominic QUALIFIED
Leon V MaletBrazilBernardo Dominic QUALIFIED
Salvatore X GlickBrazilBernardo Dominic NEGOTIATION
Jeanfrancois K InouyeFranceAnna Fali NEGOTIATION
Smith T AlbaresItalyAnna Fali QUALIFIED
Morrow W KolmetzIndiaIvan Magalhaes UNQUALIFIED
Nicolas T GlickCanadaElwin Sharvill RENEWAL
Mujtaba W AlbaresJapanAmy Elsner NEGOTIATION
Leon S VocelkaUnited KingdomAmy Elsner QUALIFIED
Munro A CaldareraCanadaStephen Shaw NEW
Faith Z AlbaresJapanXuxue Feng UNQUALIFIED
Adams S StensethIndiaBernardo Dominic RENEWAL
Juan D ShinkoBrazilBernardo Dominic RENEWAL
Ashley G AlbaresIndiaXuxue Feng NEGOTIATION
Costa L OldroydCanadaAmy Elsner RENEWAL
Jefferson B SlusarskiItalyStephen Shaw PROPOSAL
Octavia N WieserArgentinaStephen Shaw NEW
Jones V BriddickCanadaAmy Elsner QUALIFIED
Claire G RimItalyAnna Fali PROPOSAL
Francesco J KuskoItalyIvan Magalhaes QUALIFIED
Jeanfrancois I SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Clifford D RoysterItalyStephen Shaw 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>