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
Silvio B OldroydJapanBernardo Dominic UNQUALIFIED
Kaitlin R FerenczSpainXuxue Feng NEGOTIATION
Smith L GarufiGermanyIoni Bowcher QUALIFIED
Jeanfrancois B PaprockiCanadaElwin Sharvill QUALIFIED
Tony F MaletAustraliaElwin Sharvill UNQUALIFIED
Munro G ButtSpainOnyama Limba QUALIFIED
Greenwood Q MorascaAustraliaAsiya Javayant QUALIFIED
Cody K CaudyAustraliaIoni Bowcher RENEWAL
James E RimRussiaStephen Shaw PROPOSAL
Jennifer I GlickFranceOnyama Limba NEW
Maisha S SergiRussiaElwin Sharvill NEW
Deepesh U StensethAustraliaBernardo Dominic QUALIFIED
Smith F DoeFranceStephen Shaw PROPOSAL
Greenwood C KuskoAustraliaAmy Elsner QUALIFIED
Greenwood S ButtSpainOnyama Limba RENEWAL
Murillo P FlosiArgentinaOnyama Limba RENEWAL
Kaitlin X OldroydSpainXuxue Feng PROPOSAL
Jennifer M FlosiItalyIoni Bowcher RENEWAL
David C WhobreyFranceAsiya Javayant UNQUALIFIED
Jeanfrancois D PoquetteArgentinaAmy Elsner QUALIFIED
Aruna K PerinArgentinaAnna Fali NEW
Jefferson S StensethSpainStephen Shaw NEW
Mayumi X FigeroaFranceOnyama Limba PROPOSAL
Rodrigues F FigeroaItalyXuxue Feng UNQUALIFIED
Ashley M CaudyIndiaIvan Magalhaes PROPOSAL
Munro E CampainArgentinaAnna Fali NEW
Arvin J RulapaughArgentinaAnna Fali QUALIFIED
Tony E MarrierAustraliaAmy Elsner RENEWAL
Izzy V BriddickItalyIoni Bowcher QUALIFIED
Octavia U DarakjyIndiaIoni Bowcher PROPOSAL
Nicolas O DilliardAustraliaOnyama Limba RENEWAL
Greenwood X IturbideJapanXuxue Feng UNQUALIFIED
Clifford F KuskoItalyIvan Magalhaes PROPOSAL
Aika C PerinItalyAnna Fali UNQUALIFIED
Arvin P RimBrazilElwin Sharvill PROPOSAL
Stacey U RutaGermanyXuxue Feng PROPOSAL
Greenwood U FerenczItalyIvan Magalhaes NEGOTIATION
Francesco K KuskoItalyXuxue Feng QUALIFIED
Julie E DilliardSpainElwin Sharvill NEGOTIATION
Ricardo X AmigonJapanIvan Magalhaes RENEWAL
Isabel P MaletItalyAsiya Javayant PROPOSAL
Silvio A SergiRussiaAmy Elsner RENEWAL
Ricardo M IturbideSpainAnna Fali PROPOSAL
Greenwood X DilliardUnited KingdomXuxue Feng NEW
Munro O StensethCanadaElwin Sharvill NEW
Faith A GarufiJapanAnna Fali NEGOTIATION
Leja C OldroydItalyOnyama Limba UNQUALIFIED
Ivar W SaylorsUnited KingdomOnyama Limba UNQUALIFIED
Maria U RimCanadaAsiya Javayant RENEWAL
Ivar V RutaSpainBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Costa Z FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Izzy D ChuiItalyElwin Sharvill UNQUALIFIED
Kaitlin V FlosiJapanElwin Sharvill PROPOSAL
Wickens H RutaSpainBernardo Dominic NEGOTIATION
Tony P FlosiBrazilAnna Fali UNQUALIFIED
Morrow L RimUnited KingdomBernardo Dominic QUALIFIED
David T MarrierFranceIvan Magalhaes RENEWAL
Nicolas Q VenereIndiaXuxue Feng NEW
Maria W DoeJapanOnyama Limba UNQUALIFIED
Sinclair H VenereRussiaElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford O CaudyCanada2024-05-28Feltz Printing Service UNQUALIFIED58Ivan Magalhaes
1001Wickens F PaprockiJapan2024-05-18Chanay, Jeffrey A Esq UNQUALIFIED51Elwin Sharvill
1002Ashley C GarufiBrazil2024-05-21King, Christopher A Esq NEGOTIATION36Ioni Bowcher
1003Maria I KolmetzRussia2024-05-27Feltz Printing Service RENEWAL63Ioni Bowcher
1004Wickens O ButtAustralia2024-05-23Buckley Miller Wright NEGOTIATION16Anna Fali
1005Nicolas W RoysterFrance2024-06-03Rangoni Of Florence NEW31Bernardo Dominic
1006Arvin U KuskoBrazil2024-05-27Chemel, James L Cpa NEGOTIATION76Asiya Javayant
1007Emily K RulapaughRussia2024-05-23Chapman, Ross E Esq NEGOTIATION54Ivan Magalhaes
1008Misaki D GillianSpain2024-06-02Rangoni Of Florence UNQUALIFIED84Bernardo Dominic
1009Antonio N OldroydIndia2024-05-17Printing Dimensions QUALIFIED47Stephen Shaw
1010Alejandro V DoeJapan2024-05-17King, Christopher A Esq PROPOSAL35Anna Fali
1011Antonio J MaletCanada2024-05-21Buckley Miller Wright NEW76Stephen Shaw
1012Jennifer N FerenczJapan2024-05-16Chanay, Jeffrey A Esq NEW57Asiya Javayant
1013Kaitlin E TollnerGermany2024-05-18Morlong Associates QUALIFIED62Ivan Magalhaes
1014Ivar K VocelkaIndia2024-06-01Feiner Bros NEW69Bernardo Dominic
1015Johnson M DarakjyCanada2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED59Asiya Javayant
1016Tony L MorascaCanada2024-05-26Buckley Miller Wright RENEWAL67Stephen Shaw
1017Maria V MarrierRussia2024-05-28Commercial Press NEW33Ivan Magalhaes
1018Deepesh P FlosiIndia2024-05-21King, Christopher A Esq UNQUALIFIED50Ivan Magalhaes
1019Leon T RimSpain2024-05-24Chapman, Ross E Esq PROPOSAL76Ioni Bowcher
1020Jefferson J WaycottBrazil2024-06-01Dorl, James J Esq NEGOTIATION61Stephen Shaw
1021Leja E PerinArgentina2024-05-16Printing Dimensions PROPOSAL79Asiya Javayant
1022Stacey R VenereCanada2024-05-16Rangoni Of Florence NEW40Ioni Bowcher
1023Darci P MaletBrazil2024-05-29Chanay, Jeffrey A Esq QUALIFIED6Elwin Sharvill
1024Deepesh K SlusarskiFrance2024-05-23Buckley Miller Wright UNQUALIFIED69Bernardo Dominic
1025Aika S NestleGermany2024-05-20Commercial Press RENEWAL29Bernardo Dominic
1026Greenwood G PerinCanada2024-05-25Morlong Associates UNQUALIFIED48Asiya Javayant
1027Jefferson N RimItaly2024-05-24Chanay, Jeffrey A Esq QUALIFIED88Xuxue Feng
1028Deepesh M AlbaresGermany2024-05-19Chemel, James L Cpa PROPOSAL33Asiya Javayant
1029Nicolas H PoquetteItaly2024-05-11Feltz Printing Service UNQUALIFIED42Ivan Magalhaes
1030Johnson Z AlbaresIndia2024-05-20Dorl, James J Esq NEW26Onyama Limba
1031Ricardo J RimGermany2024-05-20Buckley Miller Wright RENEWAL82Ioni Bowcher
1032Adams G StensethCanada2024-05-11Truhlar And Truhlar Attys PROPOSAL81Onyama Limba
1033Octavia K SaylorsCanada2024-05-17Benton, John B Jr NEW23Xuxue Feng
1034Isabel Q FigeroaAustralia2024-06-02Morlong Associates NEGOTIATION17Amy Elsner
1035Johnson Z PaprockiJapan2024-05-13Truhlar And Truhlar Attys QUALIFIED67Anna Fali
1036Juan V BowleyRussia2024-05-31Rangoni Of Florence NEW8Xuxue Feng
1037Arvin U KolmetzGermany2024-05-14Benton, John B Jr NEGOTIATION31Stephen Shaw
1038Adams S AlbaresArgentina2024-05-23Chemel, James L Cpa UNQUALIFIED91Anna Fali
1039Greenwood G SchemmerJapan2024-05-08Commercial Press PROPOSAL29Ioni Bowcher
1040Maisha T BowleyUnited Kingdom2024-05-09Dorl, James J Esq NEGOTIATION36Stephen Shaw
1041Tony N RulapaughCanada2024-06-06Feltz Printing Service RENEWAL66Anna Fali
1042Misaki J RutaUnited Kingdom2024-05-10Dorl, James J Esq RENEWAL72Onyama Limba
1043Izzy Q KuskoSpain2024-05-11Chanay, Jeffrey A Esq PROPOSAL61Amy Elsner
1044Aruna L OldroydItaly2024-05-24Dorl, James J Esq PROPOSAL12Anna Fali
1045Jennifer A GillianRussia2024-05-13Chanay, Jeffrey A Esq UNQUALIFIED13Xuxue Feng
1046Octavia H StensethCanada2024-05-22Dorl, James J Esq UNQUALIFIED75Anna Fali
1047Claire Z MarrierAustralia2024-05-26Chemel, James L Cpa NEW3Elwin Sharvill
1048Johnson H SlusarskiItaly2024-06-05Dorl, James J Esq RENEWAL72Bernardo Dominic
1049Francesco N GarufiFrance2024-06-06Chapman, Ross E Esq NEGOTIATION82Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aika G SchemmerArgentinaAmy Elsner RENEWAL
Jones E StockhamArgentinaXuxue Feng RENEWAL
Silvio E RutaUnited KingdomIvan Magalhaes PROPOSAL
Misaki P AmigonJapanElwin Sharvill UNQUALIFIED
Isabel T AmigonAustraliaBernardo Dominic QUALIFIED
Murillo S CaudyIndiaElwin Sharvill PROPOSAL
Deepesh O KolmetzRussiaXuxue Feng PROPOSAL
Wickens W KolmetzUnited KingdomXuxue Feng NEW
Morrow F FollerJapanIoni Bowcher NEGOTIATION
Claire P ChuiUnited KingdomOnyama Limba UNQUALIFIED
Smith N OstroskySpainIvan Magalhaes UNQUALIFIED
Aruna G SergiBrazilStephen Shaw NEW
Sinclair A MaletCanadaIoni Bowcher NEGOTIATION
David Y WieserSpainAmy Elsner NEGOTIATION
Jeanfrancois X GlickJapanIvan Magalhaes PROPOSAL
Claire K DoeFranceBernardo Dominic NEW
Clifford C BologniaBrazilElwin Sharvill NEW
Wickens R FigeroaItalyElwin Sharvill RENEWAL
Julie M VocelkaFranceAsiya Javayant QUALIFIED
Maria U SlusarskiAustraliaBernardo Dominic NEGOTIATION
Adams M StensethRussiaAnna Fali QUALIFIED
Chavez V GauchoCanadaIoni Bowcher NEW
Antonio A CampainGermanyAnna Fali QUALIFIED
Murillo I FerenczBrazilIvan Magalhaes RENEWAL
Munro K FerenczIndiaAnna Fali PROPOSAL
David C KuskoCanadaAmy Elsner PROPOSAL
Adams X StockhamSpainBernardo Dominic RENEWAL
Johnson Z WhobreyItalyIoni Bowcher PROPOSAL
Ivar K SergiItalyBernardo Dominic NEW
Jeanfrancois Y ChuiCanadaAsiya Javayant RENEWAL
Antonio O WieserRussiaBernardo Dominic RENEWAL
Johnson R VenereItalyXuxue Feng NEW
Wickens G BowleyArgentinaAmy Elsner PROPOSAL
Kadeem A FigeroaAustraliaElwin Sharvill NEGOTIATION
Aruna H FigeroaAustraliaAnna Fali PROPOSAL
Murillo Y OstroskyJapanIoni Bowcher PROPOSAL
Wickens U BriddickIndiaOnyama Limba NEGOTIATION
David R SchemmerRussiaIoni Bowcher UNQUALIFIED
Aika V CaudyBrazilIoni Bowcher RENEWAL
Tony A ShinkoIndiaAsiya Javayant QUALIFIED
Ricardo Z GlickFranceIvan Magalhaes NEW
Salvatore A RoysterIndiaElwin Sharvill NEGOTIATION
Alejandro J BologniaUnited KingdomBernardo Dominic NEGOTIATION
Ashley K OldroydArgentinaElwin Sharvill NEGOTIATION
Faith K MarrierBrazilStephen Shaw NEGOTIATION
Greenwood G ShinkoJapanXuxue Feng QUALIFIED
Rodrigues W RulapaughIndiaAnna Fali UNQUALIFIED
Sinclair T MarrierArgentinaOnyama Limba NEW
Faith F NestleAustraliaBernardo Dominic QUALIFIED
Jefferson H MorascaGermanyAmy Elsner NEGOTIATION
Frozen Columns
Name
Murillo C Morasca
Arvin X Bowley
Costa M Nestle
Francesco N Briddick
Mujtaba B Perin
Tony U Nicka
Maria R Campain
Izzy N Nicka
Mujtaba D Nicka
Kaitlin L Wieser
Murillo I Whobrey
Tony A Iturbide
Sinclair E Figeroa
Isabel H Stenseth
Greenwood B Campain
Claire B Nicka
Deepesh V Bolognia
Jeanfrancois S Glick
Arvin W Marrier
Nicolas B Inouye
Costa C Bowley
Leja C Malet
Mujtaba A Morasca
Aika O Butt
Antonio P Rulapaugh
Claire Y Bolognia
Chavez W Tollner
Antonio V Campain
Maria V Darakjy
Alejandro P Maclead
Stacey E Stenseth
Jeanfrancois K Flosi
Julie U Rim
David V Inouye
Aruna H Figeroa
Antonio C Briddick
Munro C Doe
Maria F Caudy
Aika D Garufi
James X Garufi
Aditya X Ostrosky
Ricardo W Venere
Izzy U Ruta
Leon X Albares
Juan R Stockham
Morrow E Campain
Faith S Glick
Ivar T Stenseth
Stacey Y Stenseth
Chavez T Flosi
IdCountryDate
1000Argentina2024-05-12
1001India2024-05-27
1002Japan2024-05-23
1003Brazil2024-05-27
1004Brazil2024-05-24
1005India2024-06-03
1006Italy2024-05-23
1007France2024-05-09
1008Russia2024-05-19
1009Argentina2024-05-14
1010Argentina2024-05-21
1011India2024-05-30
1012Spain2024-05-11
1013France2024-05-29
1014Australia2024-05-17
1015Argentina2024-05-15
1016Japan2024-05-19
1017Russia2024-05-11
1018Brazil2024-05-20
1019Japan2024-05-10
1020United Kingdom2024-05-28
1021Spain2024-05-21
1022Russia2024-06-05
1023Spain2024-05-30
1024Australia2024-05-19
1025Japan2024-05-10
1026Japan2024-05-08
1027India2024-05-08
1028Brazil2024-05-11
1029India2024-06-06
1030Japan2024-05-22
1031Brazil2024-05-17
1032Germany2024-05-28
1033India2024-06-04
1034Spain2024-06-03
1035Japan2024-05-15
1036Canada2024-05-16
1037Australia2024-06-04
1038Japan2024-06-04
1039Canada2024-05-24
1040Japan2024-05-27
1041Argentina2024-05-12
1042United Kingdom2024-05-11
1043India2024-05-31
1044Japan2024-05-30
1045Brazil2024-06-04
1046Germany2024-06-05
1047Germany2024-06-06
1048Japan2024-05-18
1049Japan2024-05-20

On-Demand Data

NameIdCountryDate
Juan Z Tollner1000Japan2024-05-27
Smith P Ruta1001France2024-05-13
Ivar R Poquette1002India2024-05-27
Aruna O Poquette1003Argentina2024-05-09
Aika Y Gillian1004Japan2024-05-30
Misaki F Malet1005Germany2024-05-18
Faith F Bowley1006France2024-05-21
Morrow G Campain1007Argentina2024-05-08
Misaki T Slusarski1008Germany2024-06-06
Sinclair I Ostrosky1009Japan2024-05-27
Munro D Caudy1010Brazil2024-06-01
Francesco Y Wieser1011United Kingdom2024-05-09
Clifford P Nicka1012Spain2024-05-26
Rodrigues K Maclead1013Spain2024-05-30
Morrow R Waycott1014Spain2024-05-28
Mayumi T Gillian1015France2024-05-30
Julie D Wieser1016Spain2024-05-31
Aditya S Nicka1017Australia2024-05-09
Nicolas K Nestle1018France2024-06-04
Francesco Y Kolmetz1019France2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro G CaudyBrazilIvan Magalhaes NEW
Leja W PaprockiArgentinaAsiya Javayant QUALIFIED
Chavez U RimArgentinaStephen Shaw QUALIFIED
Faith E CampainJapanAmy Elsner RENEWAL
Mujtaba M NickaRussiaIoni Bowcher PROPOSAL
Kadeem U WaycottAustraliaIvan Magalhaes NEGOTIATION
Tony R RutaRussiaStephen Shaw NEGOTIATION
Izzy N InouyeIndiaStephen Shaw RENEWAL
Maisha F FerenczFranceBernardo Dominic NEGOTIATION
Isabel E AmigonCanadaIoni Bowcher NEGOTIATION
Mayumi N RoysterRussiaIvan Magalhaes NEGOTIATION
Jennifer H KolmetzArgentinaElwin Sharvill NEW
Clifford U AmigonCanadaAmy Elsner NEGOTIATION
Salvatore B MarrierGermanyElwin Sharvill RENEWAL
Jones V SchemmerFranceStephen Shaw NEW
Silvio K GarufiUnited KingdomElwin Sharvill NEGOTIATION
Maisha O PoquetteBrazilAmy Elsner UNQUALIFIED
Alejandro B OldroydSpainOnyama Limba RENEWAL
Leja B MacleadBrazilIvan Magalhaes NEGOTIATION
James X MaletFranceBernardo Dominic NEGOTIATION
Clifford H ButtRussiaOnyama Limba NEW
Silvio O OstroskyIndiaXuxue Feng NEGOTIATION
Wickens E ShinkoArgentinaStephen Shaw UNQUALIFIED
Jefferson C ShinkoUnited KingdomOnyama Limba PROPOSAL
Tony O TollnerCanadaStephen Shaw RENEWAL
Ivar V IturbideGermanyIoni Bowcher RENEWAL
Murillo Z ChuiSpainIoni Bowcher NEW
Kaitlin K FlosiGermanyIoni Bowcher RENEWAL
Faith H WaycottRussiaIoni Bowcher PROPOSAL
Leja Q RimGermanyBernardo Dominic PROPOSAL
Johnson L GarufiIndiaAsiya Javayant NEW
Mujtaba B RulapaughBrazilIoni Bowcher UNQUALIFIED
Johnson X GillianFranceStephen Shaw UNQUALIFIED
Antonio R TollnerJapanOnyama Limba QUALIFIED
Jefferson X PerinAustraliaElwin Sharvill QUALIFIED
David Q KuskoIndiaIvan Magalhaes NEGOTIATION
Aruna P FollerJapanAmy Elsner PROPOSAL
Darci C RoysterCanadaBernardo Dominic QUALIFIED
James B GlickRussiaElwin Sharvill QUALIFIED
Leon A SaylorsUnited KingdomXuxue Feng 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>