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
Izzy T OstroskyGermanyAsiya Javayant PROPOSAL
Jones V RimIndiaAsiya Javayant RENEWAL
Aruna I GlickJapanAsiya Javayant UNQUALIFIED
James C MaletAustraliaAsiya Javayant RENEWAL
Darci G FerenczGermanyElwin Sharvill NEGOTIATION
Murillo T CampainGermanyAsiya Javayant NEGOTIATION
Isabel F SergiUnited KingdomAmy Elsner NEW
Silvio X ButtAustraliaXuxue Feng RENEWAL
Aditya T KuskoCanadaAmy Elsner NEW
Greenwood D RoysterItalyOnyama Limba NEGOTIATION
Cody X CaldareraItalyIoni Bowcher PROPOSAL
Jeanfrancois A DilliardItalyXuxue Feng RENEWAL
Jennifer Q RutaRussiaIoni Bowcher NEW
Darci Y SaylorsRussiaXuxue Feng QUALIFIED
Leon P MacleadIndiaAmy Elsner PROPOSAL
Faith V RoysterItalyAnna Fali RENEWAL
Johnson I WieserItalyXuxue Feng NEW
Alejandro Z FerenczArgentinaAnna Fali UNQUALIFIED
Juan U BowleyRussiaIoni Bowcher NEGOTIATION
David C FollerIndiaStephen Shaw NEW
Leja W MaletItalyAnna Fali UNQUALIFIED
Antonio T PerinBrazilIvan Magalhaes RENEWAL
Clifford U VenereIndiaAmy Elsner RENEWAL
Sinclair F IturbideGermanyXuxue Feng RENEWAL
Morrow C GillianItalyIvan Magalhaes NEGOTIATION
Stacey R ButtArgentinaAnna Fali QUALIFIED
Jeanfrancois I StockhamCanadaAsiya Javayant NEGOTIATION
Kadeem Z AlbaresUnited KingdomElwin Sharvill NEW
Clifford L MaletCanadaAsiya Javayant RENEWAL
Leja K PerinItalyOnyama Limba NEGOTIATION
Sinclair E BowleyUnited KingdomBernardo Dominic PROPOSAL
Murillo N ButtItalyAnna Fali NEW
Jeanfrancois I MaletUnited KingdomAnna Fali NEW
Adams O WieserRussiaStephen Shaw UNQUALIFIED
Tony W FerenczBrazilBernardo Dominic NEW
Octavia U DilliardUnited KingdomOnyama Limba QUALIFIED
Deepesh D PerinArgentinaAsiya Javayant RENEWAL
Julie G PerinBrazilElwin Sharvill QUALIFIED
Cody W BriddickArgentinaBernardo Dominic RENEWAL
Isabel E GarufiRussiaAsiya Javayant NEGOTIATION
Salvatore M StensethArgentinaBernardo Dominic PROPOSAL
Munro E CaldareraGermanyAsiya Javayant NEW
Cody A SlusarskiSpainAsiya Javayant NEW
Aruna C AmigonItalyAmy Elsner UNQUALIFIED
Murillo N GillianGermanyIoni Bowcher NEGOTIATION
Aika L BriddickItalyIvan Magalhaes UNQUALIFIED
Costa T FlosiJapanStephen Shaw QUALIFIED
Izzy S NestleBrazilIvan Magalhaes UNQUALIFIED
Costa X SchemmerGermanyAnna Fali QUALIFIED
Clifford Z StensethIndiaBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin Q IturbideJapanOnyama Limba QUALIFIED
Ricardo U FlosiItalyBernardo Dominic UNQUALIFIED
Greenwood K GillianAustraliaStephen Shaw NEGOTIATION
Ricardo T RulapaughItalyAnna Fali UNQUALIFIED
Ashley L SaylorsArgentinaAsiya Javayant PROPOSAL
Julie Y SergiIndiaIvan Magalhaes PROPOSAL
Johnson J ChuiIndiaAnna Fali RENEWAL
Arvin E VocelkaUnited KingdomAnna Fali NEW
Juan X IturbideIndiaXuxue Feng NEGOTIATION
Greenwood E GauchoRussiaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem B ChuiRussia2024-05-27Commercial Press NEW62Asiya Javayant
1001Octavia G ShinkoJapan2024-05-28Printing Dimensions NEGOTIATION95Xuxue Feng
1002Chavez X BologniaArgentina2024-06-16Feiner Bros RENEWAL68Xuxue Feng
1003Aruna T SchemmerBrazil2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED40Xuxue Feng
1004Rodrigues Q StockhamUnited Kingdom2024-05-24Buckley Miller Wright RENEWAL80Elwin Sharvill
1005Jennifer H PoquetteCanada2024-06-18Printing Dimensions NEW76Asiya Javayant
1006Jennifer T RimSpain2024-06-14Feiner Bros PROPOSAL58Amy Elsner
1007Mayumi J FlosiItaly2024-05-26Rangoni Of Florence PROPOSAL41Anna Fali
1008Morrow U PerinCanada2024-06-22Printing Dimensions QUALIFIED88Ioni Bowcher
1009Jones O TollnerBrazil2024-06-21Rangoni Of Florence NEW8Onyama Limba
1010Antonio N FollerAustralia2024-05-27Dorl, James J Esq NEGOTIATION92Bernardo Dominic
1011Ashley X MaletJapan2024-06-12Chapman, Ross E Esq UNQUALIFIED62Stephen Shaw
1012Deepesh W BriddickIndia2024-05-25Truhlar And Truhlar Attys UNQUALIFIED39Elwin Sharvill
1013Costa S ButtCanada2024-06-15Feiner Bros PROPOSAL25Elwin Sharvill
1014Smith C RulapaughJapan2024-06-06Dorl, James J Esq PROPOSAL81Ivan Magalhaes
1015Arvin L WaycottGermany2024-06-14Rangoni Of Florence NEGOTIATION57Amy Elsner
1016Emily D ChuiBrazil2024-06-02King, Christopher A Esq NEGOTIATION58Bernardo Dominic
1017Alejandro W SlusarskiUnited Kingdom2024-06-11Truhlar And Truhlar Attys PROPOSAL94Asiya Javayant
1018Morrow L MarrierRussia2024-06-13Rangoni Of Florence NEW13Onyama Limba
1019Nicolas A GillianGermany2024-06-02Benton, John B Jr QUALIFIED62Anna Fali
1020Darci J GauchoGermany2024-06-13Truhlar And Truhlar Attys PROPOSAL69Stephen Shaw
1021Jones B PaprockiFrance2024-05-28Benton, John B Jr NEGOTIATION73Xuxue Feng
1022Ricardo Y KolmetzSpain2024-06-20Printing Dimensions NEGOTIATION95Elwin Sharvill
1023Alejandro B DilliardSpain2024-06-15Feltz Printing Service QUALIFIED12Ioni Bowcher
1024James S ChuiBrazil2024-06-03Commercial Press PROPOSAL19Asiya Javayant
1025Smith Y GillianCanada2024-06-02Rangoni Of Florence UNQUALIFIED11Xuxue Feng
1026Wickens V RoysterGermany2024-06-21Rangoni Of Florence PROPOSAL33Onyama Limba
1027Arvin E WhobreyCanada2024-06-09Commercial Press QUALIFIED10Amy Elsner
1028Clifford S BowleyAustralia2024-05-27Rousseaux, Michael Esq QUALIFIED84Ivan Magalhaes
1029Jennifer P ButtJapan2024-06-07Chapman, Ross E Esq NEW85Onyama Limba
1030Munro Y FerenczArgentina2024-06-10Chanay, Jeffrey A Esq PROPOSAL93Onyama Limba
1031Silvio M ChuiUnited Kingdom2024-06-03Dorl, James J Esq PROPOSAL44Ioni Bowcher
1032Ricardo J StensethIndia2024-05-31Rousseaux, Michael Esq QUALIFIED13Anna Fali
1033Kaitlin A GarufiAustralia2024-06-20Rousseaux, Michael Esq NEGOTIATION89Ioni Bowcher
1034Emily Q CaldareraAustralia2024-06-19Chemel, James L Cpa UNQUALIFIED85Elwin Sharvill
1035Ivar L SlusarskiJapan2024-06-15Truhlar And Truhlar Attys RENEWAL74Ivan Magalhaes
1036Leja T ShinkoCanada2024-06-13Morlong Associates PROPOSAL16Onyama Limba
1037Salvatore A ButtArgentina2024-05-31Feiner Bros PROPOSAL43Bernardo Dominic
1038Juan N VocelkaAustralia2024-05-26Morlong Associates UNQUALIFIED6Bernardo Dominic
1039Adams O DarakjyRussia2024-06-03Chapman, Ross E Esq QUALIFIED0Ivan Magalhaes
1040Octavia G BologniaSpain2024-06-10Morlong Associates NEW14Xuxue Feng
1041Aditya M MorascaAustralia2024-05-25Chapman, Ross E Esq UNQUALIFIED47Bernardo Dominic
1042Jeanfrancois O OldroydSpain2024-06-16Feiner Bros QUALIFIED11Elwin Sharvill
1043Jefferson I AlbaresBrazil2024-05-24Truhlar And Truhlar Attys PROPOSAL20Amy Elsner
1044Rodrigues O MarrierGermany2024-05-30Chanay, Jeffrey A Esq QUALIFIED59Elwin Sharvill
1045Deepesh E CaudyUnited Kingdom2024-06-05Benton, John B Jr NEGOTIATION81Bernardo Dominic
1046Kaitlin Q BologniaCanada2024-05-25Commercial Press NEW58Xuxue Feng
1047Nicolas Z WhobreyCanada2024-06-11Buckley Miller Wright UNQUALIFIED27Stephen Shaw
1048Munro F MarrierBrazil2024-06-16Morlong Associates QUALIFIED45Elwin Sharvill
1049Adams U GauchoAustralia2024-06-12Commercial Press NEGOTIATION2Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Deepesh Z MaletFranceAmy Elsner NEGOTIATION
Isabel V VocelkaJapanAnna Fali RENEWAL
Aditya W OstroskyJapanIoni Bowcher UNQUALIFIED
Claire F DilliardRussiaAsiya Javayant NEW
Octavia K KolmetzGermanyAnna Fali NEGOTIATION
Emily M SchemmerArgentinaAmy Elsner NEW
Ashley R ChuiFranceIvan Magalhaes QUALIFIED
Wickens A KuskoCanadaBernardo Dominic RENEWAL
Kaitlin Y DarakjyGermanyAsiya Javayant UNQUALIFIED
Ricardo B MarrierGermanyElwin Sharvill QUALIFIED
Smith H VocelkaAustraliaBernardo Dominic QUALIFIED
Greenwood L MorascaCanadaAmy Elsner RENEWAL
Leon B SlusarskiIndiaElwin Sharvill QUALIFIED
Leon T WhobreyIndiaXuxue Feng UNQUALIFIED
Greenwood G RutaSpainAmy Elsner NEW
Mujtaba H OldroydSpainAnna Fali NEW
Morrow M SchemmerFranceIoni Bowcher NEW
Emily L InouyeUnited KingdomStephen Shaw RENEWAL
Rodrigues A AlbaresAustraliaIoni Bowcher NEW
Kadeem L MaletJapanIvan Magalhaes NEGOTIATION
Jeanfrancois D NickaItalyOnyama Limba QUALIFIED
Maria H PoquetteIndiaXuxue Feng NEGOTIATION
Kadeem F MaletSpainAmy Elsner UNQUALIFIED
Jefferson A GarufiRussiaAsiya Javayant RENEWAL
Leon X FlosiFranceElwin Sharvill NEGOTIATION
Emily C IturbideGermanyXuxue Feng PROPOSAL
Kaitlin V ShinkoCanadaBernardo Dominic UNQUALIFIED
Kaitlin A PaprockiItalyAmy Elsner UNQUALIFIED
Nicolas N NestleGermanyAnna Fali NEGOTIATION
Jones U SaylorsIndiaAsiya Javayant UNQUALIFIED
Ricardo P RoysterItalyBernardo Dominic QUALIFIED
Leon M MaletAustraliaAmy Elsner RENEWAL
Deepesh T WieserArgentinaOnyama Limba NEGOTIATION
Deepesh F RulapaughFranceIvan Magalhaes NEGOTIATION
Francesco L VenereArgentinaIvan Magalhaes QUALIFIED
Rodrigues S ChuiRussiaAsiya Javayant RENEWAL
Maisha L VocelkaAustraliaElwin Sharvill NEW
Kadeem R MacleadCanadaIvan Magalhaes UNQUALIFIED
Izzy V BriddickGermanyIoni Bowcher QUALIFIED
Cody C FigeroaBrazilAnna Fali NEGOTIATION
Antonio C RutaRussiaAmy Elsner NEW
Stacey D OldroydIndiaIvan Magalhaes RENEWAL
Aditya L BowleyCanadaXuxue Feng RENEWAL
Smith T NickaIndiaElwin Sharvill QUALIFIED
Claire T SergiCanadaAmy Elsner UNQUALIFIED
Jennifer T MarrierSpainAsiya Javayant UNQUALIFIED
Maria O NestleIndiaStephen Shaw UNQUALIFIED
Misaki C GauchoFranceIvan Magalhaes PROPOSAL
Ashley Y MarrierBrazilElwin Sharvill PROPOSAL
Sinclair C MaletArgentinaStephen Shaw QUALIFIED
Frozen Columns
Name
Francesco T Saylors
James F Paprocki
Izzy F Tollner
Tony M Bolognia
Aditya Y Chui
Chavez K Stenseth
Jeanfrancois D Stenseth
Mayumi J Sergi
Alejandro L Gillian
Maria P Waycott
Chavez D Morasca
Isabel U Vocelka
Isabel P Iturbide
Cody H Royster
Jeanfrancois J Waycott
Jennifer C Butt
Izzy U Bowley
Octavia S Butt
Mujtaba A Malet
Nicolas Z Ferencz
Aika K Shinko
Arvin S Ostrosky
Sinclair M Garufi
Clifford H Stockham
Misaki N Rim
Ashley D Ruta
Clifford G Poquette
Kaitlin P Perin
Jones M Kolmetz
Mayumi Z Vocelka
Deepesh H Maclead
Costa I Albares
Jones M Malet
Nicolas H Poquette
Misaki T Inouye
Arvin O Caldarera
Maria R Dilliard
Jones X Campain
Maisha K Malet
Sinclair L Stockham
Leon T Waycott
Rodrigues I Oldroyd
Julie H Bolognia
Deepesh C Ferencz
Murillo O Chui
Munro U Albares
Chavez V Saylors
Tony V Figeroa
Juan U Bowley
Ricardo U Briddick
IdCountryDate
1000United Kingdom2024-06-05
1001Italy2024-06-04
1002Argentina2024-06-20
1003Argentina2024-05-30
1004India2024-06-17
1005Germany2024-05-27
1006United Kingdom2024-06-07
1007Spain2024-06-02
1008Australia2024-06-10
1009India2024-05-28
1010Argentina2024-05-26
1011United Kingdom2024-06-10
1012Spain2024-06-03
1013United Kingdom2024-06-04
1014Australia2024-06-13
1015Italy2024-06-01
1016India2024-06-09
1017Japan2024-06-19
1018Italy2024-06-22
1019Australia2024-05-25
1020France2024-06-04
1021Argentina2024-06-04
1022Italy2024-06-07
1023India2024-06-12
1024Brazil2024-06-15
1025India2024-06-13
1026Italy2024-05-30
1027Australia2024-06-06
1028Brazil2024-06-15
1029Spain2024-05-24
1030Australia2024-06-08
1031Japan2024-06-09
1032Argentina2024-05-27
1033Spain2024-06-09
1034Italy2024-06-06
1035India2024-06-04
1036India2024-06-06
1037Italy2024-06-07
1038Spain2024-06-13
1039Brazil2024-05-28
1040Japan2024-06-17
1041Russia2024-06-15
1042India2024-06-13
1043India2024-06-19
1044Argentina2024-05-26
1045India2024-06-03
1046Japan2024-06-08
1047Germany2024-06-04
1048Germany2024-06-02
1049Brazil2024-05-29

On-Demand Data

NameIdCountryDate
Faith W Gillian1000Brazil2024-05-24
Aruna Y Waycott1001Japan2024-06-04
Nicolas C Oldroyd1002Japan2024-06-18
Claire N Vocelka1003Argentina2024-06-19
Kaitlin G Briddick1004Russia2024-06-11
Rodrigues U Ruta1005India2024-06-10
Faith L Ostrosky1006United Kingdom2024-06-01
Ivar W Kusko1007Russia2024-06-19
Misaki N Bolognia1008Brazil2024-06-04
Adams D Foller1009France2024-06-21
Munro J Sergi1010Spain2024-06-18
Stacey O Inouye1011Japan2024-05-26
Alejandro G Wieser1012Italy2024-06-16
Faith P Briddick1013India2024-06-05
Darci I Wieser1014Russia2024-06-10
Aika U Marrier1015Japan2024-05-28
Morrow U Stenseth1016France2024-05-31
Salvatore N Ferencz1017Japan2024-06-12
James J Vocelka1018Brazil2024-06-08
Kaitlin Q Stockham1019India2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin M MarrierBrazilAnna Fali UNQUALIFIED
Rodrigues T DoeArgentinaElwin Sharvill NEW
Murillo C FlosiSpainIvan Magalhaes QUALIFIED
Sinclair G WaycottFranceIoni Bowcher PROPOSAL
Aika C ShinkoRussiaStephen Shaw QUALIFIED
Emily W RimJapanOnyama Limba RENEWAL
Stacey E SaylorsBrazilAnna Fali PROPOSAL
Aika B SergiSpainXuxue Feng UNQUALIFIED
Emily W GarufiCanadaAnna Fali NEGOTIATION
Stacey T IturbideJapanStephen Shaw RENEWAL
Morrow P SchemmerCanadaAmy Elsner NEW
Ashley I VenereUnited KingdomElwin Sharvill PROPOSAL
Johnson P KolmetzBrazilIoni Bowcher NEGOTIATION
Johnson K RutaItalyStephen Shaw UNQUALIFIED
Costa B PaprockiArgentinaAsiya Javayant NEGOTIATION
Emily J OldroydIndiaAsiya Javayant PROPOSAL
Tony B RoysterGermanyElwin Sharvill UNQUALIFIED
Adams N VocelkaUnited KingdomIoni Bowcher NEGOTIATION
Leon P BowleyCanadaIvan Magalhaes UNQUALIFIED
Leon Y RimRussiaAsiya Javayant PROPOSAL
Maria Q KuskoBrazilBernardo Dominic RENEWAL
Cody G RulapaughFranceAsiya Javayant RENEWAL
Greenwood D VocelkaSpainBernardo Dominic RENEWAL
Greenwood R PaprockiGermanyIvan Magalhaes PROPOSAL
Aruna P ChuiItalyXuxue Feng NEW
Jefferson V StockhamGermanyAmy Elsner UNQUALIFIED
Aditya B AmigonGermanyBernardo Dominic NEW
Aruna M PerinIndiaIvan Magalhaes PROPOSAL
Jennifer E BriddickItalyXuxue Feng RENEWAL
Kadeem M MaletAustraliaElwin Sharvill NEGOTIATION
Chavez C DoeGermanyIvan Magalhaes NEW
Francesco V StensethCanadaElwin Sharvill RENEWAL
Faith G MaletCanadaAmy Elsner QUALIFIED
Rodrigues E ShinkoIndiaIoni Bowcher PROPOSAL
David G KuskoArgentinaAnna Fali NEW
Aruna Z FlosiFranceStephen Shaw PROPOSAL
Costa K AlbaresJapanIoni Bowcher NEGOTIATION
Francesco K FigeroaGermanyBernardo Dominic NEW
Darci F RoysterBrazilElwin Sharvill QUALIFIED
Leon G BowleyAustraliaIvan Magalhaes UNQUALIFIED

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