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
Murillo M RimIndiaElwin Sharvill PROPOSAL
Stacey Z FlosiArgentinaStephen Shaw PROPOSAL
Kaitlin I InouyeItalyIvan Magalhaes RENEWAL
Johnson L MaletJapanIvan Magalhaes RENEWAL
Rodrigues V FigeroaIndiaAsiya Javayant NEW
Clifford E SlusarskiJapanXuxue Feng UNQUALIFIED
Mujtaba J ChuiRussiaElwin Sharvill QUALIFIED
Aditya J KolmetzGermanyIoni Bowcher NEGOTIATION
Tony V MorascaJapanAnna Fali NEGOTIATION
Claire P NestleAustraliaOnyama Limba NEGOTIATION
Francesco D MaletFranceBernardo Dominic NEW
Salvatore Z NickaBrazilAsiya Javayant QUALIFIED
Adams J SaylorsUnited KingdomXuxue Feng PROPOSAL
Cody J CaldareraAustraliaIvan Magalhaes NEGOTIATION
Silvio M SlusarskiSpainAmy Elsner PROPOSAL
Jennifer P SchemmerItalyAmy Elsner RENEWAL
Aditya N StensethCanadaIvan Magalhaes NEW
Nicolas L ButtArgentinaIvan Magalhaes NEGOTIATION
Francesco L FlosiUnited KingdomXuxue Feng QUALIFIED
Morrow X NestleAustraliaAmy Elsner UNQUALIFIED
Julie O WaycottGermanyAnna Fali UNQUALIFIED
Isabel E OstroskySpainAnna Fali RENEWAL
Smith Y PaprockiAustraliaBernardo Dominic PROPOSAL
Leon Y GlickCanadaAmy Elsner NEW
Rodrigues V MacleadGermanyIoni Bowcher UNQUALIFIED
Costa P SchemmerItalyStephen Shaw UNQUALIFIED
Antonio K SergiCanadaXuxue Feng NEGOTIATION
Mujtaba M AlbaresJapanBernardo Dominic PROPOSAL
Maria W NestleGermanyIoni Bowcher QUALIFIED
Jones H AlbaresCanadaAmy Elsner RENEWAL
Jeanfrancois G MaletFranceAsiya Javayant QUALIFIED
David T RutaCanadaOnyama Limba QUALIFIED
Chavez D WaycottSpainOnyama Limba PROPOSAL
Murillo E MarrierBrazilElwin Sharvill RENEWAL
Rodrigues A MarrierJapanAmy Elsner PROPOSAL
Leon V FigeroaBrazilBernardo Dominic QUALIFIED
Kaitlin I RutaAustraliaAnna Fali RENEWAL
Claire W PoquetteArgentinaStephen Shaw QUALIFIED
Claire A WhobreyCanadaAnna Fali NEGOTIATION
Antonio K GarufiSpainOnyama Limba QUALIFIED
Jeanfrancois X BriddickFranceOnyama Limba QUALIFIED
Mujtaba X CampainCanadaOnyama Limba UNQUALIFIED
Tony S OstroskyAustraliaXuxue Feng NEGOTIATION
Isabel E DoeBrazilIoni Bowcher NEGOTIATION
Cody E MaletAustraliaIvan Magalhaes NEGOTIATION
Mayumi W CampainAustraliaAsiya Javayant QUALIFIED
Julie V BowleyFranceXuxue Feng RENEWAL
Silvio Z SaylorsFranceAmy Elsner UNQUALIFIED
Kaitlin Y OldroydSpainIoni Bowcher PROPOSAL
Antonio I KolmetzIndiaBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Juan A GauchoAustraliaAsiya Javayant NEGOTIATION
Maisha H RutaArgentinaOnyama Limba UNQUALIFIED
Aruna G BowleyJapanStephen Shaw QUALIFIED
Kadeem J BriddickArgentinaBernardo Dominic PROPOSAL
Stacey K FigeroaIndiaIvan Magalhaes RENEWAL
Ivar K BriddickBrazilAnna Fali NEGOTIATION
Emily P RulapaughSpainOnyama Limba NEGOTIATION
Jennifer F OldroydAustraliaIoni Bowcher QUALIFIED
Cody K FlosiFranceXuxue Feng RENEWAL
Deepesh R SergiFranceIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues D FigeroaIndia2024-05-27Rousseaux, Michael Esq NEW49Stephen Shaw
1001Ashley E FigeroaFrance2024-06-06Rangoni Of Florence NEW86Asiya Javayant
1002Darci S NestleJapan2024-06-01Chapman, Ross E Esq PROPOSAL53Anna Fali
1003Alejandro L CaudyAustralia2024-05-25Benton, John B Jr NEW56Anna Fali
1004Sinclair Z RoysterAustralia2024-06-01Chanay, Jeffrey A Esq QUALIFIED20Stephen Shaw
1005Stacey J WhobreyJapan2024-06-22Truhlar And Truhlar Attys QUALIFIED86Bernardo Dominic
1006Smith P IturbideFrance2024-05-30King, Christopher A Esq PROPOSAL48Anna Fali
1007Faith G ButtAustralia2024-06-14Feltz Printing Service RENEWAL57Ivan Magalhaes
1008Jefferson G SaylorsRussia2024-06-11Dorl, James J Esq UNQUALIFIED37Amy Elsner
1009Rodrigues I SlusarskiRussia2024-05-24Benton, John B Jr NEGOTIATION66Stephen Shaw
1010Smith B WhobreyCanada2024-05-30Morlong Associates QUALIFIED72Ioni Bowcher
1011Rodrigues Z RutaGermany2024-06-17King, Christopher A Esq RENEWAL46Bernardo Dominic
1012Francesco S BowleyAustralia2024-06-14Morlong Associates RENEWAL60Asiya Javayant
1013Misaki O ShinkoGermany2024-05-27Feiner Bros PROPOSAL7Anna Fali
1014Leon W VenereRussia2024-05-28Chanay, Jeffrey A Esq PROPOSAL23Bernardo Dominic
1015Tony B MacleadArgentina2024-06-01Commercial Press PROPOSAL15Xuxue Feng
1016Adams D MaletRussia2024-05-25Chanay, Jeffrey A Esq QUALIFIED21Onyama Limba
1017Octavia Q WaycottRussia2024-06-05Morlong Associates NEW14Onyama Limba
1018Ricardo X AmigonJapan2024-06-09Commercial Press RENEWAL28Ioni Bowcher
1019Isabel B NickaSpain2024-06-15Dorl, James J Esq QUALIFIED54Ioni Bowcher
1020Munro N SaylorsIndia2024-06-03Morlong Associates NEGOTIATION22Amy Elsner
1021Jennifer W PaprockiBrazil2024-05-28Commercial Press QUALIFIED79Anna Fali
1022Johnson M SlusarskiSpain2024-05-24Rangoni Of Florence QUALIFIED52Anna Fali
1023Aika C VenereCanada2024-06-12Buckley Miller Wright RENEWAL23Stephen Shaw
1024Darci W TollnerAustralia2024-06-16Feltz Printing Service UNQUALIFIED82Ivan Magalhaes
1025Smith W GlickUnited Kingdom2024-06-14Rangoni Of Florence NEW36Anna Fali
1026Julie N OstroskyArgentina2024-06-08Rangoni Of Florence QUALIFIED34Onyama Limba
1027Chavez N WhobreyGermany2024-05-30Printing Dimensions NEW2Ioni Bowcher
1028Jennifer F WaycottRussia2024-06-14Chemel, James L Cpa RENEWAL49Bernardo Dominic
1029Chavez J PoquetteJapan2024-06-03Feiner Bros QUALIFIED23Ioni Bowcher
1030Claire D FlosiIndia2024-06-13Feiner Bros NEW92Ioni Bowcher
1031Aruna O BologniaJapan2024-06-07Morlong Associates NEW80Xuxue Feng
1032Jennifer D KolmetzSpain2024-06-14Truhlar And Truhlar Attys QUALIFIED31Asiya Javayant
1033Claire L NickaUnited Kingdom2024-05-31Rangoni Of Florence UNQUALIFIED19Stephen Shaw
1034Cody K MorascaIndia2024-06-13Rangoni Of Florence NEW32Amy Elsner
1035Octavia W StensethAustralia2024-05-25Feiner Bros NEW58Ioni Bowcher
1036Francesco N AmigonFrance2024-06-04Buckley Miller Wright RENEWAL23Bernardo Dominic
1037Leja E GarufiSpain2024-06-05Feiner Bros QUALIFIED4Amy Elsner
1038Stacey V PaprockiRussia2024-06-02King, Christopher A Esq QUALIFIED99Stephen Shaw
1039Ivar Q MorascaJapan2024-05-29Feiner Bros PROPOSAL36Ioni Bowcher
1040Salvatore D GarufiBrazil2024-06-17Buckley Miller Wright NEGOTIATION25Anna Fali
1041Nicolas L StockhamItaly2024-06-08Commercial Press NEGOTIATION94Anna Fali
1042Rodrigues Y BriddickIndia2024-06-21Rangoni Of Florence PROPOSAL78Elwin Sharvill
1043Darci D ShinkoIndia2024-05-26Morlong Associates NEW80Xuxue Feng
1044Salvatore Z RulapaughItaly2024-06-16Chapman, Ross E Esq NEW14Bernardo Dominic
1045Clifford P GillianBrazil2024-06-08Morlong Associates NEW31Anna Fali
1046Claire W RulapaughUnited Kingdom2024-05-31Buckley Miller Wright NEGOTIATION35Stephen Shaw
1047Maisha G TollnerBrazil2024-06-20Feltz Printing Service QUALIFIED81Xuxue Feng
1048Aditya D StockhamIndia2024-05-27Morlong Associates UNQUALIFIED38Anna Fali
1049Leon T CampainGermany2024-06-09Commercial Press RENEWAL71Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba T PoquetteJapanXuxue Feng QUALIFIED
Mujtaba R CampainCanadaElwin Sharvill QUALIFIED
Munro H WaycottJapanBernardo Dominic PROPOSAL
Juan E RoysterIndiaAsiya Javayant QUALIFIED
Isabel O FollerGermanyAsiya Javayant NEW
Alejandro F GauchoBrazilAmy Elsner RENEWAL
Sinclair V BriddickArgentinaIoni Bowcher NEGOTIATION
Mujtaba M InouyeAustraliaBernardo Dominic UNQUALIFIED
Clifford X GillianAustraliaOnyama Limba PROPOSAL
Cody X InouyeGermanyElwin Sharvill UNQUALIFIED
Faith L StensethItalyBernardo Dominic PROPOSAL
Leon C StensethArgentinaIoni Bowcher NEW
Leon S PaprockiIndiaBernardo Dominic NEW
Mayumi H PerinJapanIvan Magalhaes NEW
Greenwood C NickaUnited KingdomAnna Fali UNQUALIFIED
Ivar P RoysterArgentinaOnyama Limba NEGOTIATION
Arvin M TollnerArgentinaXuxue Feng NEW
Cody G GillianGermanyIoni Bowcher QUALIFIED
Aditya O BriddickCanadaStephen Shaw QUALIFIED
Leja A PaprockiAustraliaIvan Magalhaes QUALIFIED
Aika N PaprockiRussiaElwin Sharvill PROPOSAL
Johnson V AmigonBrazilIoni Bowcher RENEWAL
Stacey U CaldareraBrazilBernardo Dominic PROPOSAL
James L DilliardBrazilOnyama Limba UNQUALIFIED
Silvio Y SergiArgentinaIvan Magalhaes NEGOTIATION
Chavez M BriddickGermanyStephen Shaw RENEWAL
Stacey V CaudyJapanBernardo Dominic UNQUALIFIED
Isabel N MacleadIndiaElwin Sharvill PROPOSAL
Kadeem R SergiGermanyXuxue Feng PROPOSAL
Silvio R MorascaFranceOnyama Limba UNQUALIFIED
Aditya F DoeBrazilXuxue Feng NEGOTIATION
Smith D WhobreyUnited KingdomAmy Elsner RENEWAL
Mujtaba Y FigeroaSpainElwin Sharvill RENEWAL
Jennifer E PaprockiSpainAnna Fali RENEWAL
Ivar B MorascaItalyElwin Sharvill RENEWAL
Emily D ButtBrazilAnna Fali NEGOTIATION
Rodrigues I TollnerArgentinaAsiya Javayant NEW
Alejandro Q KolmetzBrazilIvan Magalhaes QUALIFIED
Clifford L NestleItalyAsiya Javayant UNQUALIFIED
Francesco Z IturbideBrazilIvan Magalhaes NEGOTIATION
Stacey C CaldareraFranceElwin Sharvill QUALIFIED
Rodrigues S AlbaresCanadaOnyama Limba NEW
Wickens E FigeroaAustraliaAnna Fali UNQUALIFIED
Smith J GauchoAustraliaIvan Magalhaes RENEWAL
Morrow X StockhamGermanyAnna Fali UNQUALIFIED
Wickens G BowleyBrazilAmy Elsner RENEWAL
James N SlusarskiBrazilElwin Sharvill RENEWAL
Kadeem O ButtArgentinaOnyama Limba NEW
Tony I StockhamFranceIoni Bowcher UNQUALIFIED
Mayumi G RulapaughIndiaAnna Fali NEW
Frozen Columns
Name
Jeanfrancois M Kusko
Mayumi G Stockham
Leon W Ferencz
Aruna H Maclead
Ivar P Bolognia
Salvatore N Gillian
Greenwood O Malet
Clifford C Kusko
Ricardo T Doe
Clifford E Foller
Silvio B Tollner
Emily B Darakjy
Maisha B Whobrey
Stacey A Tollner
Aika Y Wieser
Aruna J Waycott
Leja X Flosi
David J Flosi
Aruna E Stenseth
Ashley B Campain
Jeanfrancois P Flosi
Emily F Ruta
Kaitlin B Shinko
Jeanfrancois M Albares
Aika Q Whobrey
Clifford S Bolognia
Wickens B Nestle
Stacey N Kusko
Izzy F Foller
Darci Y Butt
Tony M Venere
Leja B Gillian
Juan F Ferencz
Johnson Z Nicka
James Y Chui
Chavez E Malet
Tony T Venere
Aika N Bowley
Aruna G Gillian
Ricardo F Kolmetz
Misaki E Stenseth
Jennifer X Shinko
Nicolas B Waycott
Misaki V Malet
Kaitlin W Morasca
Leja V Inouye
Leon H Figeroa
Arvin Y Kolmetz
Silvio T Venere
Sinclair D Nicka
IdCountryDate
1000Russia2024-06-20
1001Japan2024-05-28
1002Germany2024-06-12
1003France2024-06-03
1004Russia2024-06-11
1005Australia2024-05-27
1006Brazil2024-05-28
1007United Kingdom2024-06-05
1008United Kingdom2024-06-20
1009Canada2024-06-22
1010Spain2024-06-04
1011Brazil2024-06-11
1012Spain2024-06-20
1013United Kingdom2024-06-17
1014India2024-06-18
1015Canada2024-05-26
1016Russia2024-06-13
1017Germany2024-05-30
1018Russia2024-06-13
1019India2024-05-26
1020Australia2024-06-20
1021Italy2024-06-06
1022Australia2024-06-17
1023Canada2024-05-30
1024Japan2024-06-19
1025Japan2024-05-29
1026India2024-06-14
1027United Kingdom2024-06-08
1028India2024-05-24
1029Brazil2024-06-21
1030Japan2024-05-24
1031Russia2024-06-04
1032France2024-06-08
1033Brazil2024-06-03
1034United Kingdom2024-06-06
1035Brazil2024-06-17
1036Germany2024-06-14
1037Russia2024-05-26
1038Argentina2024-06-03
1039Japan2024-06-09
1040Argentina2024-05-27
1041India2024-06-03
1042India2024-06-08
1043Brazil2024-06-06
1044Japan2024-06-15
1045Japan2024-06-08
1046Russia2024-05-31
1047India2024-06-20
1048Russia2024-06-03
1049Brazil2024-06-08

On-Demand Data

NameIdCountryDate
Tony D Morasca1000Germany2024-06-13
Isabel X Amigon1001Spain2024-06-20
Morrow A Darakjy1002Germany2024-06-11
Izzy N Rulapaugh1003Spain2024-05-30
Mujtaba B Nicka1004Japan2024-06-11
Tony L Perin1005Australia2024-06-08
Nicolas Y Ruta1006Australia2024-06-05
Kadeem O Gillian1007Brazil2024-06-02
Johnson F Stenseth1008India2024-05-31
James X Paprocki1009Argentina2024-06-09
Francesco L Ostrosky1010Spain2024-06-04
Jennifer M Caldarera1011Brazil2024-06-03
Munro K Iturbide1012India2024-06-21
Darci K Poquette1013Argentina2024-06-21
David B Nicka1014United Kingdom2024-06-22
Leja Z Ostrosky1015Japan2024-05-30
Kaitlin M Caldarera1016Russia2024-06-09
Leon A Saylors1017Argentina2024-06-20
Claire A Malet1018Germany2024-05-24
Chavez R Darakjy1019Russia2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi S KuskoItalyStephen Shaw UNQUALIFIED
Salvatore S RutaItalyAsiya Javayant QUALIFIED
Octavia J SergiRussiaBernardo Dominic QUALIFIED
Silvio X CaudyArgentinaElwin Sharvill NEW
Clifford Y BriddickUnited KingdomBernardo Dominic PROPOSAL
Claire L NickaCanadaXuxue Feng NEGOTIATION
Murillo F DilliardGermanyBernardo Dominic NEGOTIATION
Aruna Y RoysterItalyStephen Shaw NEW
Juan W DilliardAustraliaElwin Sharvill PROPOSAL
Francesco T CampainFranceIvan Magalhaes RENEWAL
Arvin L KolmetzAustraliaAmy Elsner QUALIFIED
Jefferson Z VenereRussiaElwin Sharvill UNQUALIFIED
David A TollnerGermanyAnna Fali UNQUALIFIED
Juan G MacleadAustraliaAnna Fali NEGOTIATION
Juan X InouyeJapanAmy Elsner NEGOTIATION
Nicolas U IturbideFranceIvan Magalhaes UNQUALIFIED
Greenwood Q StockhamAustraliaBernardo Dominic NEGOTIATION
Rodrigues J FollerArgentinaXuxue Feng QUALIFIED
Munro J CaudyJapanAnna Fali RENEWAL
Ashley X WaycottFranceIoni Bowcher NEGOTIATION
Rodrigues Z MarrierIndiaAsiya Javayant NEW
Jones Q WhobreySpainElwin Sharvill UNQUALIFIED
Isabel F GillianItalyXuxue Feng QUALIFIED
Mujtaba A RutaArgentinaIoni Bowcher UNQUALIFIED
James V NickaUnited KingdomIoni Bowcher NEW
Rodrigues K PerinIndiaElwin Sharvill NEW
Silvio J GauchoSpainStephen Shaw RENEWAL
Aika Z FlosiFranceAnna Fali PROPOSAL
Mujtaba F OstroskyArgentinaIvan Magalhaes NEW
Jones S WieserIndiaIoni Bowcher PROPOSAL
Sinclair C GillianSpainAsiya Javayant NEW
Octavia C DoeIndiaAnna Fali UNQUALIFIED
Darci E RulapaughItalyXuxue Feng NEGOTIATION
Johnson I SaylorsGermanyIvan Magalhaes RENEWAL
Jennifer N KuskoFranceAmy Elsner QUALIFIED
Kaitlin Q DarakjyItalyAnna Fali NEW
Alejandro A OldroydRussiaIvan Magalhaes UNQUALIFIED
Jeanfrancois F VenereJapanIoni Bowcher PROPOSAL
Darci T CampainBrazilIvan Magalhaes NEGOTIATION
Misaki D MaletBrazilStephen Shaw 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>