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
Maria P MarrierCanadaXuxue Feng UNQUALIFIED
Misaki T BologniaIndiaStephen Shaw NEW
Claire Y MorascaArgentinaOnyama Limba NEW
Kadeem C SchemmerFranceAnna Fali QUALIFIED
Deepesh M FlosiSpainStephen Shaw QUALIFIED
Salvatore V SlusarskiBrazilStephen Shaw QUALIFIED
Juan V ButtIndiaAnna Fali NEGOTIATION
Isabel K GillianAustraliaAnna Fali QUALIFIED
Alejandro S MarrierBrazilXuxue Feng NEW
Antonio D ShinkoFranceBernardo Dominic UNQUALIFIED
Juan V DoeAustraliaAnna Fali NEGOTIATION
Maisha V MacleadAustraliaElwin Sharvill UNQUALIFIED
Ashley G GillianAustraliaIoni Bowcher RENEWAL
Aruna K WhobreyRussiaAmy Elsner UNQUALIFIED
Ashley D RimAustraliaElwin Sharvill NEW
James I StockhamJapanAsiya Javayant NEGOTIATION
Johnson G StensethItalyElwin Sharvill NEW
Aditya D NickaUnited KingdomStephen Shaw PROPOSAL
Morrow G OldroydAustraliaOnyama Limba QUALIFIED
Mujtaba I RimAustraliaOnyama Limba NEGOTIATION
Aditya X WhobreyItalyAmy Elsner NEW
Jeanfrancois Y GillianAustraliaXuxue Feng QUALIFIED
Julie G GauchoFranceAnna Fali RENEWAL
Morrow E DilliardRussiaElwin Sharvill PROPOSAL
Clifford P AmigonJapanElwin Sharvill NEGOTIATION
Stacey R FlosiUnited KingdomOnyama Limba QUALIFIED
Ivar F FollerBrazilStephen Shaw NEGOTIATION
Jeanfrancois T AmigonJapanElwin Sharvill RENEWAL
Juan U GlickItalyStephen Shaw PROPOSAL
Misaki T WaycottJapanAmy Elsner NEW
Mujtaba J BriddickArgentinaBernardo Dominic NEGOTIATION
Ivar B SlusarskiFranceIvan Magalhaes UNQUALIFIED
Morrow E GillianAustraliaBernardo Dominic NEGOTIATION
Octavia B AlbaresItalyAnna Fali RENEWAL
Ashley N SergiSpainElwin Sharvill QUALIFIED
Darci Z SaylorsArgentinaAmy Elsner QUALIFIED
Munro K TollnerSpainAmy Elsner QUALIFIED
Alejandro R OstroskyRussiaIvan Magalhaes RENEWAL
Faith T KuskoUnited KingdomElwin Sharvill RENEWAL
Costa K ChuiFranceAmy Elsner RENEWAL
Kaitlin O InouyeFranceElwin Sharvill RENEWAL
Silvio Y ChuiItalyOnyama Limba PROPOSAL
Stacey O DilliardCanadaAsiya Javayant PROPOSAL
Deepesh F FollerArgentinaAsiya Javayant PROPOSAL
Salvatore U MaletAustraliaXuxue Feng RENEWAL
Misaki Q GarufiAustraliaIvan Magalhaes RENEWAL
Julie P CampainSpainIvan Magalhaes PROPOSAL
Ricardo V MorascaRussiaIvan Magalhaes NEGOTIATION
Isabel K GlickFranceOnyama Limba RENEWAL
James M ButtAustraliaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Clifford Z PerinUnited KingdomBernardo Dominic RENEWAL
Nicolas H KuskoSpainElwin Sharvill UNQUALIFIED
Deepesh F BowleyFranceXuxue Feng QUALIFIED
Claire D CaldareraItalyElwin Sharvill NEW
Antonio C WieserFranceAsiya Javayant NEGOTIATION
Ashley K SlusarskiGermanyXuxue Feng RENEWAL
Arvin D ButtItalyIvan Magalhaes PROPOSAL
Greenwood V KolmetzSpainAsiya Javayant QUALIFIED
Clifford Y FollerFranceElwin Sharvill PROPOSAL
Izzy E ChuiBrazilBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro P DarakjyJapan2024-06-02Buckley Miller Wright UNQUALIFIED91Onyama Limba
1001Mujtaba S KolmetzItaly2024-06-06Buckley Miller Wright UNQUALIFIED62Ivan Magalhaes
1002Deepesh O SlusarskiItaly2024-06-11Rousseaux, Michael Esq UNQUALIFIED60Ioni Bowcher
1003Morrow J BologniaUnited Kingdom2024-06-21Commercial Press QUALIFIED93Onyama Limba
1004Greenwood A MorascaBrazil2024-06-14Rousseaux, Michael Esq NEGOTIATION54Xuxue Feng
1005Johnson F MaletSpain2024-06-06Truhlar And Truhlar Attys RENEWAL78Bernardo Dominic
1006Emily J ButtGermany2024-06-10Chemel, James L Cpa NEGOTIATION34Stephen Shaw
1007Misaki I RutaJapan2024-05-26Feiner Bros RENEWAL39Ioni Bowcher
1008Costa K BowleyFrance2024-06-15Chapman, Ross E Esq NEW36Stephen Shaw
1009Jefferson H MaletItaly2024-06-13Benton, John B Jr NEW69Stephen Shaw
1010Juan V WaycottIndia2024-05-30Rousseaux, Michael Esq QUALIFIED7Xuxue Feng
1011Jefferson Z BriddickIndia2024-06-15Feltz Printing Service NEGOTIATION94Amy Elsner
1012Morrow L RoysterBrazil2024-06-13Chanay, Jeffrey A Esq UNQUALIFIED94Stephen Shaw
1013Arvin A BologniaArgentina2024-06-02Chemel, James L Cpa RENEWAL22Ivan Magalhaes
1014Octavia I SchemmerItaly2024-05-28Commercial Press NEGOTIATION54Asiya Javayant
1015Stacey Z StensethBrazil2024-06-14Morlong Associates RENEWAL26Asiya Javayant
1016Izzy T FigeroaJapan2024-06-09Chemel, James L Cpa NEW55Amy Elsner
1017Jones T FerenczIndia2024-05-31Rousseaux, Michael Esq UNQUALIFIED1Asiya Javayant
1018Maisha M PoquetteBrazil2024-06-08Morlong Associates UNQUALIFIED60Bernardo Dominic
1019Stacey H BowleyCanada2024-06-13Benton, John B Jr RENEWAL98Amy Elsner
1020Antonio Q InouyeIndia2024-06-07Morlong Associates NEGOTIATION88Ioni Bowcher
1021Faith X GauchoSpain2024-06-18Truhlar And Truhlar Attys NEW90Anna Fali
1022Jennifer M DarakjyUnited Kingdom2024-05-30Benton, John B Jr NEW76Amy Elsner
1023Juan A OldroydSpain2024-05-31Morlong Associates QUALIFIED88Elwin Sharvill
1024Faith B ChuiIndia2024-06-22Dorl, James J Esq QUALIFIED3Xuxue Feng
1025Sinclair S PerinUnited Kingdom2024-06-03Printing Dimensions UNQUALIFIED30Asiya Javayant
1026Julie V OstroskyBrazil2024-06-18Buckley Miller Wright UNQUALIFIED33Bernardo Dominic
1027Tony Q TollnerBrazil2024-06-12Feiner Bros UNQUALIFIED4Xuxue Feng
1028Maria O MacleadArgentina2024-06-15Buckley Miller Wright PROPOSAL78Asiya Javayant
1029Octavia R MaletArgentina2024-05-28King, Christopher A Esq QUALIFIED77Asiya Javayant
1030Silvio H NickaItaly2024-05-27Commercial Press QUALIFIED30Amy Elsner
1031Isabel L SlusarskiGermany2024-06-15Benton, John B Jr NEW33Ivan Magalhaes
1032Francesco Y RutaIndia2024-06-04Printing Dimensions RENEWAL88Anna Fali
1033Maria A CaudyUnited Kingdom2024-06-07Commercial Press UNQUALIFIED66Xuxue Feng
1034Kaitlin N GarufiArgentina2024-06-10King, Christopher A Esq PROPOSAL78Anna Fali
1035Mujtaba F RutaGermany2024-05-25Chapman, Ross E Esq QUALIFIED75Stephen Shaw
1036Sinclair E InouyeArgentina2024-06-03Chemel, James L Cpa UNQUALIFIED17Stephen Shaw
1037Ashley E FerenczUnited Kingdom2024-06-15Buckley Miller Wright NEW95Bernardo Dominic
1038Leon W BriddickGermany2024-06-04Rangoni Of Florence QUALIFIED46Amy Elsner
1039Johnson U BowleyJapan2024-06-02Morlong Associates PROPOSAL27Bernardo Dominic
1040Jefferson O CaldareraRussia2024-06-20Feltz Printing Service UNQUALIFIED46Anna Fali
1041Claire T CaudyItaly2024-06-13King, Christopher A Esq UNQUALIFIED57Stephen Shaw
1042Juan M DilliardAustralia2024-05-25Chemel, James L Cpa PROPOSAL9Amy Elsner
1043Ashley Z ShinkoUnited Kingdom2024-05-31Chemel, James L Cpa UNQUALIFIED29Xuxue Feng
1044Jennifer D OstroskyJapan2024-06-17Truhlar And Truhlar Attys PROPOSAL55Bernardo Dominic
1045Jones N SaylorsBrazil2024-06-02Rangoni Of Florence RENEWAL31Onyama Limba
1046Greenwood O StensethJapan2024-06-10Feiner Bros QUALIFIED28Bernardo Dominic
1047Clifford C CaudyArgentina2024-06-22King, Christopher A Esq NEGOTIATION1Ioni Bowcher
1048Kadeem L SergiCanada2024-05-26Buckley Miller Wright RENEWAL71Ioni Bowcher
1049Jennifer J VenereArgentina2024-06-22Rangoni Of Florence UNQUALIFIED89Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Greenwood H RulapaughBrazilXuxue Feng NEGOTIATION
Claire T IturbideSpainBernardo Dominic NEW
Maria C RulapaughSpainAsiya Javayant RENEWAL
Morrow Z NickaIndiaOnyama Limba UNQUALIFIED
Salvatore X DilliardRussiaXuxue Feng NEGOTIATION
Isabel U RulapaughUnited KingdomAnna Fali QUALIFIED
Costa Z FerenczCanadaStephen Shaw NEW
Ivar Z VocelkaSpainIvan Magalhaes NEGOTIATION
Izzy C CaldareraFranceAnna Fali RENEWAL
Wickens P StensethUnited KingdomIvan Magalhaes UNQUALIFIED
Costa V IturbideBrazilIvan Magalhaes UNQUALIFIED
Jefferson O PaprockiIndiaOnyama Limba NEGOTIATION
Kaitlin P SchemmerBrazilIvan Magalhaes NEW
Ricardo S OstroskyCanadaAsiya Javayant RENEWAL
Ricardo C ShinkoJapanAsiya Javayant NEGOTIATION
David B OldroydCanadaOnyama Limba UNQUALIFIED
Stacey M VocelkaArgentinaBernardo Dominic PROPOSAL
Munro E WhobreyItalyElwin Sharvill UNQUALIFIED
Claire N BowleyFranceOnyama Limba RENEWAL
Isabel S NickaSpainBernardo Dominic NEGOTIATION
Chavez J SergiIndiaIoni Bowcher NEW
Cody W AlbaresBrazilElwin Sharvill RENEWAL
Julie Z MarrierRussiaAnna Fali NEGOTIATION
Ricardo G SchemmerItalyIvan Magalhaes RENEWAL
Ashley X ShinkoJapanXuxue Feng QUALIFIED
Kaitlin Q FollerBrazilIvan Magalhaes PROPOSAL
Julie J RulapaughGermanyBernardo Dominic PROPOSAL
Alejandro F MacleadItalyAsiya Javayant NEGOTIATION
Greenwood D TollnerArgentinaAnna Fali RENEWAL
Smith Z ChuiArgentinaBernardo Dominic PROPOSAL
Kaitlin N RutaJapanElwin Sharvill NEGOTIATION
Mayumi U PerinBrazilOnyama Limba NEGOTIATION
Jefferson Q AlbaresItalyStephen Shaw UNQUALIFIED
Adams B NestleGermanyBernardo Dominic NEGOTIATION
Morrow D SaylorsArgentinaIvan Magalhaes QUALIFIED
Izzy J FigeroaJapanIoni Bowcher QUALIFIED
Faith O WieserBrazilStephen Shaw PROPOSAL
Mujtaba K GillianFranceIvan Magalhaes QUALIFIED
Aditya F PoquetteBrazilIvan Magalhaes QUALIFIED
Kaitlin Y MarrierRussiaIoni Bowcher PROPOSAL
Wickens I DoeIndiaAmy Elsner QUALIFIED
Izzy A TollnerIndiaIvan Magalhaes PROPOSAL
Cody T NickaGermanyAnna Fali NEW
Julie T InouyeFranceIvan Magalhaes NEGOTIATION
Jones A PerinJapanBernardo Dominic RENEWAL
Johnson P SaylorsJapanAnna Fali UNQUALIFIED
Maisha F CaldareraFranceBernardo Dominic NEW
Smith R GauchoGermanyIvan Magalhaes NEGOTIATION
Murillo K SlusarskiCanadaAnna Fali QUALIFIED
Smith F CaudyItalyElwin Sharvill RENEWAL
Frozen Columns
Name
Sinclair A Dilliard
Leon B Kusko
Jones D Whobrey
Julie D Caldarera
Kadeem R Amigon
Munro W Rulapaugh
Jefferson V Venere
Kadeem F Maclead
Costa I Foller
Murillo D Butt
Jennifer I Wieser
Maisha M Rim
Maria Y Campain
Octavia T Gillian
Clifford M Bowley
Leja K Ostrosky
Chavez S Perin
Jeanfrancois P Gaucho
Clifford S Paprocki
Salvatore U Flosi
Aditya F Rim
Greenwood V Bolognia
Leja R Garufi
Darci N Slusarski
Mayumi I Gaucho
Smith L Ruta
Johnson F Butt
Faith S Saylors
Mujtaba F Waycott
Mujtaba U Marrier
Morrow A Rim
Morrow W Foller
Faith X Vocelka
Arvin O Shinko
Arvin P Nestle
Morrow X Figeroa
Sinclair J Garufi
Deepesh V Schemmer
Adams H Iturbide
James C Nestle
Ivar Z Bolognia
Munro H Ruta
Claire H Nestle
Jennifer K Wieser
Wickens D Garufi
Ashley F Saylors
Francesco B Bowley
Faith T Tollner
Kaitlin C Glick
Kadeem B Ostrosky
IdCountryDate
1000Australia2024-06-22
1001Australia2024-05-29
1002Spain2024-05-25
1003Germany2024-05-29
1004France2024-05-27
1005Russia2024-05-26
1006United Kingdom2024-05-26
1007Spain2024-06-03
1008Australia2024-05-31
1009Australia2024-06-10
1010Canada2024-06-08
1011Brazil2024-06-02
1012Italy2024-06-22
1013Japan2024-05-30
1014Canada2024-06-11
1015Russia2024-06-11
1016Brazil2024-05-25
1017Germany2024-06-12
1018United Kingdom2024-05-27
1019Australia2024-06-13
1020France2024-06-20
1021United Kingdom2024-05-29
1022Germany2024-06-08
1023Canada2024-06-22
1024Japan2024-06-15
1025Russia2024-06-23
1026United Kingdom2024-06-20
1027India2024-05-30
1028Spain2024-06-08
1029Canada2024-05-27
1030Spain2024-05-25
1031Italy2024-06-04
1032Spain2024-06-04
1033Canada2024-06-06
1034Germany2024-06-23
1035Argentina2024-06-03
1036India2024-06-01
1037Russia2024-06-07
1038Germany2024-05-27
1039Australia2024-06-14
1040Brazil2024-06-01
1041Japan2024-06-22
1042France2024-06-22
1043Russia2024-06-13
1044Spain2024-05-31
1045Russia2024-05-27
1046United Kingdom2024-05-25
1047France2024-06-23
1048Russia2024-06-21
1049Argentina2024-06-03

On-Demand Data

NameIdCountryDate
Leon U Figeroa1000Japan2024-06-12
Morrow O Poquette1001Brazil2024-06-21
Kaitlin Q Stenseth1002Germany2024-06-14
Greenwood D Campain1003France2024-06-19
Aika O Garufi1004Spain2024-06-05
Johnson J Caudy1005Australia2024-05-25
Johnson E Tollner1006Australia2024-06-12
Sinclair H Shinko1007France2024-06-06
Jefferson Y Flosi1008Australia2024-06-09
Jennifer V Poquette1009Spain2024-05-27
Jones P Iturbide1010Brazil2024-06-12
Ricardo X Oldroyd1011Australia2024-06-18
Arvin W Schemmer1012France2024-05-29
Ashley W Flosi1013India2024-06-04
Jones G Flosi1014Spain2024-06-04
Tony K Vocelka1015Argentina2024-06-12
Adams R Maclead1016France2024-05-31
Johnson J Amigon1017Brazil2024-06-16
Octavia M Bowley1018Spain2024-06-22
Wickens S Flosi1019Canada2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem X WhobreySpainStephen Shaw RENEWAL
Costa O WieserGermanyAsiya Javayant PROPOSAL
Jefferson U StensethRussiaXuxue Feng QUALIFIED
Mayumi W WhobreySpainElwin Sharvill NEW
Arvin V ButtJapanXuxue Feng PROPOSAL
Juan B MaletItalyIoni Bowcher RENEWAL
Julie U WhobreyJapanElwin Sharvill QUALIFIED
Cody S KuskoJapanStephen Shaw UNQUALIFIED
Kaitlin K DilliardIndiaIvan Magalhaes QUALIFIED
Ricardo E ShinkoAustraliaElwin Sharvill RENEWAL
James X DoeRussiaAnna Fali NEGOTIATION
Salvatore W StockhamCanadaIoni Bowcher RENEWAL
Smith W DilliardItalyAmy Elsner QUALIFIED
Johnson K ChuiAustraliaXuxue Feng UNQUALIFIED
Julie I WaycottSpainXuxue Feng NEGOTIATION
Leon Q KuskoUnited KingdomBernardo Dominic NEGOTIATION
David P ShinkoRussiaOnyama Limba RENEWAL
Salvatore B OldroydArgentinaAsiya Javayant NEW
Leja W TollnerUnited KingdomAnna Fali PROPOSAL
Ashley T NestleIndiaBernardo Dominic QUALIFIED
Chavez U SlusarskiGermanyBernardo Dominic RENEWAL
Darci D FollerJapanOnyama Limba NEW
Arvin Z NickaItalyAmy Elsner RENEWAL
Deepesh O AlbaresItalyElwin Sharvill PROPOSAL
Chavez S FollerBrazilAnna Fali UNQUALIFIED
Nicolas K StockhamFranceBernardo Dominic UNQUALIFIED
Clifford Y TollnerAustraliaAmy Elsner NEW
Ashley Z CaudyItalyAsiya Javayant RENEWAL
Adams V FigeroaUnited KingdomAsiya Javayant QUALIFIED
Cody Q StockhamBrazilOnyama Limba RENEWAL
Greenwood F SlusarskiItalyOnyama Limba NEW
Francesco D SchemmerBrazilAnna Fali NEW
Maria T MarrierRussiaXuxue Feng UNQUALIFIED
David Z DarakjyBrazilXuxue Feng QUALIFIED
Adams W DarakjyBrazilElwin Sharvill UNQUALIFIED
Ivar V OldroydGermanyElwin Sharvill RENEWAL
Maisha G DarakjyItalyElwin Sharvill RENEWAL
Darci V CampainJapanAmy Elsner UNQUALIFIED
Aika P KuskoIndiaOnyama Limba UNQUALIFIED
Smith D GarufiArgentinaStephen Shaw UNQUALIFIED

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