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
Ricardo A WieserRussiaAmy Elsner RENEWAL
Clifford H SchemmerAustraliaIoni Bowcher PROPOSAL
Jefferson N ShinkoArgentinaXuxue Feng QUALIFIED
Jefferson Q BowleyGermanyElwin Sharvill NEW
Ricardo Y CampainGermanyAsiya Javayant QUALIFIED
Adams O SlusarskiBrazilAnna Fali RENEWAL
Murillo R MaletBrazilStephen Shaw RENEWAL
Sinclair J AmigonIndiaIvan Magalhaes NEW
Faith U CaudyBrazilIoni Bowcher QUALIFIED
Jeanfrancois B MacleadItalyAnna Fali PROPOSAL
Johnson M SchemmerCanadaOnyama Limba QUALIFIED
Chavez D KuskoArgentinaAnna Fali NEGOTIATION
Juan Z DilliardJapanOnyama Limba NEGOTIATION
Faith V ButtSpainAmy Elsner NEGOTIATION
Murillo Z AlbaresJapanIoni Bowcher UNQUALIFIED
Johnson D PoquetteBrazilAnna Fali QUALIFIED
James O GarufiJapanStephen Shaw PROPOSAL
Julie N BologniaIndiaElwin Sharvill NEGOTIATION
Murillo B StockhamItalyAmy Elsner QUALIFIED
Jeanfrancois R KuskoBrazilIvan Magalhaes NEW
Ashley I OstroskyIndiaBernardo Dominic NEGOTIATION
Aditya S NestleGermanyStephen Shaw PROPOSAL
Jeanfrancois P CaudyRussiaStephen Shaw UNQUALIFIED
Johnson E AlbaresBrazilElwin Sharvill NEGOTIATION
Misaki B BriddickCanadaBernardo Dominic PROPOSAL
Jeanfrancois L ShinkoArgentinaAnna Fali PROPOSAL
Kadeem F GlickBrazilElwin Sharvill NEGOTIATION
Jeanfrancois Z GauchoRussiaXuxue Feng RENEWAL
Morrow V IturbideFranceIvan Magalhaes NEW
Rodrigues L BriddickGermanyOnyama Limba RENEWAL
Jeanfrancois C FerenczSpainElwin Sharvill NEGOTIATION
Ivar S WieserFranceElwin Sharvill PROPOSAL
Jennifer D NestleRussiaXuxue Feng NEW
Ashley J MaletArgentinaIoni Bowcher NEGOTIATION
Chavez G FerenczAustraliaIvan Magalhaes NEW
Sinclair B StensethIndiaAmy Elsner RENEWAL
Morrow G BriddickAustraliaAmy Elsner PROPOSAL
Kadeem W WaycottJapanOnyama Limba UNQUALIFIED
Cody V PoquetteJapanXuxue Feng UNQUALIFIED
Greenwood A VocelkaAustraliaXuxue Feng PROPOSAL
Kadeem W GlickItalyXuxue Feng PROPOSAL
Ivar C MacleadSpainIoni Bowcher QUALIFIED
Jones X DoeRussiaAsiya Javayant RENEWAL
Maria H OldroydFranceBernardo Dominic NEGOTIATION
Jeanfrancois T BowleyBrazilIvan Magalhaes PROPOSAL
Munro A FigeroaGermanyIvan Magalhaes UNQUALIFIED
Adams D SergiJapanXuxue Feng NEGOTIATION
Juan G PerinUnited KingdomIoni Bowcher NEGOTIATION
Clifford M FigeroaRussiaBernardo Dominic NEW
David L ShinkoSpainOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Aruna Y GauchoIndiaBernardo Dominic QUALIFIED
Faith R FlosiRussiaElwin Sharvill NEW
Mayumi Y MarrierArgentinaIvan Magalhaes RENEWAL
Antonio S CaldareraArgentinaOnyama Limba NEGOTIATION
Aruna T MaletItalyIoni Bowcher QUALIFIED
Smith T NestleRussiaElwin Sharvill RENEWAL
Cody Y SaylorsSpainElwin Sharvill NEW
Aruna Z TollnerCanadaOnyama Limba NEGOTIATION
Isabel J OstroskyFranceElwin Sharvill RENEWAL
Aruna T PaprockiIndiaIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro F RimArgentina2024-05-10Buckley Miller Wright QUALIFIED98Amy Elsner
1001Jennifer E PerinCanada2024-05-18Rangoni Of Florence NEW60Ioni Bowcher
1002Jeanfrancois D BologniaCanada2024-05-08Printing Dimensions RENEWAL97Onyama Limba
1003Mujtaba C RulapaughArgentina2024-05-25Commercial Press RENEWAL4Xuxue Feng
1004Adams F GlickGermany2024-05-17Chapman, Ross E Esq NEW38Bernardo Dominic
1005Johnson A SergiJapan2024-05-20Printing Dimensions PROPOSAL32Elwin Sharvill
1006Isabel O MorascaItaly2024-04-28Dorl, James J Esq UNQUALIFIED15Ivan Magalhaes
1007Morrow Q KolmetzAustralia2024-05-12Feiner Bros RENEWAL58Amy Elsner
1008Octavia X NestleCanada2024-05-23Dorl, James J Esq UNQUALIFIED61Ioni Bowcher
1009Izzy T BriddickSpain2024-05-21Printing Dimensions RENEWAL98Onyama Limba
1010Ashley C MaletItaly2024-05-14Rangoni Of Florence NEGOTIATION25Xuxue Feng
1011Francesco O PaprockiFrance2024-05-07Dorl, James J Esq NEW49Anna Fali
1012Jones E BologniaCanada2024-05-16Truhlar And Truhlar Attys QUALIFIED31Ioni Bowcher
1013David S WieserGermany2024-05-22Benton, John B Jr NEW0Stephen Shaw
1014Darci S MarrierJapan2024-04-28Benton, John B Jr RENEWAL6Bernardo Dominic
1015Johnson I MacleadRussia2024-05-03Morlong Associates NEW38Stephen Shaw
1016Greenwood P AlbaresArgentina2024-04-30Chemel, James L Cpa UNQUALIFIED8Elwin Sharvill
1017Darci T RutaSpain2024-04-29Rousseaux, Michael Esq RENEWAL90Elwin Sharvill
1018Claire F RoysterCanada2024-04-30Truhlar And Truhlar Attys NEW34Bernardo Dominic
1019Leja I TollnerSpain2024-05-07Rangoni Of Florence NEGOTIATION57Amy Elsner
1020Emily D ButtUnited Kingdom2024-05-05Commercial Press NEW21Amy Elsner
1021Nicolas B SaylorsJapan2024-05-10King, Christopher A Esq QUALIFIED94Ivan Magalhaes
1022Costa S RulapaughJapan2024-05-21Chapman, Ross E Esq UNQUALIFIED98Elwin Sharvill
1023Sinclair Y VocelkaAustralia2024-05-02King, Christopher A Esq UNQUALIFIED92Elwin Sharvill
1024Aditya P KuskoItaly2024-05-27Rousseaux, Michael Esq UNQUALIFIED75Stephen Shaw
1025Nicolas H PaprockiAustralia2024-04-30Dorl, James J Esq NEW91Onyama Limba
1026Darci S AmigonFrance2024-05-03Benton, John B Jr NEW61Stephen Shaw
1027Jefferson C CaudyIndia2024-05-12Rangoni Of Florence UNQUALIFIED68Ioni Bowcher
1028Smith U PoquetteItaly2024-05-26Chemel, James L Cpa PROPOSAL28Bernardo Dominic
1029Morrow G VenereCanada2024-05-23Buckley Miller Wright UNQUALIFIED4Elwin Sharvill
1030Jones J BowleyUnited Kingdom2024-05-07Rangoni Of Florence NEW56Anna Fali
1031Munro F MorascaFrance2024-05-27Rangoni Of Florence PROPOSAL13Xuxue Feng
1032Jennifer S MacleadGermany2024-05-22Truhlar And Truhlar Attys PROPOSAL39Ioni Bowcher
1033Aika F FigeroaSpain2024-05-01Benton, John B Jr NEGOTIATION62Asiya Javayant
1034Juan I SergiCanada2024-05-15Chemel, James L Cpa QUALIFIED1Xuxue Feng
1035Chavez E InouyeSpain2024-05-21Rousseaux, Michael Esq QUALIFIED42Anna Fali
1036Kaitlin D MaletFrance2024-05-22King, Christopher A Esq PROPOSAL12Ivan Magalhaes
1037Maisha Y BologniaGermany2024-05-05Chapman, Ross E Esq UNQUALIFIED87Xuxue Feng
1038Cody C BologniaIndia2024-05-16Buckley Miller Wright NEGOTIATION66Xuxue Feng
1039Alejandro Z InouyeAustralia2024-05-02Dorl, James J Esq RENEWAL31Anna Fali
1040Jeanfrancois K SergiJapan2024-05-06Rangoni Of Florence QUALIFIED72Asiya Javayant
1041Alejandro T RoysterSpain2024-05-01Buckley Miller Wright UNQUALIFIED27Bernardo Dominic
1042Darci W SaylorsSpain2024-05-08Feltz Printing Service QUALIFIED8Xuxue Feng
1043Aditya V WhobreyCanada2024-05-17King, Christopher A Esq RENEWAL79Ioni Bowcher
1044Munro S SaylorsFrance2024-05-23Feltz Printing Service NEW30Xuxue Feng
1045Nicolas O RoysterIndia2024-05-06Benton, John B Jr PROPOSAL66Elwin Sharvill
1046Misaki B DarakjyRussia2024-05-20Feiner Bros NEGOTIATION75Ioni Bowcher
1047Wickens R GillianAustralia2024-05-23King, Christopher A Esq RENEWAL31Stephen Shaw
1048David M AlbaresBrazil2024-04-30Chanay, Jeffrey A Esq PROPOSAL14Xuxue Feng
1049Munro R DilliardArgentina2024-05-11Chapman, Ross E Esq NEGOTIATION51Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aruna B KuskoItalyXuxue Feng NEW
Arvin E RulapaughIndiaBernardo Dominic PROPOSAL
Mujtaba V FollerArgentinaElwin Sharvill PROPOSAL
Costa M FollerArgentinaAmy Elsner UNQUALIFIED
Faith G CampainGermanyAsiya Javayant NEW
Nicolas E NestleUnited KingdomAmy Elsner QUALIFIED
Murillo B DarakjyArgentinaAsiya Javayant NEW
Jones T GarufiRussiaStephen Shaw NEW
Aditya K SchemmerBrazilAsiya Javayant NEGOTIATION
Deepesh X BriddickAustraliaAnna Fali NEW
Wickens V VocelkaUnited KingdomAsiya Javayant QUALIFIED
Antonio D TollnerGermanyStephen Shaw NEW
Mayumi G FigeroaFranceAsiya Javayant RENEWAL
Stacey Z FerenczRussiaElwin Sharvill PROPOSAL
Claire B FigeroaItalyIoni Bowcher PROPOSAL
Clifford A FlosiArgentinaIvan Magalhaes UNQUALIFIED
Isabel F ChuiRussiaOnyama Limba NEW
Arvin F KuskoFranceIvan Magalhaes PROPOSAL
Misaki E GarufiAustraliaBernardo Dominic QUALIFIED
Aruna S PaprockiFranceStephen Shaw RENEWAL
Leja Y ChuiSpainStephen Shaw NEW
Isabel R FigeroaGermanyElwin Sharvill QUALIFIED
Juan Y MarrierItalyIoni Bowcher NEW
Ivar U VocelkaRussiaAmy Elsner QUALIFIED
Aditya O NestleItalyBernardo Dominic NEGOTIATION
Julie G DarakjyItalyAsiya Javayant PROPOSAL
Francesco P OstroskyBrazilAmy Elsner QUALIFIED
Jones Q WieserAustraliaAsiya Javayant NEW
Cody Y FigeroaIndiaBernardo Dominic NEGOTIATION
Ricardo W AlbaresUnited KingdomStephen Shaw NEW
Stacey K GauchoBrazilIvan Magalhaes NEW
Cody G MarrierFranceElwin Sharvill UNQUALIFIED
Leon P StensethGermanyBernardo Dominic RENEWAL
Jennifer T CampainFranceXuxue Feng PROPOSAL
Juan P AmigonItalyElwin Sharvill PROPOSAL
Arvin D RulapaughArgentinaXuxue Feng PROPOSAL
Octavia U WhobreyAustraliaBernardo Dominic NEW
Julie M OldroydSpainXuxue Feng PROPOSAL
Aditya R BologniaItalyAsiya Javayant QUALIFIED
Aditya A MarrierArgentinaIvan Magalhaes PROPOSAL
Johnson C OstroskyFranceAsiya Javayant NEW
Arvin T CaudySpainElwin Sharvill QUALIFIED
Jones Y BologniaAustraliaAnna Fali NEW
Aruna R RutaItalyStephen Shaw PROPOSAL
Greenwood T FollerIndiaAmy Elsner NEGOTIATION
Clifford W WhobreySpainIvan Magalhaes UNQUALIFIED
Ivar P AmigonCanadaBernardo Dominic PROPOSAL
Salvatore X SergiCanadaAsiya Javayant NEGOTIATION
Claire U KolmetzArgentinaElwin Sharvill QUALIFIED
Costa C CampainIndiaBernardo Dominic NEW
Frozen Columns
Name
Cody X Glick
Sinclair Z Bolognia
Izzy G Schemmer
Salvatore P Caudy
Izzy C Maclead
David K Ostrosky
Arvin D Schemmer
Morrow Z Nicka
Chavez C Darakjy
Clifford T Malet
Rodrigues J Rim
Aika C Kusko
Darci U Doe
Francesco I Bowley
Aruna K Vocelka
Kaitlin Z Figeroa
Arvin U Sergi
Maisha J Chui
Alejandro Z Bowley
Rodrigues L Venere
Johnson G Whobrey
Stacey N Stockham
Aruna L Gillian
Greenwood E Shinko
David A Foller
Maria P Albares
Misaki W Figeroa
Ivar D Inouye
Smith Y Caldarera
Wickens E Paprocki
James X Venere
Munro T Dilliard
Morrow I Kolmetz
Wickens P Garufi
Francesco W Caldarera
Mujtaba M Figeroa
Aika O Saylors
Francesco A Wieser
Aditya A Rulapaugh
Alejandro X Briddick
Isabel C Figeroa
Isabel M Whobrey
Emily N Stenseth
Jones C Chui
Arvin R Whobrey
Jennifer W Flosi
Octavia J Inouye
Ricardo S Butt
Juan I Bowley
Tony Z Malet
IdCountryDate
1000Japan2024-04-28
1001United Kingdom2024-04-29
1002Japan2024-05-04
1003Australia2024-04-28
1004Argentina2024-05-14
1005Japan2024-05-21
1006India2024-05-25
1007Australia2024-05-17
1008Brazil2024-05-09
1009Brazil2024-05-23
1010Germany2024-05-11
1011Argentina2024-05-15
1012Germany2024-05-02
1013Russia2024-04-30
1014Japan2024-05-27
1015Argentina2024-05-25
1016Australia2024-05-08
1017Spain2024-04-30
1018India2024-05-07
1019India2024-05-24
1020Brazil2024-05-05
1021India2024-05-21
1022Japan2024-05-19
1023India2024-05-14
1024Brazil2024-05-02
1025Japan2024-05-14
1026India2024-05-09
1027Australia2024-05-04
1028Spain2024-05-01
1029India2024-05-19
1030Russia2024-05-02
1031Russia2024-05-06
1032Russia2024-05-16
1033India2024-05-17
1034India2024-05-17
1035Argentina2024-05-25
1036France2024-05-03
1037France2024-05-10
1038Argentina2024-05-20
1039Japan2024-05-02
1040Brazil2024-05-04
1041Canada2024-05-16
1042Argentina2024-05-09
1043Germany2024-05-14
1044Russia2024-05-27
1045Italy2024-05-03
1046Australia2024-04-28
1047India2024-05-04
1048India2024-05-22
1049Russia2024-05-05

On-Demand Data

NameIdCountryDate
Misaki Y Kusko1000Japan2024-05-16
Cody W Gillian1001Canada2024-05-27
Johnson L Morasca1002Australia2024-04-30
Antonio C Butt1003Spain2024-05-04
Clifford B Morasca1004Germany2024-05-26
Mujtaba R Caudy1005France2024-05-16
Murillo X Kolmetz1006France2024-05-10
Cody O Albares1007Australia2024-05-22
Leon J Flosi1008Brazil2024-05-11
Misaki G Stenseth1009Russia2024-05-23
Costa Y Glick1010Argentina2024-05-09
Julie B Briddick1011Spain2024-05-03
Salvatore M Vocelka1012Brazil2024-05-14
Maria D Rulapaugh1013Italy2024-04-29
Adams M Wieser1014Russia2024-05-10
Jones K Rim1015Australia2024-05-26
Juan T Dilliard1016Spain2024-04-30
Leja M Rim1017Australia2024-05-08
Isabel K Stockham1018Germany2024-05-27
Stacey Q Kolmetz1019Brazil2024-05-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel S DilliardRussiaAsiya Javayant NEGOTIATION
Munro F PoquetteAustraliaIvan Magalhaes QUALIFIED
Wickens P ChuiRussiaIoni Bowcher QUALIFIED
Sinclair N CampainJapanAsiya Javayant RENEWAL
Jennifer T MaletSpainIoni Bowcher UNQUALIFIED
Chavez K TollnerIndiaAmy Elsner NEGOTIATION
Emily G NickaArgentinaAsiya Javayant UNQUALIFIED
Sinclair I NestleItalyIoni Bowcher QUALIFIED
Aditya O MarrierGermanyAsiya Javayant NEGOTIATION
Leon D DoeRussiaBernardo Dominic UNQUALIFIED
Mayumi D WaycottArgentinaAmy Elsner QUALIFIED
Silvio B VenereSpainAmy Elsner PROPOSAL
Misaki V GauchoFranceStephen Shaw NEGOTIATION
Munro Q KolmetzUnited KingdomAmy Elsner PROPOSAL
James A WieserArgentinaAnna Fali UNQUALIFIED
Tony B StockhamJapanBernardo Dominic PROPOSAL
Darci A FerenczRussiaXuxue Feng NEGOTIATION
Misaki Z GillianItalyAsiya Javayant NEGOTIATION
Darci W ShinkoCanadaIoni Bowcher RENEWAL
Aruna V KolmetzSpainXuxue Feng PROPOSAL
Tony C BologniaRussiaAmy Elsner NEGOTIATION
Jefferson E RimSpainIoni Bowcher PROPOSAL
Costa D FigeroaAustraliaBernardo Dominic PROPOSAL
Leja Z BowleyFranceIvan Magalhaes UNQUALIFIED
Ricardo A CampainGermanyIvan Magalhaes UNQUALIFIED
Aika N VocelkaArgentinaStephen Shaw QUALIFIED
Izzy D MaletItalyOnyama Limba RENEWAL
Rodrigues F BriddickAustraliaAsiya Javayant PROPOSAL
Nicolas I GlickUnited KingdomBernardo Dominic UNQUALIFIED
Mayumi Z VocelkaSpainIvan Magalhaes NEGOTIATION
Isabel O ChuiJapanBernardo Dominic UNQUALIFIED
David B WaycottJapanBernardo Dominic NEGOTIATION
Jones F DarakjyIndiaXuxue Feng RENEWAL
Isabel Z NestleArgentinaIvan Magalhaes RENEWAL
Ivar I OldroydIndiaXuxue Feng UNQUALIFIED
Murillo X VocelkaUnited KingdomAsiya Javayant QUALIFIED
Julie Q InouyeBrazilStephen Shaw RENEWAL
Munro P OldroydUnited KingdomXuxue Feng QUALIFIED
Cody A MarrierFranceAnna Fali PROPOSAL
Cody K CaldareraRussiaAnna Fali 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>