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
Murillo S KolmetzCanadaStephen Shaw PROPOSAL
Kaitlin Q WieserGermanyAmy Elsner UNQUALIFIED
Leja P AmigonArgentinaIvan Magalhaes PROPOSAL
Aruna D DoeRussiaOnyama Limba NEGOTIATION
Tony A NickaUnited KingdomElwin Sharvill NEGOTIATION
Deepesh H ButtGermanyAsiya Javayant UNQUALIFIED
Darci R TollnerRussiaIoni Bowcher NEW
Salvatore J FerenczRussiaAnna Fali PROPOSAL
Ivar G CaudySpainAnna Fali NEW
David N WaycottGermanyAsiya Javayant PROPOSAL
Kadeem N BriddickCanadaElwin Sharvill UNQUALIFIED
Wickens S KuskoFranceAsiya Javayant RENEWAL
Chavez I GlickSpainOnyama Limba NEGOTIATION
Silvio X MarrierArgentinaStephen Shaw PROPOSAL
Misaki H PaprockiIndiaElwin Sharvill NEGOTIATION
Jefferson V SchemmerCanadaStephen Shaw UNQUALIFIED
Costa F PoquetteJapanIoni Bowcher NEW
Greenwood Y VenereIndiaStephen Shaw UNQUALIFIED
Chavez Z ChuiIndiaOnyama Limba QUALIFIED
Nicolas D MarrierIndiaStephen Shaw RENEWAL
Kadeem G SergiFranceXuxue Feng RENEWAL
Leja I PerinRussiaBernardo Dominic NEGOTIATION
Deepesh R OldroydRussiaElwin Sharvill NEW
Johnson D VocelkaFranceStephen Shaw QUALIFIED
Mayumi S PerinFranceElwin Sharvill NEGOTIATION
Smith C RulapaughBrazilBernardo Dominic NEGOTIATION
Deepesh Z CampainRussiaAmy Elsner RENEWAL
Jefferson C DarakjyArgentinaAmy Elsner UNQUALIFIED
Juan R SergiAustraliaOnyama Limba RENEWAL
Rodrigues D OldroydBrazilIvan Magalhaes PROPOSAL
Munro J MacleadArgentinaIoni Bowcher NEW
Claire Y FigeroaRussiaElwin Sharvill PROPOSAL
Jeanfrancois L SchemmerBrazilAnna Fali UNQUALIFIED
Darci H OstroskyRussiaAnna Fali NEW
Arvin V MarrierAustraliaOnyama Limba UNQUALIFIED
David S MaletArgentinaAsiya Javayant NEGOTIATION
Claire M AlbaresGermanyIoni Bowcher QUALIFIED
Kadeem F RulapaughRussiaOnyama Limba PROPOSAL
Alejandro E FlosiCanadaAsiya Javayant PROPOSAL
Tony N RimIndiaElwin Sharvill PROPOSAL
Francesco Q SaylorsFranceIoni Bowcher PROPOSAL
David V FerenczJapanXuxue Feng RENEWAL
Murillo M KuskoIndiaStephen Shaw UNQUALIFIED
Salvatore Q FollerGermanyAsiya Javayant PROPOSAL
Faith A MarrierSpainXuxue Feng NEW
Jones R CaudyFranceIvan Magalhaes NEGOTIATION
Francesco G OstroskyJapanOnyama Limba UNQUALIFIED
Kaitlin S TollnerGermanyAmy Elsner NEGOTIATION
Nicolas M DilliardItalyAmy Elsner UNQUALIFIED
Johnson A PerinAustraliaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Adams Z KuskoBrazilIoni Bowcher PROPOSAL
Rodrigues R OldroydCanadaAnna Fali UNQUALIFIED
Darci H PerinUnited KingdomOnyama Limba UNQUALIFIED
Jefferson N GillianCanadaAsiya Javayant RENEWAL
Maisha H SaylorsItalyStephen Shaw NEW
Maria Z GauchoItalyXuxue Feng NEW
Murillo B DarakjyFranceIoni Bowcher PROPOSAL
Julie L WaycottSpainIoni Bowcher RENEWAL
Salvatore B InouyeCanadaIvan Magalhaes PROPOSAL
Jones P AlbaresUnited KingdomIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria F TollnerCanada2024-06-06Commercial Press UNQUALIFIED58Amy Elsner
1001Aruna E WieserCanada2024-06-14Printing Dimensions QUALIFIED22Xuxue Feng
1002Izzy F MacleadAustralia2024-06-22Dorl, James J Esq NEGOTIATION47Asiya Javayant
1003Stacey I FigeroaArgentina2024-05-31Commercial Press NEGOTIATION6Ioni Bowcher
1004Isabel R KolmetzBrazil2024-06-15Printing Dimensions NEW28Ioni Bowcher
1005Claire W MacleadCanada2024-06-14Commercial Press PROPOSAL10Onyama Limba
1006Adams Z MaletSpain2024-06-12Dorl, James J Esq RENEWAL40Onyama Limba
1007Antonio A RimArgentina2024-06-20Commercial Press PROPOSAL72Amy Elsner
1008Arvin X DoeFrance2024-06-06Benton, John B Jr PROPOSAL73Bernardo Dominic
1009Wickens S KolmetzSpain2024-06-18Chapman, Ross E Esq RENEWAL47Onyama Limba
1010Tony I TollnerJapan2024-06-04Morlong Associates NEW74Ioni Bowcher
1011Cody A SchemmerFrance2024-06-08Feiner Bros RENEWAL13Amy Elsner
1012Greenwood U SchemmerIndia2024-06-08Printing Dimensions UNQUALIFIED10Bernardo Dominic
1013Antonio T SlusarskiJapan2024-06-03Chapman, Ross E Esq PROPOSAL89Amy Elsner
1014Maria K ChuiIndia2024-06-20Rousseaux, Michael Esq RENEWAL22Stephen Shaw
1015David E FigeroaBrazil2024-06-01Commercial Press NEGOTIATION53Ivan Magalhaes
1016Smith I RutaIndia2024-05-25Benton, John B Jr RENEWAL46Anna Fali
1017James S PoquetteRussia2024-06-16Commercial Press NEW77Anna Fali
1018Alejandro R GarufiSpain2024-05-29Chapman, Ross E Esq PROPOSAL33Stephen Shaw
1019Deepesh V KuskoIndia2024-06-18Feiner Bros RENEWAL87Onyama Limba
1020Francesco R StockhamCanada2024-06-03Buckley Miller Wright UNQUALIFIED75Ivan Magalhaes
1021Salvatore T ChuiGermany2024-05-24Chapman, Ross E Esq RENEWAL1Ivan Magalhaes
1022Aditya S AmigonBrazil2024-06-12Feltz Printing Service NEW87Elwin Sharvill
1023Deepesh W AlbaresCanada2024-06-14Morlong Associates NEGOTIATION99Anna Fali
1024Cody R CampainIndia2024-06-16Rousseaux, Michael Esq NEGOTIATION18Ioni Bowcher
1025Deepesh D VocelkaRussia2024-05-24Feiner Bros QUALIFIED96Stephen Shaw
1026Arvin F NestleItaly2024-06-04Rousseaux, Michael Esq QUALIFIED83Xuxue Feng
1027Aruna I BriddickArgentina2024-05-28Feltz Printing Service RENEWAL52Onyama Limba
1028Emily U MaletSpain2024-06-18Printing Dimensions NEW26Stephen Shaw
1029Ricardo Y RutaJapan2024-05-26King, Christopher A Esq NEGOTIATION47Anna Fali
1030Aditya B DoeAustralia2024-06-08Buckley Miller Wright NEW38Onyama Limba
1031Costa L InouyeBrazil2024-05-28Truhlar And Truhlar Attys RENEWAL48Bernardo Dominic
1032Chavez O PaprockiUnited Kingdom2024-06-20Chapman, Ross E Esq PROPOSAL68Ioni Bowcher
1033Murillo N KolmetzBrazil2024-06-15Buckley Miller Wright NEW95Stephen Shaw
1034Chavez V GillianAustralia2024-06-04King, Christopher A Esq RENEWAL77Anna Fali
1035Adams Y FlosiSpain2024-06-21King, Christopher A Esq RENEWAL19Bernardo Dominic
1036Johnson N MarrierSpain2024-06-11Buckley Miller Wright NEW95Elwin Sharvill
1037Johnson K OldroydJapan2024-06-22Truhlar And Truhlar Attys NEGOTIATION11Asiya Javayant
1038Faith M KolmetzArgentina2024-06-09Chapman, Ross E Esq NEW87Ivan Magalhaes
1039Stacey K DoeCanada2024-06-05Printing Dimensions RENEWAL84Anna Fali
1040Octavia D OstroskyFrance2024-06-17Buckley Miller Wright NEW51Onyama Limba
1041Morrow Z SchemmerUnited Kingdom2024-06-15Truhlar And Truhlar Attys UNQUALIFIED76Onyama Limba
1042Emily P MaletArgentina2024-05-24King, Christopher A Esq UNQUALIFIED41Asiya Javayant
1043Jeanfrancois L TollnerBrazil2024-06-19Printing Dimensions PROPOSAL61Bernardo Dominic
1044Wickens X WhobreyAustralia2024-06-18Feltz Printing Service RENEWAL34Elwin Sharvill
1045Deepesh Q StockhamIndia2024-06-09Rangoni Of Florence NEGOTIATION47Ioni Bowcher
1046Aditya O FlosiItaly2024-05-28King, Christopher A Esq RENEWAL73Xuxue Feng
1047Cody B KuskoJapan2024-06-07Buckley Miller Wright NEGOTIATION80Ioni Bowcher
1048Arvin M OldroydBrazil2024-05-28Printing Dimensions QUALIFIED40Anna Fali
1049Wickens A RimBrazil2024-06-06Feltz Printing Service QUALIFIED93Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Julie G PerinIndiaOnyama Limba RENEWAL
Greenwood T SlusarskiCanadaIoni Bowcher QUALIFIED
Clifford S MorascaGermanyIoni Bowcher PROPOSAL
Faith J OldroydCanadaOnyama Limba UNQUALIFIED
Ivar F MacleadArgentinaIoni Bowcher UNQUALIFIED
Salvatore D TollnerRussiaIvan Magalhaes NEW
Stacey J VenereIndiaIvan Magalhaes RENEWAL
Costa T RutaJapanXuxue Feng NEGOTIATION
Kaitlin K DilliardIndiaAsiya Javayant PROPOSAL
Stacey H CaldareraRussiaElwin Sharvill NEW
Murillo Y CaudyRussiaStephen Shaw QUALIFIED
Jones B SlusarskiSpainStephen Shaw QUALIFIED
Smith T IturbideSpainIoni Bowcher UNQUALIFIED
Alejandro F KolmetzItalyBernardo Dominic NEW
Smith C RulapaughJapanXuxue Feng NEW
Mujtaba V PoquetteJapanBernardo Dominic QUALIFIED
Maria S BowleyJapanIoni Bowcher NEW
Deepesh B StensethBrazilIoni Bowcher PROPOSAL
Aika G FollerGermanyStephen Shaw RENEWAL
Jennifer T RoysterCanadaAsiya Javayant NEGOTIATION
Murillo U MarrierJapanAmy Elsner QUALIFIED
Stacey U MaletArgentinaStephen Shaw PROPOSAL
Kaitlin D FollerRussiaOnyama Limba UNQUALIFIED
Alejandro U DarakjySpainAnna Fali UNQUALIFIED
Claire Y RulapaughIndiaAsiya Javayant UNQUALIFIED
Salvatore U StockhamRussiaStephen Shaw RENEWAL
Ivar F PerinArgentinaAmy Elsner NEW
Alejandro E MaletIndiaStephen Shaw NEW
Cody W RimItalyAnna Fali QUALIFIED
Cody J AlbaresItalyOnyama Limba NEGOTIATION
Octavia W OstroskyFranceAnna Fali PROPOSAL
Sinclair H MacleadJapanXuxue Feng RENEWAL
Jefferson L ChuiAustraliaAmy Elsner NEW
Francesco M PerinGermanyBernardo Dominic NEGOTIATION
Nicolas N FlosiBrazilOnyama Limba PROPOSAL
Salvatore O StensethRussiaIvan Magalhaes RENEWAL
Chavez O BologniaCanadaXuxue Feng QUALIFIED
Izzy L RutaIndiaAmy Elsner NEGOTIATION
Nicolas T NickaCanadaOnyama Limba NEW
James R ChuiArgentinaAnna Fali NEGOTIATION
Jones K VocelkaItalyAsiya Javayant NEW
Tony L NickaSpainAsiya Javayant RENEWAL
Clifford Q VenereAustraliaElwin Sharvill NEGOTIATION
Smith Z BowleyRussiaBernardo Dominic UNQUALIFIED
Aruna A MacleadArgentinaOnyama Limba NEW
Silvio R StockhamBrazilAmy Elsner PROPOSAL
David B StensethUnited KingdomElwin Sharvill RENEWAL
Deepesh Z NestleArgentinaAsiya Javayant NEGOTIATION
Ricardo X PerinCanadaXuxue Feng QUALIFIED
Smith L MorascaAustraliaBernardo Dominic NEW
Frozen Columns
Name
David Y Figeroa
Misaki H Briddick
Claire V Gaucho
Jefferson B Wieser
Rodrigues U Oldroyd
Stacey Z Figeroa
Tony I Foller
Mayumi C Flosi
Faith Q Slusarski
Izzy U Albares
Arvin V Darakjy
Wickens P Venere
Octavia O Inouye
Munro E Gillian
Aditya Q Perin
Sinclair O Slusarski
Jones O Darakjy
Ricardo N Albares
Aditya J Glick
Kaitlin U Shinko
Ivar B Gaucho
Jeanfrancois A Figeroa
Smith D Saylors
Leon H Rulapaugh
Jones T Shinko
Ashley Y Kolmetz
Rodrigues G Nicka
Maisha F Ruta
Jefferson E Kusko
Stacey X Saylors
Salvatore T Nestle
Adams Q Chui
Ricardo P Dilliard
Jones B Tollner
Emily T Albares
Mayumi C Marrier
Juan Y Darakjy
Greenwood R Stenseth
Aika H Stenseth
Leja A Poquette
Mayumi Q Vocelka
Maisha Q Malet
Cody K Vocelka
Arvin A Flosi
Mujtaba O Waycott
Sinclair O Nestle
Jefferson I Rulapaugh
Julie X Dilliard
Kaitlin Z Sergi
Kadeem Q Foller
IdCountryDate
1000Germany2024-06-07
1001Australia2024-05-26
1002France2024-06-01
1003Spain2024-06-06
1004India2024-05-26
1005Italy2024-06-10
1006Germany2024-06-22
1007Germany2024-06-01
1008France2024-05-31
1009Japan2024-06-20
1010Argentina2024-06-03
1011Canada2024-06-17
1012Spain2024-06-15
1013Spain2024-05-25
1014India2024-06-11
1015Argentina2024-05-24
1016Brazil2024-06-05
1017Canada2024-05-31
1018Russia2024-05-26
1019Spain2024-06-12
1020Brazil2024-06-06
1021Italy2024-06-08
1022Spain2024-06-22
1023Argentina2024-06-04
1024France2024-05-27
1025Russia2024-06-18
1026France2024-05-29
1027United Kingdom2024-05-31
1028Argentina2024-06-22
1029United Kingdom2024-06-10
1030Canada2024-05-26
1031United Kingdom2024-06-21
1032Japan2024-06-12
1033Argentina2024-06-04
1034Australia2024-06-12
1035France2024-06-01
1036Germany2024-06-16
1037India2024-06-03
1038Australia2024-05-31
1039Russia2024-06-18
1040United Kingdom2024-05-26
1041Japan2024-05-26
1042Japan2024-06-11
1043Japan2024-05-24
1044India2024-05-30
1045Japan2024-05-28
1046Canada2024-06-15
1047Italy2024-05-28
1048India2024-06-17
1049United Kingdom2024-06-18

On-Demand Data

NameIdCountryDate
Silvio P Nestle1000Argentina2024-06-13
Sinclair B Briddick1001Canada2024-06-17
Salvatore D Garufi1002Germany2024-05-26
Aruna T Venere1003Spain2024-05-24
Mayumi R Bolognia1004Canada2024-06-15
Adams O Malet1005Japan2024-06-05
Nicolas K Bolognia1006Brazil2024-06-13
Misaki G Tollner1007India2024-06-11
Mayumi W Bowley1008Brazil2024-05-24
Francesco V Nestle1009Japan2024-05-25
Julie S Vocelka1010Australia2024-06-04
Murillo X Nicka1011Italy2024-06-21
Aditya M Stenseth1012Italy2024-05-25
Maria I Gillian1013Brazil2024-05-31
Cody N Slusarski1014France2024-06-16
Darci K Royster1015Russia2024-06-03
Emily P Campain1016Brazil2024-05-26
Emily Z Ferencz1017Australia2024-05-30
Smith A Kolmetz1018Japan2024-06-10
Kaitlin H Venere1019Spain2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem J FlosiIndiaBernardo Dominic QUALIFIED
Salvatore L StensethItalyXuxue Feng NEGOTIATION
Jones I CaudyBrazilXuxue Feng UNQUALIFIED
Costa D IturbideBrazilIoni Bowcher NEGOTIATION
Jeanfrancois E WieserCanadaOnyama Limba NEW
Wickens J NestleAustraliaIoni Bowcher UNQUALIFIED
Maisha X StockhamUnited KingdomAmy Elsner QUALIFIED
Octavia H CampainAustraliaOnyama Limba RENEWAL
Adams X StensethSpainOnyama Limba NEGOTIATION
Ricardo S SchemmerJapanIvan Magalhaes QUALIFIED
Aruna U PaprockiJapanElwin Sharvill PROPOSAL
Jennifer Z FigeroaJapanAsiya Javayant NEGOTIATION
Ricardo A StockhamBrazilOnyama Limba PROPOSAL
Costa X DarakjyItalyElwin Sharvill PROPOSAL
Leon Q PerinRussiaIoni Bowcher NEW
Johnson U DoeUnited KingdomOnyama Limba RENEWAL
Alejandro Q MaletAustraliaStephen Shaw QUALIFIED
Octavia E MaletItalyAsiya Javayant UNQUALIFIED
Jones Z KuskoJapanElwin Sharvill NEW
Deepesh Y ShinkoGermanyBernardo Dominic PROPOSAL
Mujtaba U MaletAustraliaAsiya Javayant QUALIFIED
Morrow P ButtIndiaXuxue Feng NEGOTIATION
Jeanfrancois J DarakjyCanadaStephen Shaw QUALIFIED
Silvio S NestleAustraliaStephen Shaw NEW
Adams V DarakjySpainBernardo Dominic NEW
Misaki J FlosiJapanAnna Fali RENEWAL
Aruna X FigeroaFranceXuxue Feng UNQUALIFIED
Octavia M RutaItalyAsiya Javayant NEGOTIATION
Arvin A AlbaresCanadaIoni Bowcher NEW
Darci Y NickaCanadaAsiya Javayant NEGOTIATION
Aruna U MorascaCanadaOnyama Limba NEW
Kadeem X DoeBrazilAnna Fali NEW
Nicolas V DilliardAustraliaIvan Magalhaes NEW
Clifford D RutaRussiaStephen Shaw PROPOSAL
Nicolas S FlosiGermanyBernardo Dominic RENEWAL
David E ButtRussiaElwin Sharvill QUALIFIED
Aditya C StensethArgentinaAnna Fali NEGOTIATION
Kaitlin X CampainIndiaIvan Magalhaes UNQUALIFIED
Emily H PerinArgentinaXuxue Feng NEW
Wickens K GlickJapanAmy Elsner 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>