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
Jones O ButtAustraliaAsiya Javayant PROPOSAL
Maisha G MorascaAustraliaOnyama Limba NEW
Maisha G WieserJapanIvan Magalhaes PROPOSAL
Arvin K OstroskyUnited KingdomStephen Shaw NEGOTIATION
Kadeem B SchemmerJapanElwin Sharvill QUALIFIED
Jeanfrancois K WaycottCanadaAmy Elsner NEGOTIATION
Alejandro Y RutaFranceAsiya Javayant NEGOTIATION
Murillo K MorascaJapanElwin Sharvill PROPOSAL
Alejandro E IturbideBrazilXuxue Feng UNQUALIFIED
Johnson E SchemmerSpainStephen Shaw QUALIFIED
Octavia U RutaIndiaIoni Bowcher PROPOSAL
David C CaudyJapanIoni Bowcher NEGOTIATION
Murillo P GlickCanadaBernardo Dominic NEGOTIATION
James H CaldareraIndiaAnna Fali UNQUALIFIED
Mujtaba Q WhobreyCanadaStephen Shaw NEGOTIATION
Salvatore E GillianSpainOnyama Limba PROPOSAL
Mayumi E KolmetzArgentinaBernardo Dominic QUALIFIED
Ivar T PaprockiArgentinaAsiya Javayant RENEWAL
Greenwood Q OldroydRussiaIoni Bowcher NEW
Leon Q DoeIndiaOnyama Limba UNQUALIFIED
Maria W BriddickJapanAmy Elsner NEW
Adams G BowleyFranceAmy Elsner NEGOTIATION
Cody H DarakjyCanadaStephen Shaw NEW
Jeanfrancois X VocelkaJapanIvan Magalhaes QUALIFIED
Izzy K StockhamIndiaXuxue Feng QUALIFIED
Mujtaba B BowleyItalyAsiya Javayant UNQUALIFIED
Nicolas V FollerJapanAnna Fali QUALIFIED
Stacey O MaletItalyIvan Magalhaes UNQUALIFIED
Maria P DoeCanadaElwin Sharvill NEW
Jeanfrancois B AmigonUnited KingdomStephen Shaw NEW
James V ShinkoArgentinaStephen Shaw NEW
Arvin Z DarakjyRussiaIvan Magalhaes PROPOSAL
Greenwood C RoysterFranceElwin Sharvill RENEWAL
Mayumi H NickaJapanIvan Magalhaes NEGOTIATION
James D GarufiArgentinaIoni Bowcher NEW
James H IturbideCanadaAmy Elsner NEGOTIATION
Mayumi E GarufiJapanStephen Shaw QUALIFIED
Kaitlin T FollerItalyAmy Elsner RENEWAL
Tony Y GillianItalyOnyama Limba UNQUALIFIED
Johnson C DoeUnited KingdomAnna Fali NEGOTIATION
Jennifer J CaldareraIndiaXuxue Feng UNQUALIFIED
Jeanfrancois V CaudyGermanyBernardo Dominic UNQUALIFIED
Sinclair N GauchoCanadaStephen Shaw RENEWAL
David A MaletAustraliaBernardo Dominic PROPOSAL
Leon R CaudyBrazilAsiya Javayant NEGOTIATION
Claire R ShinkoArgentinaBernardo Dominic NEW
Deepesh K StensethCanadaStephen Shaw RENEWAL
Isabel D WaycottJapanIoni Bowcher NEGOTIATION
Morrow Z KolmetzCanadaAsiya Javayant QUALIFIED
Alejandro F GlickFranceAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Johnson E VenereJapanIoni Bowcher QUALIFIED
Ivar Q RoysterArgentinaStephen Shaw UNQUALIFIED
Aditya G OldroydUnited KingdomStephen Shaw RENEWAL
Aika G ShinkoGermanyIoni Bowcher NEGOTIATION
Maria A OldroydJapanAmy Elsner PROPOSAL
Johnson A BriddickItalyXuxue Feng RENEWAL
Julie H MacleadAustraliaAsiya Javayant QUALIFIED
Misaki U GlickGermanyElwin Sharvill RENEWAL
Jefferson F SergiFranceAsiya Javayant UNQUALIFIED
Antonio L CampainGermanyAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio X SaylorsJapan2024-06-20Truhlar And Truhlar Attys NEGOTIATION31Elwin Sharvill
1001Maisha M CaldareraCanada2024-06-19Rousseaux, Michael Esq QUALIFIED80Bernardo Dominic
1002Aditya D MaletBrazil2024-06-22Commercial Press UNQUALIFIED71Onyama Limba
1003Maisha P IturbideArgentina2024-06-20King, Christopher A Esq NEGOTIATION22Amy Elsner
1004Cody L WhobreyIndia2024-05-27Feltz Printing Service NEW46Anna Fali
1005Darci V RimBrazil2024-06-10Dorl, James J Esq UNQUALIFIED63Xuxue Feng
1006Juan W FerenczBrazil2024-06-11Buckley Miller Wright PROPOSAL72Onyama Limba
1007Smith O TollnerIndia2024-05-26Chanay, Jeffrey A Esq NEGOTIATION32Onyama Limba
1008Silvio A ShinkoIndia2024-05-27Chanay, Jeffrey A Esq NEGOTIATION49Xuxue Feng
1009Silvio F GlickBrazil2024-06-16Chemel, James L Cpa QUALIFIED13Anna Fali
1010Isabel G StensethBrazil2024-06-09Chemel, James L Cpa NEW5Amy Elsner
1011Kaitlin F AmigonArgentina2024-06-06King, Christopher A Esq PROPOSAL44Stephen Shaw
1012Deepesh Y SaylorsJapan2024-05-26Rangoni Of Florence NEW34Ivan Magalhaes
1013Jefferson Q PaprockiArgentina2024-05-26Rangoni Of Florence PROPOSAL78Stephen Shaw
1014Smith B FigeroaFrance2024-06-04Dorl, James J Esq UNQUALIFIED38Onyama Limba
1015Kadeem V MaletBrazil2024-06-12Rousseaux, Michael Esq QUALIFIED4Ivan Magalhaes
1016Ivar V WhobreyJapan2024-06-13Feltz Printing Service PROPOSAL47Asiya Javayant
1017Aditya F NickaRussia2024-06-14Benton, John B Jr PROPOSAL24Bernardo Dominic
1018Adams Y PaprockiCanada2024-06-04King, Christopher A Esq RENEWAL78Stephen Shaw
1019Jennifer A RoysterCanada2024-06-12Chapman, Ross E Esq NEW40Anna Fali
1020Ashley Y RutaRussia2024-06-07Chanay, Jeffrey A Esq RENEWAL61Anna Fali
1021Johnson M WieserFrance2024-06-06Rangoni Of Florence UNQUALIFIED37Stephen Shaw
1022Smith V PoquetteJapan2024-06-20Commercial Press RENEWAL71Bernardo Dominic
1023Morrow U StensethArgentina2024-05-30King, Christopher A Esq RENEWAL51Xuxue Feng
1024Jeanfrancois H CaudyIndia2024-05-26Chemel, James L Cpa QUALIFIED76Amy Elsner
1025Claire E DilliardRussia2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED86Asiya Javayant
1026Sinclair P SchemmerFrance2024-06-18Rangoni Of Florence NEW48Onyama Limba
1027Greenwood E PoquetteAustralia2024-06-02Truhlar And Truhlar Attys QUALIFIED70Anna Fali
1028Faith G WaycottArgentina2024-06-02Chemel, James L Cpa PROPOSAL53Ioni Bowcher
1029Kadeem Q WaycottUnited Kingdom2024-06-07Truhlar And Truhlar Attys PROPOSAL27Elwin Sharvill
1030Isabel T RoysterJapan2024-05-26Morlong Associates RENEWAL99Ioni Bowcher
1031Leja V FerenczIndia2024-06-20Benton, John B Jr RENEWAL48Amy Elsner
1032Aika O SlusarskiAustralia2024-06-02Printing Dimensions QUALIFIED46Amy Elsner
1033Ivar T ShinkoCanada2024-06-02Commercial Press UNQUALIFIED41Xuxue Feng
1034Smith R SlusarskiCanada2024-06-22King, Christopher A Esq RENEWAL47Stephen Shaw
1035Morrow A BriddickUnited Kingdom2024-06-06Chapman, Ross E Esq NEW14Amy Elsner
1036Aika Y PaprockiRussia2024-05-31King, Christopher A Esq NEGOTIATION22Elwin Sharvill
1037Stacey N WhobreyGermany2024-06-13Feiner Bros NEW15Elwin Sharvill
1038Murillo S InouyeCanada2024-05-29Commercial Press QUALIFIED87Onyama Limba
1039Leja W TollnerIndia2024-06-01Chapman, Ross E Esq NEW31Ioni Bowcher
1040Aruna C FollerAustralia2024-06-06Commercial Press NEW7Anna Fali
1041Maria Q ShinkoIndia2024-05-26Commercial Press QUALIFIED8Anna Fali
1042Faith J SaylorsSpain2024-05-31Dorl, James J Esq RENEWAL16Ivan Magalhaes
1043Kadeem J OstroskyCanada2024-06-17Truhlar And Truhlar Attys NEW42Elwin Sharvill
1044Deepesh B FlosiUnited Kingdom2024-06-07Feiner Bros NEW97Xuxue Feng
1045Antonio P WaycottFrance2024-06-07Rangoni Of Florence PROPOSAL11Stephen Shaw
1046Antonio L PaprockiSpain2024-06-05Morlong Associates PROPOSAL50Elwin Sharvill
1047Antonio C ChuiFrance2024-06-01Rangoni Of Florence NEW83Anna Fali
1048Aditya O FigeroaBrazil2024-05-30Rangoni Of Florence NEW7Elwin Sharvill
1049Silvio K CaudyJapan2024-06-07Chapman, Ross E Esq NEW74Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Jefferson D OldroydBrazilAnna Fali PROPOSAL
Sinclair T CaldareraRussiaAnna Fali PROPOSAL
Deepesh X AmigonItalyElwin Sharvill QUALIFIED
Ashley D RoysterBrazilElwin Sharvill RENEWAL
Jefferson L MacleadJapanElwin Sharvill PROPOSAL
Morrow E BologniaArgentinaXuxue Feng RENEWAL
Cody L PaprockiCanadaAnna Fali UNQUALIFIED
Salvatore C NestleBrazilIvan Magalhaes NEW
Jeanfrancois T DarakjyUnited KingdomIvan Magalhaes UNQUALIFIED
Tony D CampainArgentinaOnyama Limba PROPOSAL
Tony S SlusarskiRussiaAsiya Javayant NEW
Stacey G NickaFranceStephen Shaw NEGOTIATION
Kadeem L RutaGermanyBernardo Dominic RENEWAL
Stacey Y WieserJapanStephen Shaw QUALIFIED
Antonio O PerinRussiaIoni Bowcher PROPOSAL
Darci X SaylorsCanadaAnna Fali PROPOSAL
James Q FerenczFranceBernardo Dominic RENEWAL
Smith S VenereIndiaOnyama Limba NEGOTIATION
Ricardo H CampainUnited KingdomIvan Magalhaes RENEWAL
Aruna Z DoeJapanBernardo Dominic NEGOTIATION
Izzy Q FlosiArgentinaIvan Magalhaes UNQUALIFIED
Murillo T ChuiFranceAmy Elsner NEW
Salvatore D RutaArgentinaXuxue Feng NEGOTIATION
Jones K DilliardIndiaOnyama Limba QUALIFIED
Maisha V DoeJapanIvan Magalhaes RENEWAL
Cody S CaldareraFranceIoni Bowcher NEW
Smith J StensethJapanIoni Bowcher NEGOTIATION
Costa V FerenczFranceStephen Shaw QUALIFIED
Juan V NestleFranceElwin Sharvill QUALIFIED
Adams V MaletSpainAnna Fali UNQUALIFIED
Maria R FigeroaBrazilBernardo Dominic NEW
Maria V AlbaresCanadaIoni Bowcher UNQUALIFIED
Rodrigues J DoeRussiaIoni Bowcher RENEWAL
Maria S BologniaIndiaOnyama Limba NEGOTIATION
Izzy N TollnerCanadaStephen Shaw NEW
Ivar F GillianCanadaStephen Shaw QUALIFIED
Mayumi Y DilliardRussiaAmy Elsner QUALIFIED
Murillo O FigeroaItalyStephen Shaw PROPOSAL
Jeanfrancois K FlosiGermanyIvan Magalhaes NEGOTIATION
Smith C SchemmerGermanyIoni Bowcher RENEWAL
Maisha B SaylorsFranceElwin Sharvill PROPOSAL
Maisha O RulapaughBrazilOnyama Limba RENEWAL
Ivar H KuskoFranceAmy Elsner NEGOTIATION
Costa Q TollnerRussiaAsiya Javayant NEW
Ricardo V MaletRussiaAsiya Javayant RENEWAL
Rodrigues M VocelkaIndiaIoni Bowcher PROPOSAL
Deepesh K RutaIndiaAmy Elsner PROPOSAL
Antonio Y VocelkaGermanyIoni Bowcher NEW
Jones P ShinkoBrazilIvan Magalhaes UNQUALIFIED
Octavia Z SaylorsBrazilIoni Bowcher PROPOSAL
Frozen Columns
Name
Izzy V Iturbide
Izzy V Marrier
Alejandro P Figeroa
Leja O Glick
Jennifer J Campain
Claire Z Gaucho
Ashley W Nicka
Deepesh J Oldroyd
Smith N Gillian
Misaki M Slusarski
James J Briddick
Munro W Tollner
David F Stenseth
Smith X Rulapaugh
Claire X Iturbide
Juan Y Malet
Misaki T Dilliard
Wickens P Oldroyd
Cody M Nestle
Sinclair Y Flosi
Maria P Ruta
Maria V Amigon
Wickens T Schemmer
Jefferson K Stenseth
Claire U Whobrey
Mayumi G Maclead
Jeanfrancois Y Marrier
Leja E Whobrey
Murillo F Poquette
Jennifer W Saylors
Tony E Slusarski
Ricardo W Butt
Stacey Z Tollner
Darci Q Caldarera
Jefferson P Figeroa
Silvio T Sergi
Arvin T Poquette
Maria O Iturbide
Aruna Z Marrier
Emily D Inouye
Faith G Poquette
Aruna Y Kusko
Johnson T Whobrey
David B Whobrey
Johnson I Oldroyd
Ricardo R Shinko
Juan X Marrier
Aruna Q Ostrosky
Chavez R Flosi
Kaitlin P Wieser
IdCountryDate
1000Spain2024-06-12
1001India2024-06-14
1002Spain2024-06-16
1003United Kingdom2024-06-12
1004Germany2024-05-27
1005Italy2024-06-17
1006Japan2024-06-21
1007Japan2024-06-14
1008Australia2024-05-25
1009Germany2024-06-15
1010Spain2024-05-31
1011Italy2024-06-21
1012Australia2024-06-02
1013Canada2024-05-30
1014Canada2024-06-19
1015Italy2024-06-05
1016India2024-06-06
1017Brazil2024-06-04
1018Argentina2024-06-03
1019Brazil2024-06-06
1020India2024-05-24
1021India2024-06-12
1022United Kingdom2024-06-11
1023Germany2024-05-26
1024Spain2024-06-04
1025Argentina2024-06-01
1026Argentina2024-06-07
1027Japan2024-05-25
1028India2024-05-25
1029Argentina2024-06-16
1030Australia2024-06-11
1031India2024-06-12
1032United Kingdom2024-06-04
1033Italy2024-06-13
1034France2024-05-29
1035Spain2024-06-08
1036Australia2024-06-03
1037Brazil2024-06-06
1038Italy2024-05-24
1039Germany2024-06-11
1040Argentina2024-06-06
1041United Kingdom2024-06-17
1042Spain2024-06-15
1043Brazil2024-06-16
1044United Kingdom2024-06-10
1045Australia2024-06-21
1046United Kingdom2024-06-18
1047Argentina2024-06-15
1048Argentina2024-05-24
1049Japan2024-05-31

On-Demand Data

NameIdCountryDate
Morrow L Caldarera1000Brazil2024-06-07
Wickens S Albares1001France2024-06-03
Ricardo F Stenseth1002Japan2024-05-26
Maisha E Paprocki1003United Kingdom2024-06-06
Leja O Sergi1004Italy2024-05-27
Juan L Shinko1005United Kingdom2024-06-03
Smith R Maclead1006India2024-05-31
Clifford K Glick1007Germany2024-06-18
Murillo I Gillian1008Brazil2024-06-09
Johnson E Bowley1009Argentina2024-06-09
Ashley C Slusarski1010Canada2024-06-10
Rodrigues Z Saylors1011Australia2024-06-12
Greenwood H Schemmer1012Germany2024-06-19
David Z Caudy1013Japan2024-06-08
Leon O Sergi1014Germany2024-06-18
Aditya M Glick1015Germany2024-06-09
Sinclair Y Saylors1016United Kingdom2024-05-31
Francesco D Morasca1017Japan2024-06-16
Aika I Whobrey1018Japan2024-05-27
Misaki O Rim1019Germany2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley Z GlickCanadaStephen Shaw PROPOSAL
Mayumi W ShinkoUnited KingdomBernardo Dominic QUALIFIED
Silvio B OldroydBrazilBernardo Dominic NEW
Leon P PaprockiIndiaIoni Bowcher NEW
Maria W ChuiJapanAmy Elsner RENEWAL
Jones Y NickaArgentinaAmy Elsner NEGOTIATION
Clifford T BowleyAustraliaXuxue Feng NEW
Jones F PerinCanadaAmy Elsner NEW
Murillo S KuskoSpainXuxue Feng PROPOSAL
Izzy F ButtCanadaAnna Fali RENEWAL
Aika D TollnerGermanyOnyama Limba RENEWAL
Faith K DilliardRussiaAnna Fali NEGOTIATION
James J DilliardCanadaStephen Shaw QUALIFIED
Julie G OldroydArgentinaAnna Fali UNQUALIFIED
Salvatore U ShinkoSpainOnyama Limba QUALIFIED
Deepesh V NestleIndiaAmy Elsner QUALIFIED
Tony N BowleyAustraliaStephen Shaw QUALIFIED
Isabel P FerenczItalyAmy Elsner QUALIFIED
Silvio N BowleyItalyBernardo Dominic QUALIFIED
Ricardo M DarakjySpainIvan Magalhaes NEW
Johnson W NestleSpainXuxue Feng PROPOSAL
Jeanfrancois Z SchemmerBrazilBernardo Dominic QUALIFIED
Claire G StockhamArgentinaOnyama Limba UNQUALIFIED
Jefferson N OstroskyCanadaIoni Bowcher UNQUALIFIED
Nicolas S StensethJapanAnna Fali RENEWAL
Morrow I MorascaUnited KingdomOnyama Limba RENEWAL
Jennifer T RimArgentinaIvan Magalhaes NEGOTIATION
David M IturbideRussiaAnna Fali UNQUALIFIED
Clifford M RutaJapanAmy Elsner QUALIFIED
Kadeem V GauchoRussiaIvan Magalhaes NEW
Izzy T FerenczAustraliaAnna Fali RENEWAL
Smith N BowleyJapanBernardo Dominic UNQUALIFIED
Nicolas M NestleIndiaElwin Sharvill QUALIFIED
Jeanfrancois Z ButtSpainElwin Sharvill UNQUALIFIED
Julie J BologniaArgentinaAnna Fali RENEWAL
Maisha N GillianSpainStephen Shaw NEW
Morrow D RutaCanadaXuxue Feng QUALIFIED
Stacey N RutaCanadaAmy Elsner UNQUALIFIED
Nicolas Z SaylorsJapanOnyama Limba NEW
Sinclair F CaudyUnited KingdomAnna Fali 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>