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
Jefferson Q PaprockiItalyIvan Magalhaes PROPOSAL
Tony N WieserArgentinaAnna Fali QUALIFIED
Nicolas C DoeRussiaElwin Sharvill PROPOSAL
Costa O KolmetzFranceAmy Elsner PROPOSAL
Johnson N SaylorsRussiaAnna Fali NEGOTIATION
Rodrigues M IturbideArgentinaElwin Sharvill RENEWAL
Leon U RulapaughItalyIvan Magalhaes QUALIFIED
Ashley L MacleadSpainAnna Fali NEGOTIATION
Emily C AmigonJapanElwin Sharvill NEW
Octavia Z MacleadCanadaIoni Bowcher PROPOSAL
Juan S VocelkaUnited KingdomIvan Magalhaes RENEWAL
Kaitlin L DarakjyJapanStephen Shaw PROPOSAL
Aruna U IturbideSpainOnyama Limba UNQUALIFIED
Julie P IturbideArgentinaAsiya Javayant NEGOTIATION
Tony X CampainItalyXuxue Feng PROPOSAL
Maisha U BowleyArgentinaAmy Elsner QUALIFIED
Salvatore P VenereItalyIvan Magalhaes PROPOSAL
Alejandro I SergiIndiaAnna Fali PROPOSAL
Salvatore V NickaItalyAsiya Javayant RENEWAL
Leja B BowleyJapanIoni Bowcher NEW
Misaki X TollnerUnited KingdomElwin Sharvill NEW
Tony Q TollnerUnited KingdomXuxue Feng PROPOSAL
Octavia O CaldareraFranceIoni Bowcher RENEWAL
Silvio K WhobreyIndiaOnyama Limba RENEWAL
Leja M RimArgentinaStephen Shaw RENEWAL
Maisha M PaprockiGermanyAnna Fali NEW
Salvatore H DarakjyAustraliaOnyama Limba UNQUALIFIED
Rodrigues K GillianFranceAmy Elsner UNQUALIFIED
Mujtaba F OstroskyItalyElwin Sharvill NEW
Emily R WhobreyJapanBernardo Dominic NEW
Ivar G WieserItalyOnyama Limba NEGOTIATION
Johnson C ChuiArgentinaIvan Magalhaes NEGOTIATION
Faith I VenereBrazilAsiya Javayant NEGOTIATION
Mayumi J WhobreyIndiaXuxue Feng UNQUALIFIED
Munro N VenereIndiaAsiya Javayant QUALIFIED
Alejandro Z AmigonArgentinaIoni Bowcher NEW
Emily D StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Costa X AmigonBrazilOnyama Limba UNQUALIFIED
Jeanfrancois Q IturbideJapanAsiya Javayant PROPOSAL
Isabel F CampainArgentinaAsiya Javayant NEW
Cody H OldroydAustraliaAnna Fali RENEWAL
Aruna M NestleIndiaElwin Sharvill NEGOTIATION
Kaitlin C StockhamRussiaXuxue Feng PROPOSAL
Munro V OstroskyCanadaOnyama Limba RENEWAL
Alejandro R InouyeAustraliaStephen Shaw PROPOSAL
James G RutaArgentinaIoni Bowcher PROPOSAL
Maisha Q MaletRussiaBernardo Dominic PROPOSAL
James G MacleadIndiaIvan Magalhaes PROPOSAL
Misaki S KuskoUnited KingdomIvan Magalhaes QUALIFIED
Darci D GillianAustraliaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Cody D GlickBrazilAmy Elsner RENEWAL
Kaitlin G ChuiBrazilBernardo Dominic UNQUALIFIED
Ricardo M BowleyUnited KingdomStephen Shaw NEGOTIATION
Greenwood Q FlosiIndiaStephen Shaw NEGOTIATION
Octavia T StensethRussiaIoni Bowcher UNQUALIFIED
Emily N StensethUnited KingdomStephen Shaw PROPOSAL
Aika X VocelkaJapanOnyama Limba PROPOSAL
Ivar P BriddickJapanXuxue Feng NEGOTIATION
Ashley M GlickCanadaXuxue Feng RENEWAL
Ricardo Y NestleArgentinaIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha U OldroydUnited Kingdom2024-06-10Commercial Press NEGOTIATION42Stephen Shaw
1001Ashley C NickaJapan2024-06-10Buckley Miller Wright PROPOSAL98Stephen Shaw
1002Ricardo Z ChuiJapan2024-06-08Truhlar And Truhlar Attys PROPOSAL38Ivan Magalhaes
1003Aruna K IturbideAustralia2024-06-01Rousseaux, Michael Esq RENEWAL63Ioni Bowcher
1004Sinclair A RimBrazil2024-05-28Feltz Printing Service RENEWAL32Anna Fali
1005Arvin M MorascaIndia2024-06-14Commercial Press NEW89Asiya Javayant
1006Rodrigues X BriddickRussia2024-06-22King, Christopher A Esq QUALIFIED62Ivan Magalhaes
1007Ivar C CaldareraUnited Kingdom2024-06-22Benton, John B Jr RENEWAL6Amy Elsner
1008Munro A ChuiSpain2024-05-27Rousseaux, Michael Esq RENEWAL61Ioni Bowcher
1009Jeanfrancois O IturbideIndia2024-05-26Chemel, James L Cpa PROPOSAL0Xuxue Feng
1010Rodrigues G GlickFrance2024-05-31Printing Dimensions PROPOSAL29Onyama Limba
1011Salvatore L WhobreyFrance2024-06-01Rangoni Of Florence RENEWAL42Stephen Shaw
1012Stacey B CaudyAustralia2024-06-11Rangoni Of Florence PROPOSAL52Bernardo Dominic
1013Jennifer L SaylorsAustralia2024-06-19Feltz Printing Service NEGOTIATION39Asiya Javayant
1014Julie E SergiBrazil2024-06-17Commercial Press NEW70Bernardo Dominic
1015Rodrigues H GauchoBrazil2024-06-06Chemel, James L Cpa PROPOSAL11Elwin Sharvill
1016Francesco A RimArgentina2024-06-22Feiner Bros QUALIFIED63Anna Fali
1017Jefferson L VenereAustralia2024-06-04Dorl, James J Esq NEW6Elwin Sharvill
1018Nicolas W RimIndia2024-05-25Dorl, James J Esq PROPOSAL7Bernardo Dominic
1019Jones G GillianUnited Kingdom2024-06-20Truhlar And Truhlar Attys RENEWAL21Ioni Bowcher
1020Arvin J RutaIndia2024-06-07Chanay, Jeffrey A Esq NEGOTIATION14Anna Fali
1021Jennifer J FollerBrazil2024-06-10Feiner Bros PROPOSAL3Ivan Magalhaes
1022Aditya O TollnerUnited Kingdom2024-05-26Printing Dimensions PROPOSAL83Asiya Javayant
1023Juan A AlbaresRussia2024-06-01Morlong Associates QUALIFIED31Xuxue Feng
1024Kaitlin H MacleadArgentina2024-06-10Chapman, Ross E Esq NEW4Stephen Shaw
1025Darci Y MorascaItaly2024-05-28Morlong Associates NEGOTIATION18Anna Fali
1026Antonio M WieserJapan2024-06-01Chapman, Ross E Esq RENEWAL31Xuxue Feng
1027Aditya A MorascaSpain2024-06-13Chemel, James L Cpa RENEWAL66Bernardo Dominic
1028Leja Q RulapaughGermany2024-06-13Chemel, James L Cpa QUALIFIED69Ioni Bowcher
1029Adams O ButtIndia2024-06-10Rangoni Of Florence UNQUALIFIED61Xuxue Feng
1030Claire J SergiArgentina2024-06-16Morlong Associates NEGOTIATION73Anna Fali
1031Salvatore M MacleadGermany2024-06-08Feiner Bros NEGOTIATION6Ivan Magalhaes
1032Jefferson V WhobreyGermany2024-06-05Commercial Press QUALIFIED14Ioni Bowcher
1033Darci Q FlosiUnited Kingdom2024-06-14Chanay, Jeffrey A Esq UNQUALIFIED64Amy Elsner
1034Darci C RoysterArgentina2024-05-31Chemel, James L Cpa UNQUALIFIED13Stephen Shaw
1035Claire I OldroydCanada2024-06-06Benton, John B Jr QUALIFIED20Ioni Bowcher
1036Juan X DilliardRussia2024-05-27King, Christopher A Esq QUALIFIED49Asiya Javayant
1037Isabel A GauchoFrance2024-06-16Rangoni Of Florence NEW93Anna Fali
1038Faith K FlosiSpain2024-06-12Morlong Associates NEGOTIATION29Onyama Limba
1039Wickens C FigeroaUnited Kingdom2024-06-20Morlong Associates UNQUALIFIED11Anna Fali
1040Aika I SergiGermany2024-06-10Rousseaux, Michael Esq QUALIFIED7Ioni Bowcher
1041Tony E StockhamIndia2024-05-31Feiner Bros RENEWAL38Bernardo Dominic
1042Aika O SchemmerRussia2024-06-14Rousseaux, Michael Esq NEGOTIATION67Onyama Limba
1043Faith Y BowleyFrance2024-05-30King, Christopher A Esq RENEWAL62Elwin Sharvill
1044Jeanfrancois F PaprockiJapan2024-06-16Chanay, Jeffrey A Esq QUALIFIED48Xuxue Feng
1045Morrow A OldroydArgentina2024-06-16Rangoni Of Florence UNQUALIFIED27Amy Elsner
1046Alejandro X AlbaresArgentina2024-05-25Rangoni Of Florence NEW79Bernardo Dominic
1047Maisha W StockhamSpain2024-05-25King, Christopher A Esq NEW11Ioni Bowcher
1048Stacey O MarrierItaly2024-06-19Dorl, James J Esq QUALIFIED77Amy Elsner
1049Rodrigues J WhobreyFrance2024-05-29Printing Dimensions QUALIFIED32Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Clifford I BriddickArgentinaIoni Bowcher NEW
Wickens K VenereUnited KingdomIoni Bowcher PROPOSAL
Isabel H DoeIndiaElwin Sharvill QUALIFIED
Silvio L TollnerIndiaIoni Bowcher NEW
Darci N PerinUnited KingdomAsiya Javayant UNQUALIFIED
Ashley X VenereItalyOnyama Limba NEW
Sinclair E GillianArgentinaAsiya Javayant PROPOSAL
Aditya L ShinkoAustraliaElwin Sharvill RENEWAL
Maisha K PerinUnited KingdomXuxue Feng NEGOTIATION
Salvatore X WhobreyItalyAsiya Javayant UNQUALIFIED
Julie O PoquetteRussiaStephen Shaw QUALIFIED
Ivar K FlosiFranceElwin Sharvill NEW
Cody L RulapaughCanadaIoni Bowcher QUALIFIED
Jefferson R KolmetzRussiaIvan Magalhaes PROPOSAL
Chavez O StockhamUnited KingdomAsiya Javayant PROPOSAL
Sinclair M FerenczItalyAnna Fali RENEWAL
Alejandro Z RutaUnited KingdomAsiya Javayant RENEWAL
Kadeem Q WieserBrazilOnyama Limba NEW
Jennifer S VenereGermanyElwin Sharvill NEW
Morrow D StensethGermanyOnyama Limba PROPOSAL
Nicolas H GlickRussiaBernardo Dominic NEGOTIATION
Maria S MacleadSpainIoni Bowcher UNQUALIFIED
Jefferson M MorascaBrazilElwin Sharvill PROPOSAL
Johnson U GarufiItalyXuxue Feng PROPOSAL
Nicolas L VenereFranceElwin Sharvill NEGOTIATION
Adams G MacleadFranceBernardo Dominic NEW
Leja O PoquetteJapanAnna Fali QUALIFIED
Morrow X CaudyIndiaIvan Magalhaes RENEWAL
Jones T SergiSpainXuxue Feng NEGOTIATION
Morrow X CaldareraCanadaOnyama Limba PROPOSAL
Jones V WieserItalyIoni Bowcher QUALIFIED
Aruna Z FollerBrazilIoni Bowcher QUALIFIED
Maisha N GillianSpainIoni Bowcher NEW
Munro I RutaArgentinaAsiya Javayant NEGOTIATION
Aditya W VenereRussiaOnyama Limba QUALIFIED
Johnson O TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Maria O PerinUnited KingdomAsiya Javayant RENEWAL
Arvin E WieserSpainAmy Elsner NEW
Leja U AlbaresBrazilIvan Magalhaes NEGOTIATION
Emily X PoquetteIndiaAmy Elsner UNQUALIFIED
David M RimSpainAmy Elsner UNQUALIFIED
Mujtaba P FigeroaItalyAnna Fali RENEWAL
Cody S PerinArgentinaAsiya Javayant UNQUALIFIED
Aruna K AmigonCanadaIvan Magalhaes UNQUALIFIED
Ricardo F SergiIndiaIvan Magalhaes UNQUALIFIED
Stacey I NestleAustraliaAmy Elsner UNQUALIFIED
Ashley Y WhobreyFranceStephen Shaw PROPOSAL
Silvio G RulapaughRussiaAmy Elsner NEW
Stacey J OldroydBrazilIoni Bowcher NEGOTIATION
Ricardo P MacleadGermanyAnna Fali RENEWAL
Frozen Columns
Name
Tony Y Waycott
Leja K Inouye
Aruna Z Morasca
Jennifer K Chui
Misaki N Ostrosky
Aditya E Darakjy
Aditya L Paprocki
James V Gaucho
Maisha T Saylors
Jennifer T Whobrey
Wickens R Perin
Adams Z Bolognia
Rodrigues P Flosi
Isabel H Briddick
Emily W Inouye
Munro A Gillian
Juan F Paprocki
Izzy C Royster
Antonio O Morasca
Aruna E Chui
Silvio B Paprocki
Mujtaba Z Garufi
Tony L Gillian
Sinclair Y Rulapaugh
Sinclair C Albares
Johnson N Malet
Johnson Z Shinko
Wickens R Nestle
Costa O Saylors
Maisha J Ferencz
Misaki D Amigon
Deepesh U Kolmetz
Aruna D Bowley
Leja K Caldarera
David L Ferencz
Costa R Inouye
Maisha I Ferencz
Faith T Amigon
Tony W Venere
David G Slusarski
Ashley H Ostrosky
Ivar W Stockham
Ivar T Kolmetz
Kaitlin M Poquette
Alejandro O Stockham
Deepesh G Garufi
Juan G Perin
Jeanfrancois H Caldarera
Claire N Royster
Ivar Z Glick
IdCountryDate
1000Germany2024-05-24
1001Germany2024-05-30
1002Japan2024-06-18
1003Germany2024-06-20
1004Canada2024-06-14
1005Canada2024-06-13
1006Italy2024-05-25
1007India2024-05-26
1008Spain2024-05-25
1009Australia2024-06-12
1010Argentina2024-06-22
1011Italy2024-05-24
1012Argentina2024-05-28
1013Brazil2024-06-07
1014Japan2024-06-10
1015Australia2024-06-16
1016India2024-06-04
1017Australia2024-06-20
1018Brazil2024-06-12
1019Canada2024-05-31
1020Russia2024-06-13
1021United Kingdom2024-06-18
1022Australia2024-06-11
1023Spain2024-06-06
1024France2024-06-07
1025Italy2024-06-05
1026United Kingdom2024-06-17
1027Argentina2024-06-07
1028Russia2024-06-09
1029Australia2024-06-11
1030Italy2024-05-28
1031Australia2024-06-19
1032Japan2024-06-11
1033France2024-06-10
1034India2024-06-13
1035Spain2024-06-02
1036Russia2024-06-21
1037Spain2024-05-25
1038Spain2024-06-11
1039Australia2024-06-04
1040Spain2024-06-10
1041Argentina2024-06-06
1042Russia2024-05-27
1043Australia2024-06-11
1044Canada2024-06-17
1045France2024-06-03
1046Japan2024-05-29
1047Germany2024-06-11
1048Japan2024-06-19
1049Japan2024-06-16

On-Demand Data

NameIdCountryDate
Alejandro W Stockham1000United Kingdom2024-05-25
Antonio H Venere1001Australia2024-05-31
Mayumi Q Rulapaugh1002Spain2024-06-15
Aruna Y Marrier1003Argentina2024-05-27
Tony F Flosi1004Japan2024-05-26
Ricardo V Caudy1005Argentina2024-06-18
James T Garufi1006India2024-05-25
Costa J Nicka1007Spain2024-05-25
Cody Y Waycott1008Russia2024-05-24
Ashley Z Albares1009Argentina2024-06-03
Octavia F Caudy1010Germany2024-06-19
Leja O Dilliard1011India2024-06-20
Antonio J Shinko1012Germany2024-05-27
Darci F Shinko1013Argentina2024-06-02
Claire O Schemmer1014France2024-05-31
David I Maclead1015Germany2024-06-10
Claire V Rim1016Germany2024-06-15
Maria O Albares1017Australia2024-06-19
Kaitlin O Stenseth1018Russia2024-06-16
Deepesh A Maclead1019Japan2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo P DilliardCanadaOnyama Limba NEGOTIATION
Morrow Y AmigonSpainXuxue Feng NEW
Antonio A GarufiBrazilAnna Fali NEW
Alejandro K GlickArgentinaIoni Bowcher NEGOTIATION
Kaitlin G BriddickItalyXuxue Feng QUALIFIED
Deepesh O KuskoRussiaIoni Bowcher NEW
Morrow C BologniaBrazilAmy Elsner RENEWAL
Greenwood E CampainFranceBernardo Dominic RENEWAL
Jefferson H KolmetzJapanAsiya Javayant NEW
Morrow E DarakjyArgentinaOnyama Limba RENEWAL
Ricardo U SergiJapanIvan Magalhaes NEGOTIATION
Kadeem E StockhamBrazilBernardo Dominic UNQUALIFIED
Murillo J ButtCanadaAmy Elsner PROPOSAL
Clifford L SlusarskiFranceAsiya Javayant NEGOTIATION
Nicolas B BowleyArgentinaAsiya Javayant NEGOTIATION
Isabel B MorascaIndiaOnyama Limba RENEWAL
Johnson C KolmetzGermanyIoni Bowcher NEW
Ricardo J WaycottGermanyAmy Elsner UNQUALIFIED
Jones O IturbideGermanyElwin Sharvill UNQUALIFIED
Kadeem G VenereFranceAnna Fali QUALIFIED
Murillo B WaycottJapanIoni Bowcher UNQUALIFIED
Aruna Z ButtRussiaOnyama Limba PROPOSAL
Rodrigues X WhobreyCanadaXuxue Feng RENEWAL
Antonio R DilliardIndiaBernardo Dominic NEGOTIATION
Arvin J MacleadFranceAnna Fali RENEWAL
Munro Q GlickCanadaAsiya Javayant RENEWAL
Juan W RimAustraliaElwin Sharvill NEGOTIATION
Tony Q CampainFranceStephen Shaw QUALIFIED
David W CaudyBrazilAnna Fali NEGOTIATION
Wickens E StockhamIndiaStephen Shaw NEW
Julie W GarufiFranceAsiya Javayant PROPOSAL
Julie I MarrierSpainElwin Sharvill UNQUALIFIED
Arvin P ShinkoCanadaIvan Magalhaes QUALIFIED
Stacey C CaldareraGermanyElwin Sharvill UNQUALIFIED
Jennifer Y CampainSpainIoni Bowcher QUALIFIED
Morrow U RutaIndiaAnna Fali NEW
Antonio R VocelkaBrazilStephen Shaw RENEWAL
Greenwood B SergiJapanXuxue Feng NEGOTIATION
Munro Q WhobreyFranceIoni Bowcher NEGOTIATION
Aditya K SchemmerAustraliaAsiya Javayant UNQUALIFIED

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