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 U StockhamAustraliaAnna Fali NEW
Kadeem G CampainCanadaElwin Sharvill UNQUALIFIED
Arvin J RoysterIndiaAsiya Javayant NEW
Kadeem P FigeroaArgentinaXuxue Feng QUALIFIED
Arvin M PerinGermanyIvan Magalhaes PROPOSAL
Jones Q TollnerIndiaIvan Magalhaes QUALIFIED
Tony X SchemmerIndiaElwin Sharvill RENEWAL
Leja T WhobreyFranceAnna Fali UNQUALIFIED
Leon B KuskoUnited KingdomOnyama Limba QUALIFIED
Johnson L SaylorsIndiaElwin Sharvill NEW
Julie R VocelkaItalyOnyama Limba NEGOTIATION
Salvatore T WieserSpainIoni Bowcher NEGOTIATION
Smith J PoquetteFranceIoni Bowcher NEGOTIATION
Jefferson Z MaletCanadaElwin Sharvill PROPOSAL
Costa O VocelkaJapanAsiya Javayant PROPOSAL
Morrow J KuskoGermanyStephen Shaw NEGOTIATION
Aruna K VocelkaRussiaBernardo Dominic NEGOTIATION
Clifford R NestleItalyOnyama Limba NEW
Faith S ButtItalyIoni Bowcher PROPOSAL
Stacey L CaudyBrazilAnna Fali NEGOTIATION
Wickens A DoeFranceAmy Elsner NEW
Arvin W StockhamBrazilIvan Magalhaes QUALIFIED
Isabel C OldroydFranceBernardo Dominic QUALIFIED
Kaitlin K BriddickIndiaOnyama Limba UNQUALIFIED
Salvatore K AmigonGermanyBernardo Dominic UNQUALIFIED
Juan J DoeJapanAnna Fali NEW
Nicolas D MarrierRussiaIvan Magalhaes NEGOTIATION
Costa T MacleadIndiaIoni Bowcher UNQUALIFIED
Francesco X VocelkaArgentinaIoni Bowcher PROPOSAL
Tony N DilliardFranceIvan Magalhaes NEW
Smith Y GillianGermanyIoni Bowcher QUALIFIED
Stacey O ButtArgentinaIoni Bowcher UNQUALIFIED
Munro U RutaCanadaIvan Magalhaes UNQUALIFIED
Aditya M DarakjyCanadaElwin Sharvill NEGOTIATION
Misaki Z RutaRussiaBernardo Dominic NEGOTIATION
Emily I SergiGermanyOnyama Limba PROPOSAL
Munro J DilliardFranceOnyama Limba RENEWAL
Aditya X OstroskyRussiaElwin Sharvill NEW
Stacey G MorascaFranceStephen Shaw NEW
Sinclair B NestleCanadaAmy Elsner RENEWAL
Mujtaba H SergiUnited KingdomAsiya Javayant QUALIFIED
Aruna C FigeroaItalyXuxue Feng RENEWAL
Tony J WhobreyIndiaAmy Elsner RENEWAL
Johnson A DarakjyJapanAmy Elsner RENEWAL
Silvio Q KuskoGermanyElwin Sharvill UNQUALIFIED
Costa Q ButtBrazilOnyama Limba UNQUALIFIED
Nicolas K StensethJapanIoni Bowcher QUALIFIED
Rodrigues K MaletSpainOnyama Limba UNQUALIFIED
Leja V KuskoIndiaAsiya Javayant UNQUALIFIED
David V MaletUnited KingdomAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
Maisha X RutaRussiaOnyama Limba NEGOTIATION
Wickens U RimArgentinaIoni Bowcher NEGOTIATION
Francesco U NestleArgentinaAmy Elsner NEW
Sinclair C GauchoJapanAmy Elsner QUALIFIED
Arvin D FlosiAustraliaElwin Sharvill NEW
Wickens M DoeIndiaAnna Fali QUALIFIED
Nicolas F ButtGermanyIvan Magalhaes PROPOSAL
Juan C IturbideJapanOnyama Limba NEGOTIATION
Darci P SaylorsArgentinaAmy Elsner NEW
Maria V CaudyItalyStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo P DoeBrazil2024-05-25Chemel, James L Cpa QUALIFIED47Stephen Shaw
1001Adams H WieserIndia2024-06-10Chapman, Ross E Esq NEW76Bernardo Dominic
1002Clifford D TollnerCanada2024-05-22Chapman, Ross E Esq RENEWAL29Stephen Shaw
1003Chavez E PoquetteGermany2024-05-30Chapman, Ross E Esq PROPOSAL93Elwin Sharvill
1004Smith H OstroskyRussia2024-06-16Chemel, James L Cpa RENEWAL55Bernardo Dominic
1005Ivar Q DilliardItaly2024-05-26Chanay, Jeffrey A Esq RENEWAL97Xuxue Feng
1006Chavez U BowleyRussia2024-06-13Feiner Bros NEW68Elwin Sharvill
1007Ashley A ButtItaly2024-06-16Chemel, James L Cpa NEW60Asiya Javayant
1008Leon H DoeArgentina2024-05-23Feiner Bros NEW12Xuxue Feng
1009Nicolas G FerenczUnited Kingdom2024-05-20Morlong Associates NEW12Asiya Javayant
1010Salvatore C NickaIndia2024-06-03Rangoni Of Florence QUALIFIED9Asiya Javayant
1011Arvin H DilliardIndia2024-06-10Commercial Press PROPOSAL22Asiya Javayant
1012Chavez T MaletIndia2024-05-25Truhlar And Truhlar Attys NEW73Ioni Bowcher
1013Julie C GillianFrance2024-05-23Morlong Associates UNQUALIFIED13Asiya Javayant
1014Sinclair P PoquetteAustralia2024-05-31Benton, John B Jr UNQUALIFIED64Ivan Magalhaes
1015Francesco X RulapaughGermany2024-06-07Rangoni Of Florence NEGOTIATION10Ioni Bowcher
1016Octavia L FigeroaUnited Kingdom2024-05-21Printing Dimensions RENEWAL87Bernardo Dominic
1017Faith Y SergiIndia2024-05-26Benton, John B Jr RENEWAL21Stephen Shaw
1018Emily Y NestleFrance2024-06-10Dorl, James J Esq RENEWAL5Stephen Shaw
1019Deepesh X CampainAustralia2024-05-27Rangoni Of Florence PROPOSAL38Amy Elsner
1020Adams L SaylorsRussia2024-06-06Chemel, James L Cpa RENEWAL75Amy Elsner
1021Maisha O VocelkaCanada2024-05-25Chapman, Ross E Esq UNQUALIFIED37Asiya Javayant
1022Morrow A WaycottJapan2024-06-17Dorl, James J Esq NEGOTIATION55Ivan Magalhaes
1023Darci F StensethSpain2024-06-07Chemel, James L Cpa NEGOTIATION10Xuxue Feng
1024Wickens O RulapaughAustralia2024-05-22Buckley Miller Wright PROPOSAL15Ivan Magalhaes
1025Clifford G FigeroaUnited Kingdom2024-06-09Benton, John B Jr PROPOSAL2Ivan Magalhaes
1026Arvin S FigeroaUnited Kingdom2024-06-05Benton, John B Jr RENEWAL84Amy Elsner
1027Wickens B InouyeCanada2024-06-11Chanay, Jeffrey A Esq RENEWAL30Xuxue Feng
1028Stacey K RutaUnited Kingdom2024-06-06Buckley Miller Wright RENEWAL53Asiya Javayant
1029Murillo Y WaycottArgentina2024-05-28Chemel, James L Cpa RENEWAL85Stephen Shaw
1030Jones C NickaGermany2024-05-20Truhlar And Truhlar Attys RENEWAL37Xuxue Feng
1031Aditya E GlickAustralia2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED65Bernardo Dominic
1032Octavia X StensethSpain2024-06-14Dorl, James J Esq RENEWAL53Asiya Javayant
1033Aika K ButtAustralia2024-06-16Rangoni Of Florence NEW94Anna Fali
1034Kaitlin R RimFrance2024-06-02Morlong Associates UNQUALIFIED54Amy Elsner
1035Maisha D GauchoGermany2024-06-01Morlong Associates RENEWAL22Bernardo Dominic
1036Darci D RulapaughBrazil2024-05-28Chanay, Jeffrey A Esq QUALIFIED4Ioni Bowcher
1037Isabel K FollerBrazil2024-06-01King, Christopher A Esq PROPOSAL0Ivan Magalhaes
1038Deepesh C GlickCanada2024-05-20Chemel, James L Cpa UNQUALIFIED34Anna Fali
1039Leon H MorascaIndia2024-05-31Chemel, James L Cpa RENEWAL90Elwin Sharvill
1040Aruna J MorascaBrazil2024-05-25Commercial Press PROPOSAL68Asiya Javayant
1041Aika B RoysterBrazil2024-06-05Rangoni Of Florence RENEWAL61Ivan Magalhaes
1042Tony Q GarufiCanada2024-06-18Commercial Press NEGOTIATION79Asiya Javayant
1043Julie Y StensethItaly2024-06-07Buckley Miller Wright NEW35Xuxue Feng
1044Cody B GlickFrance2024-05-24Chapman, Ross E Esq NEW14Ivan Magalhaes
1045Jones D TollnerArgentina2024-06-15King, Christopher A Esq NEGOTIATION62Onyama Limba
1046Maria J FlosiIndia2024-06-09Chemel, James L Cpa QUALIFIED89Asiya Javayant
1047Kaitlin B WieserCanada2024-05-28King, Christopher A Esq QUALIFIED8Amy Elsner
1048Ricardo M ShinkoRussia2024-05-23Rangoni Of Florence NEGOTIATION15Bernardo Dominic
1049Leja M BowleyAustralia2024-05-29Feltz Printing Service NEW84Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aditya O CampainBrazilXuxue Feng NEW
Izzy K FlosiRussiaOnyama Limba UNQUALIFIED
Misaki B MacleadBrazilIvan Magalhaes NEW
Clifford O RoysterItalyOnyama Limba QUALIFIED
Mayumi P RulapaughGermanyIoni Bowcher UNQUALIFIED
Faith U FigeroaRussiaAmy Elsner NEW
Maisha I FlosiSpainXuxue Feng NEW
Nicolas H InouyeAustraliaIvan Magalhaes UNQUALIFIED
Jefferson O MaletUnited KingdomOnyama Limba RENEWAL
Munro G FigeroaGermanyIvan Magalhaes UNQUALIFIED
Misaki T GauchoGermanyAnna Fali RENEWAL
Johnson Z OldroydGermanyIoni Bowcher RENEWAL
Darci U VocelkaGermanyOnyama Limba UNQUALIFIED
Johnson T FlosiRussiaBernardo Dominic NEGOTIATION
Aditya O FigeroaJapanAnna Fali PROPOSAL
Murillo D AmigonAustraliaIoni Bowcher QUALIFIED
Tony B FollerCanadaOnyama Limba UNQUALIFIED
Johnson S MorascaJapanStephen Shaw NEW
Murillo Y MaletSpainXuxue Feng NEGOTIATION
Ashley P BologniaUnited KingdomElwin Sharvill UNQUALIFIED
Jeanfrancois V PoquetteCanadaIvan Magalhaes PROPOSAL
Mujtaba B DilliardGermanyAmy Elsner NEGOTIATION
Clifford F KolmetzUnited KingdomAsiya Javayant QUALIFIED
Aditya U WhobreyIndiaElwin Sharvill NEW
Claire Y GarufiJapanIvan Magalhaes NEGOTIATION
Jennifer X MaletBrazilXuxue Feng QUALIFIED
Aditya B VenereItalyXuxue Feng RENEWAL
Sinclair H MarrierSpainIvan Magalhaes QUALIFIED
Mayumi X GlickItalyOnyama Limba NEGOTIATION
Octavia F ButtJapanStephen Shaw NEW
Wickens O IturbideUnited KingdomAmy Elsner UNQUALIFIED
Nicolas E FigeroaArgentinaStephen Shaw UNQUALIFIED
Faith F KolmetzGermanyAmy Elsner QUALIFIED
Faith A KuskoCanadaOnyama Limba NEGOTIATION
Wickens P FollerCanadaElwin Sharvill QUALIFIED
Maisha I ShinkoSpainStephen Shaw RENEWAL
Leon G StensethSpainAmy Elsner NEGOTIATION
Clifford C MarrierSpainStephen Shaw NEW
Tony N SlusarskiGermanyElwin Sharvill NEGOTIATION
Munro Y WieserJapanIoni Bowcher UNQUALIFIED
Costa S WhobreyIndiaXuxue Feng RENEWAL
Emily M KuskoArgentinaElwin Sharvill UNQUALIFIED
Aika G IturbideUnited KingdomAnna Fali QUALIFIED
Juan Q IturbideAustraliaIvan Magalhaes NEW
Kadeem E ChuiArgentinaElwin Sharvill QUALIFIED
Salvatore N NickaCanadaElwin Sharvill NEW
Johnson B FigeroaGermanyStephen Shaw NEGOTIATION
Leja L BowleySpainIvan Magalhaes PROPOSAL
Deepesh M MarrierBrazilIvan Magalhaes NEGOTIATION
Jennifer O InouyeSpainElwin Sharvill QUALIFIED
Frozen Columns
Name
Kadeem X Caldarera
Ashley J Iturbide
Ivar U Morasca
Emily P Kolmetz
Darci G Malet
Faith C Amigon
Rodrigues J Kusko
Faith C Whobrey
Ricardo I Darakjy
Jones R Wieser
Clifford R Caudy
Costa S Inouye
Juan Y Rulapaugh
Leon A Vocelka
Greenwood D Bowley
Wickens Q Foller
Wickens P Saylors
Kadeem M Venere
Leon Z Campain
Tony L Briddick
Julie A Stenseth
Chavez I Maclead
Stacey E Gaucho
Francesco F Royster
Maria H Ferencz
Jennifer K Perin
Jeanfrancois I Schemmer
Arvin I Darakjy
Claire Z Foller
Chavez S Kolmetz
Ricardo N Whobrey
Nicolas T Ferencz
Maisha A Gaucho
Nicolas I Maclead
Sinclair G Butt
Deepesh H Flosi
Claire Z Waycott
Deepesh C Rim
Clifford J Gaucho
Smith U Caudy
Izzy T Briddick
Leon K Malet
Aditya A Stockham
David G Rulapaugh
James F Royster
Julie Q Ruta
Costa Y Kolmetz
Chavez G Campain
Jennifer R Stenseth
Murillo I Garufi
IdCountryDate
1000Australia2024-05-23
1001France2024-05-29
1002Canada2024-05-29
1003France2024-06-04
1004Brazil2024-05-22
1005France2024-06-09
1006Australia2024-05-30
1007Brazil2024-05-29
1008India2024-06-02
1009Australia2024-05-27
1010United Kingdom2024-06-11
1011Spain2024-06-03
1012Russia2024-05-30
1013India2024-06-08
1014Argentina2024-05-30
1015France2024-06-09
1016France2024-06-17
1017India2024-06-06
1018Argentina2024-06-12
1019Australia2024-05-22
1020Australia2024-06-13
1021Italy2024-05-29
1022Spain2024-06-01
1023Italy2024-05-31
1024Germany2024-06-08
1025Brazil2024-06-07
1026Argentina2024-05-29
1027Argentina2024-06-11
1028Germany2024-05-31
1029Canada2024-05-30
1030France2024-06-14
1031United Kingdom2024-06-04
1032Canada2024-06-10
1033Japan2024-06-15
1034Argentina2024-06-09
1035Japan2024-06-16
1036Canada2024-05-31
1037Brazil2024-05-20
1038Argentina2024-06-05
1039Brazil2024-06-02
1040Canada2024-06-10
1041Argentina2024-05-26
1042Canada2024-06-15
1043France2024-05-25
1044Australia2024-06-11
1045France2024-06-04
1046Canada2024-05-31
1047Argentina2024-06-16
1048India2024-06-01
1049Spain2024-06-09

On-Demand Data

NameIdCountryDate
Chavez W Kusko1000Germany2024-05-29
Deepesh E Inouye1001France2024-05-30
Chavez S Sergi1002Australia2024-05-25
Kaitlin C Kolmetz1003Germany2024-05-27
Emily V Maclead1004India2024-06-12
Aika W Dilliard1005India2024-06-08
Silvio L Albares1006Germany2024-05-26
Juan G Ruta1007Italy2024-05-24
Johnson L Ostrosky1008India2024-06-02
Murillo T Poquette1009France2024-05-28
Maisha M Rulapaugh1010Australia2024-06-01
Costa E Glick1011Germany2024-06-07
Julie D Garufi1012Spain2024-05-24
Johnson V Kusko1013Brazil2024-05-23
Tony W Ferencz1014Argentina2024-05-20
Leon W Royster1015Germany2024-06-06
Mujtaba B Gaucho1016India2024-06-13
Ricardo C Darakjy1017United Kingdom2024-06-09
Morrow L Nicka1018France2024-05-30
Murillo C Campain1019Japan2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams B CampainJapanElwin Sharvill PROPOSAL
Nicolas S DarakjyJapanIoni Bowcher QUALIFIED
James H SlusarskiUnited KingdomOnyama Limba PROPOSAL
Aika V InouyeItalyElwin Sharvill UNQUALIFIED
Octavia C DoeCanadaAnna Fali PROPOSAL
Jennifer R MorascaItalyIvan Magalhaes RENEWAL
Aruna J WaycottItalyAsiya Javayant NEGOTIATION
Morrow F SchemmerCanadaXuxue Feng RENEWAL
Aika M RimAustraliaXuxue Feng NEW
Smith J GillianAustraliaIvan Magalhaes PROPOSAL
Aika G WieserSpainElwin Sharvill PROPOSAL
Aditya V AlbaresGermanyAmy Elsner QUALIFIED
Kadeem F AlbaresBrazilBernardo Dominic PROPOSAL
Kadeem Y MacleadCanadaAsiya Javayant UNQUALIFIED
Jones E ButtFranceAnna Fali NEGOTIATION
Claire P PaprockiItalyStephen Shaw UNQUALIFIED
Juan K SaylorsItalyAmy Elsner PROPOSAL
Jefferson C DoeJapanIvan Magalhaes NEW
Octavia L MarrierIndiaElwin Sharvill NEW
Julie P GillianGermanyAmy Elsner UNQUALIFIED
Ricardo N MaletJapanIvan Magalhaes UNQUALIFIED
Tony J BologniaCanadaBernardo Dominic NEW
Jefferson K CampainJapanIoni Bowcher QUALIFIED
Cody C RoysterCanadaIvan Magalhaes NEW
Greenwood Z BowleyBrazilIoni Bowcher PROPOSAL
Francesco T BologniaIndiaElwin Sharvill NEGOTIATION
Kadeem I MaletFranceStephen Shaw PROPOSAL
Costa L FlosiJapanStephen Shaw NEGOTIATION
Isabel P WieserRussiaAsiya Javayant QUALIFIED
Clifford I VenereSpainXuxue Feng NEW
David Q InouyeSpainIvan Magalhaes NEW
Kaitlin J FigeroaGermanyAmy Elsner PROPOSAL
Tony I OldroydAustraliaOnyama Limba NEGOTIATION
Kadeem R MaletBrazilBernardo Dominic UNQUALIFIED
Sinclair U ChuiArgentinaStephen Shaw PROPOSAL
Adams K KolmetzIndiaBernardo Dominic UNQUALIFIED
Salvatore L RulapaughJapanAmy Elsner NEGOTIATION
Antonio Y PoquetteUnited KingdomAsiya Javayant RENEWAL
Sinclair J BowleyIndiaStephen Shaw PROPOSAL
Adams C InouyeUnited KingdomOnyama Limba 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>