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
Darci U KuskoItalyStephen Shaw QUALIFIED
James W WaycottUnited KingdomElwin Sharvill NEW
Leon S BologniaUnited KingdomBernardo Dominic QUALIFIED
Wickens B MaletUnited KingdomAsiya Javayant UNQUALIFIED
Emily N SergiCanadaIvan Magalhaes UNQUALIFIED
Antonio E KuskoArgentinaStephen Shaw UNQUALIFIED
Misaki M PaprockiBrazilOnyama Limba PROPOSAL
Jefferson Y RutaIndiaElwin Sharvill PROPOSAL
Ashley X BowleyUnited KingdomXuxue Feng UNQUALIFIED
Leon X MaletGermanyElwin Sharvill QUALIFIED
Aditya A SchemmerSpainBernardo Dominic RENEWAL
Octavia S SergiIndiaIoni Bowcher NEW
Julie L RoysterJapanStephen Shaw NEW
Clifford J AmigonAustraliaStephen Shaw PROPOSAL
Alejandro P DilliardCanadaXuxue Feng QUALIFIED
Octavia P InouyeArgentinaIvan Magalhaes QUALIFIED
Leja M FollerArgentinaElwin Sharvill QUALIFIED
Arvin Q NestleBrazilXuxue Feng NEGOTIATION
Sinclair T CaudyCanadaIoni Bowcher QUALIFIED
Octavia L RimItalyIoni Bowcher QUALIFIED
Cody F FigeroaItalyStephen Shaw UNQUALIFIED
Maria G MaletCanadaElwin Sharvill NEW
Juan H FigeroaBrazilIvan Magalhaes PROPOSAL
Mayumi C FerenczGermanyXuxue Feng NEGOTIATION
Cody T DoeSpainBernardo Dominic QUALIFIED
Cody M GarufiRussiaXuxue Feng NEW
Deepesh B IturbideJapanAsiya Javayant QUALIFIED
Jefferson V FollerGermanyAnna Fali PROPOSAL
Clifford D PaprockiJapanAsiya Javayant UNQUALIFIED
Costa Z BriddickJapanElwin Sharvill PROPOSAL
Kadeem J CampainBrazilAsiya Javayant RENEWAL
Tony R SaylorsIndiaOnyama Limba QUALIFIED
Clifford M RutaAustraliaAnna Fali UNQUALIFIED
Isabel J MorascaCanadaElwin Sharvill UNQUALIFIED
Stacey R TollnerArgentinaAnna Fali UNQUALIFIED
Morrow Y DoeIndiaAnna Fali RENEWAL
Maisha E TollnerFranceStephen Shaw RENEWAL
Aruna I NestleJapanIoni Bowcher UNQUALIFIED
Deepesh K SergiIndiaIoni Bowcher RENEWAL
Octavia B GauchoItalyIoni Bowcher QUALIFIED
Isabel Y MaletItalyAnna Fali NEW
Munro Z MaletIndiaIoni Bowcher NEGOTIATION
Wickens D RoysterBrazilAnna Fali UNQUALIFIED
Ashley Y GauchoUnited KingdomBernardo Dominic RENEWAL
Maisha C FlosiArgentinaElwin Sharvill NEW
Isabel J KuskoJapanStephen Shaw NEGOTIATION
Morrow S BologniaJapanXuxue Feng QUALIFIED
Leja S AlbaresFranceXuxue Feng PROPOSAL
Maria T RimUnited KingdomElwin Sharvill NEGOTIATION
Smith B PerinSpainAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Claire L GarufiGermanyAsiya Javayant NEGOTIATION
Mujtaba J SaylorsFranceStephen Shaw NEW
Leon E GarufiCanadaIvan Magalhaes NEW
Claire X CampainIndiaStephen Shaw RENEWAL
James R MaletIndiaAnna Fali NEW
Arvin L OldroydCanadaIoni Bowcher NEW
Aditya N SaylorsBrazilAsiya Javayant UNQUALIFIED
Maisha X OldroydBrazilElwin Sharvill PROPOSAL
Costa F BriddickIndiaAnna Fali PROPOSAL
Clifford K MaletJapanAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams P CampainBrazil2024-05-25Chapman, Ross E Esq UNQUALIFIED22Ioni Bowcher
1001Julie S CaldareraSpain2024-06-01Benton, John B Jr UNQUALIFIED46Bernardo Dominic
1002Murillo N RoysterFrance2024-06-21Chanay, Jeffrey A Esq RENEWAL16Xuxue Feng
1003Leon I PoquetteCanada2024-06-18Feiner Bros RENEWAL5Stephen Shaw
1004Antonio T TollnerRussia2024-06-16Truhlar And Truhlar Attys UNQUALIFIED79Asiya Javayant
1005Greenwood A SchemmerCanada2024-06-12King, Christopher A Esq RENEWAL37Ivan Magalhaes
1006Johnson W BriddickSpain2024-05-31Rousseaux, Michael Esq UNQUALIFIED99Ivan Magalhaes
1007Arvin Z ChuiSpain2024-06-12Morlong Associates QUALIFIED47Bernardo Dominic
1008Sinclair R KuskoUnited Kingdom2024-06-07Chemel, James L Cpa RENEWAL54Stephen Shaw
1009Costa H RimFrance2024-05-26Rangoni Of Florence UNQUALIFIED22Bernardo Dominic
1010Leon K BriddickSpain2024-06-02Printing Dimensions PROPOSAL7Bernardo Dominic
1011Maisha C MarrierGermany2024-05-26Chemel, James L Cpa RENEWAL54Stephen Shaw
1012Antonio J BriddickAustralia2024-06-10Benton, John B Jr QUALIFIED69Onyama Limba
1013Costa I WhobreyBrazil2024-06-18Chanay, Jeffrey A Esq PROPOSAL42Bernardo Dominic
1014Costa X GauchoItaly2024-06-15Chapman, Ross E Esq QUALIFIED76Xuxue Feng
1015Tony P WaycottArgentina2024-06-13Chapman, Ross E Esq RENEWAL62Onyama Limba
1016Nicolas S WaycottRussia2024-05-30Morlong Associates NEW66Onyama Limba
1017Leon W AmigonJapan2024-05-29Rousseaux, Michael Esq NEGOTIATION47Elwin Sharvill
1018Aditya U PaprockiFrance2024-06-15Commercial Press PROPOSAL95Elwin Sharvill
1019Arvin S FlosiGermany2024-05-30King, Christopher A Esq QUALIFIED21Asiya Javayant
1020Tony K IturbideRussia2024-06-19Buckley Miller Wright PROPOSAL12Ivan Magalhaes
1021Jeanfrancois Y FerenczBrazil2024-05-28Dorl, James J Esq RENEWAL22Anna Fali
1022Salvatore F GarufiCanada2024-05-25Rangoni Of Florence QUALIFIED1Stephen Shaw
1023Jennifer X RutaRussia2024-05-27Commercial Press PROPOSAL42Ivan Magalhaes
1024Aika S SergiUnited Kingdom2024-05-27Rousseaux, Michael Esq NEGOTIATION39Elwin Sharvill
1025Maria R GlickGermany2024-06-01Feiner Bros PROPOSAL60Onyama Limba
1026Maria C SergiBrazil2024-06-12Truhlar And Truhlar Attys NEGOTIATION88Xuxue Feng
1027Rodrigues G WieserIndia2024-05-28Dorl, James J Esq RENEWAL93Ioni Bowcher
1028Leon K FerenczFrance2024-05-26Morlong Associates UNQUALIFIED85Anna Fali
1029Alejandro R GillianFrance2024-06-01Commercial Press QUALIFIED45Asiya Javayant
1030Izzy Z NestleJapan2024-06-19Benton, John B Jr NEGOTIATION53Xuxue Feng
1031Jefferson J AlbaresSpain2024-06-19Rangoni Of Florence NEW98Ioni Bowcher
1032Silvio I DoeCanada2024-06-10Truhlar And Truhlar Attys UNQUALIFIED95Elwin Sharvill
1033Deepesh V VocelkaItaly2024-06-02King, Christopher A Esq NEGOTIATION69Onyama Limba
1034Claire R KuskoJapan2024-06-02Printing Dimensions RENEWAL62Bernardo Dominic
1035Jeanfrancois X WieserIndia2024-05-27King, Christopher A Esq UNQUALIFIED27Xuxue Feng
1036Kadeem Y FlosiJapan2024-05-30Commercial Press QUALIFIED30Xuxue Feng
1037Leon B RutaFrance2024-06-11Commercial Press NEW86Asiya Javayant
1038Jennifer M FigeroaCanada2024-06-13Morlong Associates UNQUALIFIED19Amy Elsner
1039Arvin G RoysterSpain2024-06-04King, Christopher A Esq QUALIFIED7Elwin Sharvill
1040James X OstroskyIndia2024-06-22Dorl, James J Esq NEW72Xuxue Feng
1041Faith P TollnerIndia2024-06-23Printing Dimensions UNQUALIFIED38Anna Fali
1042Jeanfrancois V RimItaly2024-06-17Chapman, Ross E Esq QUALIFIED39Ivan Magalhaes
1043Tony V MacleadCanada2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED6Amy Elsner
1044Ashley G MorascaBrazil2024-06-22Buckley Miller Wright QUALIFIED15Asiya Javayant
1045Deepesh Y StensethRussia2024-06-16Chemel, James L Cpa RENEWAL46Bernardo Dominic
1046Johnson V KolmetzCanada2024-06-06King, Christopher A Esq RENEWAL78Stephen Shaw
1047Arvin I OldroydArgentina2024-06-03Rousseaux, Michael Esq UNQUALIFIED60Anna Fali
1048Costa I GillianCanada2024-06-18Feiner Bros NEGOTIATION95Anna Fali
1049Sinclair T PerinRussia2024-06-07Rousseaux, Michael Esq UNQUALIFIED52Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Aruna Y OldroydAustraliaXuxue Feng NEW
Wickens B TollnerCanadaElwin Sharvill RENEWAL
Greenwood T MaletCanadaIoni Bowcher RENEWAL
David R AmigonJapanAsiya Javayant NEGOTIATION
Tony Z MacleadRussiaBernardo Dominic QUALIFIED
Claire D WhobreyAustraliaElwin Sharvill UNQUALIFIED
Stacey O PerinFranceIvan Magalhaes QUALIFIED
Juan B RimItalyIvan Magalhaes RENEWAL
Emily P AlbaresSpainAnna Fali RENEWAL
Rodrigues K KuskoUnited KingdomStephen Shaw RENEWAL
Emily B VenereGermanyXuxue Feng NEGOTIATION
Johnson D FollerBrazilAnna Fali NEW
Jennifer I InouyeIndiaAnna Fali PROPOSAL
Kaitlin Y RulapaughIndiaStephen Shaw UNQUALIFIED
Ricardo J MaletUnited KingdomAmy Elsner RENEWAL
Octavia H FerenczGermanyXuxue Feng RENEWAL
Salvatore P MaletJapanOnyama Limba RENEWAL
Maria F FigeroaSpainStephen Shaw UNQUALIFIED
Cody G StensethAustraliaIoni Bowcher UNQUALIFIED
Cody U VenereArgentinaAsiya Javayant PROPOSAL
Cody J ShinkoRussiaAnna Fali RENEWAL
Stacey W CampainJapanElwin Sharvill UNQUALIFIED
Juan R FigeroaIndiaAnna Fali NEW
Chavez E GarufiUnited KingdomXuxue Feng RENEWAL
David A AlbaresSpainIvan Magalhaes PROPOSAL
Silvio F AmigonRussiaElwin Sharvill NEGOTIATION
James W PerinBrazilIoni Bowcher NEW
Leon V DarakjyJapanAsiya Javayant QUALIFIED
Clifford O MarrierBrazilElwin Sharvill NEW
Johnson E DilliardFranceBernardo Dominic PROPOSAL
Mujtaba B StensethRussiaAsiya Javayant RENEWAL
Aditya E GillianJapanElwin Sharvill NEW
Faith N VenereSpainAmy Elsner QUALIFIED
Maria U FerenczItalyOnyama Limba NEGOTIATION
David Y OldroydItalyStephen Shaw RENEWAL
Juan Q GauchoIndiaElwin Sharvill RENEWAL
Jones R GauchoIndiaBernardo Dominic PROPOSAL
Johnson W ShinkoBrazilBernardo Dominic QUALIFIED
Johnson D ButtUnited KingdomIvan Magalhaes UNQUALIFIED
Kaitlin I AlbaresAustraliaAnna Fali NEW
Aditya I VenereGermanyAsiya Javayant NEW
Wickens I KolmetzArgentinaOnyama Limba RENEWAL
Ashley J PoquetteUnited KingdomStephen Shaw NEW
Darci C MaletGermanyStephen Shaw NEGOTIATION
Aika L MarrierSpainOnyama Limba NEW
Chavez R VocelkaArgentinaIoni Bowcher NEGOTIATION
Octavia T OstroskyAustraliaXuxue Feng RENEWAL
Arvin J WhobreySpainOnyama Limba RENEWAL
Jefferson G MaletGermanyIvan Magalhaes NEGOTIATION
Mayumi W BowleyItalyAmy Elsner QUALIFIED
Frozen Columns
Name
James S Sergi
Salvatore J Shinko
Costa G Briddick
Kadeem E Slusarski
Aruna D Rulapaugh
Mujtaba Z Paprocki
Silvio V Kusko
Aditya A Kolmetz
Darci H Royster
Faith J Whobrey
Claire H Gillian
Emily V Waycott
Tony C Sergi
Aruna X Inouye
Aditya S Caudy
Alejandro Q Caldarera
Maria R Ostrosky
Murillo Y Bolognia
Jones M Butt
Aditya P Garufi
Wickens U Whobrey
Aruna U Whobrey
Kadeem D Venere
Jennifer V Caldarera
Izzy S Venere
Greenwood W Caldarera
Ashley E Maclead
Izzy B Schemmer
Claire Q Figeroa
Arvin M Waycott
Clifford U Kusko
Claire T Dilliard
Sinclair H Chui
Smith T Paprocki
Leja K Perin
Faith C Ferencz
Smith U Darakjy
Mujtaba U Caudy
Ivar M Figeroa
Jones Q Wieser
Ashley I Caudy
Rodrigues J Venere
Deepesh O Shinko
Alejandro O Garufi
Cody K Ferencz
Nicolas C Briddick
Sinclair S Whobrey
Aditya C Glick
Ivar A Doe
Mujtaba Q Inouye
IdCountryDate
1000Russia2024-06-20
1001India2024-06-17
1002Germany2024-06-23
1003Brazil2024-05-30
1004India2024-05-25
1005Japan2024-06-20
1006Brazil2024-05-27
1007Spain2024-06-20
1008Australia2024-06-02
1009France2024-06-08
1010Australia2024-06-08
1011India2024-05-26
1012Russia2024-06-12
1013United Kingdom2024-05-25
1014Argentina2024-05-30
1015Spain2024-06-10
1016Spain2024-06-21
1017Germany2024-05-27
1018Australia2024-06-08
1019India2024-05-29
1020Canada2024-06-01
1021Russia2024-06-03
1022Argentina2024-06-05
1023India2024-06-03
1024Spain2024-05-29
1025Germany2024-05-26
1026United Kingdom2024-06-18
1027Canada2024-06-01
1028France2024-06-19
1029United Kingdom2024-06-04
1030India2024-05-26
1031United Kingdom2024-06-01
1032Japan2024-06-15
1033France2024-06-14
1034Germany2024-06-19
1035Russia2024-06-03
1036Italy2024-06-15
1037Russia2024-06-13
1038Brazil2024-06-05
1039India2024-06-01
1040Germany2024-06-21
1041Japan2024-05-29
1042India2024-06-14
1043Brazil2024-06-19
1044Canada2024-06-13
1045Argentina2024-06-14
1046Russia2024-05-25
1047Argentina2024-06-18
1048Italy2024-06-05
1049Australia2024-06-05

On-Demand Data

NameIdCountryDate
Smith I Sergi1000United Kingdom2024-06-22
Johnson P Caudy1001Japan2024-06-06
Munro J Amigon1002Australia2024-05-28
Cody G Dilliard1003Australia2024-05-29
Leja H Shinko1004Argentina2024-06-22
Tony R Royster1005Spain2024-05-27
Juan J Nicka1006Italy2024-06-22
Cody H Royster1007Brazil2024-06-19
Misaki P Stenseth1008United Kingdom2024-06-23
Munro D Caudy1009United Kingdom2024-06-09
Salvatore V Inouye1010United Kingdom2024-06-04
Jeanfrancois P Venere1011Canada2024-06-10
Izzy I Shinko1012Brazil2024-06-18
Cody N Wieser1013Australia2024-05-29
Emily M Kusko1014Japan2024-06-06
Izzy V Poquette1015France2024-06-21
Octavia K Slusarski1016Canada2024-06-19
Nicolas S Gaucho1017India2024-05-31
Misaki O Saylors1018Italy2024-06-05
Maisha A Doe1019India2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones S SaylorsItalyElwin Sharvill PROPOSAL
Salvatore P AlbaresIndiaBernardo Dominic QUALIFIED
Alejandro K InouyeAustraliaXuxue Feng QUALIFIED
Jeanfrancois H NestleCanadaBernardo Dominic QUALIFIED
Mayumi F FigeroaIndiaAsiya Javayant QUALIFIED
Chavez C RutaBrazilElwin Sharvill NEGOTIATION
Francesco Y WieserArgentinaAnna Fali QUALIFIED
Johnson H PerinBrazilAnna Fali NEGOTIATION
David V NickaCanadaBernardo Dominic NEGOTIATION
Juan K OldroydItalyXuxue Feng NEGOTIATION
Mujtaba W NickaFranceBernardo Dominic RENEWAL
Munro U ShinkoBrazilOnyama Limba RENEWAL
Juan D RulapaughArgentinaStephen Shaw UNQUALIFIED
Emily W RulapaughSpainAnna Fali NEW
Octavia T AlbaresIndiaOnyama Limba RENEWAL
James X MaletFranceIoni Bowcher QUALIFIED
Cody I FlosiBrazilBernardo Dominic NEGOTIATION
Munro Y PerinCanadaElwin Sharvill PROPOSAL
Wickens D PoquetteItalyBernardo Dominic PROPOSAL
Costa J FlosiGermanyAsiya Javayant QUALIFIED
Silvio G FigeroaUnited KingdomIvan Magalhaes NEGOTIATION
Maria C DoeAustraliaAsiya Javayant NEGOTIATION
Antonio V DarakjyRussiaIoni Bowcher RENEWAL
Rodrigues Q IturbideAustraliaElwin Sharvill PROPOSAL
Morrow G FigeroaArgentinaOnyama Limba PROPOSAL
Clifford A MarrierUnited KingdomXuxue Feng PROPOSAL
Maria U NickaFranceElwin Sharvill UNQUALIFIED
Mujtaba R CaldareraUnited KingdomAsiya Javayant QUALIFIED
Nicolas I DoeArgentinaElwin Sharvill RENEWAL
Greenwood G GillianCanadaElwin Sharvill NEGOTIATION
Aika M IturbideRussiaOnyama Limba PROPOSAL
David S InouyeArgentinaIoni Bowcher RENEWAL
Ashley X RoysterBrazilOnyama Limba QUALIFIED
Munro E BologniaFranceBernardo Dominic QUALIFIED
Morrow B AlbaresJapanAnna Fali QUALIFIED
Aika E NestleSpainBernardo Dominic RENEWAL
Darci M ButtBrazilStephen Shaw RENEWAL
Ricardo F CampainItalyStephen Shaw QUALIFIED
Costa I AmigonFranceIoni Bowcher QUALIFIED
Claire T StockhamSpainIvan Magalhaes NEW

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