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 V SaylorsFranceAsiya Javayant UNQUALIFIED
Tony A OldroydBrazilAsiya Javayant QUALIFIED
Salvatore D GauchoSpainAsiya Javayant QUALIFIED
Greenwood A OstroskyFranceStephen Shaw NEW
Adams P IturbideCanadaIvan Magalhaes NEGOTIATION
Faith Q ShinkoAustraliaOnyama Limba PROPOSAL
Antonio S DilliardFranceXuxue Feng QUALIFIED
Ivar U SlusarskiAustraliaBernardo Dominic NEW
Mayumi N GillianCanadaIvan Magalhaes NEGOTIATION
Stacey A VenereItalyElwin Sharvill RENEWAL
Kaitlin K GarufiJapanAsiya Javayant UNQUALIFIED
Emily I MorascaCanadaElwin Sharvill NEW
Murillo D MaletRussiaAmy Elsner PROPOSAL
Darci U BowleyFranceBernardo Dominic PROPOSAL
Isabel O CaudyFranceAsiya Javayant QUALIFIED
Sinclair D GarufiBrazilAmy Elsner UNQUALIFIED
Izzy R SlusarskiItalyElwin Sharvill NEGOTIATION
Tony V SlusarskiJapanOnyama Limba QUALIFIED
Silvio J WieserIndiaIvan Magalhaes UNQUALIFIED
David I NestleBrazilIvan Magalhaes NEGOTIATION
Cody K OldroydFranceAnna Fali PROPOSAL
Tony J RoysterAustraliaAnna Fali QUALIFIED
Wickens K TollnerUnited KingdomXuxue Feng NEW
Leja H KuskoIndiaOnyama Limba NEGOTIATION
James W PaprockiBrazilAnna Fali PROPOSAL
Ivar H FigeroaRussiaAmy Elsner RENEWAL
Stacey Z MaletRussiaIoni Bowcher NEGOTIATION
Jeanfrancois C SaylorsFranceBernardo Dominic UNQUALIFIED
Tony M OldroydSpainElwin Sharvill NEW
Ashley X SlusarskiJapanElwin Sharvill NEW
Ashley I SaylorsSpainStephen Shaw PROPOSAL
Deepesh U MarrierRussiaElwin Sharvill PROPOSAL
Emily H AmigonBrazilElwin Sharvill PROPOSAL
Francesco K GillianSpainIoni Bowcher PROPOSAL
Jennifer A KolmetzRussiaStephen Shaw RENEWAL
Salvatore I SergiIndiaXuxue Feng NEGOTIATION
Stacey R InouyeCanadaElwin Sharvill QUALIFIED
Isabel U GlickJapanIvan Magalhaes RENEWAL
Smith O StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Leja S MorascaRussiaElwin Sharvill QUALIFIED
Aika R MaletSpainStephen Shaw UNQUALIFIED
Antonio N WhobreySpainIvan Magalhaes NEGOTIATION
James C CaldareraFranceAsiya Javayant NEGOTIATION
Morrow A GillianItalyAnna Fali UNQUALIFIED
Chavez Y ShinkoJapanIoni Bowcher PROPOSAL
Jeanfrancois P WhobreySpainAmy Elsner NEGOTIATION
Isabel D GlickCanadaIoni Bowcher PROPOSAL
Francesco H SergiRussiaBernardo Dominic QUALIFIED
Munro A AmigonSpainAmy Elsner QUALIFIED
Juan C SchemmerItalyAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon H RulapaughArgentinaIvan Magalhaes NEGOTIATION
Maisha D PoquetteFranceIoni Bowcher NEGOTIATION
David J BriddickCanadaAnna Fali PROPOSAL
Nicolas F BriddickBrazilBernardo Dominic NEGOTIATION
Rodrigues U RutaAustraliaAmy Elsner PROPOSAL
Faith V VocelkaArgentinaOnyama Limba PROPOSAL
Mayumi U BowleySpainElwin Sharvill RENEWAL
Rodrigues T WhobreySpainAsiya Javayant NEGOTIATION
Juan C NestleArgentinaBernardo Dominic PROPOSAL
David E GlickBrazilXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens X MacleadSpain2024-06-17Dorl, James J Esq PROPOSAL86Stephen Shaw
1001Misaki C DoeArgentina2024-06-08Rangoni Of Florence RENEWAL17Asiya Javayant
1002Munro Y PaprockiArgentina2024-06-02Buckley Miller Wright NEGOTIATION14Elwin Sharvill
1003Faith F VenereIndia2024-05-28Feltz Printing Service UNQUALIFIED2Ioni Bowcher
1004Smith Z CaudyCanada2024-06-13Morlong Associates PROPOSAL30Xuxue Feng
1005Morrow O CaldareraIndia2024-05-19Commercial Press NEW31Onyama Limba
1006Tony A SaylorsUnited Kingdom2024-05-21Chapman, Ross E Esq QUALIFIED72Elwin Sharvill
1007Faith H BriddickGermany2024-05-28Feltz Printing Service QUALIFIED7Ioni Bowcher
1008Misaki T DoeAustralia2024-05-24Benton, John B Jr RENEWAL38Onyama Limba
1009Juan O BriddickUnited Kingdom2024-06-05Truhlar And Truhlar Attys UNQUALIFIED65Elwin Sharvill
1010Ivar P CaldareraIndia2024-06-02Truhlar And Truhlar Attys NEGOTIATION75Anna Fali
1011Julie E IturbideAustralia2024-05-27Feiner Bros NEW88Anna Fali
1012Adams R NestleRussia2024-06-04Rangoni Of Florence QUALIFIED52Xuxue Feng
1013Munro D OldroydIndia2024-05-22Chemel, James L Cpa UNQUALIFIED69Asiya Javayant
1014Rodrigues Z GillianAustralia2024-05-22Morlong Associates PROPOSAL55Ioni Bowcher
1015Clifford L NickaFrance2024-05-20Truhlar And Truhlar Attys QUALIFIED36Bernardo Dominic
1016Costa D BologniaFrance2024-06-01Chanay, Jeffrey A Esq UNQUALIFIED36Bernardo Dominic
1017Jones O OstroskyAustralia2024-05-28Benton, John B Jr NEW5Ivan Magalhaes
1018Kaitlin E CaldareraItaly2024-06-03Rousseaux, Michael Esq QUALIFIED46Bernardo Dominic
1019Jennifer Y MorascaAustralia2024-06-09Benton, John B Jr NEGOTIATION29Amy Elsner
1020Morrow F RimArgentina2024-06-09Commercial Press NEGOTIATION57Stephen Shaw
1021Arvin M ShinkoSpain2024-06-12Feltz Printing Service PROPOSAL49Amy Elsner
1022Leon I MarrierIndia2024-06-03Rangoni Of Florence NEW99Xuxue Feng
1023Isabel F SergiIndia2024-05-31King, Christopher A Esq NEW27Ioni Bowcher
1024Deepesh H StensethCanada2024-06-14Buckley Miller Wright QUALIFIED38Stephen Shaw
1025Costa B MarrierCanada2024-05-27Buckley Miller Wright NEW11Amy Elsner
1026Sinclair P GauchoItaly2024-06-10Rangoni Of Florence NEW71Amy Elsner
1027Ricardo K IturbideIndia2024-05-30Feiner Bros NEGOTIATION99Ivan Magalhaes
1028Julie R MorascaUnited Kingdom2024-06-11Rangoni Of Florence QUALIFIED90Stephen Shaw
1029Leja K NickaUnited Kingdom2024-05-19Rousseaux, Michael Esq QUALIFIED60Elwin Sharvill
1030Aruna P RulapaughJapan2024-05-27Dorl, James J Esq NEW41Elwin Sharvill
1031Murillo L RulapaughFrance2024-06-04Printing Dimensions NEW54Asiya Javayant
1032Maria Y KuskoIndia2024-06-15Chanay, Jeffrey A Esq RENEWAL35Stephen Shaw
1033Aditya N MaletCanada2024-06-04Rousseaux, Michael Esq NEGOTIATION56Onyama Limba
1034Jeanfrancois U SergiIndia2024-05-25Morlong Associates PROPOSAL47Stephen Shaw
1035Francesco Z WieserCanada2024-06-04Morlong Associates PROPOSAL14Anna Fali
1036Francesco W PoquetteIndia2024-06-02Chanay, Jeffrey A Esq NEGOTIATION31Elwin Sharvill
1037Greenwood E PaprockiCanada2024-06-10Printing Dimensions NEW83Amy Elsner
1038Greenwood O IturbideCanada2024-05-28Feiner Bros RENEWAL30Asiya Javayant
1039Munro V StensethGermany2024-06-02Benton, John B Jr UNQUALIFIED25Asiya Javayant
1040Jones H GauchoJapan2024-06-03Chapman, Ross E Esq PROPOSAL20Amy Elsner
1041Johnson I GlickBrazil2024-06-14Chanay, Jeffrey A Esq NEGOTIATION1Xuxue Feng
1042Claire H SchemmerBrazil2024-06-09Rousseaux, Michael Esq UNQUALIFIED80Xuxue Feng
1043Misaki N VocelkaCanada2024-05-28Chapman, Ross E Esq NEW97Asiya Javayant
1044Ashley X WaycottSpain2024-05-25Truhlar And Truhlar Attys RENEWAL33Anna Fali
1045Chavez X MarrierSpain2024-06-11Morlong Associates RENEWAL62Elwin Sharvill
1046Francesco I NestleRussia2024-06-09Chanay, Jeffrey A Esq PROPOSAL17Asiya Javayant
1047Aruna F OldroydAustralia2024-06-02Commercial Press QUALIFIED97Anna Fali
1048Greenwood L RimUnited Kingdom2024-06-14Feiner Bros NEW30Asiya Javayant
1049Kadeem E RulapaughGermany2024-06-14Rousseaux, Michael Esq UNQUALIFIED6Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Jennifer O OstroskyIndiaIvan Magalhaes QUALIFIED
Johnson E WaycottGermanyStephen Shaw QUALIFIED
Sinclair T NestleGermanyIoni Bowcher NEGOTIATION
Isabel O ButtArgentinaAmy Elsner RENEWAL
Izzy U OldroydItalyAsiya Javayant NEW
Maria D VocelkaSpainAmy Elsner QUALIFIED
Julie G DoeFranceStephen Shaw PROPOSAL
Mayumi M MaletCanadaIvan Magalhaes QUALIFIED
Maria K BriddickAustraliaIvan Magalhaes PROPOSAL
Adams I RoysterItalyXuxue Feng NEGOTIATION
Misaki A SergiJapanIoni Bowcher PROPOSAL
Jennifer K AlbaresItalyIvan Magalhaes QUALIFIED
Leja A CampainRussiaAnna Fali RENEWAL
Adams F RulapaughSpainIoni Bowcher UNQUALIFIED
Adams A CaudyGermanyXuxue Feng RENEWAL
Smith O AlbaresJapanAnna Fali QUALIFIED
Julie O AmigonFranceIoni Bowcher QUALIFIED
James S GillianSpainIvan Magalhaes PROPOSAL
Greenwood Y WhobreyBrazilAsiya Javayant PROPOSAL
Deepesh S StensethRussiaIoni Bowcher NEGOTIATION
Cody C KuskoItalyStephen Shaw QUALIFIED
Aika F FlosiCanadaIoni Bowcher NEGOTIATION
Costa U MorascaIndiaBernardo Dominic RENEWAL
Costa W WaycottItalyStephen Shaw NEGOTIATION
Deepesh N WieserCanadaStephen Shaw PROPOSAL
Chavez J PerinGermanyOnyama Limba NEW
Sinclair K SchemmerSpainXuxue Feng RENEWAL
Misaki P InouyeArgentinaOnyama Limba UNQUALIFIED
Costa T FlosiBrazilAnna Fali PROPOSAL
Mayumi D OstroskyItalyBernardo Dominic NEGOTIATION
David K FerenczUnited KingdomAmy Elsner UNQUALIFIED
Smith Z PaprockiIndiaElwin Sharvill NEW
Greenwood K CampainAustraliaIvan Magalhaes PROPOSAL
Alejandro F CampainJapanStephen Shaw NEW
Chavez Q BriddickGermanyBernardo Dominic RENEWAL
Silvio W MarrierJapanXuxue Feng PROPOSAL
Cody O FollerArgentinaXuxue Feng NEGOTIATION
Tony R KolmetzRussiaAsiya Javayant NEGOTIATION
Juan A CaudyFranceAnna Fali NEGOTIATION
Kadeem L KuskoFranceAnna Fali NEW
Sinclair G SaylorsAustraliaOnyama Limba PROPOSAL
Adams S DoeRussiaIoni Bowcher UNQUALIFIED
Tony N MaletItalyOnyama Limba UNQUALIFIED
Ivar W AlbaresItalyAnna Fali RENEWAL
Ashley K RimGermanyAnna Fali QUALIFIED
Tony F FerenczRussiaBernardo Dominic RENEWAL
Jennifer K TollnerBrazilIoni Bowcher QUALIFIED
Ivar D DoeAustraliaAnna Fali NEGOTIATION
Ivar I StensethUnited KingdomXuxue Feng RENEWAL
Jennifer V RutaUnited KingdomAnna Fali NEW
Frozen Columns
Name
Jeanfrancois D Ferencz
James X Kusko
Adams D Figeroa
Antonio H Stenseth
Nicolas O Ruta
Claire A Perin
Munro I Butt
Smith E Glick
Costa C Wieser
Cody N Stockham
Julie R Perin
Rodrigues Y Wieser
Stacey V Marrier
Izzy U Briddick
Maisha M Foller
Sinclair W Malet
Antonio N Albares
Izzy F Ferencz
Deepesh N Rim
James L Foller
Cody L Stenseth
Antonio B Ruta
Aruna R Whobrey
David V Paprocki
Clifford M Vocelka
Kadeem I Bolognia
Julie F Oldroyd
Costa C Caudy
Salvatore F Caldarera
Wickens M Wieser
Alejandro R Nicka
Greenwood V Albares
Ricardo G Schemmer
Julie G Campain
Stacey G Stockham
Ashley D Garufi
James P Malet
Jennifer U Rulapaugh
Adams L Gillian
Munro H Saylors
Julie Q Rim
Jefferson A Caudy
Chavez U Malet
Smith G Ruta
Aditya P Garufi
Chavez V Ostrosky
Arvin Z Saylors
Juan R Bowley
Nicolas Q Royster
Faith X Rulapaugh
IdCountryDate
1000Australia2024-06-17
1001United Kingdom2024-06-03
1002Canada2024-06-13
1003Japan2024-05-28
1004Argentina2024-06-01
1005France2024-06-09
1006Canada2024-05-29
1007United Kingdom2024-06-08
1008Australia2024-05-21
1009Germany2024-06-14
1010Australia2024-06-12
1011United Kingdom2024-05-28
1012Australia2024-05-29
1013Argentina2024-06-12
1014Brazil2024-06-02
1015Russia2024-06-09
1016Germany2024-06-07
1017Japan2024-06-02
1018Japan2024-06-03
1019United Kingdom2024-05-27
1020Canada2024-06-16
1021Canada2024-06-09
1022Canada2024-05-25
1023Germany2024-06-16
1024Argentina2024-06-02
1025Spain2024-05-29
1026Spain2024-05-25
1027India2024-06-06
1028United Kingdom2024-06-10
1029France2024-05-27
1030Canada2024-06-07
1031France2024-05-20
1032Brazil2024-05-21
1033Australia2024-06-14
1034Brazil2024-06-07
1035Japan2024-05-29
1036Argentina2024-05-27
1037Russia2024-05-24
1038Spain2024-06-01
1039Brazil2024-05-30
1040India2024-05-30
1041Argentina2024-05-22
1042France2024-06-09
1043Germany2024-06-09
1044Germany2024-05-25
1045United Kingdom2024-06-14
1046Russia2024-05-27
1047United Kingdom2024-05-19
1048Brazil2024-05-26
1049Brazil2024-06-11

On-Demand Data

NameIdCountryDate
Darci I Shinko1000Italy2024-05-24
Aruna L Bolognia1001Japan2024-05-20
Jennifer H Albares1002France2024-05-26
Smith Y Kolmetz1003Australia2024-06-12
Kaitlin R Kusko1004Brazil2024-06-12
Silvio U Rulapaugh1005Argentina2024-06-05
Smith M Darakjy1006Brazil2024-06-11
Stacey D Inouye1007Italy2024-06-09
Ashley P Figeroa1008Germany2024-05-26
Salvatore L Wieser1009Russia2024-05-31
Sinclair O Briddick1010Japan2024-05-25
Leja O Gillian1011Brazil2024-06-17
Maisha K Saylors1012France2024-06-13
Murillo V Stockham1013France2024-06-15
Murillo G Garufi1014Russia2024-05-23
James L Campain1015Russia2024-05-29
Morrow H Glick1016Russia2024-06-08
Stacey H Ruta1017United Kingdom2024-05-31
Julie F Foller1018Italy2024-05-23
Sinclair Z Saylors1019Brazil2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony A MaletIndiaElwin Sharvill UNQUALIFIED
Jefferson N CaldareraRussiaElwin Sharvill NEGOTIATION
Jefferson B AmigonBrazilAmy Elsner UNQUALIFIED
Murillo L SlusarskiItalyAnna Fali NEGOTIATION
Munro W MaletBrazilBernardo Dominic NEW
James J MaletUnited KingdomBernardo Dominic QUALIFIED
Aditya U IturbideGermanyAmy Elsner NEW
Francesco P GauchoIndiaIoni Bowcher NEGOTIATION
Tony D BriddickCanadaOnyama Limba QUALIFIED
Silvio R ShinkoArgentinaAmy Elsner UNQUALIFIED
Jeanfrancois O RutaBrazilAmy Elsner NEGOTIATION
Jones H WaycottJapanOnyama Limba UNQUALIFIED
Misaki E SergiGermanyStephen Shaw NEW
Murillo N OldroydFranceBernardo Dominic PROPOSAL
Octavia V SaylorsSpainAmy Elsner RENEWAL
Adams C VenereAustraliaAmy Elsner PROPOSAL
Nicolas X BologniaJapanIvan Magalhaes NEW
Munro K StockhamArgentinaAnna Fali UNQUALIFIED
Maisha I IturbideAustraliaElwin Sharvill QUALIFIED
James K VocelkaArgentinaXuxue Feng QUALIFIED
Jennifer F FigeroaBrazilOnyama Limba RENEWAL
Claire V SaylorsRussiaStephen Shaw RENEWAL
Greenwood Q SaylorsUnited KingdomAsiya Javayant NEGOTIATION
Wickens E PaprockiBrazilStephen Shaw QUALIFIED
Faith J RoysterBrazilXuxue Feng NEGOTIATION
Misaki D PerinCanadaStephen Shaw PROPOSAL
Adams B FigeroaJapanIoni Bowcher NEW
Rodrigues Z StensethIndiaElwin Sharvill NEW
David V WaycottBrazilStephen Shaw NEW
Tony S VocelkaIndiaXuxue Feng NEGOTIATION
James F AmigonSpainElwin Sharvill QUALIFIED
Antonio F InouyeRussiaAsiya Javayant RENEWAL
Octavia S NestleGermanyAnna Fali NEW
Ivar N NestleGermanyAnna Fali NEGOTIATION
James F OldroydArgentinaBernardo Dominic PROPOSAL
Ricardo F RutaCanadaAmy Elsner NEGOTIATION
Maria O CaldareraBrazilElwin Sharvill RENEWAL
Octavia F WhobreyIndiaElwin Sharvill RENEWAL
Greenwood N SaylorsCanadaAsiya Javayant NEW
Maria R PaprockiGermanyAsiya Javayant 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>