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
Deepesh O ChuiSpainIoni Bowcher NEW
Maria C NestleArgentinaBernardo Dominic PROPOSAL
James W MaletCanadaAsiya Javayant PROPOSAL
Munro H RulapaughGermanyOnyama Limba NEGOTIATION
Ivar Q NickaJapanAsiya Javayant RENEWAL
Izzy M MacleadAustraliaAnna Fali NEW
James B GillianArgentinaStephen Shaw UNQUALIFIED
Ivar D MorascaIndiaBernardo Dominic PROPOSAL
Alejandro X DoeAustraliaAsiya Javayant UNQUALIFIED
Juan F TollnerAustraliaBernardo Dominic RENEWAL
Sinclair Y DilliardBrazilBernardo Dominic RENEWAL
Ivar C VenereArgentinaIvan Magalhaes PROPOSAL
Octavia V KuskoJapanElwin Sharvill QUALIFIED
Isabel J OstroskyJapanAmy Elsner UNQUALIFIED
Mayumi J GillianCanadaAnna Fali QUALIFIED
James Q FlosiJapanIoni Bowcher PROPOSAL
Misaki U RulapaughGermanyStephen Shaw QUALIFIED
Chavez Q PaprockiIndiaIvan Magalhaes PROPOSAL
Johnson F ButtCanadaOnyama Limba NEW
Costa L NestleUnited KingdomAnna Fali PROPOSAL
Wickens D MaletFranceElwin Sharvill UNQUALIFIED
Costa Z CaudyArgentinaAnna Fali RENEWAL
James T BologniaFranceAsiya Javayant PROPOSAL
Kadeem I SaylorsJapanOnyama Limba NEW
Jefferson P MarrierJapanXuxue Feng NEGOTIATION
Munro W OldroydGermanyElwin Sharvill QUALIFIED
Claire P OldroydIndiaIoni Bowcher RENEWAL
Julie J AlbaresJapanAnna Fali QUALIFIED
Jeanfrancois D KolmetzRussiaElwin Sharvill QUALIFIED
Munro G CampainGermanyAsiya Javayant NEW
Jeanfrancois U ShinkoIndiaBernardo Dominic QUALIFIED
Jefferson P ShinkoSpainXuxue Feng PROPOSAL
David X OstroskyCanadaXuxue Feng RENEWAL
Wickens V PaprockiIndiaAsiya Javayant QUALIFIED
Izzy I PerinJapanStephen Shaw NEGOTIATION
Octavia X CaldareraItalyAmy Elsner PROPOSAL
Greenwood J RulapaughFranceStephen Shaw NEGOTIATION
Salvatore W PerinCanadaAnna Fali NEGOTIATION
Antonio P IturbideCanadaElwin Sharvill RENEWAL
Rodrigues T DoeArgentinaBernardo Dominic NEGOTIATION
Aditya W GauchoRussiaStephen Shaw RENEWAL
Juan W FigeroaIndiaBernardo Dominic RENEWAL
Claire C StockhamUnited KingdomIvan Magalhaes RENEWAL
Francesco L CampainUnited KingdomStephen Shaw NEW
Mujtaba E OstroskyUnited KingdomAnna Fali UNQUALIFIED
Ricardo B CaudyAustraliaIvan Magalhaes PROPOSAL
Johnson J GlickGermanyStephen Shaw RENEWAL
Silvio M StockhamCanadaElwin Sharvill NEW
Salvatore Z StensethIndiaStephen Shaw RENEWAL
Adams N AlbaresFranceBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco B StensethFranceIvan Magalhaes NEW
Misaki E GlickItalyIvan Magalhaes QUALIFIED
Costa M FigeroaAustraliaIoni Bowcher QUALIFIED
Julie P BologniaGermanyBernardo Dominic UNQUALIFIED
Juan K CaudyIndiaXuxue Feng UNQUALIFIED
Salvatore B OstroskyArgentinaAmy Elsner NEW
Arvin E PerinItalyBernardo Dominic QUALIFIED
Cody V StockhamJapanAsiya Javayant UNQUALIFIED
Smith K PerinJapanStephen Shaw RENEWAL
Silvio P OldroydJapanStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan M AlbaresRussia2024-06-01Printing Dimensions QUALIFIED88Xuxue Feng
1001Kadeem P DilliardItaly2024-06-03Truhlar And Truhlar Attys QUALIFIED84Ivan Magalhaes
1002Salvatore C DarakjyGermany2024-06-04Rousseaux, Michael Esq NEGOTIATION70Xuxue Feng
1003Cody I MacleadIndia2024-05-22Buckley Miller Wright UNQUALIFIED56Anna Fali
1004Aditya M NestleItaly2024-06-06Benton, John B Jr QUALIFIED54Elwin Sharvill
1005Alejandro S BologniaGermany2024-05-18Printing Dimensions RENEWAL51Bernardo Dominic
1006Kaitlin Z IturbideArgentina2024-05-19Truhlar And Truhlar Attys UNQUALIFIED9Onyama Limba
1007Tony P MaletBrazil2024-06-08Buckley Miller Wright NEGOTIATION37Elwin Sharvill
1008Aditya B DilliardGermany2024-05-18Feltz Printing Service PROPOSAL59Ioni Bowcher
1009Maria V FerenczItaly2024-05-25Buckley Miller Wright NEW46Ioni Bowcher
1010Aika K DarakjyCanada2024-06-04Benton, John B Jr NEW45Amy Elsner
1011Leja K CaudyJapan2024-05-23Buckley Miller Wright NEW43Ioni Bowcher
1012James R PoquetteArgentina2024-06-04Feltz Printing Service PROPOSAL62Onyama Limba
1013Stacey L SergiGermany2024-06-01Truhlar And Truhlar Attys QUALIFIED29Xuxue Feng
1014Jennifer H SlusarskiArgentina2024-05-29Feltz Printing Service RENEWAL75Ioni Bowcher
1015Octavia S FigeroaRussia2024-05-18Printing Dimensions NEGOTIATION88Bernardo Dominic
1016Munro B RutaIndia2024-05-23King, Christopher A Esq RENEWAL49Stephen Shaw
1017Jeanfrancois J InouyeUnited Kingdom2024-05-27Commercial Press NEW69Onyama Limba
1018Kaitlin C RulapaughJapan2024-05-16Printing Dimensions PROPOSAL84Amy Elsner
1019Mujtaba L VenereUnited Kingdom2024-06-03Benton, John B Jr UNQUALIFIED39Anna Fali
1020Mujtaba L ShinkoBrazil2024-05-15Feltz Printing Service QUALIFIED77Bernardo Dominic
1021Johnson Q RoysterIndia2024-06-04Feltz Printing Service NEW37Stephen Shaw
1022Octavia D FollerAustralia2024-06-03Chapman, Ross E Esq RENEWAL61Elwin Sharvill
1023Leja N OldroydCanada2024-06-01Printing Dimensions RENEWAL57Elwin Sharvill
1024Tony J GauchoJapan2024-05-25Truhlar And Truhlar Attys NEW96Xuxue Feng
1025Tony Z SlusarskiJapan2024-05-17Rousseaux, Michael Esq NEW50Anna Fali
1026David C VenereArgentina2024-05-29Chanay, Jeffrey A Esq QUALIFIED76Ivan Magalhaes
1027Leja T MacleadFrance2024-05-21Printing Dimensions PROPOSAL32Xuxue Feng
1028Aruna W FlosiCanada2024-05-23Chemel, James L Cpa RENEWAL39Onyama Limba
1029Costa W VenereBrazil2024-06-13King, Christopher A Esq QUALIFIED72Amy Elsner
1030Leja Z RulapaughIndia2024-05-18Chapman, Ross E Esq QUALIFIED67Asiya Javayant
1031Adams T AlbaresIndia2024-06-10Dorl, James J Esq QUALIFIED34Ioni Bowcher
1032Julie A IturbideRussia2024-05-30Printing Dimensions RENEWAL49Ivan Magalhaes
1033Costa H VocelkaBrazil2024-05-17Rousseaux, Michael Esq QUALIFIED70Ioni Bowcher
1034Mujtaba C GillianAustralia2024-06-11Chapman, Ross E Esq NEW26Ioni Bowcher
1035Arvin P NestleRussia2024-06-07Truhlar And Truhlar Attys NEGOTIATION47Elwin Sharvill
1036Costa U FollerSpain2024-06-13Rangoni Of Florence NEW1Anna Fali
1037Ricardo R WieserBrazil2024-05-17Chanay, Jeffrey A Esq RENEWAL28Bernardo Dominic
1038Emily W RimGermany2024-05-19Truhlar And Truhlar Attys NEGOTIATION9Bernardo Dominic
1039Octavia I NickaFrance2024-05-21Chanay, Jeffrey A Esq NEGOTIATION70Anna Fali
1040Nicolas N OstroskyBrazil2024-06-09Printing Dimensions NEGOTIATION53Elwin Sharvill
1041Salvatore R FollerFrance2024-05-31Printing Dimensions QUALIFIED39Bernardo Dominic
1042Julie H ButtItaly2024-06-02Chapman, Ross E Esq PROPOSAL79Ioni Bowcher
1043Kadeem F RutaArgentina2024-06-11Buckley Miller Wright NEGOTIATION30Anna Fali
1044Izzy M OldroydBrazil2024-05-26Feiner Bros QUALIFIED92Asiya Javayant
1045James P OstroskyAustralia2024-05-16Commercial Press NEGOTIATION78Asiya Javayant
1046Julie P MorascaIndia2024-05-29Printing Dimensions NEW70Bernardo Dominic
1047Mujtaba A CampainIndia2024-05-27Benton, John B Jr NEW54Ivan Magalhaes
1048Clifford B BologniaSpain2024-05-19Rousseaux, Michael Esq NEW3Ivan Magalhaes
1049Ashley Y TollnerSpain2024-06-07Feiner Bros PROPOSAL87Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Aruna N RulapaughItalyAnna Fali QUALIFIED
Johnson K FigeroaSpainAnna Fali NEGOTIATION
Juan T MacleadIndiaIvan Magalhaes RENEWAL
Jefferson C DarakjySpainAsiya Javayant PROPOSAL
Arvin P AlbaresJapanAnna Fali PROPOSAL
Rodrigues D SchemmerArgentinaAmy Elsner RENEWAL
Julie Q VenereAustraliaOnyama Limba QUALIFIED
Adams K MarrierArgentinaIvan Magalhaes RENEWAL
Arvin H FigeroaSpainElwin Sharvill NEGOTIATION
Stacey W GillianFranceOnyama Limba NEGOTIATION
David D MacleadJapanAsiya Javayant RENEWAL
Aruna K SergiAustraliaStephen Shaw NEW
Juan A MacleadUnited KingdomXuxue Feng NEW
Arvin U GarufiItalyXuxue Feng NEW
Octavia Y MaletJapanIvan Magalhaes NEW
Aika C RoysterItalyElwin Sharvill QUALIFIED
Kaitlin E PoquetteIndiaAsiya Javayant RENEWAL
David Y SergiBrazilXuxue Feng NEGOTIATION
Francesco F PaprockiCanadaXuxue Feng QUALIFIED
Deepesh O InouyeSpainIvan Magalhaes PROPOSAL
Johnson R SlusarskiGermanyOnyama Limba NEW
David B SchemmerSpainStephen Shaw RENEWAL
Emily Z BriddickCanadaAsiya Javayant NEGOTIATION
Leja O KolmetzGermanyOnyama Limba UNQUALIFIED
Smith N WhobreyItalyXuxue Feng RENEWAL
Octavia K PaprockiRussiaXuxue Feng NEGOTIATION
Rodrigues N RulapaughAustraliaIoni Bowcher RENEWAL
Claire G FerenczFranceIoni Bowcher PROPOSAL
Izzy E VenereGermanyStephen Shaw UNQUALIFIED
Isabel T CaldareraBrazilXuxue Feng PROPOSAL
Johnson P BologniaBrazilXuxue Feng PROPOSAL
Kaitlin Z AlbaresAustraliaStephen Shaw RENEWAL
Deepesh M BowleySpainBernardo Dominic UNQUALIFIED
Isabel K GarufiCanadaAnna Fali NEGOTIATION
Leon I AlbaresAustraliaXuxue Feng NEW
Adams G DilliardArgentinaAmy Elsner NEW
Ricardo E DoeSpainAmy Elsner NEGOTIATION
Cody O DarakjySpainAsiya Javayant UNQUALIFIED
Isabel F WhobreyItalyElwin Sharvill RENEWAL
Jeanfrancois G PerinItalyAsiya Javayant RENEWAL
Ricardo X FerenczFranceAmy Elsner QUALIFIED
Francesco W DarakjyBrazilAnna Fali NEW
Isabel R StensethCanadaAmy Elsner UNQUALIFIED
Morrow F WieserBrazilBernardo Dominic QUALIFIED
Jones Q OldroydArgentinaXuxue Feng QUALIFIED
Misaki V PaprockiJapanAmy Elsner RENEWAL
Misaki H StockhamAustraliaXuxue Feng NEGOTIATION
Greenwood J NestleBrazilAmy Elsner QUALIFIED
Juan R StockhamItalyIoni Bowcher NEGOTIATION
Greenwood V StockhamGermanyBernardo Dominic PROPOSAL
Frozen Columns
Name
Mayumi H Rim
Salvatore A Poquette
Francesco N Garufi
Kadeem R Venere
Ricardo E Iturbide
Izzy G Doe
Smith Q Garufi
Ivar J Waycott
Aruna C Gillian
Juan J Figeroa
Aruna U Dilliard
Mayumi K Whobrey
Silvio X Vocelka
Antonio O Royster
Ivar K Tollner
Jeanfrancois G Foller
Maisha V Royster
Faith P Stockham
Morrow A Gillian
Alejandro P Nicka
Jones W Briddick
Francesco I Perin
Cody U Maclead
Alejandro Z Maclead
Jefferson Z Royster
Misaki Y Poquette
Arvin W Venere
Tony X Vocelka
Misaki K Venere
Jeanfrancois D Chui
Morrow C Campain
Maisha A Shinko
Ashley G Glick
Costa K Chui
Ricardo O Ostrosky
Morrow N Flosi
Claire R Morasca
Leja E Caudy
Smith F Ruta
Silvio A Ferencz
Deepesh Q Albares
Emily P Nicka
Aruna N Royster
Aika X Maclead
Izzy V Shinko
Jeanfrancois Z Bolognia
Emily M Butt
Emily R Foller
Johnson A Nestle
Kadeem S Nestle
IdCountryDate
1000Italy2024-05-29
1001Canada2024-05-29
1002France2024-06-07
1003Spain2024-05-26
1004Italy2024-05-30
1005Russia2024-06-11
1006Canada2024-06-11
1007Canada2024-05-21
1008Russia2024-06-09
1009Brazil2024-06-04
1010Australia2024-05-29
1011Russia2024-05-15
1012Spain2024-06-05
1013Brazil2024-05-15
1014Japan2024-05-21
1015France2024-06-07
1016Australia2024-05-24
1017Australia2024-05-31
1018France2024-06-08
1019France2024-05-17
1020Germany2024-06-01
1021Australia2024-05-16
1022Japan2024-06-07
1023Italy2024-06-01
1024France2024-06-13
1025Germany2024-05-18
1026France2024-05-24
1027France2024-05-29
1028France2024-06-10
1029Russia2024-05-18
1030Argentina2024-05-21
1031United Kingdom2024-05-29
1032Germany2024-05-20
1033Germany2024-05-30
1034Argentina2024-05-21
1035Germany2024-06-08
1036Germany2024-05-30
1037United Kingdom2024-05-18
1038Spain2024-05-25
1039Spain2024-06-10
1040Italy2024-06-11
1041Canada2024-05-25
1042France2024-05-18
1043France2024-05-27
1044Argentina2024-05-18
1045Canada2024-06-01
1046Australia2024-05-29
1047Argentina2024-06-06
1048Germany2024-05-21
1049Canada2024-06-11

On-Demand Data

NameIdCountryDate
Kadeem S Rim1000Spain2024-05-30
Ivar E Caudy1001United Kingdom2024-06-10
Salvatore W Rim1002Brazil2024-05-27
Claire D Stenseth1003Italy2024-06-04
Munro N Paprocki1004United Kingdom2024-06-06
James J Bowley1005United Kingdom2024-05-23
Adams V Chui1006Argentina2024-06-12
Maria I Whobrey1007Australia2024-05-24
Costa C Ostrosky1008Russia2024-05-30
Salvatore P Royster1009Russia2024-06-04
Francesco Q Morasca1010France2024-05-15
Jeanfrancois W Iturbide1011Spain2024-05-22
Ivar R Stockham1012Italy2024-05-17
Mujtaba C Ostrosky1013Spain2024-05-29
Kadeem L Oldroyd1014India2024-05-27
Kaitlin O Bowley1015France2024-05-19
Jefferson Z Inouye1016Germany2024-05-29
Ricardo N Iturbide1017Argentina2024-06-09
Tony Y Bowley1018United Kingdom2024-05-26
Sinclair N Tollner1019Italy2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio E PaprockiAustraliaAsiya Javayant UNQUALIFIED
Rodrigues B KolmetzSpainAmy Elsner NEW
Munro L FlosiAustraliaIvan Magalhaes QUALIFIED
Jennifer D FollerBrazilIvan Magalhaes RENEWAL
Murillo G WhobreyIndiaXuxue Feng RENEWAL
Maria Y DarakjyItalyXuxue Feng RENEWAL
Maria G SchemmerRussiaStephen Shaw UNQUALIFIED
Isabel P KolmetzBrazilAsiya Javayant RENEWAL
Clifford J SlusarskiIndiaIvan Magalhaes NEGOTIATION
James N GarufiArgentinaAsiya Javayant PROPOSAL
Leja H RimArgentinaAmy Elsner QUALIFIED
Sinclair E SergiFranceIvan Magalhaes NEGOTIATION
Salvatore R VenereBrazilAnna Fali NEGOTIATION
Costa F GillianCanadaXuxue Feng NEGOTIATION
Mayumi L GlickCanadaIvan Magalhaes RENEWAL
Faith E GauchoSpainAnna Fali PROPOSAL
Morrow W MorascaRussiaElwin Sharvill PROPOSAL
Julie L WaycottSpainAsiya Javayant QUALIFIED
Jones P AmigonJapanElwin Sharvill NEGOTIATION
Deepesh H BowleyItalyOnyama Limba UNQUALIFIED
Francesco T CampainFranceAsiya Javayant UNQUALIFIED
Kaitlin A AmigonCanadaStephen Shaw NEW
Chavez O StockhamGermanyIoni Bowcher NEW
Ashley S GlickUnited KingdomXuxue Feng PROPOSAL
Faith F StockhamArgentinaAmy Elsner NEGOTIATION
Ivar R ChuiAustraliaIvan Magalhaes NEW
Wickens C DarakjyBrazilIoni Bowcher PROPOSAL
Antonio X GauchoItalyXuxue Feng PROPOSAL
Antonio H NickaAustraliaIoni Bowcher NEGOTIATION
Greenwood W ButtAustraliaAnna Fali UNQUALIFIED
Aditya B MaletIndiaAnna Fali PROPOSAL
Ricardo V KuskoFranceXuxue Feng QUALIFIED
Ashley K GauchoAustraliaOnyama Limba QUALIFIED
Claire Y RimRussiaIoni Bowcher UNQUALIFIED
Jefferson L NickaFranceAnna Fali RENEWAL
Faith V WaycottAustraliaXuxue Feng QUALIFIED
Greenwood A NestleItalyOnyama Limba PROPOSAL
Morrow N MarrierUnited KingdomStephen Shaw QUALIFIED
Juan I AmigonBrazilOnyama Limba PROPOSAL
Aditya N GillianUnited KingdomBernardo Dominic QUALIFIED

<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>