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
David Z StensethArgentinaIvan Magalhaes QUALIFIED
Aditya A GillianGermanyIvan Magalhaes NEGOTIATION
Juan C DoeAustraliaIvan Magalhaes UNQUALIFIED
Julie W SergiAustraliaIoni Bowcher RENEWAL
Kadeem V BologniaArgentinaIvan Magalhaes NEGOTIATION
Juan B MaletArgentinaAnna Fali QUALIFIED
Maisha B DarakjyUnited KingdomIoni Bowcher QUALIFIED
Tony P FerenczUnited KingdomStephen Shaw UNQUALIFIED
Alejandro E GarufiItalyIoni Bowcher QUALIFIED
Darci U MacleadItalyIoni Bowcher PROPOSAL
Leon X PoquetteFranceStephen Shaw QUALIFIED
Jennifer L KolmetzRussiaIoni Bowcher QUALIFIED
Stacey H CaldareraGermanyAnna Fali PROPOSAL
Kadeem L RimItalyAnna Fali PROPOSAL
Antonio Y GarufiUnited KingdomAnna Fali UNQUALIFIED
Kaitlin O PoquetteItalyAsiya Javayant NEGOTIATION
Isabel U MacleadArgentinaIvan Magalhaes UNQUALIFIED
Claire A OldroydArgentinaXuxue Feng UNQUALIFIED
Smith E PerinJapanElwin Sharvill UNQUALIFIED
Wickens H NestleItalyAnna Fali QUALIFIED
Wickens V InouyeRussiaXuxue Feng RENEWAL
Ivar Y FigeroaBrazilIoni Bowcher NEW
Francesco L AmigonCanadaAsiya Javayant RENEWAL
Kaitlin N RutaIndiaIvan Magalhaes QUALIFIED
Cody F PaprockiCanadaOnyama Limba PROPOSAL
Izzy J RimJapanIvan Magalhaes NEW
Misaki W DilliardJapanElwin Sharvill NEGOTIATION
Rodrigues H GillianCanadaAnna Fali RENEWAL
Emily H ShinkoCanadaStephen Shaw RENEWAL
Greenwood A PoquetteGermanyAnna Fali NEW
Aika P GarufiIndiaAsiya Javayant RENEWAL
Stacey O CaldareraGermanyAsiya Javayant RENEWAL
Antonio X CaldareraArgentinaAmy Elsner NEGOTIATION
Silvio R StensethJapanStephen Shaw NEGOTIATION
Ashley K MaletCanadaOnyama Limba UNQUALIFIED
Stacey P WhobreyFranceAmy Elsner RENEWAL
Misaki L GauchoRussiaAnna Fali RENEWAL
Ivar L MaletUnited KingdomAmy Elsner RENEWAL
Murillo K RimArgentinaBernardo Dominic PROPOSAL
Deepesh R WhobreyAustraliaIoni Bowcher QUALIFIED
Greenwood W GarufiArgentinaBernardo Dominic NEGOTIATION
Alejandro X ChuiGermanyBernardo Dominic NEGOTIATION
Jeanfrancois C RutaJapanAmy Elsner RENEWAL
Juan Q CaudyArgentinaElwin Sharvill NEW
Aditya O WieserCanadaElwin Sharvill NEGOTIATION
Deepesh M VocelkaAustraliaAnna Fali NEW
Leon W ButtJapanAsiya Javayant QUALIFIED
Leja B MorascaBrazilStephen Shaw NEGOTIATION
Greenwood B GillianBrazilXuxue Feng PROPOSAL
Ivar Q ButtJapanStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aruna X FigeroaAustraliaBernardo Dominic QUALIFIED
Leon U InouyeItalyXuxue Feng QUALIFIED
Aditya N WhobreyGermanyIoni Bowcher PROPOSAL
Maisha T ChuiArgentinaIvan Magalhaes UNQUALIFIED
Kadeem X GlickAustraliaOnyama Limba PROPOSAL
Leja K KolmetzArgentinaAnna Fali PROPOSAL
Aditya G MaletCanadaIoni Bowcher PROPOSAL
Maria M MacleadGermanyElwin Sharvill NEW
Darci Y FlosiBrazilOnyama Limba QUALIFIED
Murillo R MarrierIndiaXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily M SergiCanada2024-05-16Morlong Associates NEGOTIATION14Anna Fali
1001Aika J SergiArgentina2024-05-31Morlong Associates NEGOTIATION89Anna Fali
1002Sinclair C GlickItaly2024-06-01Truhlar And Truhlar Attys NEW74Ivan Magalhaes
1003Clifford D WaycottBrazil2024-05-16Chemel, James L Cpa NEW33Ivan Magalhaes
1004Murillo U StockhamJapan2024-05-20Feiner Bros RENEWAL48Stephen Shaw
1005Jennifer F MarrierSpain2024-05-28King, Christopher A Esq PROPOSAL36Onyama Limba
1006Aditya Z FlosiSpain2024-06-07Benton, John B Jr QUALIFIED7Ioni Bowcher
1007Rodrigues E PerinRussia2024-06-06Feiner Bros RENEWAL16Bernardo Dominic
1008Octavia J PoquetteRussia2024-05-24King, Christopher A Esq UNQUALIFIED2Elwin Sharvill
1009Maria D DilliardUnited Kingdom2024-05-21Commercial Press NEGOTIATION27Stephen Shaw
1010Emily E AmigonRussia2024-06-07Truhlar And Truhlar Attys RENEWAL75Amy Elsner
1011Octavia G StockhamUnited Kingdom2024-05-18Chemel, James L Cpa NEGOTIATION72Xuxue Feng
1012Ivar L ShinkoItaly2024-05-12Chemel, James L Cpa UNQUALIFIED45Amy Elsner
1013Mayumi Y RutaSpain2024-06-09Buckley Miller Wright QUALIFIED88Bernardo Dominic
1014Jefferson B OldroydRussia2024-05-27Rangoni Of Florence UNQUALIFIED94Elwin Sharvill
1015Tony C MorascaAustralia2024-05-25Chemel, James L Cpa UNQUALIFIED73Stephen Shaw
1016Emily G SlusarskiSpain2024-05-21Chapman, Ross E Esq RENEWAL67Stephen Shaw
1017Mayumi Y NestleAustralia2024-05-31Morlong Associates PROPOSAL8Ioni Bowcher
1018David J KolmetzFrance2024-05-12Rangoni Of Florence QUALIFIED15Xuxue Feng
1019Costa U MaletCanada2024-05-17Feiner Bros RENEWAL51Ioni Bowcher
1020Nicolas L FerenczSpain2024-06-04King, Christopher A Esq NEGOTIATION99Amy Elsner
1021Darci U OstroskyCanada2024-05-30Feiner Bros QUALIFIED78Asiya Javayant
1022Izzy E VocelkaFrance2024-05-25Chapman, Ross E Esq NEW24Elwin Sharvill
1023Johnson F AmigonAustralia2024-05-21Rangoni Of Florence QUALIFIED34Amy Elsner
1024Claire U FollerAustralia2024-05-17Printing Dimensions NEW26Stephen Shaw
1025Deepesh E WaycottGermany2024-05-18Commercial Press NEGOTIATION68Asiya Javayant
1026Silvio X RulapaughUnited Kingdom2024-06-10Printing Dimensions PROPOSAL83Bernardo Dominic
1027David L MacleadGermany2024-06-09Feltz Printing Service NEW12Ioni Bowcher
1028Rodrigues F VenereUnited Kingdom2024-06-07Rousseaux, Michael Esq PROPOSAL95Amy Elsner
1029Misaki Y PaprockiArgentina2024-05-27Printing Dimensions QUALIFIED62Ioni Bowcher
1030Smith E IturbideGermany2024-05-16Feltz Printing Service UNQUALIFIED81Elwin Sharvill
1031Tony P DarakjySpain2024-06-06Rangoni Of Florence PROPOSAL13Bernardo Dominic
1032Emily X InouyeAustralia2024-05-24Dorl, James J Esq PROPOSAL56Stephen Shaw
1033Kadeem F MaletUnited Kingdom2024-06-07King, Christopher A Esq UNQUALIFIED0Stephen Shaw
1034Ashley I RimCanada2024-06-05King, Christopher A Esq UNQUALIFIED93Bernardo Dominic
1035Faith A DarakjyAustralia2024-05-19King, Christopher A Esq QUALIFIED52Asiya Javayant
1036Munro X MacleadArgentina2024-05-21Benton, John B Jr NEGOTIATION9Anna Fali
1037Izzy E GillianArgentina2024-06-04Truhlar And Truhlar Attys UNQUALIFIED43Elwin Sharvill
1038Maisha R MaletCanada2024-05-27Commercial Press PROPOSAL12Xuxue Feng
1039Ashley C GauchoJapan2024-05-30Chemel, James L Cpa NEGOTIATION14Amy Elsner
1040Arvin K OstroskySpain2024-05-13Commercial Press NEW61Ivan Magalhaes
1041Jefferson V GlickBrazil2024-05-19Buckley Miller Wright NEGOTIATION37Bernardo Dominic
1042Jefferson T TollnerIndia2024-05-17Buckley Miller Wright NEGOTIATION89Ioni Bowcher
1043Arvin J MorascaAustralia2024-05-25Printing Dimensions RENEWAL43Ivan Magalhaes
1044Aditya X IturbideSpain2024-05-13Dorl, James J Esq UNQUALIFIED44Amy Elsner
1045Aruna C MaletUnited Kingdom2024-05-22Commercial Press PROPOSAL24Asiya Javayant
1046Wickens L RulapaughCanada2024-05-29Commercial Press UNQUALIFIED45Xuxue Feng
1047Aika Y WhobreyFrance2024-05-29Dorl, James J Esq NEGOTIATION77Onyama Limba
1048Jones G RulapaughGermany2024-05-26Rousseaux, Michael Esq PROPOSAL52Amy Elsner
1049Costa I SergiSpain2024-06-10Feiner Bros QUALIFIED66Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Murillo W SchemmerBrazilAmy Elsner RENEWAL
Salvatore P GillianBrazilElwin Sharvill UNQUALIFIED
Maisha J OldroydUnited KingdomElwin Sharvill QUALIFIED
Jefferson T StensethAustraliaAnna Fali RENEWAL
Isabel H RutaItalyAmy Elsner QUALIFIED
Mujtaba V GarufiItalyElwin Sharvill UNQUALIFIED
Rodrigues G RulapaughSpainAmy Elsner NEW
Julie V IturbideUnited KingdomAnna Fali PROPOSAL
Faith F AmigonCanadaOnyama Limba UNQUALIFIED
Wickens C GlickIndiaAsiya Javayant UNQUALIFIED
Morrow L InouyeSpainAsiya Javayant NEW
Kaitlin Z StensethArgentinaBernardo Dominic NEW
Sinclair I PaprockiUnited KingdomAmy Elsner NEGOTIATION
Jeanfrancois F WhobreyBrazilAnna Fali QUALIFIED
Juan K MarrierJapanAnna Fali QUALIFIED
Darci N AlbaresFranceBernardo Dominic PROPOSAL
Smith A MacleadIndiaIvan Magalhaes NEGOTIATION
Tony P RulapaughAustraliaBernardo Dominic NEGOTIATION
Ashley H DilliardAustraliaBernardo Dominic UNQUALIFIED
Mayumi Z MacleadCanadaOnyama Limba NEGOTIATION
Kaitlin R SlusarskiArgentinaAmy Elsner NEW
Deepesh Z RoysterAustraliaBernardo Dominic UNQUALIFIED
Jones X DilliardUnited KingdomAmy Elsner PROPOSAL
Aika M CaudyArgentinaOnyama Limba NEW
Kadeem I MorascaIndiaAmy Elsner PROPOSAL
Arvin J BriddickCanadaAmy Elsner RENEWAL
Rodrigues V OstroskyIndiaXuxue Feng UNQUALIFIED
Juan F KuskoRussiaAmy Elsner NEGOTIATION
Emily H NestleSpainElwin Sharvill RENEWAL
Izzy Q BologniaIndiaIoni Bowcher QUALIFIED
Wickens V AlbaresBrazilXuxue Feng QUALIFIED
Munro K WhobreyAustraliaElwin Sharvill PROPOSAL
Silvio C FerenczSpainIvan Magalhaes QUALIFIED
Misaki S PoquetteCanadaBernardo Dominic NEGOTIATION
Alejandro I RulapaughItalyOnyama Limba RENEWAL
Morrow K CaldareraBrazilBernardo Dominic QUALIFIED
James S MaletJapanAnna Fali QUALIFIED
Francesco E MaletCanadaAsiya Javayant NEGOTIATION
Sinclair R VocelkaJapanOnyama Limba PROPOSAL
David Y PaprockiUnited KingdomElwin Sharvill NEGOTIATION
Johnson C CaldareraJapanOnyama Limba NEW
Deepesh M RoysterBrazilAsiya Javayant UNQUALIFIED
Antonio V GillianUnited KingdomStephen Shaw UNQUALIFIED
Smith Q ButtArgentinaIoni Bowcher NEW
David A SergiSpainOnyama Limba NEW
Antonio B AlbaresSpainAnna Fali RENEWAL
Claire P KuskoIndiaIoni Bowcher PROPOSAL
Emily C FerenczAustraliaXuxue Feng UNQUALIFIED
Jones M MaletIndiaXuxue Feng NEGOTIATION
Stacey Y InouyeBrazilStephen Shaw QUALIFIED
Frozen Columns
Name
Jones Y Ferencz
Salvatore N Inouye
Cody D Iturbide
Juan J Doe
Rodrigues Q Rim
Cody I Stockham
Jennifer Q Gaucho
Murillo O Glick
Kadeem R Poquette
Antonio L Albares
Smith N Schemmer
Kaitlin Y Dilliard
Kadeem L Caldarera
Rodrigues A Caldarera
David G Amigon
Costa N Figeroa
Ricardo T Bowley
Kaitlin S Albares
Izzy D Ruta
Jefferson D Garufi
Murillo E Tollner
Izzy E Stockham
Emily Z Kolmetz
Faith Y Saylors
Kadeem Q Foller
Arvin E Glick
Maria L Inouye
Julie J Kusko
Maisha K Royster
Jeanfrancois C Rulapaugh
Murillo O Bolognia
Darci L Waycott
Francesco E Bowley
Jennifer Y Marrier
Jefferson B Whobrey
Cody U Caudy
Stacey Z Briddick
Jefferson W Maclead
Maria M Campain
Costa S Shinko
Ashley J Flosi
Alejandro P Oldroyd
Maria T Kolmetz
Francesco I Darakjy
Jefferson T Flosi
Cody H Ruta
Silvio X Caudy
Tony P Ferencz
Deepesh O Rulapaugh
Cody C Campain
IdCountryDate
1000Australia2024-05-14
1001Germany2024-06-03
1002Brazil2024-06-04
1003Australia2024-05-31
1004Italy2024-06-04
1005Brazil2024-05-22
1006Italy2024-06-04
1007Japan2024-06-05
1008Germany2024-05-24
1009Russia2024-05-29
1010Russia2024-05-18
1011United Kingdom2024-05-13
1012United Kingdom2024-05-13
1013Germany2024-05-13
1014Germany2024-05-29
1015United Kingdom2024-05-14
1016United Kingdom2024-05-25
1017Brazil2024-05-23
1018United Kingdom2024-05-13
1019Italy2024-05-20
1020Russia2024-06-09
1021France2024-06-06
1022Italy2024-06-02
1023India2024-05-14
1024India2024-05-20
1025France2024-05-27
1026Argentina2024-06-03
1027Brazil2024-05-13
1028Spain2024-06-01
1029Germany2024-05-16
1030Italy2024-05-18
1031Brazil2024-05-24
1032India2024-06-08
1033Germany2024-06-06
1034United Kingdom2024-05-24
1035Germany2024-05-25
1036France2024-06-09
1037Brazil2024-06-06
1038Spain2024-05-15
1039Australia2024-05-19
1040Germany2024-05-13
1041Japan2024-05-18
1042United Kingdom2024-05-28
1043United Kingdom2024-05-12
1044France2024-06-05
1045Russia2024-05-12
1046Australia2024-06-08
1047Russia2024-05-17
1048United Kingdom2024-06-07
1049Russia2024-05-22

On-Demand Data

NameIdCountryDate
Deepesh C Doe1000Germany2024-06-01
Ashley T Gaucho1001Russia2024-05-29
Izzy B Stenseth1002United Kingdom2024-06-07
Emily E Rim1003Germany2024-05-12
David D Inouye1004Russia2024-06-05
Kadeem W Ruta1005Germany2024-05-29
Juan C Gaucho1006Russia2024-05-23
Silvio X Paprocki1007France2024-06-10
Jeanfrancois U Venere1008Argentina2024-06-10
Morrow D Rim1009Brazil2024-05-13
Rodrigues G Gillian1010United Kingdom2024-06-10
Jefferson A Kolmetz1011Japan2024-05-21
Sinclair I Dilliard1012France2024-05-27
Jones L Saylors1013Argentina2024-05-27
Maria Y Poquette1014Argentina2024-05-14
Rodrigues A Amigon1015Japan2024-05-27
Jones I Venere1016Japan2024-05-13
Mujtaba W Caudy1017Japan2024-05-13
Deepesh W Dilliard1018India2024-05-19
Tony T Poquette1019Japan2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith N MorascaIndiaBernardo Dominic PROPOSAL
Ivar S TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Francesco S NestleBrazilStephen Shaw UNQUALIFIED
Cody Q BologniaFranceIoni Bowcher NEGOTIATION
Jennifer N WaycottUnited KingdomIoni Bowcher UNQUALIFIED
Octavia B WaycottFranceXuxue Feng NEW
Aruna F MarrierJapanIvan Magalhaes PROPOSAL
Misaki B MaletRussiaAmy Elsner QUALIFIED
Jefferson W BowleyCanadaAnna Fali NEW
Emily M GarufiRussiaIvan Magalhaes QUALIFIED
Greenwood H AmigonCanadaXuxue Feng UNQUALIFIED
Emily H BologniaJapanXuxue Feng UNQUALIFIED
Alejandro M GauchoIndiaBernardo Dominic NEGOTIATION
Jennifer A ShinkoBrazilStephen Shaw QUALIFIED
Rodrigues C StockhamSpainAnna Fali QUALIFIED
Adams H GlickFranceOnyama Limba RENEWAL
Salvatore I SlusarskiIndiaAmy Elsner PROPOSAL
Nicolas C FerenczRussiaIvan Magalhaes NEGOTIATION
Salvatore H WaycottItalyIoni Bowcher NEW
Salvatore Q ChuiJapanStephen Shaw PROPOSAL
Francesco G SlusarskiJapanBernardo Dominic NEGOTIATION
Emily V BologniaJapanIoni Bowcher NEW
Costa S StensethSpainAmy Elsner RENEWAL
Emily J PerinFranceOnyama Limba QUALIFIED
Darci N RulapaughArgentinaXuxue Feng QUALIFIED
James N RutaRussiaAsiya Javayant PROPOSAL
Octavia R MaletArgentinaElwin Sharvill NEGOTIATION
Francesco S IturbideIndiaXuxue Feng UNQUALIFIED
Kadeem O RoysterAustraliaStephen Shaw RENEWAL
Francesco N MaletFranceElwin Sharvill NEGOTIATION
Leja Q PoquetteArgentinaStephen Shaw NEW
Francesco Z RulapaughBrazilStephen Shaw RENEWAL
Mayumi P BriddickUnited KingdomOnyama Limba UNQUALIFIED
Munro J OstroskyItalyElwin Sharvill NEW
Misaki E CampainFranceAmy Elsner NEGOTIATION
Chavez O DoeSpainXuxue Feng NEGOTIATION
Costa A PaprockiFranceStephen Shaw QUALIFIED
Isabel V CaudyCanadaIvan Magalhaes RENEWAL
Rodrigues D GauchoArgentinaIvan Magalhaes QUALIFIED
David Q SchemmerAustraliaIvan Magalhaes PROPOSAL

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