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
Faith C PaprockiRussiaXuxue Feng NEGOTIATION
Claire G KuskoRussiaIvan Magalhaes NEGOTIATION
Deepesh K DoeUnited KingdomIoni Bowcher NEW
Stacey J RulapaughJapanAsiya Javayant NEGOTIATION
Wickens B DoeRussiaXuxue Feng RENEWAL
Darci C CampainUnited KingdomAmy Elsner NEGOTIATION
Faith V WhobreyRussiaAnna Fali QUALIFIED
Arvin N DoeCanadaXuxue Feng RENEWAL
Stacey L OstroskySpainOnyama Limba NEW
Izzy Q MaletJapanXuxue Feng NEW
Maria Y BriddickBrazilIvan Magalhaes RENEWAL
Sinclair M BriddickIndiaAnna Fali UNQUALIFIED
Claire H GarufiGermanyStephen Shaw NEW
Murillo O OstroskyItalyIoni Bowcher QUALIFIED
Cody M FollerFranceStephen Shaw QUALIFIED
Costa F FerenczBrazilIvan Magalhaes UNQUALIFIED
Ashley K CaudyRussiaAmy Elsner PROPOSAL
Faith V MacleadRussiaElwin Sharvill NEGOTIATION
Jefferson A RutaAustraliaBernardo Dominic NEGOTIATION
Murillo B VenereItalyBernardo Dominic NEW
Aika V KuskoIndiaAmy Elsner PROPOSAL
Julie D IturbideGermanyAsiya Javayant RENEWAL
Clifford F InouyeItalyAsiya Javayant UNQUALIFIED
David Y BowleyUnited KingdomElwin Sharvill NEGOTIATION
Ricardo J TollnerSpainIoni Bowcher QUALIFIED
Nicolas Y SlusarskiJapanIoni Bowcher NEW
Stacey Y WieserSpainElwin Sharvill QUALIFIED
Adams C GillianGermanyXuxue Feng RENEWAL
Stacey Z DilliardGermanyElwin Sharvill NEGOTIATION
Jefferson F AlbaresJapanXuxue Feng NEW
Kaitlin T FigeroaBrazilAmy Elsner QUALIFIED
Leja G FlosiCanadaElwin Sharvill UNQUALIFIED
Sinclair K MorascaArgentinaOnyama Limba NEGOTIATION
Francesco W MaletGermanyBernardo Dominic NEGOTIATION
Rodrigues Y MorascaBrazilAsiya Javayant PROPOSAL
Ivar B VocelkaFranceXuxue Feng NEW
Mayumi W MarrierUnited KingdomAsiya Javayant NEW
Faith W KuskoBrazilXuxue Feng NEGOTIATION
Claire F KolmetzBrazilOnyama Limba QUALIFIED
Adams N GillianItalyBernardo Dominic QUALIFIED
Mujtaba C NickaJapanXuxue Feng QUALIFIED
Silvio G FigeroaSpainXuxue Feng NEGOTIATION
Nicolas H GauchoCanadaStephen Shaw NEGOTIATION
Juan P CaldareraBrazilBernardo Dominic UNQUALIFIED
Sinclair M GarufiRussiaBernardo Dominic NEGOTIATION
Costa D SchemmerBrazilAnna Fali RENEWAL
Johnson L StockhamIndiaAmy Elsner NEGOTIATION
Leja W RutaBrazilIvan Magalhaes UNQUALIFIED
Jefferson W CaldareraBrazilStephen Shaw UNQUALIFIED
Cody A RutaJapanBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Claire W GarufiJapanIvan Magalhaes RENEWAL
Sinclair C MarrierSpainIvan Magalhaes PROPOSAL
Cody T FigeroaUnited KingdomElwin Sharvill RENEWAL
Maria U AlbaresJapanBernardo Dominic QUALIFIED
Ashley J ChuiJapanOnyama Limba NEGOTIATION
Misaki R BologniaItalyAmy Elsner RENEWAL
Clifford Y AlbaresJapanBernardo Dominic NEW
Cody M RimSpainAmy Elsner NEW
Costa J SaylorsGermanyBernardo Dominic PROPOSAL
Darci P MarrierJapanElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem E DoeAustralia2024-06-13Truhlar And Truhlar Attys RENEWAL99Xuxue Feng
1001Octavia O CampainArgentina2024-05-31Chanay, Jeffrey A Esq NEGOTIATION57Anna Fali
1002Maisha C GillianFrance2024-06-14Chemel, James L Cpa NEGOTIATION26Anna Fali
1003Clifford C WieserBrazil2024-05-30Morlong Associates NEGOTIATION34Bernardo Dominic
1004Greenwood C BologniaJapan2024-06-04Chapman, Ross E Esq QUALIFIED9Xuxue Feng
1005Wickens A PerinJapan2024-05-31Rangoni Of Florence QUALIFIED31Elwin Sharvill
1006Salvatore M NestleUnited Kingdom2024-05-29Morlong Associates RENEWAL45Onyama Limba
1007Jones F SchemmerFrance2024-06-09Benton, John B Jr QUALIFIED58Anna Fali
1008Costa M GarufiRussia2024-06-04King, Christopher A Esq UNQUALIFIED21Elwin Sharvill
1009Aruna S StensethCanada2024-05-30Benton, John B Jr UNQUALIFIED90Ivan Magalhaes
1010Smith C BowleyUnited Kingdom2024-06-13Printing Dimensions QUALIFIED99Bernardo Dominic
1011Jeanfrancois Q SlusarskiFrance2024-06-09Dorl, James J Esq NEW27Bernardo Dominic
1012Jefferson V SaylorsJapan2024-06-08Commercial Press NEGOTIATION66Onyama Limba
1013Isabel M SlusarskiRussia2024-06-04Chanay, Jeffrey A Esq NEW59Elwin Sharvill
1014Arvin Q GillianCanada2024-06-17Buckley Miller Wright NEGOTIATION34Onyama Limba
1015Francesco U SlusarskiGermany2024-05-28Chapman, Ross E Esq QUALIFIED4Anna Fali
1016Stacey M RulapaughBrazil2024-06-21Dorl, James J Esq NEGOTIATION88Amy Elsner
1017Juan K StockhamFrance2024-06-15Dorl, James J Esq UNQUALIFIED35Bernardo Dominic
1018Chavez U SergiSpain2024-06-14Benton, John B Jr QUALIFIED85Bernardo Dominic
1019Nicolas I MacleadCanada2024-06-07Commercial Press NEW49Ioni Bowcher
1020Francesco A SaylorsSpain2024-06-01Buckley Miller Wright QUALIFIED87Anna Fali
1021Faith F BriddickArgentina2024-06-06Chemel, James L Cpa PROPOSAL1Amy Elsner
1022Stacey Q MorascaGermany2024-06-21Rangoni Of Florence RENEWAL55Anna Fali
1023Mujtaba Y SchemmerSpain2024-06-09King, Christopher A Esq UNQUALIFIED44Stephen Shaw
1024Arvin P NickaIndia2024-06-03Feiner Bros QUALIFIED6Elwin Sharvill
1025Murillo R RimBrazil2024-06-19Dorl, James J Esq PROPOSAL48Bernardo Dominic
1026Stacey M BriddickItaly2024-05-26Truhlar And Truhlar Attys NEW31Bernardo Dominic
1027Juan B VocelkaItaly2024-06-06Chapman, Ross E Esq QUALIFIED95Asiya Javayant
1028Misaki V FigeroaArgentina2024-06-07Printing Dimensions RENEWAL96Xuxue Feng
1029Jones H FlosiItaly2024-06-18Chanay, Jeffrey A Esq PROPOSAL51Ivan Magalhaes
1030Salvatore I PerinCanada2024-06-02Chanay, Jeffrey A Esq RENEWAL1Ioni Bowcher
1031Salvatore R StockhamSpain2024-05-24Buckley Miller Wright RENEWAL55Bernardo Dominic
1032Leja F IturbideBrazil2024-05-24Chemel, James L Cpa UNQUALIFIED89Amy Elsner
1033Jennifer C DoeIndia2024-06-21Rousseaux, Michael Esq PROPOSAL69Amy Elsner
1034Smith Q StockhamIndia2024-05-26Chemel, James L Cpa NEW4Xuxue Feng
1035Clifford N GarufiAustralia2024-06-18Feiner Bros RENEWAL56Bernardo Dominic
1036David S VenereSpain2024-06-13Chemel, James L Cpa QUALIFIED63Xuxue Feng
1037Ashley K PerinUnited Kingdom2024-06-17Feiner Bros QUALIFIED79Anna Fali
1038Mayumi O DarakjyCanada2024-06-10Buckley Miller Wright UNQUALIFIED31Ivan Magalhaes
1039Jefferson V VocelkaAustralia2024-06-14Chanay, Jeffrey A Esq UNQUALIFIED81Asiya Javayant
1040Jefferson P StensethAustralia2024-06-07Feiner Bros RENEWAL7Stephen Shaw
1041Smith G SaylorsArgentina2024-05-30Feltz Printing Service UNQUALIFIED18Bernardo Dominic
1042Leja D StensethItaly2024-06-08Feiner Bros NEGOTIATION80Amy Elsner
1043Izzy U ShinkoItaly2024-06-21Feiner Bros PROPOSAL46Ioni Bowcher
1044Kadeem N MorascaUnited Kingdom2024-06-07King, Christopher A Esq RENEWAL34Onyama Limba
1045Julie J CaudyIndia2024-06-12Chanay, Jeffrey A Esq PROPOSAL89Amy Elsner
1046Emily R InouyeSpain2024-06-07Morlong Associates PROPOSAL82Ioni Bowcher
1047Antonio C MaletRussia2024-06-06Feltz Printing Service UNQUALIFIED11Stephen Shaw
1048Emily L GlickAustralia2024-06-02Rangoni Of Florence QUALIFIED2Anna Fali
1049Julie C SergiFrance2024-06-19Rousseaux, Michael Esq NEGOTIATION39Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Jennifer W BologniaSpainAnna Fali PROPOSAL
Misaki N ChuiArgentinaIvan Magalhaes UNQUALIFIED
Johnson L MaletFranceXuxue Feng QUALIFIED
Maria H WhobreyFranceOnyama Limba QUALIFIED
Juan U MaletUnited KingdomStephen Shaw NEGOTIATION
Murillo K GlickBrazilIoni Bowcher QUALIFIED
Darci R CaudyUnited KingdomBernardo Dominic NEGOTIATION
Murillo F GillianIndiaBernardo Dominic NEW
Sinclair H AmigonGermanyAsiya Javayant PROPOSAL
Stacey V OstroskyCanadaAnna Fali PROPOSAL
Deepesh M RoysterSpainOnyama Limba UNQUALIFIED
Francesco R SaylorsBrazilXuxue Feng NEW
Arvin M OstroskyIndiaBernardo Dominic RENEWAL
Johnson P DilliardAustraliaIvan Magalhaes PROPOSAL
Aika P ButtBrazilStephen Shaw RENEWAL
Jefferson J RulapaughRussiaStephen Shaw RENEWAL
Izzy Q FerenczSpainXuxue Feng UNQUALIFIED
Darci O MarrierItalyAnna Fali PROPOSAL
Chavez H StensethUnited KingdomBernardo Dominic QUALIFIED
Murillo A GauchoUnited KingdomStephen Shaw NEGOTIATION
Francesco E ShinkoAustraliaAmy Elsner NEW
Silvio I CaldareraJapanStephen Shaw NEGOTIATION
Ashley A BologniaIndiaAsiya Javayant NEW
Costa X DarakjyRussiaAmy Elsner NEGOTIATION
Costa L PaprockiFranceElwin Sharvill NEGOTIATION
Cody B RimSpainXuxue Feng QUALIFIED
Morrow J WhobreyAustraliaAnna Fali QUALIFIED
Jennifer M MaletFranceAsiya Javayant NEW
Misaki K KolmetzRussiaBernardo Dominic QUALIFIED
Kadeem R GillianGermanyIoni Bowcher NEGOTIATION
Johnson X VenereArgentinaIvan Magalhaes RENEWAL
Adams L DilliardBrazilIoni Bowcher NEW
Leon C NickaBrazilAmy Elsner QUALIFIED
Leja L FerenczFranceIvan Magalhaes QUALIFIED
Faith D OldroydFranceAnna Fali NEW
Leon Q StensethUnited KingdomIoni Bowcher NEW
Misaki Z PaprockiAustraliaIoni Bowcher NEGOTIATION
Leon E DarakjyJapanAnna Fali QUALIFIED
Leja K WaycottJapanAnna Fali UNQUALIFIED
Clifford M BologniaFranceAsiya Javayant RENEWAL
Jeanfrancois W ShinkoItalyOnyama Limba RENEWAL
Faith O KuskoItalyOnyama Limba NEGOTIATION
Maisha D VenereAustraliaAsiya Javayant PROPOSAL
Faith F FlosiIndiaIvan Magalhaes QUALIFIED
Mayumi J KolmetzUnited KingdomOnyama Limba NEW
Isabel V RutaRussiaXuxue Feng NEGOTIATION
Julie J BologniaSpainIvan Magalhaes RENEWAL
Deepesh G GarufiJapanStephen Shaw NEW
Claire F BowleyFranceIvan Magalhaes NEGOTIATION
Wickens I BriddickGermanyAmy Elsner PROPOSAL
Frozen Columns
Name
Misaki J Iturbide
Juan V Inouye
Kaitlin W Poquette
Faith W Campain
Mayumi G Whobrey
Juan E Glick
Tony D Caudy
Silvio U Dilliard
Octavia E Waycott
Jefferson T Nicka
Sinclair D Amigon
Deepesh J Nicka
Costa Y Wieser
Julie H Nestle
Maria X Ruta
Aika G Flosi
Silvio K Morasca
Misaki W Foller
Silvio O Dilliard
Murillo I Darakjy
Tony K Gillian
Morrow R Royster
David G Ferencz
Tony F Slusarski
Silvio V Nicka
Aruna G Amigon
Misaki B Ferencz
Leon W Wieser
Leon W Bowley
David H Sergi
Ashley J Rim
Greenwood X Vocelka
Clifford M Malet
Alejandro F Malet
Maria L Schemmer
Murillo K Morasca
Juan V Garufi
Mayumi C Ferencz
Claire N Waycott
Mayumi F Marrier
Claire I Kolmetz
Aika B Flosi
Isabel Y Stockham
Antonio P Caudy
Stacey B Saylors
Cody P Waycott
Claire J Malet
Claire Q Albares
Morrow Z Campain
Clifford N Bowley
IdCountryDate
1000India2024-06-14
1001Australia2024-05-30
1002France2024-05-24
1003Germany2024-06-11
1004Japan2024-06-10
1005Australia2024-05-30
1006Japan2024-06-11
1007France2024-05-31
1008Russia2024-06-19
1009Australia2024-05-24
1010India2024-05-23
1011India2024-06-16
1012United Kingdom2024-06-04
1013Italy2024-05-30
1014Russia2024-06-06
1015Russia2024-05-24
1016United Kingdom2024-05-24
1017Australia2024-06-03
1018Argentina2024-06-21
1019Germany2024-06-20
1020France2024-05-25
1021Russia2024-05-27
1022Argentina2024-05-29
1023Russia2024-06-19
1024Australia2024-05-29
1025Italy2024-05-31
1026Italy2024-06-21
1027United Kingdom2024-06-14
1028Japan2024-06-01
1029Australia2024-06-08
1030United Kingdom2024-06-17
1031United Kingdom2024-05-31
1032India2024-05-28
1033Japan2024-06-11
1034Spain2024-06-21
1035Germany2024-05-26
1036Australia2024-06-07
1037Canada2024-06-17
1038Brazil2024-06-06
1039Australia2024-06-17
1040Australia2024-06-17
1041India2024-05-24
1042Japan2024-06-13
1043Germany2024-06-06
1044Spain2024-05-30
1045Argentina2024-06-01
1046Germany2024-06-14
1047Canada2024-05-23
1048Spain2024-05-27
1049Germany2024-06-16

On-Demand Data

NameIdCountryDate
Mujtaba N Venere1000United Kingdom2024-06-14
Isabel B Venere1001Spain2024-06-08
Nicolas U Foller1002Japan2024-06-17
Wickens V Caudy1003Germany2024-06-11
Jennifer G Malet1004Brazil2024-06-07
Faith F Figeroa1005Spain2024-05-26
Faith Q Darakjy1006India2024-06-09
Aika H Caldarera1007Argentina2024-05-30
Arvin I Wieser1008United Kingdom2024-06-01
Munro Q Tollner1009Italy2024-05-30
Greenwood V Marrier1010India2024-06-18
Silvio I Gaucho1011Brazil2024-06-05
Darci W Campain1012Spain2024-06-02
Alejandro A Iturbide1013France2024-06-19
Faith F Tollner1014France2024-06-17
Deepesh P Royster1015United Kingdom2024-06-19
Munro H Kolmetz1016United Kingdom2024-06-10
Jennifer K Garufi1017Japan2024-06-13
Stacey I Kolmetz1018Russia2024-05-23
Maisha H Whobrey1019Italy2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo O RulapaughJapanIvan Magalhaes RENEWAL
Clifford U SlusarskiArgentinaAsiya Javayant NEW
Mayumi F AlbaresItalyBernardo Dominic NEW
Munro K RutaJapanElwin Sharvill UNQUALIFIED
Murillo G SergiIndiaXuxue Feng NEW
Greenwood S SlusarskiUnited KingdomElwin Sharvill PROPOSAL
Deepesh N BowleySpainAmy Elsner RENEWAL
Octavia O ChuiFranceBernardo Dominic UNQUALIFIED
Jefferson B ButtAustraliaIvan Magalhaes NEW
Johnson Q StensethItalyAsiya Javayant QUALIFIED
Sinclair W IturbideCanadaStephen Shaw NEGOTIATION
Costa O WieserGermanyOnyama Limba UNQUALIFIED
Maisha W KolmetzSpainIoni Bowcher RENEWAL
Ashley X StockhamUnited KingdomAmy Elsner QUALIFIED
Nicolas H ButtCanadaStephen Shaw UNQUALIFIED
Kadeem R RimIndiaStephen Shaw UNQUALIFIED
Alejandro D ChuiBrazilOnyama Limba NEW
Arvin P SlusarskiJapanAnna Fali NEW
Mayumi N ShinkoIndiaElwin Sharvill RENEWAL
Murillo M KolmetzRussiaStephen Shaw QUALIFIED
Darci J MacleadFranceAmy Elsner PROPOSAL
Claire U TollnerFranceAmy Elsner QUALIFIED
Mayumi Q PoquetteSpainOnyama Limba NEGOTIATION
Mayumi P MaletRussiaAnna Fali NEW
Murillo M ChuiAustraliaIoni Bowcher RENEWAL
Adams N GarufiRussiaAmy Elsner PROPOSAL
Ricardo R PoquetteRussiaAnna Fali NEGOTIATION
Jones S CaldareraAustraliaXuxue Feng RENEWAL
Aditya P MacleadIndiaIvan Magalhaes UNQUALIFIED
Isabel O WieserIndiaIvan Magalhaes UNQUALIFIED
Morrow V WhobreyGermanyAnna Fali QUALIFIED
Stacey T RoysterJapanAmy Elsner PROPOSAL
Chavez Q ButtBrazilAsiya Javayant NEW
Stacey T RulapaughGermanyAsiya Javayant NEGOTIATION
Jennifer K DoeJapanAmy Elsner QUALIFIED
Ricardo R GauchoUnited KingdomXuxue Feng UNQUALIFIED
Juan A NickaFranceOnyama Limba RENEWAL
Murillo Q SaylorsAustraliaAmy Elsner NEW
Aika A VenereRussiaAnna Fali NEGOTIATION
Aruna I NickaIndiaAsiya Javayant QUALIFIED

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