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
Stacey Z OldroydGermanyStephen Shaw PROPOSAL
Ricardo Y MaletBrazilAmy Elsner QUALIFIED
Chavez Q VenereItalyBernardo Dominic UNQUALIFIED
Jones A SchemmerUnited KingdomElwin Sharvill PROPOSAL
Izzy X FerenczSpainElwin Sharvill NEW
Juan B CaudyAustraliaElwin Sharvill NEGOTIATION
Aditya J TollnerJapanIoni Bowcher NEGOTIATION
Leon Z MaletGermanyOnyama Limba RENEWAL
Maria W WieserIndiaStephen Shaw UNQUALIFIED
James M KuskoIndiaAmy Elsner QUALIFIED
Salvatore F BriddickBrazilIvan Magalhaes NEW
Francesco U IturbideGermanyStephen Shaw RENEWAL
Jefferson J MorascaAustraliaXuxue Feng PROPOSAL
Jeanfrancois B OstroskyItalyAnna Fali UNQUALIFIED
Ivar K TollnerCanadaXuxue Feng RENEWAL
Maria Q RimIndiaElwin Sharvill QUALIFIED
Izzy H CampainFranceAsiya Javayant QUALIFIED
Greenwood F NestleGermanyStephen Shaw UNQUALIFIED
Morrow Q KolmetzArgentinaAmy Elsner PROPOSAL
Jennifer T BowleyJapanIvan Magalhaes PROPOSAL
Murillo X StockhamSpainIvan Magalhaes QUALIFIED
Greenwood W SergiIndiaAnna Fali RENEWAL
Murillo A GarufiRussiaAnna Fali RENEWAL
James U VocelkaItalyXuxue Feng PROPOSAL
Leja D OstroskyCanadaIoni Bowcher PROPOSAL
Maisha W ButtUnited KingdomStephen Shaw NEW
David Y WaycottBrazilIoni Bowcher RENEWAL
Juan C FerenczItalyIvan Magalhaes RENEWAL
Stacey G WieserBrazilIvan Magalhaes NEGOTIATION
Francesco G BowleyItalyIvan Magalhaes QUALIFIED
Costa Z SergiItalyOnyama Limba PROPOSAL
Juan V RoysterCanadaOnyama Limba NEW
Greenwood N MacleadSpainAmy Elsner NEW
Faith Z CampainGermanyStephen Shaw NEGOTIATION
Aruna C GillianBrazilBernardo Dominic PROPOSAL
Cody C PoquetteRussiaStephen Shaw NEW
Leon T MacleadJapanAnna Fali RENEWAL
Stacey V StockhamFranceIoni Bowcher RENEWAL
Silvio L VocelkaUnited KingdomIoni Bowcher NEGOTIATION
Emily X NickaJapanAmy Elsner PROPOSAL
Silvio Q StockhamRussiaBernardo Dominic QUALIFIED
Jefferson C OldroydRussiaElwin Sharvill PROPOSAL
Maria B GillianRussiaAnna Fali NEW
Emily H DilliardArgentinaOnyama Limba RENEWAL
Johnson E ButtArgentinaBernardo Dominic NEGOTIATION
Adams O MaletItalyBernardo Dominic QUALIFIED
Rodrigues V SlusarskiItalyXuxue Feng UNQUALIFIED
Kadeem O RimUnited KingdomIoni Bowcher PROPOSAL
Costa N PaprockiRussiaAsiya Javayant NEGOTIATION
Rodrigues S PoquetteUnited KingdomAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leon N WaycottBrazilBernardo Dominic UNQUALIFIED
Chavez A MaletGermanyBernardo Dominic QUALIFIED
Clifford K IturbideRussiaIvan Magalhaes NEGOTIATION
Arvin Y PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Munro W GillianIndiaIvan Magalhaes NEW
Arvin O NestleFranceXuxue Feng PROPOSAL
Clifford N InouyeItalyOnyama Limba RENEWAL
Silvio K RoysterBrazilBernardo Dominic UNQUALIFIED
Claire S GauchoUnited KingdomXuxue Feng RENEWAL
Smith C StockhamFranceXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith D BriddickAustralia2025-04-17Benton, John B Jr UNQUALIFIED10Ivan Magalhaes
1001Leja R BologniaUnited Kingdom2025-04-19Chapman, Ross E Esq UNQUALIFIED15Ivan Magalhaes
1002Mujtaba T ChuiIndia2025-04-25Chemel, James L Cpa RENEWAL72Bernardo Dominic
1003Jefferson K MaletArgentina2025-04-26Morlong Associates RENEWAL40Ivan Magalhaes
1004Antonio F CaudyFrance2025-04-25Chapman, Ross E Esq PROPOSAL0Xuxue Feng
1005Arvin F BowleySpain2025-04-15Chapman, Ross E Esq NEW35Ioni Bowcher
1006Arvin H MarrierBrazil2025-04-13Rousseaux, Michael Esq RENEWAL87Onyama Limba
1007Aruna F BologniaGermany2025-04-09Feltz Printing Service UNQUALIFIED48Bernardo Dominic
1008Kaitlin C InouyeSpain2025-04-25Buckley Miller Wright UNQUALIFIED19Asiya Javayant
1009Aditya O GarufiArgentina2025-04-22Rousseaux, Michael Esq RENEWAL32Elwin Sharvill
1010Jefferson M StensethAustralia2025-04-20Dorl, James J Esq PROPOSAL22Bernardo Dominic
1011Stacey G BriddickBrazil2025-04-30Chapman, Ross E Esq QUALIFIED84Asiya Javayant
1012Aditya N DoeArgentina2025-04-15Chapman, Ross E Esq NEW37Anna Fali
1013Jefferson O MarrierAustralia2025-04-14Chapman, Ross E Esq PROPOSAL92Amy Elsner
1014Murillo I MaletAustralia2025-04-02Chemel, James L Cpa NEGOTIATION47Bernardo Dominic
1015Chavez T SlusarskiUnited Kingdom2025-04-08Chapman, Ross E Esq RENEWAL21Amy Elsner
1016Ashley O FollerAustralia2025-04-08Feltz Printing Service UNQUALIFIED18Amy Elsner
1017Adams I GlickCanada2025-04-26Feltz Printing Service NEGOTIATION31Ivan Magalhaes
1018Arvin J MarrierSpain2025-04-15Truhlar And Truhlar Attys NEW51Bernardo Dominic
1019Aruna E DarakjyGermany2025-04-17Feiner Bros RENEWAL61Elwin Sharvill
1020James T GlickRussia2025-04-24Chemel, James L Cpa NEW42Anna Fali
1021Isabel Z WieserIndia2025-04-12Feltz Printing Service QUALIFIED80Ioni Bowcher
1022Octavia L AmigonGermany2025-04-24Chemel, James L Cpa QUALIFIED9Amy Elsner
1023Aruna E FerenczAustralia2025-04-25Commercial Press RENEWAL24Stephen Shaw
1024Johnson S VocelkaJapan2025-04-25Chanay, Jeffrey A Esq QUALIFIED3Stephen Shaw
1025Cody Y ChuiCanada2025-04-04Commercial Press QUALIFIED11Xuxue Feng
1026Emily J AlbaresUnited Kingdom2025-04-16King, Christopher A Esq QUALIFIED10Stephen Shaw
1027Smith H GillianIndia2025-04-11Dorl, James J Esq UNQUALIFIED68Xuxue Feng
1028Jennifer T AmigonSpain2025-04-06Rousseaux, Michael Esq RENEWAL70Anna Fali
1029Tony Z GlickFrance2025-04-02King, Christopher A Esq RENEWAL7Ioni Bowcher
1030Murillo E DoeBrazil2025-04-21Dorl, James J Esq NEW20Ivan Magalhaes
1031Greenwood S FerenczBrazil2025-04-15Truhlar And Truhlar Attys QUALIFIED72Asiya Javayant
1032Ricardo X WaycottAustralia2025-04-16King, Christopher A Esq NEGOTIATION54Asiya Javayant
1033Kaitlin M SaylorsAustralia2025-04-04Commercial Press PROPOSAL55Asiya Javayant
1034Jeanfrancois P GillianJapan2025-04-04Rousseaux, Michael Esq UNQUALIFIED45Asiya Javayant
1035Rodrigues O InouyeFrance2025-04-25Commercial Press RENEWAL13Elwin Sharvill
1036Sinclair Q RulapaughSpain2025-04-16King, Christopher A Esq UNQUALIFIED99Bernardo Dominic
1037Izzy M CampainBrazil2025-04-13Printing Dimensions UNQUALIFIED97Xuxue Feng
1038Adams P InouyeGermany2025-04-16Chemel, James L Cpa QUALIFIED78Ioni Bowcher
1039Claire J BriddickAustralia2025-04-03Printing Dimensions NEW75Ioni Bowcher
1040Nicolas F GillianRussia2025-04-09Chapman, Ross E Esq UNQUALIFIED11Anna Fali
1041Isabel N MacleadGermany2025-04-01Chapman, Ross E Esq NEW44Elwin Sharvill
1042Wickens S IturbideCanada2025-04-14Chanay, Jeffrey A Esq NEGOTIATION56Onyama Limba
1043Misaki A GlickFrance2025-04-04Buckley Miller Wright NEGOTIATION98Xuxue Feng
1044Antonio F PaprockiBrazil2025-04-29Buckley Miller Wright UNQUALIFIED49Asiya Javayant
1045Jennifer Z IturbideGermany2025-04-21Feltz Printing Service UNQUALIFIED2Elwin Sharvill
1046Leja Q GillianBrazil2025-04-27Morlong Associates RENEWAL37Anna Fali
1047Smith O MorascaBrazil2025-04-25Feltz Printing Service NEW83Elwin Sharvill
1048Munro H CaldareraRussia2025-04-16Commercial Press QUALIFIED31Ivan Magalhaes
1049Wickens L VenereCanada2025-04-30Rangoni Of Florence RENEWAL83Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aditya O MacleadGermanyIvan Magalhaes RENEWAL
Misaki D DoeAustraliaIvan Magalhaes QUALIFIED
Ashley Z SchemmerCanadaBernardo Dominic PROPOSAL
Aruna T SergiJapanXuxue Feng QUALIFIED
Arvin G GarufiRussiaAnna Fali NEW
Clifford J PoquetteAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois C GarufiFranceIoni Bowcher NEGOTIATION
Rodrigues J MaletGermanyIvan Magalhaes RENEWAL
Jefferson U MaletUnited KingdomElwin Sharvill UNQUALIFIED
Izzy N VenereBrazilXuxue Feng QUALIFIED
Julie V SaylorsArgentinaIoni Bowcher PROPOSAL
Leja M StensethAustraliaOnyama Limba PROPOSAL
Kadeem G WhobreyFranceStephen Shaw RENEWAL
Jefferson V FigeroaJapanElwin Sharvill NEGOTIATION
Wickens R NickaArgentinaElwin Sharvill QUALIFIED
Octavia X MaletGermanyOnyama Limba UNQUALIFIED
Kadeem S CampainRussiaAnna Fali QUALIFIED
Mayumi C KolmetzIndiaStephen Shaw NEGOTIATION
Antonio R MarrierItalyAmy Elsner NEW
Adams W MaletBrazilXuxue Feng PROPOSAL
Jefferson U NestleArgentinaBernardo Dominic PROPOSAL
Aruna X DilliardJapanAnna Fali NEW
Smith Y PaprockiBrazilStephen Shaw PROPOSAL
Wickens P NestleFranceStephen Shaw NEW
Maria Q NestleItalyAmy Elsner QUALIFIED
Octavia S FollerJapanBernardo Dominic PROPOSAL
Darci L ShinkoCanadaAnna Fali QUALIFIED
Juan P StockhamCanadaIvan Magalhaes QUALIFIED
Isabel R ChuiItalyIoni Bowcher UNQUALIFIED
Maria E FlosiGermanyAnna Fali QUALIFIED
Adams T ButtSpainStephen Shaw PROPOSAL
Jefferson L AmigonItalyBernardo Dominic NEW
Johnson J NestleSpainBernardo Dominic NEW
David T SlusarskiBrazilIoni Bowcher NEW
Claire J ChuiArgentinaOnyama Limba NEGOTIATION
David E AlbaresAustraliaAsiya Javayant RENEWAL
Murillo F BriddickCanadaStephen Shaw PROPOSAL
Adams V ShinkoItalyStephen Shaw NEGOTIATION
Aditya O RutaAustraliaXuxue Feng RENEWAL
Maisha U SergiJapanIvan Magalhaes UNQUALIFIED
Morrow Y SergiCanadaIoni Bowcher PROPOSAL
Izzy Q SergiJapanIoni Bowcher NEW
James N BologniaBrazilAsiya Javayant RENEWAL
Ashley R RutaIndiaXuxue Feng RENEWAL
Antonio O VenereArgentinaAmy Elsner NEGOTIATION
Jones M FigeroaRussiaBernardo Dominic RENEWAL
Nicolas Z IturbideSpainAnna Fali UNQUALIFIED
Misaki H TollnerRussiaIoni Bowcher NEGOTIATION
Sinclair J MarrierCanadaStephen Shaw NEW
Faith Z AmigonRussiaAsiya Javayant PROPOSAL
Frozen Columns
Name
Alejandro D Oldroyd
Isabel T Ostrosky
Misaki T Garufi
Munro I Stenseth
Greenwood Q Royster
Costa R Flosi
Rodrigues J Shinko
Adams W Campain
Tony I Figeroa
Isabel K Marrier
Clifford R Nicka
Salvatore O Wieser
Darci Q Figeroa
Misaki X Stenseth
Ashley R Bolognia
Chavez B Rulapaugh
Clifford C Butt
Izzy B Stenseth
Nicolas F Malet
Silvio G Venere
Alejandro A Gaucho
Emily Z Morasca
Arvin I Gillian
Octavia E Briddick
Smith K Stockham
Clifford K Caldarera
Stacey K Paprocki
Cody C Caudy
Deepesh Y Bowley
Smith E Venere
Jefferson K Waycott
Alejandro G Inouye
Maria N Kusko
Tony N Bowley
Murillo O Caldarera
Arvin U Chui
Octavia R Stockham
Sinclair C Poquette
Costa P Slusarski
Leja F Amigon
Ricardo P Poquette
Deepesh C Foller
Mayumi Z Venere
Leon H Royster
Cody P Darakjy
Emily S Paprocki
Morrow E Wieser
Salvatore F Ostrosky
Murillo R Malet
James E Schemmer
IdCountryDate
1000Germany2025-04-23
1001Germany2025-04-14
1002France2025-04-19
1003Australia2025-04-08
1004Australia2025-04-10
1005India2025-04-10
1006United Kingdom2025-04-03
1007Brazil2025-04-22
1008Italy2025-04-28
1009Argentina2025-04-12
1010India2025-04-21
1011France2025-04-24
1012Germany2025-04-11
1013Russia2025-04-23
1014Russia2025-04-23
1015Germany2025-04-10
1016Brazil2025-04-16
1017United Kingdom2025-04-30
1018Argentina2025-04-03
1019India2025-04-25
1020Australia2025-04-04
1021Russia2025-04-12
1022France2025-04-19
1023Argentina2025-04-10
1024Canada2025-04-29
1025India2025-04-17
1026Argentina2025-04-17
1027India2025-04-28
1028Spain2025-04-14
1029France2025-04-02
1030Russia2025-04-02
1031Japan2025-04-08
1032United Kingdom2025-04-11
1033United Kingdom2025-04-21
1034Spain2025-04-11
1035Brazil2025-04-14
1036France2025-04-28
1037Japan2025-04-07
1038Spain2025-04-23
1039Russia2025-04-09
1040Spain2025-04-05
1041Russia2025-04-14
1042Italy2025-04-15
1043Brazil2025-04-03
1044Japan2025-04-28
1045Japan2025-04-08
1046Spain2025-04-18
1047Spain2025-04-08
1048Japan2025-04-28
1049Brazil2025-04-15

On-Demand Data

NameIdCountryDate
Juan C Butt1000Brazil2025-04-11
Emily D Sergi1001Australia2025-04-25
Jefferson H Tollner1002Japan2025-04-20
Wickens A Perin1003Japan2025-04-12
Chavez H Shinko1004Canada2025-04-14
Stacey E Venere1005Canada2025-04-18
Arvin N Royster1006Argentina2025-04-02
Costa D Caudy1007Brazil2025-04-26
Tony G Iturbide1008Germany2025-04-11
Claire N Poquette1009Argentina2025-04-26
Mujtaba H Poquette1010Argentina2025-04-28
Izzy S Bowley1011Argentina2025-04-23
Isabel E Stenseth1012Germany2025-04-16
Ricardo W Chui1013Italy2025-04-12
James Y Albares1014France2025-04-21
Wickens Y Vocelka1015Germany2025-04-19
Tony P Glick1016Germany2025-04-03
Smith A Foller1017Japan2025-04-05
Ivar I Malet1018Spain2025-04-13
Sinclair A Whobrey1019Brazil2025-04-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois D FerenczFranceIvan Magalhaes UNQUALIFIED
Ashley M MaletCanadaIoni Bowcher QUALIFIED
Kadeem R MaletGermanyXuxue Feng QUALIFIED
Greenwood I MaletArgentinaBernardo Dominic NEW
Morrow W AlbaresCanadaAmy Elsner RENEWAL
Johnson R RulapaughAustraliaAsiya Javayant RENEWAL
Costa Z BowleyAustraliaAnna Fali NEW
Leja W RoysterCanadaXuxue Feng QUALIFIED
Ricardo L ChuiJapanAmy Elsner NEW
Emily K IturbideAustraliaXuxue Feng QUALIFIED
Johnson K RoysterSpainAmy Elsner UNQUALIFIED
Cody R MarrierBrazilAsiya Javayant UNQUALIFIED
Emily E ChuiArgentinaIoni Bowcher PROPOSAL
David K MorascaJapanAnna Fali QUALIFIED
Isabel B SchemmerJapanAsiya Javayant QUALIFIED
Claire M StockhamArgentinaAmy Elsner NEW
Morrow T WaycottCanadaXuxue Feng RENEWAL
Arvin G ShinkoRussiaIoni Bowcher UNQUALIFIED
Salvatore L FerenczFranceOnyama Limba NEGOTIATION
Izzy N SaylorsRussiaStephen Shaw NEW
Jennifer B ShinkoGermanyOnyama Limba QUALIFIED
Tony U FollerCanadaIvan Magalhaes NEW
Misaki A AmigonRussiaBernardo Dominic RENEWAL
Juan G MaletSpainAnna Fali RENEWAL
Tony V ButtRussiaBernardo Dominic PROPOSAL
Maria J VocelkaGermanyBernardo Dominic UNQUALIFIED
Cody O MorascaSpainAnna Fali QUALIFIED
Deepesh M GlickArgentinaAmy Elsner RENEWAL
Wickens O GarufiArgentinaXuxue Feng QUALIFIED
Jefferson E ButtAustraliaAnna Fali UNQUALIFIED
Chavez U MorascaBrazilXuxue Feng NEW
Leon N WaycottItalyXuxue Feng UNQUALIFIED
Julie I GauchoItalyAnna Fali QUALIFIED
Stacey A PaprockiFranceElwin Sharvill PROPOSAL
James G FerenczArgentinaXuxue Feng QUALIFIED
Munro F SlusarskiUnited KingdomAnna Fali NEW
David D RoysterIndiaIvan Magalhaes RENEWAL
Mujtaba X BowleySpainXuxue Feng UNQUALIFIED
Octavia W PoquetteFranceBernardo Dominic PROPOSAL
Aditya K KuskoSpainElwin Sharvill 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>