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
Jeanfrancois X GlickAustraliaOnyama Limba UNQUALIFIED
Chavez V SchemmerAustraliaElwin Sharvill RENEWAL
Isabel D RutaIndiaAsiya Javayant RENEWAL
Jeanfrancois F GlickGermanyElwin Sharvill NEW
Juan P DilliardSpainIvan Magalhaes RENEWAL
Murillo Y FerenczIndiaBernardo Dominic NEW
Morrow V RutaFranceOnyama Limba UNQUALIFIED
Leja J AmigonIndiaStephen Shaw NEW
Silvio D DarakjyRussiaStephen Shaw QUALIFIED
Clifford O MaletItalyXuxue Feng UNQUALIFIED
Jones U BowleyItalyIvan Magalhaes PROPOSAL
Julie R DilliardCanadaIvan Magalhaes QUALIFIED
Mujtaba R MacleadUnited KingdomAnna Fali NEGOTIATION
Faith T PaprockiCanadaStephen Shaw PROPOSAL
Emily I WaycottItalyAnna Fali QUALIFIED
Misaki V RimItalyOnyama Limba NEGOTIATION
Jennifer M MaletSpainAsiya Javayant NEGOTIATION
Munro H ShinkoIndiaIoni Bowcher QUALIFIED
Jones H ButtCanadaIoni Bowcher NEW
Izzy F KolmetzAustraliaBernardo Dominic NEGOTIATION
Clifford D WieserAustraliaIoni Bowcher NEGOTIATION
Clifford E KolmetzItalyAnna Fali QUALIFIED
Jennifer G WhobreyCanadaBernardo Dominic PROPOSAL
Francesco H CaldareraJapanElwin Sharvill PROPOSAL
Mayumi E ShinkoRussiaOnyama Limba NEGOTIATION
Maisha R MorascaRussiaAnna Fali NEW
Munro S TollnerBrazilAmy Elsner RENEWAL
Sinclair Y BriddickRussiaElwin Sharvill UNQUALIFIED
Mayumi K DarakjyCanadaIvan Magalhaes QUALIFIED
Nicolas Q BowleyCanadaAsiya Javayant UNQUALIFIED
Tony I WaycottCanadaStephen Shaw NEGOTIATION
Mujtaba J DoeAustraliaAnna Fali UNQUALIFIED
Adams R GauchoUnited KingdomAmy Elsner PROPOSAL
Sinclair E FollerCanadaAmy Elsner NEW
Clifford J KolmetzUnited KingdomAnna Fali NEGOTIATION
Aruna Q CaudyBrazilAnna Fali NEW
Murillo L GarufiUnited KingdomOnyama Limba QUALIFIED
Aika P PoquetteSpainAmy Elsner PROPOSAL
Octavia N WaycottRussiaOnyama Limba NEGOTIATION
Chavez L MaletSpainOnyama Limba UNQUALIFIED
Aruna H StockhamUnited KingdomStephen Shaw NEW
Mujtaba H KuskoCanadaElwin Sharvill RENEWAL
Chavez N BriddickJapanAsiya Javayant QUALIFIED
Leja F PerinJapanBernardo Dominic RENEWAL
Jefferson V SaylorsIndiaIvan Magalhaes RENEWAL
Emily K DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Tony A AlbaresUnited KingdomElwin Sharvill QUALIFIED
Aruna V GarufiJapanAnna Fali NEW
Greenwood I FollerUnited KingdomAsiya Javayant NEGOTIATION
Ricardo K WaycottAustraliaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Julie R MaletSpainXuxue Feng NEW
Misaki I NickaBrazilStephen Shaw NEW
Kadeem E BowleySpainStephen Shaw QUALIFIED
Nicolas R SergiCanadaOnyama Limba NEW
Claire Z StensethAustraliaAnna Fali QUALIFIED
Stacey S GarufiArgentinaBernardo Dominic NEW
Octavia T StockhamSpainElwin Sharvill NEW
Aditya U PerinAustraliaAmy Elsner NEGOTIATION
Emily A CaldareraCanadaXuxue Feng PROPOSAL
Clifford Z SergiSpainXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire F StensethCanada2024-05-26Rangoni Of Florence UNQUALIFIED21Xuxue Feng
1001Wickens K StensethSpain2024-06-10Feltz Printing Service PROPOSAL74Ioni Bowcher
1002Arvin T GauchoCanada2024-05-23Chapman, Ross E Esq UNQUALIFIED61Amy Elsner
1003Aditya L RutaFrance2024-06-07Rousseaux, Michael Esq PROPOSAL92Ioni Bowcher
1004Kaitlin N FerenczItaly2024-06-05Rangoni Of Florence QUALIFIED45Ivan Magalhaes
1005Clifford P RulapaughIndia2024-05-29Feltz Printing Service NEGOTIATION66Anna Fali
1006Julie D SlusarskiRussia2024-05-25Buckley Miller Wright QUALIFIED16Stephen Shaw
1007Nicolas H PerinArgentina2024-05-28Dorl, James J Esq NEGOTIATION19Onyama Limba
1008Tony W RoysterJapan2024-05-20Rousseaux, Michael Esq UNQUALIFIED13Asiya Javayant
1009Wickens K GlickIndia2024-06-13Chanay, Jeffrey A Esq QUALIFIED58Onyama Limba
1010Salvatore E PoquetteIndia2024-06-05Dorl, James J Esq PROPOSAL49Xuxue Feng
1011Munro V NickaSpain2024-06-16Truhlar And Truhlar Attys UNQUALIFIED84Ioni Bowcher
1012Octavia Y FlosiRussia2024-06-08Rousseaux, Michael Esq RENEWAL85Elwin Sharvill
1013Ashley Q WaycottSpain2024-06-07Rousseaux, Michael Esq NEGOTIATION26Xuxue Feng
1014Smith U RoysterUnited Kingdom2024-06-16Chapman, Ross E Esq RENEWAL9Elwin Sharvill
1015Emily C BowleyAustralia2024-06-06Rangoni Of Florence NEGOTIATION77Onyama Limba
1016Jennifer X RimIndia2024-06-14Feltz Printing Service NEW4Bernardo Dominic
1017Morrow T GlickAustralia2024-06-15Chemel, James L Cpa QUALIFIED13Ioni Bowcher
1018Claire A KolmetzCanada2024-06-11Commercial Press UNQUALIFIED6Bernardo Dominic
1019Izzy V ButtArgentina2024-05-26Chapman, Ross E Esq NEGOTIATION27Amy Elsner
1020Maisha G MaletItaly2024-06-12Benton, John B Jr UNQUALIFIED6Xuxue Feng
1021Rodrigues E BologniaBrazil2024-06-05Feiner Bros RENEWAL97Bernardo Dominic
1022Emily I RimCanada2024-06-16Benton, John B Jr UNQUALIFIED76Xuxue Feng
1023Faith W AlbaresBrazil2024-06-12Truhlar And Truhlar Attys PROPOSAL15Amy Elsner
1024Tony Y TollnerRussia2024-06-06Feltz Printing Service UNQUALIFIED4Bernardo Dominic
1025Tony M MaletBrazil2024-06-04Printing Dimensions PROPOSAL27Xuxue Feng
1026Isabel I MaletFrance2024-05-20Dorl, James J Esq PROPOSAL95Ivan Magalhaes
1027Chavez S SergiSpain2024-06-07Rangoni Of Florence UNQUALIFIED88Anna Fali
1028Aditya R MaletArgentina2024-05-22Feltz Printing Service QUALIFIED96Ivan Magalhaes
1029Costa H FlosiBrazil2024-06-08Truhlar And Truhlar Attys NEW56Ivan Magalhaes
1030Jeanfrancois F PaprockiCanada2024-06-08Chemel, James L Cpa PROPOSAL72Ioni Bowcher
1031James W GlickFrance2024-05-21Printing Dimensions RENEWAL67Stephen Shaw
1032Greenwood E RimGermany2024-06-11Rousseaux, Michael Esq NEGOTIATION12Onyama Limba
1033Aruna W ButtRussia2024-06-17Printing Dimensions RENEWAL32Xuxue Feng
1034Julie P NestleJapan2024-06-15Rousseaux, Michael Esq RENEWAL77Xuxue Feng
1035Silvio X SergiCanada2024-06-08King, Christopher A Esq RENEWAL25Amy Elsner
1036Murillo T PerinUnited Kingdom2024-06-05Chapman, Ross E Esq UNQUALIFIED9Xuxue Feng
1037Maisha L OstroskySpain2024-05-28Buckley Miller Wright NEGOTIATION67Anna Fali
1038Izzy L IturbideAustralia2024-06-16Commercial Press NEGOTIATION26Bernardo Dominic
1039Arvin W InouyeUnited Kingdom2024-06-01Chemel, James L Cpa NEGOTIATION18Stephen Shaw
1040Smith L RutaIndia2024-05-25Rangoni Of Florence UNQUALIFIED36Ivan Magalhaes
1041Aika Y PerinUnited Kingdom2024-06-11Morlong Associates NEGOTIATION2Anna Fali
1042Ashley E MarrierItaly2024-06-12Feltz Printing Service NEGOTIATION93Xuxue Feng
1043Mujtaba R MacleadGermany2024-05-23Commercial Press UNQUALIFIED1Xuxue Feng
1044Francesco F KolmetzFrance2024-06-04Morlong Associates UNQUALIFIED76Ivan Magalhaes
1045Ivar W CaldareraFrance2024-05-29Dorl, James J Esq NEGOTIATION41Amy Elsner
1046Morrow E BologniaBrazil2024-06-06King, Christopher A Esq NEW70Xuxue Feng
1047Munro I RoysterSpain2024-05-30Truhlar And Truhlar Attys NEW52Bernardo Dominic
1048Rodrigues F SlusarskiJapan2024-05-27Benton, John B Jr PROPOSAL76Onyama Limba
1049Maisha K BowleyBrazil2024-06-16Morlong Associates PROPOSAL84Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Sinclair R TollnerGermanyAsiya Javayant QUALIFIED
Kadeem W DoeBrazilStephen Shaw PROPOSAL
Wickens U KolmetzSpainIoni Bowcher QUALIFIED
Aika I MaletArgentinaOnyama Limba UNQUALIFIED
Mujtaba F GauchoJapanAsiya Javayant PROPOSAL
Nicolas A BriddickBrazilOnyama Limba QUALIFIED
Salvatore T DoeRussiaAnna Fali NEW
Mujtaba G RutaCanadaOnyama Limba NEGOTIATION
Julie X BriddickCanadaAsiya Javayant NEW
Ashley R FlosiItalyStephen Shaw NEW
Clifford E DarakjyIndiaAmy Elsner UNQUALIFIED
Munro S StensethArgentinaXuxue Feng QUALIFIED
Ivar O PaprockiFranceAnna Fali QUALIFIED
Jeanfrancois Q FigeroaGermanyIoni Bowcher NEW
Isabel F GlickSpainAmy Elsner QUALIFIED
David Y StockhamBrazilStephen Shaw PROPOSAL
Sinclair R CaldareraUnited KingdomAmy Elsner RENEWAL
Johnson M SaylorsSpainBernardo Dominic QUALIFIED
Munro K KuskoGermanyElwin Sharvill PROPOSAL
Morrow L CaldareraRussiaAnna Fali NEW
Johnson I FerenczSpainIvan Magalhaes NEW
Alejandro B GillianSpainAmy Elsner RENEWAL
Jennifer T RutaGermanyXuxue Feng UNQUALIFIED
Nicolas L ChuiGermanyElwin Sharvill QUALIFIED
Aika I TollnerFranceAmy Elsner UNQUALIFIED
Octavia I GillianAustraliaOnyama Limba UNQUALIFIED
Izzy J WaycottJapanElwin Sharvill UNQUALIFIED
Salvatore Z CampainBrazilStephen Shaw QUALIFIED
Maisha F NickaItalyIoni Bowcher NEW
Kaitlin F GarufiSpainElwin Sharvill NEW
Ricardo Y WieserUnited KingdomXuxue Feng RENEWAL
Deepesh C CampainIndiaIoni Bowcher NEGOTIATION
Claire W NickaAustraliaBernardo Dominic NEGOTIATION
Nicolas C CaldareraUnited KingdomIvan Magalhaes NEW
Ricardo B RoysterJapanIvan Magalhaes NEW
Smith U CampainArgentinaXuxue Feng PROPOSAL
Darci T NestleAustraliaIvan Magalhaes QUALIFIED
Munro S MorascaRussiaAmy Elsner PROPOSAL
Juan B VenereGermanyIvan Magalhaes RENEWAL
Jones V RimAustraliaIvan Magalhaes RENEWAL
Clifford U AmigonBrazilIvan Magalhaes UNQUALIFIED
Claire Z VenereItalyOnyama Limba RENEWAL
Emily A FerenczBrazilBernardo Dominic PROPOSAL
Munro X TollnerIndiaAmy Elsner NEW
Clifford G BowleyCanadaAmy Elsner NEW
Jones R VenereArgentinaIvan Magalhaes PROPOSAL
Aika N MarrierItalyAnna Fali PROPOSAL
Arvin O BologniaItalyOnyama Limba NEW
Salvatore F CaldareraCanadaStephen Shaw UNQUALIFIED
Nicolas B PaprockiSpainIvan Magalhaes QUALIFIED
Frozen Columns
Name
Francesco V Stockham
Smith Z Campain
Sinclair D Glick
Nicolas F Whobrey
Misaki I Saylors
James H Vocelka
Johnson L Nestle
Juan W Ferencz
Munro B Figeroa
Munro R Rim
Ricardo J Kusko
Juan U Kolmetz
Tony U Bowley
Wickens D Saylors
Emily S Gillian
Jefferson J Whobrey
Jennifer V Ruta
Aruna Q Whobrey
Silvio I Stockham
Chavez C Rim
Wickens X Nestle
David S Stockham
Murillo H Morasca
Leja S Bowley
Misaki A Campain
Juan O Garufi
Rodrigues Y Inouye
Smith Z Shinko
Murillo L Sergi
David G Tollner
Misaki N Tollner
Arvin B Royster
Johnson M Chui
Izzy G Slusarski
Silvio T Caudy
Aditya Y Sergi
Jones D Oldroyd
Jeanfrancois B Amigon
Smith J Garufi
Misaki A Inouye
Aditya C Gaucho
Isabel D Rulapaugh
Misaki Y Ferencz
Cody Y Rim
Kaitlin W Glick
Juan O Perin
Maisha N Morasca
David I Perin
Rodrigues D Caldarera
Costa Y Nestle
IdCountryDate
1000Australia2024-05-25
1001United Kingdom2024-05-25
1002Italy2024-06-15
1003Russia2024-05-23
1004Spain2024-06-04
1005Australia2024-06-14
1006Brazil2024-06-04
1007Canada2024-05-21
1008France2024-05-29
1009Germany2024-06-17
1010Canada2024-06-07
1011Germany2024-06-02
1012India2024-06-05
1013Canada2024-05-19
1014France2024-05-23
1015Italy2024-05-24
1016Australia2024-05-24
1017Australia2024-06-16
1018India2024-05-22
1019Australia2024-06-16
1020Italy2024-06-11
1021United Kingdom2024-05-29
1022Brazil2024-06-15
1023Canada2024-06-16
1024Brazil2024-05-24
1025Italy2024-06-05
1026Russia2024-05-21
1027Australia2024-06-13
1028Canada2024-05-31
1029Canada2024-05-24
1030India2024-05-31
1031Australia2024-05-27
1032Italy2024-06-03
1033India2024-06-08
1034Russia2024-05-29
1035Italy2024-06-05
1036Australia2024-05-19
1037Germany2024-06-10
1038United Kingdom2024-06-07
1039Japan2024-05-29
1040Japan2024-06-04
1041Russia2024-06-07
1042Germany2024-05-19
1043Spain2024-06-03
1044Argentina2024-06-04
1045United Kingdom2024-06-07
1046Brazil2024-06-11
1047Canada2024-06-05
1048France2024-05-21
1049Italy2024-06-12

On-Demand Data

NameIdCountryDate
Aruna J Garufi1000Argentina2024-05-23
Wickens L Slusarski1001India2024-05-28
Ivar T Inouye1002United Kingdom2024-06-16
Clifford W Stockham1003Spain2024-05-31
Juan V Nicka1004United Kingdom2024-06-15
Leja J Sergi1005Spain2024-06-10
Antonio D Maclead1006Australia2024-05-29
Jennifer T Waycott1007Germany2024-06-05
Aruna U Gillian1008Argentina2024-06-13
Sinclair N Waycott1009France2024-05-28
Claire A Garufi1010France2024-05-20
Mayumi L Slusarski1011Italy2024-06-13
Johnson U Gillian1012United Kingdom2024-05-26
Jones E Malet1013France2024-06-08
Morrow D Rulapaugh1014France2024-06-07
Clifford C Butt1015Japan2024-06-17
Munro T Bowley1016Argentina2024-05-27
Rodrigues B Figeroa1017Canada2024-06-05
Nicolas Z Paprocki1018Germany2024-06-10
Deepesh T Nicka1019Australia2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens Z NickaArgentinaStephen Shaw NEW
Smith O RimSpainAsiya Javayant NEGOTIATION
Morrow O FlosiUnited KingdomAsiya Javayant UNQUALIFIED
Mayumi M InouyeAustraliaOnyama Limba PROPOSAL
Darci V PerinArgentinaStephen Shaw UNQUALIFIED
Mujtaba A IturbideItalyIoni Bowcher QUALIFIED
Kaitlin E GauchoItalyAsiya Javayant NEW
Mujtaba B CaudyRussiaAnna Fali RENEWAL
Jennifer A BowleyItalyAsiya Javayant RENEWAL
Francesco M CaudyAustraliaElwin Sharvill UNQUALIFIED
Kadeem S TollnerSpainAmy Elsner QUALIFIED
Misaki L SergiAustraliaIvan Magalhaes QUALIFIED
Izzy T AlbaresFranceAsiya Javayant QUALIFIED
Deepesh H PerinArgentinaIvan Magalhaes NEGOTIATION
Ashley O CaldareraRussiaXuxue Feng NEW
Arvin Z NickaFranceAsiya Javayant NEGOTIATION
Leja B PerinJapanXuxue Feng NEW
Claire X PerinGermanyOnyama Limba PROPOSAL
Tony A StockhamGermanyStephen Shaw PROPOSAL
Emily F ShinkoFranceStephen Shaw NEW
Deepesh Z GarufiFranceStephen Shaw NEW
Murillo F InouyeCanadaAnna Fali QUALIFIED
Tony U AmigonGermanyStephen Shaw PROPOSAL
Johnson G RutaSpainAmy Elsner QUALIFIED
Stacey P IturbideBrazilAsiya Javayant RENEWAL
Antonio R OstroskyItalyBernardo Dominic QUALIFIED
Rodrigues F CaudyArgentinaAnna Fali QUALIFIED
Ashley O GlickFranceIoni Bowcher NEW
Jeanfrancois H DoeBrazilAsiya Javayant UNQUALIFIED
Jones K TollnerBrazilStephen Shaw RENEWAL
Ivar H MaletArgentinaAnna Fali NEGOTIATION
Aruna I WaycottFranceAnna Fali NEGOTIATION
Claire F SaylorsArgentinaBernardo Dominic RENEWAL
Darci D WieserFranceAmy Elsner UNQUALIFIED
Maria B PerinJapanIvan Magalhaes PROPOSAL
Antonio F NickaFranceAmy Elsner UNQUALIFIED
Johnson C FlosiCanadaOnyama Limba PROPOSAL
Aruna R MacleadFranceBernardo Dominic QUALIFIED
Mujtaba V DilliardGermanyAsiya Javayant NEW
Arvin G ShinkoItalyStephen Shaw 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>