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
Mayumi L RulapaughArgentinaAmy Elsner NEGOTIATION
Tony Y InouyeIndiaElwin Sharvill RENEWAL
Kaitlin Q StensethSpainBernardo Dominic NEW
Juan P BriddickGermanyStephen Shaw PROPOSAL
Stacey N MaletCanadaElwin Sharvill PROPOSAL
Faith O VenereJapanIvan Magalhaes UNQUALIFIED
Claire B ShinkoUnited KingdomIvan Magalhaes NEGOTIATION
Murillo I CampainRussiaAmy Elsner RENEWAL
James M MorascaGermanyIvan Magalhaes RENEWAL
Leon L IturbideGermanyAmy Elsner PROPOSAL
Munro N ShinkoRussiaStephen Shaw NEW
Ricardo P BowleyAustraliaOnyama Limba NEW
Nicolas J RoysterJapanBernardo Dominic UNQUALIFIED
Costa V InouyeCanadaAmy Elsner UNQUALIFIED
Morrow C InouyeUnited KingdomStephen Shaw UNQUALIFIED
Aika A WhobreyAustraliaIoni Bowcher QUALIFIED
Cody L RimItalyIoni Bowcher PROPOSAL
Maria F CaldareraAustraliaAmy Elsner QUALIFIED
Jeanfrancois S GarufiSpainIvan Magalhaes QUALIFIED
Wickens M TollnerArgentinaOnyama Limba UNQUALIFIED
Claire K SergiUnited KingdomAmy Elsner NEW
Mayumi M PerinItalyBernardo Dominic PROPOSAL
Mayumi E DilliardSpainAnna Fali UNQUALIFIED
Aruna K SaylorsAustraliaAsiya Javayant RENEWAL
Mayumi Z FlosiGermanyBernardo Dominic PROPOSAL
Leja X KolmetzBrazilIvan Magalhaes UNQUALIFIED
Johnson G IturbideFranceAmy Elsner RENEWAL
Jones J RutaArgentinaAnna Fali RENEWAL
Nicolas I SergiGermanyElwin Sharvill QUALIFIED
Darci K MorascaRussiaStephen Shaw QUALIFIED
Claire M FigeroaGermanyAsiya Javayant NEGOTIATION
Johnson E CaudyGermanyElwin Sharvill QUALIFIED
Darci S StensethJapanXuxue Feng PROPOSAL
Francesco Z RulapaughCanadaXuxue Feng PROPOSAL
Izzy R FlosiGermanyAsiya Javayant NEW
Julie F ChuiSpainBernardo Dominic RENEWAL
Costa C SlusarskiCanadaStephen Shaw QUALIFIED
Rodrigues U VenereCanadaBernardo Dominic PROPOSAL
James X OstroskyCanadaAnna Fali RENEWAL
Antonio U RimSpainIvan Magalhaes PROPOSAL
Salvatore H WieserBrazilBernardo Dominic UNQUALIFIED
Murillo X RulapaughCanadaXuxue Feng PROPOSAL
Kadeem P KuskoFranceAnna Fali QUALIFIED
Morrow B NickaCanadaStephen Shaw NEGOTIATION
Smith A GarufiJapanAmy Elsner UNQUALIFIED
Aika R PoquetteSpainBernardo Dominic RENEWAL
Isabel H TollnerJapanXuxue Feng QUALIFIED
Aditya D ButtArgentinaXuxue Feng NEW
Mayumi J GillianArgentinaXuxue Feng NEGOTIATION
Murillo Q PoquetteRussiaBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Francesco F GillianRussiaIoni Bowcher QUALIFIED
Darci U GarufiArgentinaStephen Shaw QUALIFIED
Smith J CaudyArgentinaXuxue Feng NEW
Faith G MaletUnited KingdomStephen Shaw UNQUALIFIED
Clifford Q KuskoAustraliaBernardo Dominic NEW
Rodrigues Y BowleyItalyAsiya Javayant NEGOTIATION
Darci S ButtUnited KingdomIoni Bowcher NEGOTIATION
Smith B MorascaBrazilIvan Magalhaes RENEWAL
Antonio U SlusarskiUnited KingdomAmy Elsner RENEWAL
Murillo Y OstroskyRussiaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones L MorascaItaly2024-05-23Buckley Miller Wright QUALIFIED22Amy Elsner
1001Clifford C KuskoFrance2024-06-19Rangoni Of Florence UNQUALIFIED23Asiya Javayant
1002Mujtaba J PoquetteCanada2024-05-23Chanay, Jeffrey A Esq PROPOSAL81Amy Elsner
1003Costa D WaycottItaly2024-05-31Feiner Bros NEW28Anna Fali
1004Kadeem T SchemmerArgentina2024-06-01Chapman, Ross E Esq QUALIFIED11Stephen Shaw
1005Costa R DoeFrance2024-06-07Rousseaux, Michael Esq UNQUALIFIED42Xuxue Feng
1006James Y StockhamIndia2024-06-14Morlong Associates QUALIFIED21Anna Fali
1007Jefferson I ButtBrazil2024-05-23Rousseaux, Michael Esq RENEWAL41Xuxue Feng
1008Leja Q GauchoGermany2024-06-06Chapman, Ross E Esq PROPOSAL47Asiya Javayant
1009Munro B WaycottSpain2024-05-30Truhlar And Truhlar Attys NEGOTIATION17Elwin Sharvill
1010Silvio J KolmetzAustralia2024-06-07Rousseaux, Michael Esq RENEWAL77Asiya Javayant
1011Jefferson R RulapaughJapan2024-06-10Dorl, James J Esq RENEWAL25Stephen Shaw
1012Ashley F IturbideAustralia2024-05-26Chapman, Ross E Esq PROPOSAL97Anna Fali
1013Chavez R CaudySpain2024-06-14King, Christopher A Esq NEGOTIATION57Asiya Javayant
1014Greenwood O InouyeGermany2024-05-25Truhlar And Truhlar Attys NEGOTIATION57Elwin Sharvill
1015Johnson T WaycottBrazil2024-06-13Chapman, Ross E Esq UNQUALIFIED46Ivan Magalhaes
1016Jones D MarrierUnited Kingdom2024-05-23Rousseaux, Michael Esq NEGOTIATION95Amy Elsner
1017Cody P SchemmerIndia2024-06-17Chapman, Ross E Esq UNQUALIFIED92Xuxue Feng
1018Julie F PerinJapan2024-06-10Feltz Printing Service QUALIFIED46Anna Fali
1019Chavez I IturbideBrazil2024-06-20Morlong Associates QUALIFIED68Asiya Javayant
1020Ashley B FerenczRussia2024-06-12Feiner Bros PROPOSAL77Ioni Bowcher
1021Mujtaba U OstroskyBrazil2024-06-11Chanay, Jeffrey A Esq PROPOSAL57Bernardo Dominic
1022Isabel S WaycottIndia2024-05-22Feiner Bros NEGOTIATION95Amy Elsner
1023Ashley U PoquetteRussia2024-05-28Dorl, James J Esq QUALIFIED32Elwin Sharvill
1024Misaki T GarufiGermany2024-06-17Feltz Printing Service UNQUALIFIED87Anna Fali
1025Mujtaba B RulapaughFrance2024-06-13Truhlar And Truhlar Attys PROPOSAL69Asiya Javayant
1026Aruna T RimGermany2024-06-10Morlong Associates NEGOTIATION15Asiya Javayant
1027Juan U BriddickSpain2024-05-24Chapman, Ross E Esq RENEWAL13Ivan Magalhaes
1028Isabel B RoysterIndia2024-05-27Benton, John B Jr UNQUALIFIED87Asiya Javayant
1029Tony W InouyeFrance2024-06-09Commercial Press RENEWAL30Asiya Javayant
1030Octavia F MacleadIndia2024-06-07Rangoni Of Florence NEW40Elwin Sharvill
1031Jefferson W PerinGermany2024-05-29Printing Dimensions NEW38Elwin Sharvill
1032Costa D PerinIndia2024-06-08Dorl, James J Esq RENEWAL52Onyama Limba
1033Aditya I PerinSpain2024-05-22Feiner Bros NEGOTIATION73Asiya Javayant
1034Murillo Z StockhamGermany2024-06-15Dorl, James J Esq RENEWAL51Ioni Bowcher
1035Leja G KolmetzIndia2024-06-13Rousseaux, Michael Esq NEGOTIATION65Ioni Bowcher
1036Juan Q GarufiRussia2024-05-24King, Christopher A Esq NEGOTIATION75Anna Fali
1037Julie J PaprockiFrance2024-06-13Truhlar And Truhlar Attys QUALIFIED27Asiya Javayant
1038Octavia V MaletCanada2024-06-18Truhlar And Truhlar Attys RENEWAL69Ivan Magalhaes
1039Morrow X FlosiFrance2024-06-03Chanay, Jeffrey A Esq NEGOTIATION34Ioni Bowcher
1040Nicolas I CaudyBrazil2024-06-09Commercial Press RENEWAL64Amy Elsner
1041Aika X DarakjyGermany2024-06-09Feltz Printing Service PROPOSAL59Onyama Limba
1042Maisha W RoysterIndia2024-06-06Chapman, Ross E Esq RENEWAL57Bernardo Dominic
1043Johnson E DilliardCanada2024-06-11Printing Dimensions RENEWAL17Onyama Limba
1044Clifford L VenereUnited Kingdom2024-06-18Chemel, James L Cpa QUALIFIED80Elwin Sharvill
1045Wickens J SergiUnited Kingdom2024-06-06Morlong Associates RENEWAL89Bernardo Dominic
1046Chavez U RimUnited Kingdom2024-05-27Benton, John B Jr NEGOTIATION11Ivan Magalhaes
1047Antonio G FollerArgentina2024-05-27Dorl, James J Esq UNQUALIFIED11Elwin Sharvill
1048Wickens U FerenczGermany2024-06-20Benton, John B Jr NEGOTIATION12Xuxue Feng
1049Morrow Y PoquetteIndia2024-06-14Feltz Printing Service PROPOSAL66Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Izzy K WhobreyBrazilElwin Sharvill QUALIFIED
Ivar J PoquetteSpainIoni Bowcher NEW
Darci U GauchoGermanyBernardo Dominic NEGOTIATION
Leon Y SaylorsItalyElwin Sharvill NEW
David E PoquetteSpainElwin Sharvill QUALIFIED
Isabel P TollnerAustraliaStephen Shaw UNQUALIFIED
Rodrigues Z NestleArgentinaElwin Sharvill QUALIFIED
Greenwood T VenereCanadaAsiya Javayant NEW
Emily L FerenczIndiaBernardo Dominic UNQUALIFIED
Octavia B WhobreyIndiaStephen Shaw NEW
Rodrigues Z WaycottItalyIoni Bowcher NEW
Kaitlin B FlosiBrazilBernardo Dominic NEGOTIATION
Ricardo X WhobreyFranceIvan Magalhaes UNQUALIFIED
Misaki P TollnerRussiaIoni Bowcher NEGOTIATION
Arvin U CaudyRussiaElwin Sharvill PROPOSAL
Emily D MacleadRussiaAnna Fali UNQUALIFIED
Deepesh O MarrierJapanBernardo Dominic NEGOTIATION
Jeanfrancois R RutaJapanOnyama Limba NEGOTIATION
Octavia J RimItalyStephen Shaw PROPOSAL
Leja W SergiAustraliaBernardo Dominic NEGOTIATION
Aruna T NickaIndiaAsiya Javayant UNQUALIFIED
Mayumi X PerinRussiaAnna Fali QUALIFIED
Greenwood G BowleyUnited KingdomIvan Magalhaes RENEWAL
Faith J WaycottIndiaOnyama Limba NEGOTIATION
Izzy L SlusarskiItalyAnna Fali NEW
Johnson I GarufiIndiaIoni Bowcher NEGOTIATION
Deepesh L RulapaughSpainIoni Bowcher PROPOSAL
Mayumi P AmigonArgentinaAnna Fali RENEWAL
Arvin S MorascaSpainAsiya Javayant QUALIFIED
Juan I PoquetteSpainStephen Shaw UNQUALIFIED
Munro Q CaudyCanadaElwin Sharvill NEW
Maisha L InouyeUnited KingdomAnna Fali UNQUALIFIED
Leon Y MaletUnited KingdomElwin Sharvill RENEWAL
Izzy V MaletBrazilStephen Shaw PROPOSAL
Salvatore K GlickGermanyXuxue Feng NEW
Francesco F SaylorsUnited KingdomBernardo Dominic NEGOTIATION
Morrow H RutaFranceXuxue Feng RENEWAL
Arvin R OstroskyArgentinaXuxue Feng QUALIFIED
Deepesh I WhobreyGermanyIoni Bowcher PROPOSAL
Kadeem D CaudyIndiaElwin Sharvill RENEWAL
Octavia O TollnerFranceBernardo Dominic QUALIFIED
Ashley B CaldareraBrazilOnyama Limba UNQUALIFIED
Julie E RulapaughBrazilOnyama Limba QUALIFIED
Jeanfrancois X DilliardArgentinaAsiya Javayant RENEWAL
Chavez D StensethJapanAsiya Javayant RENEWAL
Arvin X ButtRussiaXuxue Feng UNQUALIFIED
Clifford T IturbideBrazilOnyama Limba RENEWAL
Mujtaba N NestleSpainOnyama Limba PROPOSAL
Jennifer K KolmetzAustraliaStephen Shaw PROPOSAL
Mujtaba F PoquetteRussiaOnyama Limba PROPOSAL
Frozen Columns
Name
Octavia N Kusko
Aditya A Saylors
Silvio K Malet
Salvatore Z Morasca
Costa D Figeroa
Isabel S Bolognia
Maria P Oldroyd
Darci K Perin
Claire I Slusarski
Jeanfrancois U Foller
Smith O Maclead
Kaitlin M Royster
Julie V Ostrosky
Aruna T Malet
Aruna S Whobrey
Sinclair U Caldarera
Isabel B Ostrosky
James T Malet
Izzy A Foller
Aika Q Ruta
Silvio Y Foller
Ricardo L Tollner
James T Butt
Clifford Y Nicka
Francesco O Darakjy
Sinclair J Bowley
Darci V Paprocki
Leja A Malet
Ashley M Flosi
Tony X Whobrey
Arvin X Garufi
Faith I Bowley
Rodrigues K Bolognia
Maisha D Oldroyd
Munro Q Flosi
Deepesh S Albares
Jefferson G Oldroyd
David Q Nestle
Claire U Shinko
Deepesh Z Figeroa
Juan V Amigon
Clifford V Poquette
Maria W Darakjy
Ricardo W Stenseth
Julie A Paprocki
Silvio C Stenseth
Nicolas T Oldroyd
Julie C Bolognia
Ashley L Poquette
Cody M Albares
IdCountryDate
1000Australia2024-06-16
1001Italy2024-05-28
1002Russia2024-06-05
1003Japan2024-06-20
1004Australia2024-06-08
1005Canada2024-06-13
1006Germany2024-06-02
1007Canada2024-06-06
1008Japan2024-06-15
1009Argentina2024-05-30
1010India2024-06-04
1011Germany2024-05-25
1012Germany2024-05-28
1013United Kingdom2024-05-25
1014Germany2024-05-28
1015Japan2024-05-31
1016India2024-06-09
1017Brazil2024-06-04
1018Brazil2024-05-24
1019Italy2024-06-07
1020France2024-05-22
1021Japan2024-05-29
1022Argentina2024-05-30
1023Australia2024-05-27
1024Brazil2024-06-12
1025Canada2024-05-25
1026United Kingdom2024-06-09
1027Argentina2024-06-04
1028India2024-06-13
1029Brazil2024-06-20
1030Japan2024-05-29
1031Australia2024-06-10
1032Argentina2024-05-26
1033Canada2024-06-08
1034Australia2024-06-20
1035Germany2024-05-25
1036United Kingdom2024-06-08
1037Russia2024-06-15
1038United Kingdom2024-06-08
1039Spain2024-05-26
1040Italy2024-06-01
1041India2024-06-09
1042Australia2024-06-13
1043Brazil2024-06-16
1044France2024-06-19
1045Spain2024-06-14
1046United Kingdom2024-06-08
1047Canada2024-06-11
1048Germany2024-06-11
1049France2024-06-15

On-Demand Data

NameIdCountryDate
Sinclair N Darakjy1000Spain2024-05-24
Kadeem J Bolognia1001France2024-06-16
Jeanfrancois O Albares1002Japan2024-06-04
Wickens P Flosi1003Australia2024-06-06
Aruna N Schemmer1004United Kingdom2024-05-25
David C Iturbide1005Canada2024-06-16
Jones N Rulapaugh1006India2024-05-30
Ivar O Gaucho1007Germany2024-05-26
Chavez X Caudy1008Brazil2024-06-16
Alejandro A Poquette1009Canada2024-05-28
Deepesh X Whobrey1010Italy2024-05-30
Francesco R Waycott1011Spain2024-05-22
David E Ostrosky1012Russia2024-06-16
Nicolas W Perin1013Brazil2024-06-11
Rodrigues W Malet1014India2024-05-30
Stacey A Marrier1015India2024-05-29
Jennifer H Maclead1016Australia2024-06-15
Deepesh M Dilliard1017Canada2024-06-01
Jeanfrancois N Nicka1018Germany2024-05-25
Johnson D Inouye1019France2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood K MaletCanadaStephen Shaw NEW
Aruna M ChuiFranceBernardo Dominic RENEWAL
Jones J FlosiBrazilStephen Shaw NEGOTIATION
Greenwood N SaylorsJapanElwin Sharvill NEGOTIATION
Antonio Y OldroydJapanBernardo Dominic PROPOSAL
David V WieserItalyAmy Elsner NEGOTIATION
Octavia W SchemmerCanadaAnna Fali RENEWAL
Jefferson X RutaSpainElwin Sharvill PROPOSAL
Leon T InouyeFranceStephen Shaw NEGOTIATION
Aruna H WaycottAustraliaIvan Magalhaes NEGOTIATION
Tony S PaprockiItalyAnna Fali NEW
Kaitlin M AmigonUnited KingdomBernardo Dominic PROPOSAL
Salvatore C VenereArgentinaAsiya Javayant UNQUALIFIED
Wickens E BowleyAustraliaOnyama Limba NEW
Tony N InouyeJapanIvan Magalhaes UNQUALIFIED
Mayumi I GarufiAustraliaOnyama Limba PROPOSAL
Greenwood N FollerIndiaStephen Shaw RENEWAL
David S FerenczAustraliaIvan Magalhaes PROPOSAL
Octavia V AmigonUnited KingdomAsiya Javayant PROPOSAL
Aruna Z MarrierItalyElwin Sharvill NEGOTIATION
Johnson Q RimUnited KingdomStephen Shaw UNQUALIFIED
Isabel V FlosiArgentinaXuxue Feng NEW
Aika Y WieserGermanyElwin Sharvill RENEWAL
Kadeem I RimCanadaIoni Bowcher PROPOSAL
Aruna A BowleyRussiaIvan Magalhaes UNQUALIFIED
Kadeem V SlusarskiIndiaOnyama Limba UNQUALIFIED
Johnson N FerenczJapanAmy Elsner PROPOSAL
Misaki A DarakjyRussiaAmy Elsner NEW
Cody Q FlosiAustraliaElwin Sharvill NEW
Cody X ChuiArgentinaAmy Elsner NEGOTIATION
Maria H FigeroaAustraliaIoni Bowcher UNQUALIFIED
Claire Q NickaCanadaXuxue Feng RENEWAL
Mayumi F MorascaJapanIvan Magalhaes PROPOSAL
Jennifer B FlosiCanadaAmy Elsner PROPOSAL
Chavez W RimCanadaStephen Shaw NEW
Costa M BowleyRussiaBernardo Dominic RENEWAL
Adams F DarakjyArgentinaBernardo Dominic UNQUALIFIED
Ricardo R CaldareraIndiaElwin Sharvill PROPOSAL
Octavia D TollnerSpainXuxue Feng NEW
Morrow T ChuiArgentinaElwin Sharvill NEGOTIATION

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