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
Darci F FollerUnited KingdomAsiya Javayant UNQUALIFIED
Deepesh Q GauchoGermanyIoni Bowcher QUALIFIED
Leon L MaletCanadaAmy Elsner RENEWAL
Izzy T BologniaItalyAsiya Javayant PROPOSAL
Smith M ShinkoJapanStephen Shaw PROPOSAL
Stacey A DoeRussiaAsiya Javayant PROPOSAL
Clifford Z SergiArgentinaBernardo Dominic NEGOTIATION
Johnson D SergiAustraliaBernardo Dominic NEW
Smith C MaletAustraliaAnna Fali NEW
Leon L MarrierBrazilIvan Magalhaes PROPOSAL
Faith I BowleySpainStephen Shaw NEW
Adams U GauchoCanadaElwin Sharvill PROPOSAL
David R DarakjyUnited KingdomBernardo Dominic PROPOSAL
Leon S SlusarskiAustraliaBernardo Dominic QUALIFIED
Leon C ChuiIndiaIoni Bowcher UNQUALIFIED
Jennifer W FlosiCanadaAsiya Javayant NEW
Mujtaba C FerenczAustraliaIvan Magalhaes UNQUALIFIED
Salvatore Q RoysterGermanyOnyama Limba QUALIFIED
Stacey B ButtFranceStephen Shaw PROPOSAL
Isabel E OstroskyJapanOnyama Limba UNQUALIFIED
Aruna R RoysterJapanIoni Bowcher NEGOTIATION
Faith W SergiRussiaIoni Bowcher UNQUALIFIED
Ivar Z OstroskyJapanXuxue Feng NEGOTIATION
Jeanfrancois B VenereRussiaIoni Bowcher RENEWAL
Aditya A GlickItalyAnna Fali PROPOSAL
Stacey N WieserUnited KingdomOnyama Limba RENEWAL
Ricardo D StensethRussiaAnna Fali NEGOTIATION
Jennifer S WhobreyArgentinaAnna Fali NEW
Octavia H FigeroaAustraliaAnna Fali NEW
Silvio O RutaSpainAnna Fali QUALIFIED
Ivar J StockhamJapanStephen Shaw PROPOSAL
Jefferson M FlosiSpainIoni Bowcher RENEWAL
Rodrigues U OstroskyUnited KingdomAmy Elsner RENEWAL
Emily O BowleyJapanIvan Magalhaes NEW
Aika H MarrierIndiaStephen Shaw PROPOSAL
Faith E CaldareraRussiaStephen Shaw PROPOSAL
Julie A OstroskyJapanOnyama Limba PROPOSAL
Deepesh X FollerArgentinaAsiya Javayant NEGOTIATION
Ashley O OstroskyGermanyXuxue Feng NEGOTIATION
Aruna D CampainCanadaIoni Bowcher NEGOTIATION
Aditya S GauchoGermanyAnna Fali QUALIFIED
Faith Q VocelkaUnited KingdomAnna Fali QUALIFIED
Kaitlin V NestleCanadaElwin Sharvill NEW
David H KolmetzItalyAsiya Javayant PROPOSAL
Jeanfrancois P FollerSpainAmy Elsner NEW
Tony F BologniaFranceBernardo Dominic NEGOTIATION
Isabel V CampainCanadaIvan Magalhaes NEW
Isabel R AlbaresItalyIvan Magalhaes NEW
Aruna T BriddickCanadaStephen Shaw UNQUALIFIED
Julie O BowleyUnited KingdomAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Arvin Q RulapaughArgentinaAmy Elsner RENEWAL
Smith F PaprockiAustraliaXuxue Feng UNQUALIFIED
Alejandro I SchemmerUnited KingdomElwin Sharvill NEGOTIATION
Salvatore W BologniaUnited KingdomIvan Magalhaes UNQUALIFIED
Clifford B StensethJapanStephen Shaw QUALIFIED
James I OldroydItalyAnna Fali NEGOTIATION
Clifford H PerinAustraliaBernardo Dominic PROPOSAL
Deepesh H BowleyItalyIvan Magalhaes QUALIFIED
Ashley O StockhamRussiaIoni Bowcher NEW
Silvio A OstroskyGermanyAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley V GarufiItaly2024-06-13Dorl, James J Esq NEGOTIATION72Amy Elsner
1001Darci N GauchoBrazil2024-06-07Truhlar And Truhlar Attys RENEWAL21Ioni Bowcher
1002Murillo B MorascaArgentina2024-06-11Printing Dimensions RENEWAL10Ivan Magalhaes
1003Emily S BowleyItaly2024-06-22Chemel, James L Cpa UNQUALIFIED84Anna Fali
1004Costa D WieserJapan2024-06-12Printing Dimensions UNQUALIFIED1Elwin Sharvill
1005Aditya P VenereRussia2024-06-08Benton, John B Jr UNQUALIFIED11Ivan Magalhaes
1006Julie E SchemmerJapan2024-06-08Rousseaux, Michael Esq PROPOSAL60Stephen Shaw
1007Ivar L FerenczGermany2024-06-22Feltz Printing Service PROPOSAL56Elwin Sharvill
1008Munro T GarufiGermany2024-05-27Chemel, James L Cpa PROPOSAL49Elwin Sharvill
1009Mayumi R ShinkoSpain2024-06-01Chanay, Jeffrey A Esq PROPOSAL19Elwin Sharvill
1010Jennifer L MacleadIndia2024-06-13Buckley Miller Wright NEW60Onyama Limba
1011Aditya I BriddickJapan2024-06-23Buckley Miller Wright PROPOSAL6Ivan Magalhaes
1012Ricardo V AmigonRussia2024-05-31Dorl, James J Esq NEW39Ioni Bowcher
1013Kadeem D BologniaArgentina2024-06-22King, Christopher A Esq NEGOTIATION25Xuxue Feng
1014Arvin T PoquetteGermany2024-05-27Printing Dimensions RENEWAL8Bernardo Dominic
1015Costa Q KuskoCanada2024-06-10Benton, John B Jr QUALIFIED81Bernardo Dominic
1016Nicolas R DilliardJapan2024-06-13Feiner Bros NEGOTIATION7Asiya Javayant
1017Jennifer M BologniaFrance2024-05-27Printing Dimensions UNQUALIFIED41Bernardo Dominic
1018Nicolas I RoysterItaly2024-06-23Truhlar And Truhlar Attys NEW6Elwin Sharvill
1019James B WhobreyBrazil2024-05-31Feltz Printing Service NEGOTIATION51Asiya Javayant
1020Jones F FerenczBrazil2024-06-03Feltz Printing Service NEW69Asiya Javayant
1021James M GarufiFrance2024-06-20Buckley Miller Wright QUALIFIED89Anna Fali
1022Octavia A GauchoRussia2024-06-04Printing Dimensions UNQUALIFIED24Elwin Sharvill
1023Mujtaba W AmigonRussia2024-06-17Chanay, Jeffrey A Esq NEGOTIATION26Ivan Magalhaes
1024Sinclair L StockhamFrance2024-06-03Benton, John B Jr RENEWAL33Bernardo Dominic
1025Emily J DarakjyCanada2024-06-03Chapman, Ross E Esq RENEWAL48Elwin Sharvill
1026Chavez Y TollnerItaly2024-06-15Chapman, Ross E Esq QUALIFIED9Anna Fali
1027Darci S WieserUnited Kingdom2024-06-03Morlong Associates PROPOSAL69Ivan Magalhaes
1028Ricardo E MarrierRussia2024-06-08Benton, John B Jr NEGOTIATION77Bernardo Dominic
1029Leja F RimSpain2024-05-26Truhlar And Truhlar Attys NEGOTIATION74Ioni Bowcher
1030Ricardo I RimAustralia2024-06-01Truhlar And Truhlar Attys NEW10Bernardo Dominic
1031Isabel V MacleadCanada2024-06-09Rousseaux, Michael Esq NEW11Ioni Bowcher
1032Leon U DilliardGermany2024-06-20Buckley Miller Wright NEGOTIATION86Elwin Sharvill
1033Antonio X NestleCanada2024-06-11Feiner Bros QUALIFIED75Bernardo Dominic
1034Alejandro P KolmetzArgentina2024-05-31Commercial Press QUALIFIED41Elwin Sharvill
1035Darci Z OstroskyGermany2024-06-07Dorl, James J Esq UNQUALIFIED91Elwin Sharvill
1036Clifford W MaletIndia2024-06-10Chanay, Jeffrey A Esq RENEWAL60Elwin Sharvill
1037Aika L CampainJapan2024-06-15Feltz Printing Service PROPOSAL76Onyama Limba
1038Salvatore N SchemmerJapan2024-06-14Commercial Press PROPOSAL27Xuxue Feng
1039Juan M FigeroaGermany2024-06-03Rangoni Of Florence NEGOTIATION35Bernardo Dominic
1040Ricardo U AlbaresFrance2024-06-11Chemel, James L Cpa RENEWAL43Ioni Bowcher
1041Arvin Q DarakjyFrance2024-06-10King, Christopher A Esq UNQUALIFIED34Bernardo Dominic
1042Nicolas Y NestleUnited Kingdom2024-06-02Rangoni Of Florence UNQUALIFIED14Xuxue Feng
1043Aditya Y BriddickGermany2024-06-16Dorl, James J Esq NEGOTIATION70Elwin Sharvill
1044Ivar U GarufiArgentina2024-06-23Benton, John B Jr PROPOSAL80Xuxue Feng
1045Chavez W MarrierBrazil2024-06-17Commercial Press NEW16Asiya Javayant
1046Jefferson Z AlbaresArgentina2024-06-10Commercial Press UNQUALIFIED15Stephen Shaw
1047Morrow X ShinkoArgentina2024-06-24Rangoni Of Florence NEW92Ivan Magalhaes
1048Greenwood X PoquetteRussia2024-06-05King, Christopher A Esq QUALIFIED79Ioni Bowcher
1049Wickens L BologniaAustralia2024-06-16Printing Dimensions NEGOTIATION59Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues X VocelkaArgentinaElwin Sharvill QUALIFIED
Smith W FigeroaBrazilOnyama Limba NEGOTIATION
Stacey J ButtFranceIoni Bowcher UNQUALIFIED
Greenwood D FigeroaJapanIoni Bowcher NEGOTIATION
Tony X AmigonJapanAmy Elsner RENEWAL
Chavez L AlbaresGermanyBernardo Dominic RENEWAL
Mujtaba O BowleySpainXuxue Feng NEW
Leja Y WieserIndiaStephen Shaw NEGOTIATION
Johnson N GauchoBrazilIvan Magalhaes QUALIFIED
Murillo V RoysterItalyBernardo Dominic NEW
Cody G TollnerGermanyBernardo Dominic UNQUALIFIED
Deepesh N FollerArgentinaOnyama Limba QUALIFIED
Aruna V StensethItalyAnna Fali PROPOSAL
Tony A TollnerSpainElwin Sharvill UNQUALIFIED
Ivar P BowleyCanadaXuxue Feng RENEWAL
Misaki O GlickFranceStephen Shaw PROPOSAL
Arvin I IturbideRussiaStephen Shaw NEGOTIATION
Julie G StockhamItalyStephen Shaw PROPOSAL
Chavez Y AmigonAustraliaIvan Magalhaes RENEWAL
Murillo U BriddickRussiaElwin Sharvill NEGOTIATION
Emily T OstroskyIndiaXuxue Feng RENEWAL
Izzy W FigeroaIndiaElwin Sharvill NEW
Ivar D GillianGermanyOnyama Limba NEW
Rodrigues H MaletRussiaAmy Elsner NEGOTIATION
Silvio C MaletUnited KingdomOnyama Limba NEGOTIATION
Jeanfrancois V OstroskyIndiaBernardo Dominic PROPOSAL
Arvin M OldroydFranceIoni Bowcher UNQUALIFIED
Leja J CaudyUnited KingdomAnna Fali PROPOSAL
Darci M MaletUnited KingdomElwin Sharvill PROPOSAL
Maisha J BologniaUnited KingdomIoni Bowcher UNQUALIFIED
Leja A FlosiItalyBernardo Dominic RENEWAL
Chavez W GlickSpainBernardo Dominic UNQUALIFIED
Leon T RimFranceBernardo Dominic PROPOSAL
Jones Y GauchoCanadaIoni Bowcher NEW
Aika W PerinItalyAsiya Javayant RENEWAL
Clifford H MacleadGermanyAmy Elsner NEW
Adams E RimJapanIvan Magalhaes NEW
Jennifer H MarrierArgentinaElwin Sharvill RENEWAL
Morrow J RutaRussiaIoni Bowcher NEW
Izzy Z RoysterFranceAsiya Javayant NEGOTIATION
Antonio U RoysterJapanIoni Bowcher UNQUALIFIED
Kadeem Q IturbideAustraliaAnna Fali RENEWAL
Mayumi N NestleAustraliaIvan Magalhaes UNQUALIFIED
Jeanfrancois U PoquetteArgentinaIoni Bowcher UNQUALIFIED
Aruna B InouyeJapanAnna Fali RENEWAL
Maria J WieserCanadaStephen Shaw NEW
Darci M PoquetteAustraliaIoni Bowcher PROPOSAL
Costa N VocelkaFranceAmy Elsner QUALIFIED
Ricardo T NickaFranceAmy Elsner UNQUALIFIED
Deepesh O DoeAustraliaIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Claire P Rulapaugh
James A Chui
David I Maclead
Alejandro T Vocelka
Kadeem R Stockham
Clifford K Saylors
Rodrigues S Wieser
Julie Q Caudy
Mujtaba U Amigon
Munro G Marrier
Maisha Y Rulapaugh
Sinclair W Venere
Silvio N Oldroyd
Francesco G Inouye
Mujtaba H Slusarski
Darci Z Ostrosky
Alejandro J Tollner
Aruna Q Gaucho
Jones Z Whobrey
Julie S Stenseth
Maria W Schemmer
Octavia G Morasca
Chavez F Malet
Mujtaba X Malet
Chavez Q Perin
Antonio B Bowley
Morrow G Vocelka
Tony W Whobrey
Munro J Marrier
James B Marrier
Ashley J Campain
Claire K Stockham
Leja E Maclead
Deepesh I Maclead
James X Ruta
Leja M Schemmer
Smith E Garufi
Chavez X Ferencz
Munro W Marrier
Jones G Darakjy
Arvin P Kolmetz
Izzy X Wieser
Tony Q Gaucho
James V Glick
Nicolas O Gillian
Aruna Z Gillian
Antonio C Kusko
Jennifer W Sergi
Morrow M Whobrey
Murillo B Slusarski
IdCountryDate
1000United Kingdom2024-06-15
1001Spain2024-06-02
1002Brazil2024-06-14
1003Brazil2024-06-17
1004Canada2024-06-02
1005Brazil2024-06-24
1006France2024-06-15
1007Spain2024-05-28
1008Argentina2024-06-13
1009India2024-06-09
1010Canada2024-06-15
1011Italy2024-06-16
1012Russia2024-06-10
1013Australia2024-06-11
1014Brazil2024-06-19
1015Australia2024-06-22
1016Japan2024-05-30
1017Australia2024-05-28
1018Australia2024-06-11
1019Argentina2024-06-17
1020France2024-06-12
1021India2024-06-13
1022Brazil2024-06-07
1023India2024-06-19
1024Russia2024-05-26
1025Russia2024-06-14
1026Russia2024-06-08
1027United Kingdom2024-06-21
1028United Kingdom2024-06-20
1029Spain2024-06-02
1030United Kingdom2024-06-15
1031Japan2024-06-06
1032Canada2024-06-16
1033Russia2024-06-15
1034Argentina2024-05-31
1035Canada2024-06-23
1036France2024-05-26
1037Japan2024-06-10
1038Germany2024-06-18
1039Brazil2024-06-22
1040United Kingdom2024-06-19
1041Australia2024-06-24
1042Germany2024-06-22
1043Italy2024-06-18
1044Spain2024-06-18
1045France2024-06-22
1046Italy2024-06-04
1047Canada2024-06-19
1048France2024-06-05
1049Brazil2024-06-09

On-Demand Data

NameIdCountryDate
Nicolas J Briddick1000France2024-06-23
Kaitlin G Ferencz1001Italy2024-06-17
James H Shinko1002Japan2024-05-28
Mayumi W Doe1003Spain2024-05-29
Kadeem Y Wieser1004Spain2024-06-04
Jeanfrancois T Figeroa1005Italy2024-06-11
Alejandro Z Vocelka1006India2024-06-22
James U Nestle1007Canada2024-06-22
Morrow E Morasca1008Spain2024-06-23
Johnson B Doe1009Italy2024-06-05
Leja W Royster1010Canada2024-06-18
Julie Z Dilliard1011Australia2024-06-04
Morrow A Stenseth1012United Kingdom2024-06-17
Aika K Stenseth1013Germany2024-06-11
Johnson R Wieser1014France2024-05-28
Maria H Tollner1015France2024-06-07
Leon P Sergi1016Canada2024-06-02
Leja X Glick1017Argentina2024-06-18
David L Ruta1018Argentina2024-06-16
Jeanfrancois I Albares1019Australia2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy T PoquetteGermanyElwin Sharvill QUALIFIED
Ashley P IturbideUnited KingdomElwin Sharvill PROPOSAL
Mujtaba J PaprockiAustraliaElwin Sharvill RENEWAL
Munro G RimSpainXuxue Feng UNQUALIFIED
Leon L SchemmerAustraliaAmy Elsner UNQUALIFIED
Darci L VocelkaItalyIvan Magalhaes NEW
Julie X DoeCanadaOnyama Limba UNQUALIFIED
Maisha G OstroskyIndiaAmy Elsner NEGOTIATION
Ashley X BowleyArgentinaXuxue Feng PROPOSAL
Sinclair E NickaUnited KingdomElwin Sharvill NEGOTIATION
Aditya E BowleyAustraliaBernardo Dominic UNQUALIFIED
Francesco A ChuiCanadaIvan Magalhaes NEGOTIATION
Silvio L NestleIndiaXuxue Feng RENEWAL
Aika T MacleadIndiaOnyama Limba NEW
Ricardo T NestleArgentinaIoni Bowcher NEGOTIATION
Salvatore Q InouyeJapanAsiya Javayant NEGOTIATION
Mujtaba M MaletGermanyAsiya Javayant PROPOSAL
Jeanfrancois R IturbideRussiaOnyama Limba NEW
Munro A GlickFranceOnyama Limba NEW
Jones K RimCanadaXuxue Feng NEGOTIATION
Julie V PaprockiSpainAmy Elsner UNQUALIFIED
David M CaudyFranceAnna Fali RENEWAL
Johnson G GillianFranceOnyama Limba NEGOTIATION
Claire E FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois O ShinkoItalyIvan Magalhaes QUALIFIED
Clifford C CaldareraGermanyBernardo Dominic UNQUALIFIED
Aruna J SaylorsIndiaElwin Sharvill QUALIFIED
Ricardo D MaletBrazilIoni Bowcher NEW
Greenwood E CaudyBrazilIvan Magalhaes NEGOTIATION
Arvin D GillianUnited KingdomStephen Shaw NEW
Clifford H RimRussiaIvan Magalhaes NEW
Johnson X MorascaItalyStephen Shaw NEW
Adams D RimUnited KingdomAmy Elsner NEW
Faith W VocelkaBrazilAsiya Javayant NEGOTIATION
Mayumi H SergiAustraliaOnyama Limba NEGOTIATION
Jones W RimGermanyIvan Magalhaes RENEWAL
Tony X IturbideCanadaAmy Elsner RENEWAL
Alejandro I DoeGermanyAmy Elsner NEW
Wickens G RulapaughItalyXuxue Feng UNQUALIFIED
Misaki S RoysterItalyIvan Magalhaes 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>