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
Greenwood R FlosiArgentinaAsiya Javayant QUALIFIED
Silvio D CampainSpainXuxue Feng PROPOSAL
Rodrigues X FerenczUnited KingdomBernardo Dominic QUALIFIED
Salvatore K BriddickBrazilElwin Sharvill RENEWAL
Antonio C StockhamAustraliaIoni Bowcher NEW
Alejandro A MacleadAustraliaOnyama Limba QUALIFIED
Juan X InouyeRussiaIoni Bowcher UNQUALIFIED
Antonio Y VenereRussiaStephen Shaw NEW
Chavez Q KolmetzArgentinaAnna Fali QUALIFIED
Mujtaba E GarufiBrazilIoni Bowcher NEW
Maria K RulapaughAustraliaAsiya Javayant QUALIFIED
Ashley F CampainArgentinaXuxue Feng NEGOTIATION
Aditya B FerenczArgentinaOnyama Limba RENEWAL
Aika Q DarakjyCanadaStephen Shaw RENEWAL
Emily Z MaletAustraliaXuxue Feng RENEWAL
Maria M FigeroaIndiaStephen Shaw RENEWAL
Nicolas I CaldareraJapanAmy Elsner UNQUALIFIED
Jeanfrancois E AlbaresItalyIvan Magalhaes RENEWAL
Francesco U MaletRussiaAsiya Javayant NEGOTIATION
James L RoysterUnited KingdomAsiya Javayant RENEWAL
Kaitlin B MaletIndiaAmy Elsner UNQUALIFIED
Morrow E DarakjyUnited KingdomXuxue Feng NEW
Murillo D FerenczFranceBernardo Dominic UNQUALIFIED
Rodrigues H SchemmerFranceStephen Shaw NEGOTIATION
Clifford J VenereUnited KingdomStephen Shaw NEW
Cody L NickaGermanyElwin Sharvill NEGOTIATION
Francesco G SergiAustraliaOnyama Limba UNQUALIFIED
Leja P AmigonAustraliaIvan Magalhaes NEW
Maria S FlosiBrazilOnyama Limba RENEWAL
Sinclair L StensethAustraliaOnyama Limba RENEWAL
Costa K WaycottAustraliaAmy Elsner NEGOTIATION
Clifford H BowleyUnited KingdomIoni Bowcher NEW
Maria E SaylorsAustraliaAsiya Javayant PROPOSAL
Aditya Q InouyeUnited KingdomAnna Fali QUALIFIED
Mayumi C RimSpainAmy Elsner NEW
Murillo S GauchoJapanAsiya Javayant PROPOSAL
Julie Y CaldareraItalyStephen Shaw NEGOTIATION
Clifford N WieserArgentinaAmy Elsner UNQUALIFIED
Mujtaba L PaprockiJapanIvan Magalhaes NEW
Izzy G DilliardJapanXuxue Feng RENEWAL
Juan Z IturbideJapanBernardo Dominic NEGOTIATION
Alejandro C TollnerBrazilAnna Fali NEW
Murillo G OldroydJapanStephen Shaw RENEWAL
Darci W FollerUnited KingdomIvan Magalhaes PROPOSAL
Ashley U RutaRussiaStephen Shaw NEGOTIATION
Jennifer Y BologniaCanadaAsiya Javayant NEW
Antonio U OstroskyItalyElwin Sharvill RENEWAL
Juan F DilliardFranceXuxue Feng NEW
Sinclair K CaudyIndiaXuxue Feng QUALIFIED
Mayumi D VenereFranceElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Clifford J DilliardArgentinaElwin Sharvill QUALIFIED
Alejandro V PoquetteItalyStephen Shaw UNQUALIFIED
Adams S GlickBrazilAmy Elsner NEGOTIATION
Leon E RoysterRussiaIoni Bowcher QUALIFIED
Stacey B DarakjyFranceOnyama Limba PROPOSAL
Murillo G OstroskyFranceElwin Sharvill PROPOSAL
Izzy D FerenczUnited KingdomAsiya Javayant NEW
Munro E IturbideArgentinaStephen Shaw PROPOSAL
David G WaycottAustraliaXuxue Feng PROPOSAL
Ricardo C RulapaughRussiaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar T FigeroaSpain2024-05-26Printing Dimensions NEGOTIATION13Ioni Bowcher
1001Darci O OldroydAustralia2024-06-15Truhlar And Truhlar Attys QUALIFIED82Onyama Limba
1002Jefferson U MaletIndia2024-05-22Rousseaux, Michael Esq RENEWAL15Amy Elsner
1003Murillo J RoysterIndia2024-06-11Feltz Printing Service QUALIFIED61Xuxue Feng
1004Deepesh I FigeroaItaly2024-06-12Morlong Associates NEGOTIATION98Onyama Limba
1005Octavia H RoysterAustralia2024-06-16Chemel, James L Cpa RENEWAL74Xuxue Feng
1006Maria K RoysterJapan2024-06-13Feiner Bros RENEWAL78Onyama Limba
1007Emily V RimSpain2024-05-30Printing Dimensions QUALIFIED64Onyama Limba
1008Tony F RimJapan2024-06-08Commercial Press NEGOTIATION65Ioni Bowcher
1009Morrow U NestleJapan2024-06-11Buckley Miller Wright NEGOTIATION54Ioni Bowcher
1010Cody R GarufiBrazil2024-06-03King, Christopher A Esq RENEWAL33Ivan Magalhaes
1011Izzy E FigeroaArgentina2024-06-13Benton, John B Jr NEW57Bernardo Dominic
1012Octavia M KuskoItaly2024-05-28Commercial Press NEGOTIATION4Ioni Bowcher
1013Munro E StockhamItaly2024-06-11Chapman, Ross E Esq RENEWAL71Xuxue Feng
1014Kaitlin M IturbideItaly2024-05-21Chanay, Jeffrey A Esq RENEWAL82Onyama Limba
1015Misaki Y MaletGermany2024-06-10Feltz Printing Service PROPOSAL52Onyama Limba
1016Julie H ShinkoJapan2024-06-09Feiner Bros QUALIFIED1Ivan Magalhaes
1017Emily Q StockhamCanada2024-06-10Rangoni Of Florence UNQUALIFIED10Asiya Javayant
1018Deepesh P NickaGermany2024-06-03King, Christopher A Esq NEW85Asiya Javayant
1019Morrow C RutaJapan2024-05-28Chanay, Jeffrey A Esq PROPOSAL90Bernardo Dominic
1020Ashley Y StensethSpain2024-05-25Printing Dimensions RENEWAL93Stephen Shaw
1021Greenwood O RoysterAustralia2024-06-09Feltz Printing Service NEGOTIATION52Amy Elsner
1022Silvio R OstroskyJapan2024-06-03Chanay, Jeffrey A Esq NEW37Elwin Sharvill
1023Jennifer D RimFrance2024-06-12Buckley Miller Wright NEGOTIATION93Ioni Bowcher
1024Mayumi F ShinkoFrance2024-05-30Chanay, Jeffrey A Esq RENEWAL15Asiya Javayant
1025Aika S AmigonSpain2024-06-12Commercial Press UNQUALIFIED78Asiya Javayant
1026Francesco G ShinkoBrazil2024-06-10Dorl, James J Esq PROPOSAL65Anna Fali
1027Smith Q WieserCanada2024-05-29Rousseaux, Michael Esq NEW75Anna Fali
1028Octavia Z MaletGermany2024-05-26Truhlar And Truhlar Attys NEW84Bernardo Dominic
1029Aika E AlbaresArgentina2024-05-25Rousseaux, Michael Esq UNQUALIFIED54Ioni Bowcher
1030Leon E BologniaItaly2024-06-17Feiner Bros UNQUALIFIED83Ivan Magalhaes
1031Octavia L FollerArgentina2024-06-10Chemel, James L Cpa NEW5Asiya Javayant
1032Munro U FigeroaArgentina2024-06-02Benton, John B Jr PROPOSAL4Xuxue Feng
1033Leon E SergiSpain2024-05-24Feiner Bros NEW47Amy Elsner
1034Leon V AmigonItaly2024-05-22Truhlar And Truhlar Attys PROPOSAL31Xuxue Feng
1035Adams O DoeArgentina2024-06-13Feltz Printing Service NEGOTIATION43Asiya Javayant
1036Wickens B GillianIndia2024-06-10Truhlar And Truhlar Attys PROPOSAL11Amy Elsner
1037Octavia D VenereJapan2024-05-20Commercial Press NEGOTIATION33Ivan Magalhaes
1038Jefferson I RutaBrazil2024-05-29Feiner Bros NEW37Ivan Magalhaes
1039Aditya B MarrierJapan2024-06-09Rangoni Of Florence RENEWAL58Asiya Javayant
1040Kadeem E CaudyUnited Kingdom2024-06-02Commercial Press NEW26Bernardo Dominic
1041Chavez W InouyeUnited Kingdom2024-05-26Buckley Miller Wright NEW29Amy Elsner
1042Aika Y RimUnited Kingdom2024-05-21Buckley Miller Wright RENEWAL72Stephen Shaw
1043Sinclair L OstroskyArgentina2024-06-18Truhlar And Truhlar Attys QUALIFIED0Ioni Bowcher
1044Jeanfrancois A VenereUnited Kingdom2024-06-18Buckley Miller Wright PROPOSAL47Ivan Magalhaes
1045Nicolas Z GlickGermany2024-06-11Rousseaux, Michael Esq NEGOTIATION99Xuxue Feng
1046Isabel O OstroskyIndia2024-06-13Commercial Press NEGOTIATION92Ivan Magalhaes
1047Ricardo G BologniaGermany2024-05-20Printing Dimensions RENEWAL22Xuxue Feng
1048Jennifer S RoysterSpain2024-06-09Rangoni Of Florence QUALIFIED44Amy Elsner
1049Mujtaba X BologniaAustralia2024-05-21Truhlar And Truhlar Attys UNQUALIFIED43Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jennifer S SaylorsFranceIvan Magalhaes PROPOSAL
Aika A PoquetteGermanyAnna Fali UNQUALIFIED
Munro L ShinkoJapanAsiya Javayant QUALIFIED
Kadeem Z OldroydSpainStephen Shaw QUALIFIED
Aditya U RoysterCanadaXuxue Feng UNQUALIFIED
Kadeem V MorascaBrazilAsiya Javayant NEW
Rodrigues K VenereGermanyIvan Magalhaes RENEWAL
Leon W PerinItalyOnyama Limba PROPOSAL
Arvin E DoeCanadaIoni Bowcher UNQUALIFIED
James U ButtIndiaIvan Magalhaes RENEWAL
Izzy W BowleyArgentinaIvan Magalhaes NEGOTIATION
Francesco J AlbaresUnited KingdomXuxue Feng PROPOSAL
Jones X MaletCanadaBernardo Dominic NEW
Mayumi P FollerBrazilOnyama Limba NEGOTIATION
Maria A GlickRussiaAnna Fali QUALIFIED
Emily N RoysterItalyIvan Magalhaes NEW
Salvatore V GillianFranceElwin Sharvill QUALIFIED
Ashley Z StensethSpainOnyama Limba NEGOTIATION
Adams D MarrierRussiaAsiya Javayant NEW
Maria K FigeroaSpainOnyama Limba PROPOSAL
Mujtaba S IturbideJapanIvan Magalhaes QUALIFIED
Aditya V FerenczItalyAnna Fali NEW
Morrow Z ChuiArgentinaAmy Elsner QUALIFIED
Jones W MorascaArgentinaXuxue Feng UNQUALIFIED
Maisha P GillianAustraliaAmy Elsner NEW
Costa C NickaAustraliaAsiya Javayant NEW
Isabel J FigeroaJapanBernardo Dominic QUALIFIED
Clifford C MaletFranceAsiya Javayant RENEWAL
Kaitlin P VenereJapanBernardo Dominic NEGOTIATION
Adams I MarrierRussiaIoni Bowcher UNQUALIFIED
Juan O GillianArgentinaOnyama Limba NEGOTIATION
Misaki G IturbideGermanyIvan Magalhaes UNQUALIFIED
Francesco Q RimUnited KingdomAsiya Javayant UNQUALIFIED
Alejandro G IturbideIndiaAsiya Javayant NEW
Deepesh N BologniaUnited KingdomXuxue Feng NEGOTIATION
Ricardo Z BologniaItalyAnna Fali QUALIFIED
Salvatore N DarakjyArgentinaBernardo Dominic NEGOTIATION
Clifford L GillianAustraliaIvan Magalhaes NEW
Morrow O WhobreyBrazilBernardo Dominic RENEWAL
Jefferson G MacleadBrazilXuxue Feng NEW
Francesco P WieserFranceAsiya Javayant NEW
Mujtaba L FigeroaCanadaBernardo Dominic NEGOTIATION
Leon B FollerJapanAsiya Javayant RENEWAL
Jeanfrancois W SaylorsFranceAmy Elsner QUALIFIED
Costa C IturbideGermanyAsiya Javayant RENEWAL
Smith C StockhamUnited KingdomStephen Shaw PROPOSAL
Arvin K BriddickSpainAsiya Javayant QUALIFIED
Izzy H MaletBrazilIoni Bowcher NEW
Rodrigues D MorascaUnited KingdomIvan Magalhaes PROPOSAL
Murillo T MacleadUnited KingdomAmy Elsner QUALIFIED
Frozen Columns
Name
Wickens B Vocelka
Darci T Nestle
Ivar Q Saylors
Ricardo P Gillian
Mayumi Q Garufi
Jennifer F Caldarera
Ashley A Slusarski
Claire G Whobrey
Emily W Waycott
Octavia X Iturbide
Antonio K Gaucho
Leja W Chui
Wickens D Ruta
Arvin H Bowley
Claire A Nestle
Costa I Stockham
Johnson A Vocelka
James R Oldroyd
Rodrigues R Oldroyd
Emily Y Schemmer
Ivar Z Vocelka
Isabel U Ferencz
Salvatore C Albares
Kadeem V Rim
Maisha Z Caudy
Juan A Rim
Francesco K Stockham
Kadeem T Rim
Silvio I Bolognia
Johnson P Dilliard
Deepesh L Gaucho
Francesco I Glick
Johnson R Marrier
Rodrigues V Venere
Mayumi Q Waycott
Aika W Whobrey
Ashley Z Poquette
Murillo X Oldroyd
Morrow K Ostrosky
Arvin O Glick
Alejandro A Albares
Costa N Morasca
Jones D Morasca
Jeanfrancois S Doe
Maisha N Flosi
Aika X Caudy
Ricardo A Poquette
Maisha K Foller
Aditya L Rulapaugh
Antonio K Perin
IdCountryDate
1000Brazil2024-06-08
1001Spain2024-06-03
1002Japan2024-06-15
1003France2024-06-03
1004Canada2024-05-20
1005Russia2024-05-30
1006Australia2024-05-30
1007United Kingdom2024-06-11
1008Italy2024-06-08
1009Germany2024-06-11
1010Italy2024-06-02
1011India2024-05-28
1012Spain2024-05-20
1013Brazil2024-05-23
1014Japan2024-05-23
1015Russia2024-06-06
1016France2024-06-02
1017Canada2024-06-04
1018Canada2024-05-23
1019Brazil2024-05-30
1020United Kingdom2024-06-15
1021Russia2024-05-23
1022Russia2024-06-06
1023Brazil2024-06-18
1024Japan2024-05-28
1025France2024-06-08
1026Australia2024-06-05
1027Brazil2024-06-02
1028Japan2024-05-26
1029Spain2024-06-07
1030Canada2024-05-22
1031Japan2024-05-30
1032Russia2024-05-28
1033Russia2024-06-16
1034Spain2024-06-16
1035Canada2024-06-13
1036Spain2024-05-29
1037Australia2024-06-01
1038Japan2024-06-03
1039France2024-06-17
1040France2024-05-23
1041Italy2024-06-06
1042Argentina2024-06-14
1043Argentina2024-05-23
1044Japan2024-06-03
1045Brazil2024-06-16
1046Brazil2024-06-17
1047Japan2024-05-29
1048Japan2024-06-13
1049Brazil2024-05-25

On-Demand Data

NameIdCountryDate
Darci E Saylors1000India2024-05-29
Maria T Maclead1001France2024-05-23
Salvatore C Doe1002United Kingdom2024-05-25
Francesco B Saylors1003Australia2024-06-02
Kadeem J Ruta1004United Kingdom2024-06-04
Silvio W Kolmetz1005Brazil2024-06-06
Costa T Schemmer1006Spain2024-06-09
Claire Q Vocelka1007Russia2024-06-09
James K Gillian1008Germany2024-06-13
James M Amigon1009France2024-06-16
Leon R Malet1010Italy2024-06-13
Nicolas B Albares1011Japan2024-05-22
Jennifer P Amigon1012United Kingdom2024-06-13
Jones R Inouye1013Australia2024-06-04
Jennifer V Malet1014Russia2024-06-13
Johnson Y Butt1015Italy2024-06-10
Clifford D Albares1016Italy2024-06-16
Faith F Kolmetz1017Brazil2024-05-24
Julie Y Inouye1018Argentina2024-06-17
Ricardo X Rim1019Russia2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco S SaylorsUnited KingdomIoni Bowcher QUALIFIED
Maisha C FlosiUnited KingdomOnyama Limba PROPOSAL
Smith C BowleyAustraliaAmy Elsner QUALIFIED
Nicolas I AmigonAustraliaStephen Shaw PROPOSAL
David U KolmetzArgentinaIvan Magalhaes RENEWAL
Rodrigues J GarufiAustraliaElwin Sharvill PROPOSAL
Mayumi T FollerJapanIoni Bowcher QUALIFIED
Misaki Q VocelkaAustraliaIoni Bowcher NEGOTIATION
Stacey O NickaSpainAnna Fali PROPOSAL
Silvio M MorascaArgentinaBernardo Dominic UNQUALIFIED
Morrow C WieserSpainAnna Fali PROPOSAL
Aika S DoeGermanyIvan Magalhaes QUALIFIED
Silvio O MaletFranceAsiya Javayant PROPOSAL
Silvio X SergiFranceAnna Fali NEGOTIATION
Jeanfrancois Y DarakjyFranceIvan Magalhaes NEGOTIATION
Nicolas H MaletAustraliaIoni Bowcher UNQUALIFIED
Kaitlin Z GillianUnited KingdomAmy Elsner PROPOSAL
Misaki H RulapaughItalyAsiya Javayant NEW
Ivar R MorascaJapanAsiya Javayant UNQUALIFIED
Stacey L FlosiGermanyXuxue Feng QUALIFIED
Tony X GarufiGermanyXuxue Feng RENEWAL
Smith N GarufiCanadaIoni Bowcher UNQUALIFIED
Nicolas C OldroydSpainIoni Bowcher NEW
Jones V KuskoCanadaOnyama Limba NEW
Murillo T SergiUnited KingdomStephen Shaw NEGOTIATION
Rodrigues L PaprockiArgentinaElwin Sharvill QUALIFIED
Salvatore R CaudyFranceAmy Elsner NEGOTIATION
Francesco U RutaIndiaAsiya Javayant NEW
Kaitlin L BriddickRussiaAnna Fali UNQUALIFIED
Maisha G GarufiGermanyStephen Shaw RENEWAL
Munro L PerinIndiaAnna Fali NEGOTIATION
Nicolas D MaletBrazilAsiya Javayant RENEWAL
Claire T PaprockiBrazilElwin Sharvill UNQUALIFIED
Morrow B MacleadGermanyXuxue Feng PROPOSAL
Mujtaba D MaletGermanyIoni Bowcher NEGOTIATION
Salvatore A MacleadArgentinaElwin Sharvill NEGOTIATION
Stacey A StensethJapanIoni Bowcher NEW
Adams Q IturbideAustraliaIoni Bowcher NEGOTIATION
Mujtaba D GarufiAustraliaElwin Sharvill QUALIFIED
Adams H CaudyUnited KingdomAnna Fali 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>