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
Misaki M PaprockiSpainStephen Shaw PROPOSAL
Rodrigues H FigeroaCanadaIvan Magalhaes QUALIFIED
Kaitlin Q CaldareraCanadaXuxue Feng NEW
Emily N AlbaresGermanyXuxue Feng QUALIFIED
Izzy D CampainUnited KingdomElwin Sharvill NEW
Murillo D WaycottUnited KingdomAmy Elsner QUALIFIED
Rodrigues Z PerinIndiaXuxue Feng PROPOSAL
Ivar T NickaBrazilStephen Shaw PROPOSAL
Munro E WieserCanadaElwin Sharvill UNQUALIFIED
Cody D BowleyItalyIvan Magalhaes NEGOTIATION
Juan X StockhamAustraliaIoni Bowcher NEGOTIATION
Murillo I ShinkoArgentinaOnyama Limba RENEWAL
Clifford Q WaycottAustraliaElwin Sharvill PROPOSAL
Sinclair L WaycottArgentinaAnna Fali NEGOTIATION
Johnson X DarakjyArgentinaBernardo Dominic NEW
Murillo U VocelkaUnited KingdomAsiya Javayant QUALIFIED
Clifford O MacleadAustraliaIvan Magalhaes PROPOSAL
Murillo F DarakjyItalyAmy Elsner UNQUALIFIED
Antonio V GauchoUnited KingdomStephen Shaw NEW
Smith D DoeItalyElwin Sharvill UNQUALIFIED
Costa Q RoysterIndiaIoni Bowcher PROPOSAL
Maisha Y OstroskyAustraliaAmy Elsner PROPOSAL
Julie A FlosiIndiaIoni Bowcher UNQUALIFIED
Salvatore Z DilliardRussiaOnyama Limba RENEWAL
David I FlosiRussiaXuxue Feng PROPOSAL
Darci K DilliardUnited KingdomXuxue Feng NEW
Alejandro I KuskoIndiaIvan Magalhaes PROPOSAL
Leon V ChuiCanadaOnyama Limba NEGOTIATION
Wickens X ButtItalyIoni Bowcher NEW
Ricardo L RulapaughArgentinaBernardo Dominic UNQUALIFIED
Arvin Z FlosiCanadaXuxue Feng NEW
Maria O GillianArgentinaAmy Elsner QUALIFIED
Deepesh V SaylorsRussiaAnna Fali PROPOSAL
Jones B SergiArgentinaIvan Magalhaes QUALIFIED
Jeanfrancois S MaletJapanAsiya Javayant UNQUALIFIED
Isabel O AlbaresFranceOnyama Limba NEW
Clifford I NickaItalyAsiya Javayant NEW
Greenwood U NickaAustraliaXuxue Feng QUALIFIED
Maisha U CampainGermanyAmy Elsner RENEWAL
Ivar L CaudyJapanAsiya Javayant UNQUALIFIED
Jeanfrancois T BologniaIndiaOnyama Limba UNQUALIFIED
Antonio I DilliardJapanElwin Sharvill RENEWAL
Johnson I FerenczIndiaIoni Bowcher UNQUALIFIED
Johnson I MarrierItalyElwin Sharvill QUALIFIED
Claire Q GillianUnited KingdomIvan Magalhaes NEW
Murillo U NestleGermanyBernardo Dominic NEGOTIATION
Izzy V GlickArgentinaBernardo Dominic NEW
Darci P IturbideAustraliaIoni Bowcher PROPOSAL
Aruna M SchemmerArgentinaStephen Shaw RENEWAL
Leja M DilliardAustraliaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody L GarufiIndiaXuxue Feng UNQUALIFIED
James Y MacleadArgentinaIoni Bowcher NEGOTIATION
Clifford T DilliardBrazilXuxue Feng NEW
Jefferson E RutaUnited KingdomIoni Bowcher UNQUALIFIED
Octavia Z WaycottAustraliaIvan Magalhaes NEGOTIATION
Tony Q VocelkaUnited KingdomAmy Elsner UNQUALIFIED
Alejandro Q SaylorsJapanIvan Magalhaes NEW
Greenwood N StensethSpainIvan Magalhaes QUALIFIED
Johnson H RimSpainAmy Elsner NEGOTIATION
Leja T AlbaresRussiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony K RoysterSpain2024-05-03Printing Dimensions PROPOSAL29Ioni Bowcher
1001Octavia P IturbideUnited Kingdom2024-05-23Rousseaux, Michael Esq PROPOSAL92Anna Fali
1002Tony Y CaldareraBrazil2024-05-23Feiner Bros QUALIFIED16Bernardo Dominic
1003Misaki G FollerJapan2024-05-14Dorl, James J Esq NEGOTIATION65Anna Fali
1004Deepesh Z CaldareraIndia2024-05-21Feiner Bros QUALIFIED35Stephen Shaw
1005Munro I InouyeUnited Kingdom2024-05-02Benton, John B Jr RENEWAL8Amy Elsner
1006Jefferson G ShinkoSpain2024-05-11Feltz Printing Service NEGOTIATION51Bernardo Dominic
1007Claire A KuskoCanada2024-04-26Dorl, James J Esq NEGOTIATION74Amy Elsner
1008Maisha B StensethSpain2024-05-19King, Christopher A Esq NEGOTIATION54Amy Elsner
1009Cody Z FerenczJapan2024-05-23Rousseaux, Michael Esq PROPOSAL41Ioni Bowcher
1010Aruna U SchemmerSpain2024-05-05Printing Dimensions QUALIFIED9Anna Fali
1011Wickens H ChuiJapan2024-05-18Feltz Printing Service UNQUALIFIED58Amy Elsner
1012Nicolas T DarakjyFrance2024-05-02King, Christopher A Esq RENEWAL74Xuxue Feng
1013Maisha B NickaUnited Kingdom2024-05-20Morlong Associates UNQUALIFIED89Stephen Shaw
1014Aditya V KuskoRussia2024-05-16Chapman, Ross E Esq PROPOSAL88Anna Fali
1015Misaki T WhobreyArgentina2024-05-20Printing Dimensions QUALIFIED49Anna Fali
1016Aika O BriddickSpain2024-05-11Printing Dimensions QUALIFIED32Anna Fali
1017Morrow D OstroskyFrance2024-04-29Feltz Printing Service NEW49Xuxue Feng
1018Rodrigues E InouyeAustralia2024-05-15Buckley Miller Wright NEGOTIATION17Asiya Javayant
1019Adams Y CampainFrance2024-04-27Chemel, James L Cpa RENEWAL77Ivan Magalhaes
1020Leja C SchemmerIndia2024-05-04Benton, John B Jr PROPOSAL65Ioni Bowcher
1021Greenwood R ButtSpain2024-05-14Chemel, James L Cpa UNQUALIFIED44Ivan Magalhaes
1022Francesco X AmigonItaly2024-05-18Benton, John B Jr NEGOTIATION60Anna Fali
1023Costa G RimSpain2024-05-22Chemel, James L Cpa UNQUALIFIED22Anna Fali
1024Maisha K RoysterCanada2024-04-29Feltz Printing Service NEW60Ioni Bowcher
1025Jefferson X FigeroaFrance2024-05-04Buckley Miller Wright NEGOTIATION47Asiya Javayant
1026Kaitlin Z VenereSpain2024-05-09Dorl, James J Esq QUALIFIED41Amy Elsner
1027Deepesh H CampainSpain2024-05-18Morlong Associates PROPOSAL83Anna Fali
1028Adams Z IturbideJapan2024-05-20Chanay, Jeffrey A Esq NEW60Elwin Sharvill
1029Darci O CaldareraRussia2024-05-09Feltz Printing Service QUALIFIED36Asiya Javayant
1030Ricardo Z GarufiBrazil2024-05-07Commercial Press NEW56Anna Fali
1031Jefferson W RoysterArgentina2024-05-04Buckley Miller Wright RENEWAL91Elwin Sharvill
1032Darci Z BowleyIndia2024-05-18Commercial Press NEGOTIATION97Xuxue Feng
1033Nicolas K FigeroaSpain2024-05-07Feiner Bros NEGOTIATION48Stephen Shaw
1034Mujtaba G FerenczItaly2024-05-17Morlong Associates UNQUALIFIED1Ioni Bowcher
1035Maria T SlusarskiGermany2024-05-19Chanay, Jeffrey A Esq NEW78Asiya Javayant
1036Darci U PoquetteBrazil2024-05-02Feiner Bros NEGOTIATION92Asiya Javayant
1037Arvin L AlbaresIndia2024-04-29Rangoni Of Florence NEW44Ioni Bowcher
1038Mayumi Q RimGermany2024-04-29King, Christopher A Esq RENEWAL50Amy Elsner
1039Julie K VocelkaRussia2024-04-30Printing Dimensions NEGOTIATION11Amy Elsner
1040Ricardo M CaldareraItaly2024-05-08Morlong Associates UNQUALIFIED61Ivan Magalhaes
1041Aruna A VocelkaFrance2024-05-21King, Christopher A Esq UNQUALIFIED39Bernardo Dominic
1042Aika I RimIndia2024-05-20King, Christopher A Esq NEW27Amy Elsner
1043Greenwood I CaldareraGermany2024-05-17Printing Dimensions RENEWAL39Ivan Magalhaes
1044Leja R BriddickSpain2024-05-01Buckley Miller Wright PROPOSAL56Xuxue Feng
1045Tony D SergiItaly2024-05-18Morlong Associates NEGOTIATION32Ioni Bowcher
1046Isabel B StensethArgentina2024-05-21Truhlar And Truhlar Attys NEGOTIATION52Ioni Bowcher
1047Ashley U FigeroaFrance2024-05-11Morlong Associates NEW78Onyama Limba
1048Smith W CampainRussia2024-04-28Buckley Miller Wright PROPOSAL63Ivan Magalhaes
1049Johnson H BologniaFrance2024-05-15Morlong Associates RENEWAL51Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues S ShinkoArgentinaAmy Elsner NEGOTIATION
Maria Z SergiJapanAsiya Javayant PROPOSAL
Costa A AlbaresItalyElwin Sharvill RENEWAL
Misaki F BologniaArgentinaXuxue Feng PROPOSAL
Maria F CaldareraCanadaBernardo Dominic NEW
Chavez O SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Misaki K WieserSpainIvan Magalhaes NEW
Leja P RimUnited KingdomBernardo Dominic PROPOSAL
Faith Z TollnerRussiaAnna Fali PROPOSAL
Emily F RulapaughAustraliaStephen Shaw RENEWAL
Morrow P MarrierBrazilIvan Magalhaes UNQUALIFIED
Jeanfrancois P GillianRussiaOnyama Limba NEGOTIATION
Emily Q MaletFranceBernardo Dominic PROPOSAL
Claire V MaletRussiaAnna Fali NEW
Leja G NestleArgentinaStephen Shaw NEW
Juan J BologniaUnited KingdomXuxue Feng NEGOTIATION
Greenwood W StockhamArgentinaIoni Bowcher NEW
Isabel G PerinArgentinaStephen Shaw QUALIFIED
Maria C BologniaJapanBernardo Dominic PROPOSAL
Costa I NickaRussiaIvan Magalhaes UNQUALIFIED
Stacey S FigeroaAustraliaAmy Elsner NEW
Tony F SaylorsArgentinaIoni Bowcher RENEWAL
Mayumi K MacleadGermanyOnyama Limba PROPOSAL
Adams Y PerinRussiaStephen Shaw NEW
Faith X CaldareraFranceIoni Bowcher NEGOTIATION
Leon U SchemmerRussiaIoni Bowcher NEGOTIATION
Kadeem V GarufiIndiaOnyama Limba RENEWAL
Clifford Y WaycottCanadaAmy Elsner RENEWAL
Silvio X FlosiRussiaBernardo Dominic PROPOSAL
Maria Z VenereJapanBernardo Dominic NEW
Maria O FigeroaItalyStephen Shaw QUALIFIED
Aika I RoysterSpainIvan Magalhaes UNQUALIFIED
Munro V FerenczItalyBernardo Dominic NEGOTIATION
Greenwood B RoysterArgentinaAsiya Javayant UNQUALIFIED
Kadeem D MaletIndiaAnna Fali UNQUALIFIED
Smith A IturbideBrazilAmy Elsner QUALIFIED
Clifford A MacleadRussiaOnyama Limba UNQUALIFIED
Wickens U ButtIndiaOnyama Limba QUALIFIED
Aika E GauchoSpainIoni Bowcher PROPOSAL
Aditya P GarufiFranceIvan Magalhaes PROPOSAL
Mujtaba C OldroydFranceElwin Sharvill NEW
Maisha J ButtAustraliaBernardo Dominic PROPOSAL
Misaki S FollerUnited KingdomStephen Shaw QUALIFIED
Deepesh J NestleBrazilAmy Elsner QUALIFIED
Clifford C WieserSpainBernardo Dominic PROPOSAL
Isabel J WaycottFranceAmy Elsner PROPOSAL
Mujtaba F SaylorsUnited KingdomAsiya Javayant NEW
Nicolas R ButtAustraliaOnyama Limba UNQUALIFIED
Wickens R GarufiRussiaAmy Elsner UNQUALIFIED
Alejandro V InouyeRussiaStephen Shaw PROPOSAL
Frozen Columns
Name
Maisha Z Oldroyd
Jefferson Q Ostrosky
Julie Z Iturbide
Adams X Dilliard
Clifford Z Paprocki
Jones S Royster
Leon O Rim
Faith Z Campain
Ivar U Rulapaugh
Maria N Nestle
Silvio D Dilliard
Adams B Venere
Costa S Flosi
Ricardo R Gillian
Kadeem G Vocelka
Claire X Kusko
Ashley O Ruta
Ricardo Q Glick
Adams X Iturbide
Mujtaba I Stockham
Francesco G Wieser
Costa J Rulapaugh
Sinclair Y Figeroa
Rodrigues Z Saylors
Emily L Nicka
Jeanfrancois G Caldarera
Arvin G Caudy
David R Garufi
Aditya P Stenseth
Jones N Rulapaugh
Alejandro X Marrier
Smith V Stockham
Claire H Marrier
Tony N Morasca
Maisha M Saylors
Octavia B Ostrosky
Adams I Flosi
Ashley R Shinko
Kadeem I Shinko
Arvin D Maclead
Kadeem F Garufi
Claire F Malet
Stacey L Paprocki
Jeanfrancois I Stenseth
Leja T Figeroa
Rodrigues U Tollner
Ricardo B Doe
Ashley W Kusko
Ricardo S Maclead
Maria V Dilliard
IdCountryDate
1000Brazil2024-05-01
1001Russia2024-04-27
1002Japan2024-05-18
1003Russia2024-05-13
1004Canada2024-05-05
1005Italy2024-04-25
1006Brazil2024-05-05
1007Germany2024-05-05
1008Brazil2024-05-03
1009Russia2024-05-13
1010Canada2024-05-18
1011Germany2024-05-05
1012Canada2024-05-17
1013Italy2024-05-04
1014Australia2024-05-03
1015India2024-05-05
1016Japan2024-05-10
1017Brazil2024-04-27
1018Italy2024-05-22
1019Russia2024-04-28
1020France2024-05-03
1021Spain2024-05-23
1022Australia2024-05-02
1023United Kingdom2024-04-27
1024Spain2024-05-01
1025Italy2024-04-27
1026France2024-05-16
1027Argentina2024-05-06
1028Brazil2024-05-24
1029Australia2024-05-03
1030United Kingdom2024-05-01
1031India2024-05-14
1032Brazil2024-05-13
1033France2024-05-23
1034Brazil2024-05-13
1035Argentina2024-04-26
1036Argentina2024-05-22
1037Italy2024-05-08
1038Canada2024-04-25
1039France2024-05-18
1040Russia2024-05-05
1041United Kingdom2024-05-12
1042Argentina2024-05-17
1043Japan2024-05-10
1044Japan2024-04-28
1045Spain2024-05-19
1046Spain2024-05-05
1047Spain2024-05-13
1048Russia2024-05-15
1049India2024-05-12

On-Demand Data

NameIdCountryDate
Ivar T Nicka1000Italy2024-05-12
Claire H Shinko1001France2024-05-24
Jones S Morasca1002Brazil2024-05-12
Julie E Doe1003Canada2024-05-08
Sinclair M Glick1004Argentina2024-05-07
Ricardo B Dilliard1005Germany2024-05-14
Rodrigues F Dilliard1006Argentina2024-04-29
Aditya U Rim1007France2024-05-23
Silvio J Stockham1008Australia2024-05-11
Rodrigues D Malet1009Brazil2024-05-17
Maisha B Wieser1010France2024-05-17
Silvio P Waycott1011Spain2024-04-29
Kadeem S Vocelka1012India2024-05-24
Jeanfrancois X Doe1013Japan2024-05-01
Cody D Sergi1014Russia2024-05-17
Misaki R Paprocki1015Germany2024-05-06
Misaki Q Nicka1016India2024-05-19
Morrow F Rim1017India2024-05-09
Mujtaba C Venere1018Japan2024-05-07
Sinclair U Butt1019Brazil2024-04-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo U ShinkoArgentinaXuxue Feng NEGOTIATION
Wickens I GarufiFranceBernardo Dominic NEW
Aditya U DilliardRussiaOnyama Limba UNQUALIFIED
Costa U FlosiIndiaOnyama Limba PROPOSAL
Leon B StensethUnited KingdomIoni Bowcher NEW
Ricardo D MorascaCanadaAmy Elsner NEGOTIATION
Juan H CaudySpainXuxue Feng RENEWAL
Octavia Y BologniaItalyXuxue Feng UNQUALIFIED
Jones E OstroskyArgentinaElwin Sharvill UNQUALIFIED
Francesco U FerenczItalyXuxue Feng NEW
Greenwood O RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Antonio J KolmetzSpainElwin Sharvill NEGOTIATION
Johnson N GlickUnited KingdomBernardo Dominic NEGOTIATION
Wickens T WhobreyJapanOnyama Limba RENEWAL
Leon L CaudyFranceIvan Magalhaes UNQUALIFIED
Antonio K VocelkaCanadaIvan Magalhaes UNQUALIFIED
Maisha X BriddickRussiaOnyama Limba UNQUALIFIED
Johnson A PerinCanadaIvan Magalhaes RENEWAL
Emily Y WaycottAustraliaAmy Elsner NEW
Aika H OstroskyArgentinaAsiya Javayant RENEWAL
Leon F ChuiCanadaIoni Bowcher NEW
Aruna R WhobreyCanadaBernardo Dominic NEGOTIATION
Chavez S PerinArgentinaIvan Magalhaes UNQUALIFIED
Kadeem X GarufiBrazilIvan Magalhaes PROPOSAL
Claire S MaletBrazilAmy Elsner QUALIFIED
Cody E NickaCanadaIoni Bowcher UNQUALIFIED
Aditya O StensethAustraliaBernardo Dominic UNQUALIFIED
Misaki A MacleadItalyAsiya Javayant NEW
Ivar L WaycottCanadaElwin Sharvill NEW
Leja N GauchoBrazilOnyama Limba NEW
Salvatore H WhobreyFranceStephen Shaw UNQUALIFIED
Adams O DoeIndiaAmy Elsner QUALIFIED
Mujtaba V TollnerFranceAsiya Javayant NEW
Stacey O CaldareraIndiaIoni Bowcher RENEWAL
David G VenereFranceElwin Sharvill PROPOSAL
Faith O MacleadIndiaXuxue Feng NEW
Maria K SchemmerUnited KingdomIvan Magalhaes NEW
Isabel B MorascaBrazilXuxue Feng NEW
Kadeem O PoquetteBrazilAmy Elsner NEW
Murillo W ChuiItalyIoni Bowcher 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>