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
Emily F StensethBrazilOnyama Limba UNQUALIFIED
Leon E MaletGermanyAnna Fali NEGOTIATION
Clifford K OstroskyIndiaOnyama Limba RENEWAL
Emily E DarakjyIndiaStephen Shaw NEW
Nicolas B DilliardFranceElwin Sharvill UNQUALIFIED
Costa L GauchoGermanyAsiya Javayant RENEWAL
Murillo G MorascaBrazilBernardo Dominic NEW
Leja Y MacleadBrazilStephen Shaw NEW
Mayumi V DilliardArgentinaAmy Elsner UNQUALIFIED
Octavia J DoeItalyIoni Bowcher NEGOTIATION
Silvio M FigeroaGermanyStephen Shaw NEGOTIATION
James C OldroydAustraliaStephen Shaw RENEWAL
Cody U StensethGermanyIvan Magalhaes UNQUALIFIED
Maisha E MorascaIndiaAmy Elsner NEW
Munro C GarufiFranceAmy Elsner PROPOSAL
Nicolas M AlbaresArgentinaAmy Elsner RENEWAL
Deepesh U StockhamGermanyIoni Bowcher RENEWAL
Izzy N MaletArgentinaXuxue Feng UNQUALIFIED
Jones Y GlickBrazilStephen Shaw NEGOTIATION
Mayumi V SaylorsAustraliaAnna Fali QUALIFIED
Jeanfrancois W RulapaughArgentinaBernardo Dominic RENEWAL
Ricardo M PaprockiCanadaOnyama Limba UNQUALIFIED
Silvio U PaprockiRussiaXuxue Feng NEGOTIATION
Arvin N FerenczAustraliaAmy Elsner RENEWAL
Rodrigues U ButtCanadaStephen Shaw RENEWAL
Wickens B CaldareraFranceStephen Shaw UNQUALIFIED
Sinclair R StockhamItalyIvan Magalhaes RENEWAL
Wickens N PoquetteFranceAsiya Javayant PROPOSAL
Emily H WaycottRussiaAmy Elsner QUALIFIED
Jeanfrancois L RulapaughArgentinaAmy Elsner RENEWAL
Mayumi M FlosiAustraliaOnyama Limba RENEWAL
Jefferson L NestleUnited KingdomIvan Magalhaes QUALIFIED
Chavez F MaletBrazilBernardo Dominic NEGOTIATION
Kadeem J MaletJapanAnna Fali QUALIFIED
Johnson M SergiItalyIoni Bowcher QUALIFIED
Izzy R MaletSpainIoni Bowcher UNQUALIFIED
Aditya X PaprockiArgentinaIvan Magalhaes QUALIFIED
Alejandro Q ChuiCanadaBernardo Dominic RENEWAL
Claire D BologniaIndiaAnna Fali UNQUALIFIED
Aditya S BriddickArgentinaIvan Magalhaes QUALIFIED
Murillo W WhobreyFranceBernardo Dominic PROPOSAL
Nicolas H DoeFranceAmy Elsner UNQUALIFIED
Kaitlin V MacleadFranceElwin Sharvill QUALIFIED
Stacey P SlusarskiSpainIoni Bowcher QUALIFIED
Mujtaba F MacleadArgentinaStephen Shaw RENEWAL
Clifford T OstroskyBrazilAnna Fali RENEWAL
David Z GarufiCanadaXuxue Feng NEW
Maisha T ButtUnited KingdomIoni Bowcher UNQUALIFIED
Chavez R ChuiJapanAsiya Javayant NEGOTIATION
Claire S FerenczItalyAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Johnson O BowleyCanadaElwin Sharvill NEGOTIATION
Octavia G ShinkoRussiaAnna Fali RENEWAL
Claire H DarakjyRussiaBernardo Dominic NEGOTIATION
Mujtaba I RimIndiaStephen Shaw RENEWAL
Morrow D SergiAustraliaXuxue Feng UNQUALIFIED
Aditya X KuskoJapanOnyama Limba NEW
Chavez N DoeJapanBernardo Dominic RENEWAL
Alejandro L MaletIndiaAsiya Javayant NEGOTIATION
Darci O WaycottArgentinaIvan Magalhaes NEGOTIATION
Greenwood L ChuiItalyAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna F FollerAustralia2024-05-14Benton, John B Jr NEW30Xuxue Feng
1001Costa E SergiCanada2024-05-22Dorl, James J Esq QUALIFIED77Onyama Limba
1002Kadeem X BologniaRussia2024-05-11Chanay, Jeffrey A Esq UNQUALIFIED92Ioni Bowcher
1003Salvatore W VenereUnited Kingdom2024-05-29Rousseaux, Michael Esq UNQUALIFIED62Anna Fali
1004Antonio K IturbideFrance2024-05-26Buckley Miller Wright QUALIFIED49Bernardo Dominic
1005Leja V MaletCanada2024-05-11King, Christopher A Esq NEGOTIATION92Xuxue Feng
1006Kaitlin Q DoeJapan2024-05-10Truhlar And Truhlar Attys NEGOTIATION36Ivan Magalhaes
1007David Z KuskoFrance2024-05-24Chapman, Ross E Esq NEGOTIATION6Amy Elsner
1008Leon G MaletFrance2024-05-03King, Christopher A Esq PROPOSAL67Stephen Shaw
1009Ivar I BologniaAustralia2024-05-06Truhlar And Truhlar Attys QUALIFIED91Ioni Bowcher
1010Greenwood R CaldareraRussia2024-05-05Commercial Press UNQUALIFIED87Ioni Bowcher
1011Chavez X DarakjyFrance2024-05-09Rangoni Of Florence NEGOTIATION83Stephen Shaw
1012Faith R FerenczGermany2024-05-18Chemel, James L Cpa RENEWAL68Ioni Bowcher
1013Aika Q DilliardBrazil2024-05-15Rangoni Of Florence NEGOTIATION55Ioni Bowcher
1014David A GillianBrazil2024-05-16Benton, John B Jr NEW9Xuxue Feng
1015Antonio G NickaAustralia2024-05-06Dorl, James J Esq RENEWAL67Elwin Sharvill
1016Kaitlin I RoysterItaly2024-05-13Rangoni Of Florence NEGOTIATION51Onyama Limba
1017Smith V WaycottArgentina2024-05-06Commercial Press UNQUALIFIED14Bernardo Dominic
1018Ivar S AmigonItaly2024-05-26King, Christopher A Esq NEW15Asiya Javayant
1019Costa Q GarufiGermany2024-05-10Chapman, Ross E Esq NEGOTIATION28Ioni Bowcher
1020Silvio G DilliardBrazil2024-05-26King, Christopher A Esq RENEWAL4Ivan Magalhaes
1021Francesco K CaldareraFrance2024-05-14Commercial Press NEGOTIATION84Amy Elsner
1022Francesco U AlbaresFrance2024-05-23Morlong Associates NEW16Anna Fali
1023Ricardo B CaudyItaly2024-05-20Feltz Printing Service NEW96Onyama Limba
1024Leon C WhobreyArgentina2024-05-07Buckley Miller Wright QUALIFIED35Anna Fali
1025Sinclair N SaylorsBrazil2024-05-28King, Christopher A Esq NEW62Anna Fali
1026Stacey D RulapaughUnited Kingdom2024-05-04Benton, John B Jr PROPOSAL2Xuxue Feng
1027Smith V ShinkoFrance2024-05-18King, Christopher A Esq NEW72Ioni Bowcher
1028Kadeem A RoysterAustralia2024-05-21Dorl, James J Esq UNQUALIFIED76Anna Fali
1029Aruna K ButtRussia2024-05-12Chemel, James L Cpa NEW5Stephen Shaw
1030Leon Q KolmetzItaly2024-05-18King, Christopher A Esq RENEWAL89Ivan Magalhaes
1031Murillo I DilliardRussia2024-05-09Rangoni Of Florence QUALIFIED95Onyama Limba
1032Deepesh K DilliardBrazil2024-05-11Chemel, James L Cpa NEGOTIATION18Ivan Magalhaes
1033Nicolas Z NickaAustralia2024-05-29Printing Dimensions NEW72Onyama Limba
1034Claire B KuskoFrance2024-05-17Chapman, Ross E Esq QUALIFIED9Asiya Javayant
1035Arvin M SchemmerJapan2024-05-06Benton, John B Jr UNQUALIFIED33Xuxue Feng
1036Rodrigues G KuskoRussia2024-05-17Morlong Associates NEW57Amy Elsner
1037Morrow D AlbaresFrance2024-05-07Truhlar And Truhlar Attys NEW37Asiya Javayant
1038Jones K InouyeBrazil2024-05-17Feiner Bros NEW78Bernardo Dominic
1039Salvatore J WieserBrazil2024-05-07Rousseaux, Michael Esq PROPOSAL63Stephen Shaw
1040Arvin P FollerGermany2024-05-17King, Christopher A Esq UNQUALIFIED27Onyama Limba
1041James T PerinItaly2024-05-06Chanay, Jeffrey A Esq RENEWAL26Amy Elsner
1042Murillo X PaprockiIndia2024-05-10Printing Dimensions UNQUALIFIED94Asiya Javayant
1043Sinclair X FollerIndia2024-05-19Chapman, Ross E Esq RENEWAL82Asiya Javayant
1044Greenwood J WieserIndia2024-05-12Buckley Miller Wright RENEWAL26Ivan Magalhaes
1045Mujtaba K SlusarskiUnited Kingdom2024-05-12Chemel, James L Cpa UNQUALIFIED57Bernardo Dominic
1046Kaitlin W OstroskyCanada2024-05-12Chapman, Ross E Esq QUALIFIED41Stephen Shaw
1047Maisha Y FollerArgentina2024-05-07Rangoni Of Florence NEGOTIATION74Stephen Shaw
1048David M CaudyFrance2024-05-15King, Christopher A Esq PROPOSAL17Onyama Limba
1049Isabel W CampainUnited Kingdom2024-05-29Feiner Bros QUALIFIED29Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Juan C OstroskyCanadaIoni Bowcher QUALIFIED
Maisha K BologniaJapanAmy Elsner QUALIFIED
Aruna X OstroskyItalyOnyama Limba UNQUALIFIED
Munro E SergiJapanIvan Magalhaes RENEWAL
Murillo K CaldareraIndiaOnyama Limba NEGOTIATION
Aruna B FollerRussiaIvan Magalhaes NEW
Mujtaba W CaudyIndiaIvan Magalhaes UNQUALIFIED
Aika M VenereSpainAsiya Javayant PROPOSAL
Smith L MacleadJapanAsiya Javayant UNQUALIFIED
Silvio C CampainBrazilBernardo Dominic RENEWAL
Morrow Q ShinkoUnited KingdomXuxue Feng QUALIFIED
Emily W GauchoSpainAnna Fali NEGOTIATION
Claire X ChuiGermanyAsiya Javayant RENEWAL
Leon M CaldareraAustraliaAnna Fali PROPOSAL
Maisha S MaletUnited KingdomAsiya Javayant RENEWAL
Misaki W WhobreyGermanyAmy Elsner RENEWAL
Clifford J GlickUnited KingdomIoni Bowcher NEW
Ashley J SlusarskiRussiaStephen Shaw PROPOSAL
Leon Q RulapaughArgentinaIvan Magalhaes NEW
Chavez C SchemmerIndiaAmy Elsner RENEWAL
Julie K OstroskyGermanyIoni Bowcher UNQUALIFIED
Juan Q OstroskyUnited KingdomAnna Fali NEW
Jones X RoysterFranceIvan Magalhaes RENEWAL
Costa O StockhamRussiaIvan Magalhaes NEGOTIATION
Wickens C NickaIndiaElwin Sharvill NEW
Alejandro B VenereCanadaOnyama Limba UNQUALIFIED
Clifford K MaletUnited KingdomBernardo Dominic RENEWAL
Tony K PerinRussiaAnna Fali NEGOTIATION
Isabel Z StockhamIndiaBernardo Dominic UNQUALIFIED
Nicolas C ButtAustraliaElwin Sharvill PROPOSAL
Jennifer P CaldareraItalyElwin Sharvill NEGOTIATION
Tony H SaylorsBrazilOnyama Limba PROPOSAL
Leon V PerinGermanyOnyama Limba NEGOTIATION
Misaki P BowleySpainIoni Bowcher UNQUALIFIED
David K MarrierArgentinaAmy Elsner NEW
Maria E GillianItalyAmy Elsner QUALIFIED
James X KuskoUnited KingdomIoni Bowcher UNQUALIFIED
Smith E OstroskySpainAmy Elsner PROPOSAL
Jeanfrancois A ShinkoBrazilBernardo Dominic QUALIFIED
Johnson T VocelkaItalyBernardo Dominic NEGOTIATION
Rodrigues N FlosiFranceAsiya Javayant PROPOSAL
James C OstroskyIndiaAnna Fali QUALIFIED
Johnson W GillianJapanBernardo Dominic QUALIFIED
Nicolas O WieserItalyAsiya Javayant QUALIFIED
Julie T SlusarskiItalyIoni Bowcher NEW
Munro G DoeRussiaIoni Bowcher QUALIFIED
Leja T DarakjyArgentinaXuxue Feng PROPOSAL
Maria X ChuiRussiaIvan Magalhaes QUALIFIED
Stacey M OstroskyUnited KingdomStephen Shaw UNQUALIFIED
Jefferson B NestleItalyOnyama Limba PROPOSAL
Frozen Columns
Name
David L Darakjy
Chavez I Flosi
Munro E Iturbide
Arvin S Iturbide
Jennifer L Figeroa
Leon J Flosi
Faith L Ostrosky
Rodrigues J Tollner
Ivar Q Glick
Kaitlin V Doe
Tony Y Foller
Aditya W Chui
Rodrigues F Gillian
Kadeem H Gillian
Jefferson H Foller
Aditya U Briddick
Tony Z Inouye
Costa Y Kolmetz
Jones R Morasca
Munro N Poquette
Ivar R Campain
Costa P Albares
Tony J Sergi
Isabel M Glick
Sinclair M Saylors
Cody R Dilliard
Rodrigues M Shinko
Maisha Q Campain
David N Sergi
Octavia A Shinko
Wickens W Tollner
Mayumi E Waycott
Aruna Z Perin
Mayumi Y Gaucho
Juan V Malet
Kaitlin L Chui
Clifford S Nestle
Aruna F Glick
Aruna R Flosi
Jennifer H Butt
Jeanfrancois U Slusarski
David A Vocelka
Isabel C Sergi
Aruna R Doe
Claire E Nicka
Antonio N Inouye
Julie P Royster
Mujtaba Y Campain
Leja J Marrier
Cody T Campain
IdCountryDate
1000Australia2024-05-27
1001Italy2024-05-08
1002Spain2024-05-10
1003India2024-05-13
1004Germany2024-05-06
1005Canada2024-05-15
1006Australia2024-05-11
1007France2024-05-30
1008United Kingdom2024-05-26
1009Japan2024-05-21
1010France2024-05-17
1011France2024-05-25
1012Russia2024-05-26
1013Japan2024-05-08
1014Italy2024-05-17
1015Spain2024-05-10
1016Italy2024-05-22
1017Australia2024-05-21
1018India2024-05-29
1019Russia2024-05-01
1020Canada2024-05-09
1021United Kingdom2024-05-11
1022Canada2024-05-14
1023Spain2024-05-26
1024Australia2024-05-21
1025France2024-05-04
1026Brazil2024-05-27
1027Russia2024-05-26
1028Spain2024-05-20
1029Argentina2024-05-13
1030Argentina2024-05-16
1031Japan2024-05-08
1032Canada2024-05-28
1033Argentina2024-05-12
1034Argentina2024-05-22
1035Brazil2024-05-08
1036United Kingdom2024-05-06
1037United Kingdom2024-05-11
1038Argentina2024-05-23
1039United Kingdom2024-05-09
1040United Kingdom2024-05-23
1041France2024-05-26
1042Spain2024-05-23
1043France2024-05-03
1044Argentina2024-05-19
1045Argentina2024-05-03
1046France2024-05-22
1047Japan2024-05-02
1048Australia2024-05-16
1049Russia2024-05-15

On-Demand Data

NameIdCountryDate
Leja K Malet1000Spain2024-05-07
Salvatore J Stenseth1001Brazil2024-05-04
David G Kusko1002Spain2024-05-06
Aika P Stockham1003Germany2024-05-28
Smith A Poquette1004Australia2024-05-02
Kaitlin H Morasca1005Spain2024-05-06
Faith D Tollner1006Spain2024-05-16
Munro T Caldarera1007Italy2024-05-18
Mayumi W Chui1008Brazil2024-05-02
Jones Z Waycott1009Canada2024-05-04
David C Rim1010Germany2024-05-10
Aditya B Glick1011Spain2024-05-09
Silvio U Gaucho1012Brazil2024-05-12
Izzy K Maclead1013Australia2024-05-06
Ashley U Garufi1014Canada2024-05-28
Mayumi D Sergi1015Australia2024-05-24
Jeanfrancois M Gaucho1016Russia2024-05-09
Ashley S Ruta1017Japan2024-05-03
Jeanfrancois X Butt1018France2024-05-12
Leon Y Kusko1019Brazil2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan E BowleyItalyAnna Fali PROPOSAL
Juan O MorascaArgentinaAsiya Javayant NEGOTIATION
Isabel K InouyeItalyIvan Magalhaes NEGOTIATION
Aditya O FollerRussiaOnyama Limba NEGOTIATION
Juan M CaudyAustraliaXuxue Feng UNQUALIFIED
Sinclair Q BowleyUnited KingdomOnyama Limba RENEWAL
Greenwood R DilliardRussiaIoni Bowcher NEW
Ivar K BriddickFranceStephen Shaw UNQUALIFIED
Costa F WaycottIndiaElwin Sharvill PROPOSAL
Tony T MorascaRussiaOnyama Limba UNQUALIFIED
Jennifer W InouyeBrazilOnyama Limba RENEWAL
Jennifer C DoeIndiaXuxue Feng NEGOTIATION
David H BriddickSpainAsiya Javayant RENEWAL
Kadeem O FerenczRussiaStephen Shaw NEGOTIATION
Jones Q PaprockiGermanyOnyama Limba PROPOSAL
Emily Z FlosiAustraliaIoni Bowcher UNQUALIFIED
Salvatore Y MorascaIndiaOnyama Limba UNQUALIFIED
Faith E CampainAustraliaStephen Shaw UNQUALIFIED
Salvatore X IturbideIndiaAsiya Javayant UNQUALIFIED
Leon C MarrierGermanyAnna Fali PROPOSAL
Maisha L AmigonSpainStephen Shaw NEW
Emily K WhobreyAustraliaAnna Fali PROPOSAL
Emily X PoquetteIndiaXuxue Feng NEW
Alejandro W SchemmerIndiaIvan Magalhaes NEGOTIATION
Aika N AlbaresCanadaAmy Elsner NEW
Arvin M OstroskyJapanElwin Sharvill RENEWAL
Tony Q MaletItalyAsiya Javayant PROPOSAL
Jennifer J VocelkaSpainBernardo Dominic NEW
Jeanfrancois N MorascaCanadaOnyama Limba PROPOSAL
Jefferson K NestleUnited KingdomIoni Bowcher QUALIFIED
Nicolas P GarufiCanadaAmy Elsner UNQUALIFIED
Smith M FigeroaIndiaXuxue Feng NEW
Sinclair S ShinkoArgentinaAnna Fali PROPOSAL
Kadeem G CaudyArgentinaOnyama Limba NEGOTIATION
Kaitlin S FlosiRussiaOnyama Limba RENEWAL
Johnson V SlusarskiIndiaBernardo Dominic QUALIFIED
Jones A CaldareraAustraliaOnyama Limba NEGOTIATION
Aika J MorascaGermanyOnyama Limba NEGOTIATION
Aruna J FlosiBrazilBernardo Dominic NEW
Isabel L CaldareraBrazilXuxue Feng RENEWAL

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