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
Aruna Y BowleyCanadaBernardo Dominic QUALIFIED
Arvin X MacleadItalyAnna Fali NEW
Murillo V SlusarskiBrazilIoni Bowcher NEW
Aika I TollnerIndiaElwin Sharvill RENEWAL
Silvio C GauchoItalyAsiya Javayant NEGOTIATION
Maria K SergiCanadaElwin Sharvill NEW
Darci P IturbideRussiaOnyama Limba RENEWAL
Francesco M VenereIndiaOnyama Limba NEGOTIATION
Silvio Q BriddickJapanBernardo Dominic UNQUALIFIED
Smith M DoeAustraliaElwin Sharvill NEGOTIATION
Johnson C IturbideGermanyAnna Fali RENEWAL
Deepesh C KuskoBrazilElwin Sharvill PROPOSAL
Izzy U NickaArgentinaIoni Bowcher UNQUALIFIED
Arvin L AlbaresAustraliaAsiya Javayant NEW
Francesco F ShinkoUnited KingdomStephen Shaw PROPOSAL
Adams S MaletFranceXuxue Feng UNQUALIFIED
Deepesh Q CampainAustraliaBernardo Dominic UNQUALIFIED
Aika D ButtBrazilBernardo Dominic NEW
Munro K DilliardIndiaAnna Fali RENEWAL
Aruna Z SaylorsItalyAnna Fali UNQUALIFIED
Wickens D MorascaBrazilXuxue Feng QUALIFIED
Francesco V KolmetzRussiaAsiya Javayant NEW
Clifford U CampainSpainIvan Magalhaes RENEWAL
Costa O TollnerJapanIoni Bowcher UNQUALIFIED
Salvatore P StensethUnited KingdomBernardo Dominic PROPOSAL
Aika N CaudyFranceIvan Magalhaes PROPOSAL
Maria Z DoeSpainAmy Elsner PROPOSAL
Claire W GarufiJapanIvan Magalhaes UNQUALIFIED
Mujtaba T RoysterIndiaStephen Shaw QUALIFIED
Munro V FerenczRussiaStephen Shaw NEGOTIATION
Alejandro B NestleUnited KingdomIvan Magalhaes RENEWAL
Juan M VenereUnited KingdomElwin Sharvill NEW
Jones V RutaJapanOnyama Limba RENEWAL
Leon L RulapaughCanadaIvan Magalhaes QUALIFIED
Juan W KolmetzRussiaElwin Sharvill RENEWAL
Jones E ShinkoAustraliaElwin Sharvill UNQUALIFIED
Adams C CampainSpainAsiya Javayant QUALIFIED
Chavez L KuskoIndiaIoni Bowcher PROPOSAL
Antonio Z MarrierFranceElwin Sharvill QUALIFIED
Sinclair L NestleFranceOnyama Limba RENEWAL
Maria I CaudyFranceBernardo Dominic UNQUALIFIED
Maisha H RulapaughCanadaOnyama Limba QUALIFIED
James W CampainItalyStephen Shaw NEGOTIATION
Aditya F DilliardItalyIoni Bowcher PROPOSAL
Mujtaba F SlusarskiBrazilStephen Shaw UNQUALIFIED
Adams Z SlusarskiAustraliaAnna Fali RENEWAL
Maria N PerinGermanyAsiya Javayant NEW
Aika K OldroydItalyBernardo Dominic PROPOSAL
Faith N RutaRussiaXuxue Feng UNQUALIFIED
Aditya A BriddickCanadaAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Costa V IturbideAustraliaXuxue Feng NEGOTIATION
Isabel W RoysterBrazilAnna Fali NEW
Alejandro O ShinkoJapanOnyama Limba NEGOTIATION
Kaitlin F RulapaughUnited KingdomAsiya Javayant NEGOTIATION
Deepesh C IturbideSpainStephen Shaw PROPOSAL
Ashley W OstroskyGermanyStephen Shaw NEGOTIATION
Francesco W GauchoBrazilIvan Magalhaes UNQUALIFIED
Maria Q CaudyUnited KingdomElwin Sharvill RENEWAL
Jennifer H RimGermanyStephen Shaw PROPOSAL
Leja T WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois A StensethBrazil2024-05-12Feltz Printing Service PROPOSAL78Xuxue Feng
1001Maisha M MaletJapan2024-05-29Benton, John B Jr NEGOTIATION43Onyama Limba
1002Kaitlin K BologniaRussia2024-06-03Rangoni Of Florence RENEWAL8Ioni Bowcher
1003Munro K MacleadIndia2024-05-09Feltz Printing Service QUALIFIED98Elwin Sharvill
1004Emily B ButtItaly2024-06-02Chapman, Ross E Esq UNQUALIFIED34Stephen Shaw
1005Johnson S BowleySpain2024-05-18Commercial Press RENEWAL66Ioni Bowcher
1006Jeanfrancois N ChuiJapan2024-05-21Dorl, James J Esq NEW22Ioni Bowcher
1007Clifford P NestleFrance2024-05-31Rousseaux, Michael Esq NEW96Elwin Sharvill
1008Ricardo V VenereRussia2024-05-10Truhlar And Truhlar Attys UNQUALIFIED29Stephen Shaw
1009Aditya J OstroskyBrazil2024-05-11Feltz Printing Service UNQUALIFIED33Xuxue Feng
1010Ivar X GlickRussia2024-05-07Chapman, Ross E Esq NEGOTIATION41Xuxue Feng
1011Mujtaba O PaprockiAustralia2024-06-01Benton, John B Jr RENEWAL81Amy Elsner
1012Mujtaba K FlosiIndia2024-05-19Truhlar And Truhlar Attys QUALIFIED33Elwin Sharvill
1013Cody M FlosiFrance2024-05-31Printing Dimensions QUALIFIED35Anna Fali
1014Kaitlin R GlickUnited Kingdom2024-05-27Commercial Press QUALIFIED14Xuxue Feng
1015Ricardo N VenereRussia2024-05-28Feiner Bros NEGOTIATION20Anna Fali
1016Ashley H RutaGermany2024-05-13Feiner Bros NEW79Xuxue Feng
1017Cody P MacleadArgentina2024-05-31Feiner Bros RENEWAL58Ioni Bowcher
1018Nicolas X GauchoIndia2024-05-30Buckley Miller Wright UNQUALIFIED66Anna Fali
1019Leon R TollnerArgentina2024-05-13Benton, John B Jr NEW49Ivan Magalhaes
1020Deepesh R DoeCanada2024-05-28Feltz Printing Service NEGOTIATION93Amy Elsner
1021Chavez I KuskoRussia2024-05-29Rangoni Of Florence NEW8Ioni Bowcher
1022Deepesh T KolmetzCanada2024-05-28Chanay, Jeffrey A Esq QUALIFIED86Stephen Shaw
1023Mayumi K SaylorsArgentina2024-05-31Feiner Bros RENEWAL95Ivan Magalhaes
1024Wickens V StensethUnited Kingdom2024-05-14Chemel, James L Cpa RENEWAL48Anna Fali
1025Leon T BologniaJapan2024-05-11Chapman, Ross E Esq PROPOSAL77Anna Fali
1026James R KolmetzFrance2024-05-10King, Christopher A Esq NEW92Anna Fali
1027Silvio A GlickCanada2024-05-13Benton, John B Jr QUALIFIED95Amy Elsner
1028Salvatore Q GarufiRussia2024-05-12Rangoni Of Florence RENEWAL65Amy Elsner
1029Maria P GlickJapan2024-05-27Truhlar And Truhlar Attys RENEWAL42Anna Fali
1030Ricardo S AlbaresUnited Kingdom2024-05-07Rousseaux, Michael Esq NEGOTIATION88Bernardo Dominic
1031Stacey P DilliardItaly2024-05-23Truhlar And Truhlar Attys NEW63Bernardo Dominic
1032Cody X StensethItaly2024-05-14Benton, John B Jr PROPOSAL83Bernardo Dominic
1033Mujtaba M StensethSpain2024-06-01Commercial Press NEGOTIATION39Stephen Shaw
1034Aika Q IturbideJapan2024-05-08Commercial Press QUALIFIED86Ioni Bowcher
1035Darci R GlickFrance2024-05-20Rangoni Of Florence NEW7Onyama Limba
1036Salvatore X KolmetzFrance2024-05-05Chapman, Ross E Esq NEW6Anna Fali
1037Aruna I FollerArgentina2024-05-07Feiner Bros NEGOTIATION22Onyama Limba
1038Clifford Q GlickCanada2024-05-20Chemel, James L Cpa UNQUALIFIED88Amy Elsner
1039Morrow Y PaprockiBrazil2024-05-18Buckley Miller Wright NEW33Ivan Magalhaes
1040Smith A PoquetteSpain2024-05-11Chanay, Jeffrey A Esq PROPOSAL63Elwin Sharvill
1041Octavia D KolmetzArgentina2024-05-15Chapman, Ross E Esq NEGOTIATION58Anna Fali
1042Salvatore V DilliardGermany2024-05-11Feiner Bros NEW57Ivan Magalhaes
1043Aditya I GarufiJapan2024-05-12Rousseaux, Michael Esq RENEWAL3Elwin Sharvill
1044Julie T GauchoIndia2024-05-10Truhlar And Truhlar Attys QUALIFIED15Elwin Sharvill
1045Salvatore Z MaletRussia2024-06-02Chanay, Jeffrey A Esq QUALIFIED32Onyama Limba
1046David Q PerinJapan2024-05-17Commercial Press PROPOSAL10Xuxue Feng
1047Murillo X MarrierItaly2024-05-23Chemel, James L Cpa PROPOSAL20Ivan Magalhaes
1048Greenwood Z AmigonJapan2024-05-23Chanay, Jeffrey A Esq QUALIFIED65Onyama Limba
1049Jeanfrancois H DilliardSpain2024-05-10Rousseaux, Michael Esq NEGOTIATION4Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Sinclair S OstroskyCanadaAnna Fali UNQUALIFIED
Johnson B GlickAustraliaIvan Magalhaes QUALIFIED
Claire Y AmigonUnited KingdomElwin Sharvill RENEWAL
Clifford Y ButtUnited KingdomAsiya Javayant RENEWAL
Izzy S AmigonRussiaXuxue Feng NEW
Antonio Z NickaItalyAsiya Javayant NEGOTIATION
Izzy O VenereJapanXuxue Feng PROPOSAL
Salvatore Y RutaJapanAnna Fali NEGOTIATION
Mayumi I SlusarskiGermanyElwin Sharvill PROPOSAL
Emily T RimFranceIoni Bowcher PROPOSAL
Misaki T FlosiJapanIoni Bowcher PROPOSAL
Maria Y MacleadCanadaAnna Fali QUALIFIED
Smith A AmigonCanadaXuxue Feng QUALIFIED
Johnson N FollerArgentinaXuxue Feng UNQUALIFIED
Claire J MaletArgentinaAsiya Javayant RENEWAL
James F FerenczFranceAsiya Javayant NEW
Claire L VocelkaCanadaElwin Sharvill UNQUALIFIED
Smith M StockhamItalyStephen Shaw NEGOTIATION
Morrow X ShinkoUnited KingdomAnna Fali NEGOTIATION
Aruna Q VenereItalyXuxue Feng NEW
Ricardo O NickaRussiaBernardo Dominic NEW
Mujtaba G BowleyGermanyAnna Fali PROPOSAL
James N AmigonBrazilIoni Bowcher NEW
Isabel Q MorascaBrazilIoni Bowcher UNQUALIFIED
Clifford I DoeSpainIvan Magalhaes PROPOSAL
Octavia Q GarufiCanadaElwin Sharvill NEW
Kadeem Z IturbideAustraliaAnna Fali QUALIFIED
Greenwood B MaletJapanOnyama Limba RENEWAL
Octavia G MacleadFranceStephen Shaw PROPOSAL
Adams Q WieserItalyIvan Magalhaes UNQUALIFIED
Jeanfrancois Y FigeroaUnited KingdomAmy Elsner UNQUALIFIED
Jennifer J BowleyUnited KingdomBernardo Dominic RENEWAL
Francesco H ShinkoAustraliaElwin Sharvill RENEWAL
Octavia E SergiJapanAsiya Javayant RENEWAL
Maisha D DarakjySpainBernardo Dominic NEGOTIATION
David Z NickaCanadaElwin Sharvill NEW
Isabel T InouyeSpainOnyama Limba NEGOTIATION
Octavia U InouyeRussiaOnyama Limba RENEWAL
James H AlbaresGermanyElwin Sharvill NEGOTIATION
Cody U CaudyIndiaIoni Bowcher UNQUALIFIED
Julie D OldroydItalyBernardo Dominic NEW
Deepesh P NestleJapanStephen Shaw NEW
Aika R FlosiJapanXuxue Feng QUALIFIED
James R GlickSpainIvan Magalhaes RENEWAL
Deepesh H WhobreyFranceElwin Sharvill UNQUALIFIED
Leja B ShinkoUnited KingdomIoni Bowcher NEGOTIATION
Ivar A GillianRussiaAsiya Javayant NEGOTIATION
Alejandro N SergiIndiaAsiya Javayant UNQUALIFIED
Morrow I ButtRussiaBernardo Dominic QUALIFIED
Isabel V OstroskyJapanAmy Elsner NEGOTIATION
Frozen Columns
Name
Maisha U Ostrosky
Smith I Flosi
Ivar T Darakjy
Aditya V Wieser
Mujtaba E Caldarera
Octavia X Garufi
Jennifer J Briddick
Isabel Z Slusarski
Leja V Glick
Aika T Darakjy
Clifford R Inouye
Greenwood H Iturbide
Murillo T Caudy
Greenwood K Vocelka
David N Royster
Salvatore O Caldarera
Rodrigues Y Albares
Smith S Amigon
Alejandro V Royster
Tony K Chui
Claire W Maclead
Salvatore Z Paprocki
David V Kolmetz
Jeanfrancois I Figeroa
Adams W Oldroyd
Chavez Z Amigon
Mayumi E Venere
Leon Q Caldarera
Mujtaba N Shinko
Claire Q Maclead
Juan W Amigon
Cody H Bowley
Ricardo K Waycott
Tony M Morasca
Sinclair K Bolognia
Aditya U Sergi
Clifford F Foller
Maria X Shinko
Jefferson P Perin
Alejandro A Gaucho
Emily K Ruta
Nicolas M Wieser
Aditya Q Stockham
Jefferson T Amigon
Claire K Iturbide
Aika V Bolognia
Clifford G Stenseth
Mayumi L Caudy
Arvin R Rim
Morrow U Rulapaugh
IdCountryDate
1000Brazil2024-05-30
1001Canada2024-06-03
1002Japan2024-05-13
1003Russia2024-05-25
1004Russia2024-05-15
1005Japan2024-05-19
1006Argentina2024-05-06
1007Russia2024-05-26
1008Spain2024-05-13
1009Argentina2024-05-10
1010Canada2024-05-15
1011India2024-06-03
1012Japan2024-05-31
1013Germany2024-05-22
1014Italy2024-05-07
1015Argentina2024-05-25
1016India2024-05-31
1017Argentina2024-05-07
1018Spain2024-05-31
1019Italy2024-05-24
1020Italy2024-05-23
1021Germany2024-05-29
1022Australia2024-05-05
1023Russia2024-05-30
1024India2024-05-21
1025India2024-05-08
1026Germany2024-05-09
1027Spain2024-05-25
1028France2024-05-23
1029Italy2024-05-14
1030Brazil2024-06-03
1031Japan2024-05-09
1032Argentina2024-05-22
1033Germany2024-06-01
1034Russia2024-05-15
1035Russia2024-05-22
1036Canada2024-05-24
1037Spain2024-05-24
1038Australia2024-05-27
1039Japan2024-05-23
1040Germany2024-05-06
1041Italy2024-06-02
1042Argentina2024-05-20
1043Russia2024-05-16
1044United Kingdom2024-05-30
1045Canada2024-05-25
1046Italy2024-05-23
1047Italy2024-05-24
1048Spain2024-05-21
1049Italy2024-05-30

On-Demand Data

NameIdCountryDate
Arvin J Kusko1000United Kingdom2024-05-25
Stacey C Ostrosky1001Germany2024-05-16
Ashley D Gillian1002Canada2024-05-11
Jones J Shinko1003United Kingdom2024-06-01
Antonio W Marrier1004Italy2024-05-22
Juan J Morasca1005France2024-05-06
Faith L Perin1006Brazil2024-06-01
Clifford G Amigon1007Japan2024-05-18
Sinclair T Garufi1008Australia2024-06-03
Julie S Wieser1009India2024-05-24
Misaki H Amigon1010Canada2024-05-13
Arvin K Amigon1011Argentina2024-05-22
James G Malet1012Spain2024-05-11
Claire V Ostrosky1013Italy2024-05-12
Octavia X Darakjy1014Italy2024-05-18
Cody C Ruta1015Canada2024-06-01
Octavia M Schemmer1016Spain2024-05-20
Emily E Foller1017Russia2024-05-24
Izzy L Stenseth1018Australia2024-05-21
Kaitlin Q Vocelka1019India2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy T DarakjyRussiaAnna Fali RENEWAL
Salvatore V SergiUnited KingdomXuxue Feng PROPOSAL
Rodrigues C FlosiIndiaIoni Bowcher PROPOSAL
Aruna N WaycottRussiaBernardo Dominic UNQUALIFIED
Maisha R GarufiArgentinaAsiya Javayant RENEWAL
Antonio W NestleIndiaAnna Fali QUALIFIED
Deepesh U StockhamGermanyXuxue Feng NEW
Kadeem C SlusarskiAustraliaAmy Elsner NEGOTIATION
Stacey S SaylorsSpainElwin Sharvill NEW
Clifford Y BriddickArgentinaXuxue Feng NEGOTIATION
Emily J ChuiJapanAsiya Javayant NEW
Jones U GarufiBrazilIvan Magalhaes NEGOTIATION
Francesco N CaudyGermanyAsiya Javayant NEW
Jefferson C AmigonRussiaStephen Shaw NEGOTIATION
Alejandro I MaletCanadaOnyama Limba PROPOSAL
Munro N KuskoSpainElwin Sharvill NEW
Mayumi Y FerenczItalyBernardo Dominic NEGOTIATION
Leon R SchemmerAustraliaXuxue Feng QUALIFIED
Aruna E CaldareraIndiaStephen Shaw NEW
Mayumi R RutaFranceIvan Magalhaes QUALIFIED
Jefferson O FerenczGermanyStephen Shaw RENEWAL
Munro Z AmigonArgentinaOnyama Limba PROPOSAL
Octavia X IturbideGermanyStephen Shaw RENEWAL
Aika E AmigonIndiaOnyama Limba PROPOSAL
Aika H MorascaAustraliaOnyama Limba UNQUALIFIED
Octavia E WhobreyGermanyStephen Shaw NEW
Mayumi I AmigonArgentinaIvan Magalhaes UNQUALIFIED
Smith M VenereIndiaXuxue Feng QUALIFIED
Wickens D ChuiItalyXuxue Feng UNQUALIFIED
Faith W SaylorsCanadaElwin Sharvill UNQUALIFIED
Maisha O GlickBrazilAmy Elsner RENEWAL
Stacey Q NickaJapanElwin Sharvill PROPOSAL
Salvatore N ShinkoGermanyIvan Magalhaes QUALIFIED
Salvatore I AmigonGermanyOnyama Limba NEW
Maria F WhobreyRussiaOnyama Limba NEGOTIATION
Morrow X BologniaUnited KingdomIvan Magalhaes UNQUALIFIED
Jeanfrancois I WieserAustraliaAsiya Javayant UNQUALIFIED
Juan B ShinkoJapanIvan Magalhaes NEGOTIATION
Mayumi H InouyeCanadaAnna Fali PROPOSAL
Jones I GarufiCanadaElwin Sharvill 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>