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
Leja K VocelkaCanadaAsiya Javayant NEW
Sinclair X DoeItalyAnna Fali NEW
Ashley O RulapaughUnited KingdomAnna Fali QUALIFIED
Silvio A FollerGermanyIoni Bowcher RENEWAL
Maisha L StensethItalyAsiya Javayant QUALIFIED
Maisha Q SlusarskiFranceXuxue Feng RENEWAL
Murillo P FollerCanadaElwin Sharvill RENEWAL
Greenwood A KuskoIndiaElwin Sharvill PROPOSAL
Julie F RulapaughItalyElwin Sharvill NEW
Deepesh H CampainBrazilAsiya Javayant QUALIFIED
Alejandro P PaprockiRussiaIoni Bowcher QUALIFIED
Jeanfrancois K WieserGermanyXuxue Feng QUALIFIED
Octavia G AmigonBrazilIvan Magalhaes QUALIFIED
Ivar W CampainRussiaElwin Sharvill UNQUALIFIED
Mujtaba I StensethGermanyIvan Magalhaes UNQUALIFIED
Maria L CaldareraCanadaAnna Fali RENEWAL
Sinclair D RulapaughGermanyXuxue Feng RENEWAL
Adams Z ButtRussiaXuxue Feng NEGOTIATION
Arvin Y RimJapanAsiya Javayant PROPOSAL
Isabel A GillianArgentinaBernardo Dominic RENEWAL
Costa G RoysterCanadaAnna Fali RENEWAL
Ashley O IturbideArgentinaIoni Bowcher PROPOSAL
Nicolas V ButtIndiaElwin Sharvill QUALIFIED
Claire Z SchemmerIndiaAmy Elsner RENEWAL
Juan D OstroskyArgentinaBernardo Dominic NEW
Julie Q ShinkoCanadaAnna Fali UNQUALIFIED
Jefferson K RoysterFranceIvan Magalhaes QUALIFIED
Aruna N PoquetteCanadaAsiya Javayant NEGOTIATION
Johnson B MaletRussiaXuxue Feng RENEWAL
Ashley P MaletItalyAsiya Javayant RENEWAL
Mujtaba J RimItalyIvan Magalhaes PROPOSAL
Kaitlin L FollerSpainAsiya Javayant NEW
Deepesh T ChuiRussiaAmy Elsner QUALIFIED
Mujtaba D MacleadItalyXuxue Feng RENEWAL
Deepesh S RutaRussiaBernardo Dominic UNQUALIFIED
Julie Y BologniaIndiaXuxue Feng NEW
David U KolmetzCanadaXuxue Feng NEW
Faith P NickaCanadaAmy Elsner QUALIFIED
Maisha D StockhamFranceAmy Elsner NEGOTIATION
Kaitlin D ShinkoAustraliaIoni Bowcher RENEWAL
Jones Y WieserItalyAmy Elsner QUALIFIED
Silvio V DilliardAustraliaAnna Fali PROPOSAL
Greenwood X RutaIndiaIoni Bowcher RENEWAL
Morrow E MacleadGermanyAsiya Javayant NEGOTIATION
Nicolas F BologniaAustraliaIvan Magalhaes NEW
Johnson F MaletSpainIvan Magalhaes QUALIFIED
Adams T StensethFranceAnna Fali PROPOSAL
Tony A RutaAustraliaIoni Bowcher RENEWAL
Ashley D WaycottFranceIoni Bowcher PROPOSAL
Adams O PerinIndiaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Octavia J MarrierItalyOnyama Limba NEGOTIATION
Jennifer J NickaItalyOnyama Limba QUALIFIED
Aruna R SergiGermanyBernardo Dominic NEW
James L GarufiArgentinaElwin Sharvill UNQUALIFIED
Jones J StensethJapanAsiya Javayant PROPOSAL
Greenwood P BologniaItalyElwin Sharvill RENEWAL
Misaki D CaldareraJapanAmy Elsner NEW
Greenwood Q NickaRussiaAsiya Javayant QUALIFIED
Jennifer G MaletIndiaXuxue Feng NEGOTIATION
Jefferson Q RutaArgentinaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo W VenereSpain2024-06-04Morlong Associates PROPOSAL1Elwin Sharvill
1001Julie P RutaGermany2024-06-18Commercial Press NEGOTIATION15Elwin Sharvill
1002Francesco H BologniaJapan2024-06-08Feltz Printing Service QUALIFIED83Anna Fali
1003Sinclair A KuskoSpain2024-05-25Feiner Bros NEW60Elwin Sharvill
1004Johnson Y OstroskyIndia2024-06-11Printing Dimensions UNQUALIFIED61Bernardo Dominic
1005Clifford L FigeroaItaly2024-06-04Truhlar And Truhlar Attys NEW70Stephen Shaw
1006Alejandro A GauchoArgentina2024-06-06Morlong Associates NEW88Ivan Magalhaes
1007Aruna G MarrierCanada2024-06-16Buckley Miller Wright RENEWAL63Ioni Bowcher
1008Jeanfrancois U PoquetteJapan2024-06-06Rousseaux, Michael Esq PROPOSAL76Stephen Shaw
1009Morrow R AlbaresGermany2024-06-01Feltz Printing Service NEGOTIATION73Stephen Shaw
1010Aditya L CaldareraItaly2024-06-16Chanay, Jeffrey A Esq PROPOSAL0Amy Elsner
1011Chavez O TollnerArgentina2024-06-07Rousseaux, Michael Esq UNQUALIFIED21Stephen Shaw
1012Francesco Y KuskoRussia2024-06-09Morlong Associates UNQUALIFIED2Xuxue Feng
1013Izzy I MaletSpain2024-06-21Morlong Associates NEGOTIATION65Bernardo Dominic
1014Cody I ShinkoCanada2024-06-16Feltz Printing Service RENEWAL84Xuxue Feng
1015Jefferson Y ShinkoItaly2024-06-16Feltz Printing Service NEW8Stephen Shaw
1016Clifford M WaycottFrance2024-06-10Buckley Miller Wright NEGOTIATION50Anna Fali
1017David Y VenereItaly2024-05-29Feiner Bros PROPOSAL1Ivan Magalhaes
1018Morrow S WieserIndia2024-06-19Dorl, James J Esq QUALIFIED80Amy Elsner
1019Smith A GlickArgentina2024-06-21Feltz Printing Service QUALIFIED31Ioni Bowcher
1020Jeanfrancois Q MorascaArgentina2024-05-29Feiner Bros PROPOSAL50Amy Elsner
1021Antonio S TollnerItaly2024-06-12Chemel, James L Cpa NEW59Onyama Limba
1022Clifford R VocelkaBrazil2024-06-10Dorl, James J Esq QUALIFIED69Onyama Limba
1023Nicolas E VenereGermany2024-05-29Buckley Miller Wright NEGOTIATION86Onyama Limba
1024Misaki Z DoeArgentina2024-06-05Benton, John B Jr RENEWAL11Asiya Javayant
1025Darci N CaldareraJapan2024-05-27Morlong Associates NEGOTIATION45Anna Fali
1026Julie B SaylorsItaly2024-05-29Dorl, James J Esq NEW97Bernardo Dominic
1027Johnson P DarakjyIndia2024-06-12Truhlar And Truhlar Attys NEGOTIATION26Xuxue Feng
1028Silvio V DoeRussia2024-05-28Rousseaux, Michael Esq NEGOTIATION52Stephen Shaw
1029Nicolas Y AmigonArgentina2024-06-13Morlong Associates UNQUALIFIED30Bernardo Dominic
1030Stacey F MorascaFrance2024-06-17Chanay, Jeffrey A Esq RENEWAL12Ioni Bowcher
1031Claire B VocelkaIndia2024-06-21Dorl, James J Esq UNQUALIFIED28Ivan Magalhaes
1032Stacey O StensethSpain2024-06-23Feltz Printing Service NEW23Elwin Sharvill
1033Ivar F BowleyFrance2024-06-22Rangoni Of Florence PROPOSAL75Ivan Magalhaes
1034Ivar R FerenczArgentina2024-06-06Chanay, Jeffrey A Esq QUALIFIED87Amy Elsner
1035Greenwood F ChuiRussia2024-05-29Chemel, James L Cpa UNQUALIFIED26Ioni Bowcher
1036Aika D MaletFrance2024-06-09Chapman, Ross E Esq PROPOSAL39Ioni Bowcher
1037Emily P MorascaAustralia2024-06-02Printing Dimensions PROPOSAL10Bernardo Dominic
1038Izzy P SergiCanada2024-06-16Truhlar And Truhlar Attys RENEWAL63Ivan Magalhaes
1039Leon E GauchoGermany2024-06-19King, Christopher A Esq UNQUALIFIED82Xuxue Feng
1040Misaki O NestleItaly2024-06-08Truhlar And Truhlar Attys PROPOSAL59Ivan Magalhaes
1041Ivar K DoeCanada2024-06-16King, Christopher A Esq NEW33Ioni Bowcher
1042Darci J ChuiIndia2024-05-30Rangoni Of Florence QUALIFIED79Xuxue Feng
1043Stacey I ChuiUnited Kingdom2024-06-22Morlong Associates PROPOSAL60Anna Fali
1044Deepesh F RulapaughCanada2024-06-23Truhlar And Truhlar Attys UNQUALIFIED93Asiya Javayant
1045Emily I SchemmerIndia2024-06-07Feiner Bros RENEWAL61Stephen Shaw
1046Murillo C OldroydIndia2024-06-03Rangoni Of Florence PROPOSAL56Anna Fali
1047Isabel J RutaSpain2024-06-13Chapman, Ross E Esq NEW81Bernardo Dominic
1048Mayumi K DilliardIndia2024-06-14Commercial Press UNQUALIFIED5Onyama Limba
1049Faith I DilliardBrazil2024-06-19Feltz Printing Service RENEWAL88Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Greenwood G MaletGermanyAmy Elsner UNQUALIFIED
Jones F GillianAustraliaIoni Bowcher PROPOSAL
Mayumi W RoysterAustraliaStephen Shaw RENEWAL
Kadeem W FigeroaIndiaIoni Bowcher PROPOSAL
Stacey I FerenczRussiaXuxue Feng NEW
Silvio C KolmetzBrazilAmy Elsner NEGOTIATION
Cody D SlusarskiSpainAnna Fali UNQUALIFIED
James H GillianIndiaStephen Shaw NEW
Ashley Z TollnerFranceIvan Magalhaes NEW
Salvatore K StensethSpainIoni Bowcher NEGOTIATION
Maisha Q FigeroaSpainAsiya Javayant NEW
Julie D OstroskyUnited KingdomAmy Elsner UNQUALIFIED
Juan E FollerBrazilBernardo Dominic QUALIFIED
Aruna K MaletAustraliaIvan Magalhaes NEGOTIATION
David J WhobreyCanadaOnyama Limba QUALIFIED
James A RulapaughJapanOnyama Limba RENEWAL
Julie G NestleRussiaXuxue Feng NEGOTIATION
Sinclair U RulapaughJapanElwin Sharvill PROPOSAL
Kaitlin O BowleyJapanAmy Elsner NEW
Julie B BowleyArgentinaIoni Bowcher NEW
Sinclair M RulapaughUnited KingdomOnyama Limba PROPOSAL
Ricardo V CaldareraArgentinaElwin Sharvill PROPOSAL
Ricardo S WieserGermanyAmy Elsner NEGOTIATION
Rodrigues Q OldroydArgentinaAsiya Javayant PROPOSAL
Maria X KuskoGermanyStephen Shaw QUALIFIED
Ricardo I OldroydBrazilBernardo Dominic RENEWAL
Francesco F NestleRussiaXuxue Feng PROPOSAL
Jennifer M StockhamArgentinaAsiya Javayant NEGOTIATION
Antonio Y GauchoUnited KingdomXuxue Feng NEW
Salvatore K StensethGermanyIvan Magalhaes RENEWAL
Emily H RutaGermanyStephen Shaw NEGOTIATION
Mujtaba A OstroskyRussiaElwin Sharvill QUALIFIED
Juan B BologniaJapanXuxue Feng UNQUALIFIED
Misaki V SaylorsFranceIvan Magalhaes QUALIFIED
Adams M SchemmerGermanyAsiya Javayant NEGOTIATION
Aika M WaycottItalyXuxue Feng QUALIFIED
Chavez Z GlickFranceAnna Fali UNQUALIFIED
Izzy W OstroskyArgentinaIvan Magalhaes UNQUALIFIED
Kaitlin Q FerenczCanadaBernardo Dominic RENEWAL
Cody R BologniaItalyAsiya Javayant NEGOTIATION
Johnson Q MarrierCanadaOnyama Limba NEGOTIATION
Kaitlin L AmigonFranceAmy Elsner QUALIFIED
Leja D MaletGermanyAnna Fali NEGOTIATION
Cody D GarufiRussiaElwin Sharvill RENEWAL
Morrow J CaudyUnited KingdomElwin Sharvill UNQUALIFIED
Morrow S VenereSpainAnna Fali NEW
Sinclair P DoeFranceIoni Bowcher PROPOSAL
Silvio Z BologniaIndiaXuxue Feng NEW
Kadeem Y GarufiAustraliaElwin Sharvill RENEWAL
Aika T BriddickCanadaAsiya Javayant NEW
Frozen Columns
Name
Antonio K Gillian
Murillo K Nicka
Kaitlin T Morasca
Aditya W Wieser
Aika M Amigon
Wickens F Rim
Deepesh E Sergi
Jefferson J Campain
Chavez E Rulapaugh
Nicolas Q Saylors
Nicolas O Amigon
Kaitlin W Wieser
Munro E Royster
Emily F Briddick
Salvatore B Bolognia
Deepesh Y Bowley
James S Maclead
Misaki Y Bowley
Leon J Slusarski
Smith S Nestle
Cody R Flosi
Chavez H Wieser
Kaitlin N Ruta
Francesco T Rim
Jeanfrancois I Tollner
Francesco R Waycott
Maisha C Rim
Arvin H Darakjy
Salvatore B Perin
Nicolas B Bolognia
Francesco D Nicka
Mayumi E Nicka
Murillo S Venere
Ashley R Stockham
Jeanfrancois V Inouye
Sinclair Q Waycott
Tony R Marrier
Juan R Vocelka
Jeanfrancois O Darakjy
Murillo P Poquette
Costa F Malet
Smith S Caldarera
Adams K Caudy
Alejandro Z Waycott
Greenwood U Campain
Morrow R Slusarski
Ricardo C Paprocki
Maria S Oldroyd
Smith J Nicka
Leja U Perin
IdCountryDate
1000Russia2024-06-21
1001Australia2024-06-17
1002Canada2024-06-17
1003Germany2024-06-02
1004Japan2024-06-13
1005Spain2024-05-29
1006Russia2024-06-19
1007Canada2024-06-18
1008Canada2024-06-05
1009Australia2024-06-07
1010Russia2024-06-19
1011Australia2024-06-12
1012Argentina2024-06-01
1013Brazil2024-06-07
1014Japan2024-05-29
1015Spain2024-06-10
1016Russia2024-06-18
1017Spain2024-06-03
1018France2024-06-21
1019India2024-06-12
1020Germany2024-06-03
1021Spain2024-06-18
1022Argentina2024-06-19
1023Brazil2024-05-27
1024Italy2024-06-21
1025Argentina2024-06-15
1026Australia2024-06-21
1027Italy2024-05-26
1028Canada2024-06-17
1029Australia2024-06-03
1030India2024-06-14
1031Brazil2024-06-03
1032Italy2024-06-21
1033Russia2024-06-23
1034Russia2024-06-18
1035Canada2024-06-21
1036United Kingdom2024-05-27
1037Australia2024-06-13
1038Brazil2024-06-23
1039United Kingdom2024-05-29
1040Spain2024-06-23
1041Australia2024-06-13
1042Russia2024-06-16
1043Brazil2024-06-17
1044Australia2024-05-30
1045Russia2024-06-04
1046Brazil2024-06-04
1047Italy2024-06-10
1048Japan2024-06-03
1049India2024-06-13

On-Demand Data

NameIdCountryDate
Maria J Whobrey1000Canada2024-05-28
Salvatore I Butt1001Italy2024-05-30
Stacey Y Figeroa1002Russia2024-06-20
Jefferson M Dilliard1003Italy2024-05-25
Cody S Butt1004Russia2024-05-26
Alejandro B Wieser1005France2024-05-31
Mujtaba F Gillian1006Spain2024-06-02
Mujtaba P Dilliard1007United Kingdom2024-06-02
Ivar U Foller1008Australia2024-05-30
Claire G Sergi1009Spain2024-05-27
Salvatore U Iturbide1010India2024-06-02
Nicolas T Briddick1011India2024-05-25
Aruna R Whobrey1012United Kingdom2024-06-14
Leon C Perin1013Japan2024-06-06
Leja H Garufi1014Japan2024-05-25
Murillo C Dilliard1015Argentina2024-06-14
Cody X Amigon1016France2024-06-10
Claire Q Rim1017France2024-06-11
Munro F Nicka1018Argentina2024-06-09
Leja J Dilliard1019Australia2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci M DilliardBrazilAnna Fali RENEWAL
Ivar B MarrierGermanyBernardo Dominic QUALIFIED
Chavez X PaprockiCanadaXuxue Feng UNQUALIFIED
Tony D AlbaresAustraliaBernardo Dominic UNQUALIFIED
Greenwood Y PerinRussiaOnyama Limba NEGOTIATION
Murillo W DilliardItalyXuxue Feng NEGOTIATION
Costa B OldroydArgentinaAsiya Javayant RENEWAL
David D MorascaGermanyAsiya Javayant NEW
Johnson T FigeroaBrazilBernardo Dominic QUALIFIED
James T MorascaGermanyElwin Sharvill NEW
Rodrigues T PaprockiFranceOnyama Limba QUALIFIED
Isabel N FlosiAustraliaXuxue Feng RENEWAL
Julie W AlbaresSpainXuxue Feng NEW
Silvio Q PoquetteGermanyStephen Shaw NEGOTIATION
Juan U MarrierUnited KingdomAnna Fali QUALIFIED
Aditya O DoeIndiaIoni Bowcher PROPOSAL
Adams H RimBrazilAmy Elsner PROPOSAL
Jeanfrancois Z GlickSpainAmy Elsner NEW
Morrow E RoysterCanadaStephen Shaw NEGOTIATION
Deepesh B MorascaGermanyOnyama Limba NEW
Mujtaba C OldroydFranceXuxue Feng NEGOTIATION
Kaitlin J WhobreyUnited KingdomIvan Magalhaes UNQUALIFIED
Costa O GarufiSpainStephen Shaw NEW
Isabel Z VenereFranceBernardo Dominic UNQUALIFIED
Sinclair J AmigonGermanyIvan Magalhaes RENEWAL
Ricardo U KolmetzArgentinaIoni Bowcher UNQUALIFIED
Kadeem Y RutaSpainAmy Elsner RENEWAL
Faith M ShinkoAustraliaXuxue Feng RENEWAL
Silvio B StockhamCanadaOnyama Limba QUALIFIED
Salvatore F SchemmerUnited KingdomOnyama Limba NEGOTIATION
Maria O AlbaresGermanyAsiya Javayant RENEWAL
Julie N RimRussiaBernardo Dominic RENEWAL
Wickens I KolmetzJapanAmy Elsner PROPOSAL
Jones M MaletItalyIoni Bowcher QUALIFIED
Maisha H OldroydJapanAsiya Javayant NEW
Darci T OldroydIndiaOnyama Limba NEW
Julie J MaletUnited KingdomBernardo Dominic NEW
Juan W PerinArgentinaElwin Sharvill PROPOSAL
Emily Y GlickAustraliaAsiya Javayant PROPOSAL
Octavia U GillianBrazilOnyama Limba 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>