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
Juan O FigeroaJapanBernardo Dominic RENEWAL
Jeanfrancois G SlusarskiBrazilXuxue Feng PROPOSAL
James E ShinkoIndiaStephen Shaw RENEWAL
Juan X GillianUnited KingdomAsiya Javayant UNQUALIFIED
Leja N MacleadIndiaAsiya Javayant NEW
Wickens N GarufiAustraliaXuxue Feng NEGOTIATION
Murillo R InouyeArgentinaBernardo Dominic UNQUALIFIED
Alejandro M ShinkoBrazilIvan Magalhaes RENEWAL
Cody R FlosiJapanXuxue Feng NEW
Deepesh S OldroydUnited KingdomBernardo Dominic NEW
Arvin Q RimIndiaAmy Elsner PROPOSAL
Chavez I RimJapanAmy Elsner PROPOSAL
Francesco Z ShinkoBrazilStephen Shaw UNQUALIFIED
Mayumi T WieserJapanElwin Sharvill QUALIFIED
Juan F KuskoRussiaAmy Elsner NEGOTIATION
Cody W DoeFranceAsiya Javayant PROPOSAL
Cody T TollnerFranceStephen Shaw NEW
Tony M MorascaSpainOnyama Limba NEW
Cody A PaprockiRussiaAsiya Javayant QUALIFIED
Ivar H CaldareraUnited KingdomAmy Elsner RENEWAL
Antonio P WaycottAustraliaElwin Sharvill NEW
Maria Q StensethCanadaAnna Fali RENEWAL
Greenwood D MorascaSpainAsiya Javayant PROPOSAL
Adams V BowleyJapanIvan Magalhaes RENEWAL
Sinclair H GarufiJapanIvan Magalhaes QUALIFIED
Kadeem R KolmetzRussiaOnyama Limba PROPOSAL
Claire T AlbaresFranceElwin Sharvill QUALIFIED
Ivar Y FlosiItalyAnna Fali RENEWAL
Murillo V RimCanadaAmy Elsner NEW
Alejandro V StensethUnited KingdomAsiya Javayant RENEWAL
Smith L StensethJapanBernardo Dominic QUALIFIED
Leja Y CaldareraRussiaIoni Bowcher NEW
Izzy E MarrierBrazilAmy Elsner PROPOSAL
Murillo H SaylorsArgentinaAmy Elsner NEW
Rodrigues Z SaylorsIndiaStephen Shaw QUALIFIED
Maria G DoeFranceAmy Elsner NEW
Leja I BologniaAustraliaBernardo Dominic NEW
Cody Z StensethItalyIvan Magalhaes PROPOSAL
Arvin B SaylorsRussiaElwin Sharvill RENEWAL
Leon V ButtCanadaAsiya Javayant RENEWAL
Octavia G DilliardSpainXuxue Feng NEGOTIATION
James P PaprockiItalyAmy Elsner UNQUALIFIED
Jeanfrancois M WieserAustraliaAnna Fali RENEWAL
Arvin W CaldareraIndiaElwin Sharvill QUALIFIED
Tony R DoeRussiaOnyama Limba NEGOTIATION
Mujtaba V GauchoJapanAmy Elsner NEW
Morrow K WaycottBrazilAmy Elsner NEW
Nicolas I SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Morrow F CaudyBrazilAmy Elsner QUALIFIED
Antonio P MaletGermanyOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Misaki Q WieserJapanAsiya Javayant PROPOSAL
Wickens Z OldroydBrazilElwin Sharvill UNQUALIFIED
Sinclair X RutaCanadaOnyama Limba UNQUALIFIED
Kaitlin S RoysterCanadaStephen Shaw UNQUALIFIED
Rodrigues K SaylorsArgentinaStephen Shaw QUALIFIED
Maisha A ChuiSpainBernardo Dominic NEW
Mujtaba H ShinkoJapanAnna Fali UNQUALIFIED
Darci L BologniaSpainElwin Sharvill NEW
Jeanfrancois W PaprockiGermanyAmy Elsner QUALIFIED
Kadeem I WhobreyGermanyOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey U GarufiAustralia2024-06-10Chapman, Ross E Esq QUALIFIED77Stephen Shaw
1001Ivar D CampainIndia2024-06-23Dorl, James J Esq UNQUALIFIED35Anna Fali
1002Smith E RimArgentina2024-06-18Dorl, James J Esq UNQUALIFIED80Stephen Shaw
1003Arvin M IturbideArgentina2024-05-27Feltz Printing Service NEW1Bernardo Dominic
1004Aruna T FlosiArgentina2024-06-13Dorl, James J Esq PROPOSAL92Ivan Magalhaes
1005Claire T CaldareraItaly2024-06-24Printing Dimensions RENEWAL42Stephen Shaw
1006Sinclair W SchemmerArgentina2024-06-09Rousseaux, Michael Esq QUALIFIED27Ioni Bowcher
1007Octavia S VenereUnited Kingdom2024-06-10Buckley Miller Wright NEW36Onyama Limba
1008Nicolas H FlosiItaly2024-06-19Truhlar And Truhlar Attys NEGOTIATION19Xuxue Feng
1009Juan S AlbaresJapan2024-06-23Commercial Press QUALIFIED89Stephen Shaw
1010Tony V NickaFrance2024-05-26Rangoni Of Florence NEW19Ioni Bowcher
1011Aruna S VenereSpain2024-06-04King, Christopher A Esq PROPOSAL68Anna Fali
1012Leja O PoquetteRussia2024-06-21Rangoni Of Florence PROPOSAL57Anna Fali
1013Claire I WieserFrance2024-06-13Buckley Miller Wright RENEWAL14Amy Elsner
1014Misaki M InouyeSpain2024-05-29Printing Dimensions NEW74Onyama Limba
1015Izzy C GarufiCanada2024-06-18Feiner Bros PROPOSAL61Bernardo Dominic
1016Leon H RoysterBrazil2024-05-29Feltz Printing Service PROPOSAL96Onyama Limba
1017Darci W OldroydCanada2024-06-18Commercial Press NEGOTIATION37Anna Fali
1018Jeanfrancois E BriddickFrance2024-05-27Feltz Printing Service NEGOTIATION2Elwin Sharvill
1019Tony E KuskoCanada2024-06-01Rangoni Of Florence PROPOSAL48Onyama Limba
1020Jones B PerinItaly2024-05-29Feltz Printing Service QUALIFIED53Elwin Sharvill
1021Adams J CaldareraFrance2024-06-17Printing Dimensions QUALIFIED99Anna Fali
1022Ivar L RoysterGermany2024-05-28Rousseaux, Michael Esq UNQUALIFIED13Xuxue Feng
1023Jeanfrancois G KuskoJapan2024-06-01Commercial Press NEW27Anna Fali
1024Chavez E CampainGermany2024-06-02Chemel, James L Cpa UNQUALIFIED53Bernardo Dominic
1025Claire R SergiAustralia2024-06-01Chemel, James L Cpa NEGOTIATION52Ivan Magalhaes
1026Julie U GlickJapan2024-05-28Chemel, James L Cpa RENEWAL75Bernardo Dominic
1027Murillo G RutaAustralia2024-06-03Rangoni Of Florence UNQUALIFIED36Amy Elsner
1028Antonio R ShinkoBrazil2024-06-23Buckley Miller Wright NEW97Elwin Sharvill
1029Antonio Z AmigonCanada2024-06-12Rousseaux, Michael Esq NEGOTIATION12Bernardo Dominic
1030Tony J SergiIndia2024-05-30Morlong Associates QUALIFIED86Xuxue Feng
1031Maria J WieserFrance2024-05-27Rangoni Of Florence NEGOTIATION97Xuxue Feng
1032Adams C VocelkaUnited Kingdom2024-05-30Feiner Bros UNQUALIFIED51Onyama Limba
1033Deepesh G BowleyCanada2024-06-20Benton, John B Jr NEGOTIATION77Xuxue Feng
1034Darci O CaldareraAustralia2024-06-23Dorl, James J Esq QUALIFIED34Stephen Shaw
1035Ivar X TollnerIndia2024-05-31Rangoni Of Florence NEW53Ivan Magalhaes
1036Aika Q CampainSpain2024-06-03Chapman, Ross E Esq QUALIFIED33Xuxue Feng
1037Arvin X DarakjyCanada2024-06-06Rousseaux, Michael Esq PROPOSAL5Bernardo Dominic
1038Munro Q TollnerBrazil2024-06-24Feltz Printing Service RENEWAL23Asiya Javayant
1039Antonio X RimBrazil2024-06-18Commercial Press NEW81Ioni Bowcher
1040Johnson U KolmetzJapan2024-05-30Buckley Miller Wright UNQUALIFIED12Ivan Magalhaes
1041Mayumi R SchemmerSpain2024-06-10Benton, John B Jr NEW68Elwin Sharvill
1042Ashley L SaylorsSpain2024-06-11Dorl, James J Esq NEW78Ioni Bowcher
1043Kadeem N GlickSpain2024-05-30Feiner Bros NEW41Onyama Limba
1044Alejandro G AmigonIndia2024-06-16Rousseaux, Michael Esq NEGOTIATION22Bernardo Dominic
1045Juan X GarufiUnited Kingdom2024-05-29Rangoni Of Florence QUALIFIED50Stephen Shaw
1046Cody J BowleyFrance2024-06-10Commercial Press RENEWAL4Xuxue Feng
1047Antonio T SchemmerItaly2024-06-06Truhlar And Truhlar Attys UNQUALIFIED10Elwin Sharvill
1048Sinclair A DilliardSpain2024-06-05Chemel, James L Cpa NEW69Asiya Javayant
1049Misaki D MaletFrance2024-06-17Chanay, Jeffrey A Esq NEGOTIATION87Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba D SlusarskiCanadaXuxue Feng NEGOTIATION
Wickens K FollerAustraliaIvan Magalhaes RENEWAL
Chavez V RimItalyAmy Elsner PROPOSAL
Greenwood G RutaIndiaStephen Shaw QUALIFIED
Silvio I BologniaUnited KingdomElwin Sharvill NEW
Deepesh U VocelkaItalyAnna Fali RENEWAL
Deepesh G TollnerArgentinaAsiya Javayant QUALIFIED
Julie E SchemmerGermanyAsiya Javayant RENEWAL
Arvin Q BriddickArgentinaAmy Elsner RENEWAL
David Q StockhamSpainAsiya Javayant PROPOSAL
Arvin D GlickSpainAnna Fali QUALIFIED
Tony Y ShinkoIndiaAmy Elsner NEGOTIATION
Francesco F ChuiUnited KingdomIoni Bowcher RENEWAL
Smith O FollerFranceIoni Bowcher RENEWAL
Smith J InouyeJapanAsiya Javayant RENEWAL
Chavez T FlosiAustraliaAnna Fali NEW
Faith D CaldareraCanadaAmy Elsner QUALIFIED
Maria B BriddickJapanAnna Fali NEW
Sinclair Z GlickJapanIvan Magalhaes PROPOSAL
Claire C StockhamFranceBernardo Dominic RENEWAL
Jeanfrancois O MarrierIndiaElwin Sharvill RENEWAL
Aika B NickaFranceElwin Sharvill QUALIFIED
Francesco K BriddickCanadaAmy Elsner NEW
Arvin J ShinkoGermanyAmy Elsner UNQUALIFIED
Maisha U SlusarskiFranceIvan Magalhaes NEGOTIATION
Mayumi M BriddickJapanElwin Sharvill UNQUALIFIED
Aika Z MaletUnited KingdomAnna Fali UNQUALIFIED
Salvatore R BriddickFranceXuxue Feng UNQUALIFIED
Kaitlin P GlickUnited KingdomAmy Elsner NEGOTIATION
Jefferson V FollerFranceBernardo Dominic QUALIFIED
Francesco G DarakjyGermanyStephen Shaw QUALIFIED
Ricardo W FerenczItalyAnna Fali QUALIFIED
Mayumi S FlosiJapanElwin Sharvill NEW
Aika Y SchemmerGermanyAsiya Javayant UNQUALIFIED
Francesco T SchemmerBrazilStephen Shaw PROPOSAL
Deepesh B MorascaIndiaAmy Elsner PROPOSAL
Octavia N CampainJapanAmy Elsner PROPOSAL
Aika X ButtFranceXuxue Feng NEGOTIATION
Juan X RutaJapanElwin Sharvill PROPOSAL
Izzy D RulapaughItalyIvan Magalhaes QUALIFIED
Faith A SergiBrazilAmy Elsner NEW
Arvin I RutaBrazilAmy Elsner NEGOTIATION
Leon R MarrierArgentinaXuxue Feng NEW
James R BologniaJapanIvan Magalhaes PROPOSAL
Morrow J GillianRussiaAsiya Javayant NEW
Octavia X MacleadArgentinaAnna Fali PROPOSAL
Murillo H CampainGermanyAsiya Javayant PROPOSAL
Kadeem L KuskoBrazilElwin Sharvill NEW
David T GillianAustraliaIoni Bowcher NEGOTIATION
Antonio V GillianFranceAmy Elsner QUALIFIED
Frozen Columns
Name
Ashley V Royster
Nicolas M Stenseth
Maisha Z Poquette
Izzy X Flosi
Cody L Malet
Maria B Bolognia
Stacey A Albares
Jennifer J Foller
Nicolas Y Iturbide
Alejandro H Nicka
Maria Q Stockham
Alejandro M Stockham
Costa L Ruta
Misaki Z Kusko
Francesco Q Inouye
Chavez I Flosi
Antonio E Oldroyd
Aruna S Caldarera
Jefferson G Bowley
Claire U Butt
Chavez X Whobrey
Jefferson U Nestle
Silvio O Flosi
Darci X Whobrey
Mayumi J Perin
David P Marrier
Aika E Poquette
Rodrigues S Gillian
Silvio M Shinko
Ashley P Kusko
Greenwood K Oldroyd
Aika Q Amigon
David B Whobrey
Francesco E Albares
Antonio A Malet
Isabel F Whobrey
Costa R Bolognia
Kaitlin N Figeroa
Alejandro E Kusko
Jeanfrancois C Gillian
Leja Y Schemmer
Rodrigues Q Flosi
Johnson A Marrier
Smith H Albares
David W Ruta
Wickens B Waycott
Deepesh O Whobrey
Octavia R Dilliard
Rodrigues J Schemmer
Aruna Q Royster
IdCountryDate
1000Russia2024-06-19
1001Argentina2024-06-13
1002Australia2024-05-29
1003Brazil2024-06-10
1004Russia2024-06-07
1005Argentina2024-06-03
1006Japan2024-06-02
1007Spain2024-06-07
1008Canada2024-06-11
1009United Kingdom2024-05-26
1010Brazil2024-05-31
1011Australia2024-06-10
1012Brazil2024-06-10
1013Brazil2024-06-14
1014Russia2024-05-27
1015Canada2024-06-10
1016Brazil2024-06-04
1017Argentina2024-06-11
1018Brazil2024-06-06
1019Italy2024-06-04
1020Brazil2024-05-27
1021Germany2024-06-10
1022Australia2024-06-07
1023Italy2024-05-30
1024India2024-06-11
1025Russia2024-06-09
1026Australia2024-06-16
1027Spain2024-06-04
1028Germany2024-06-16
1029Australia2024-05-30
1030Russia2024-05-27
1031Russia2024-06-19
1032Australia2024-06-07
1033India2024-06-04
1034Argentina2024-06-12
1035Germany2024-05-27
1036Italy2024-06-20
1037Japan2024-05-31
1038Russia2024-06-08
1039Australia2024-05-28
1040Japan2024-05-28
1041Argentina2024-06-11
1042Spain2024-06-03
1043Japan2024-06-02
1044Argentina2024-06-11
1045Japan2024-05-27
1046Japan2024-05-26
1047Brazil2024-06-04
1048United Kingdom2024-06-23
1049Spain2024-06-08

On-Demand Data

NameIdCountryDate
James Y Ruta1000Australia2024-06-09
Smith E Glick1001Germany2024-06-01
Johnson M Whobrey1002Argentina2024-06-11
Wickens B Kusko1003Brazil2024-06-08
Nicolas Y Glick1004Italy2024-06-01
David L Foller1005Australia2024-05-31
Julie J Oldroyd1006Russia2024-05-27
Misaki X Morasca1007Australia2024-06-11
Wickens E Butt1008Italy2024-06-06
Tony T Caudy1009France2024-06-11
Costa S Iturbide1010India2024-05-26
Clifford T Flosi1011Japan2024-06-16
Silvio G Rulapaugh1012Japan2024-06-12
Chavez U Iturbide1013Italy2024-06-12
Silvio L Saylors1014France2024-06-09
Julie C Paprocki1015Russia2024-05-26
Ricardo E Morasca1016France2024-06-19
Salvatore J Shinko1017Germany2024-06-15
Misaki W Waycott1018Japan2024-05-26
Faith L Bowley1019Italy2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow V DilliardIndiaAsiya Javayant NEGOTIATION
Misaki E CampainGermanyIvan Magalhaes PROPOSAL
Silvio Q KuskoItalyElwin Sharvill QUALIFIED
Rodrigues C NestleAustraliaAsiya Javayant UNQUALIFIED
Rodrigues O BriddickRussiaBernardo Dominic PROPOSAL
Tony E SchemmerGermanyOnyama Limba NEW
Munro T OldroydGermanyStephen Shaw RENEWAL
Isabel P BriddickSpainXuxue Feng PROPOSAL
Ashley W WieserSpainIvan Magalhaes NEGOTIATION
Arvin E ChuiAustraliaIoni Bowcher PROPOSAL
Francesco K NickaUnited KingdomOnyama Limba UNQUALIFIED
Mayumi Z GarufiIndiaIvan Magalhaes PROPOSAL
Adams F StensethFranceIoni Bowcher QUALIFIED
Nicolas W InouyeGermanyAnna Fali RENEWAL
Murillo O PoquetteCanadaAmy Elsner UNQUALIFIED
Emily A RimRussiaElwin Sharvill QUALIFIED
Jefferson W CaudyBrazilBernardo Dominic QUALIFIED
Antonio O FerenczJapanBernardo Dominic NEGOTIATION
Mayumi M StockhamJapanIvan Magalhaes UNQUALIFIED
Aika I DoeRussiaElwin Sharvill PROPOSAL
Ivar T NickaGermanyOnyama Limba PROPOSAL
Jefferson R SaylorsArgentinaStephen Shaw NEGOTIATION
Arvin P PaprockiIndiaIoni Bowcher QUALIFIED
Chavez E MacleadGermanyIoni Bowcher UNQUALIFIED
Jones T PaprockiCanadaIoni Bowcher QUALIFIED
Sinclair J VocelkaFranceIvan Magalhaes UNQUALIFIED
Morrow E ButtAustraliaAmy Elsner RENEWAL
Salvatore O FigeroaGermanyIoni Bowcher RENEWAL
Alejandro W VenereIndiaOnyama Limba RENEWAL
Chavez Q DarakjyGermanyElwin Sharvill QUALIFIED
Francesco X InouyeItalyAnna Fali PROPOSAL
Alejandro I PoquetteArgentinaXuxue Feng PROPOSAL
Ashley J IturbideFranceIoni Bowcher NEGOTIATION
Isabel X DilliardItalyXuxue Feng NEGOTIATION
Alejandro K ChuiRussiaBernardo Dominic UNQUALIFIED
Isabel X FerenczSpainIoni Bowcher PROPOSAL
Johnson V CaldareraFranceXuxue Feng RENEWAL
Adams J PaprockiCanadaStephen Shaw RENEWAL
Aditya Y RulapaughUnited KingdomStephen Shaw UNQUALIFIED
Mujtaba P RoysterSpainElwin Sharvill 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>