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
Wickens Q FlosiItalyAnna Fali UNQUALIFIED
Cody C GillianSpainAnna Fali NEGOTIATION
Mujtaba I CaudyAustraliaIoni Bowcher QUALIFIED
Antonio X IturbideArgentinaIvan Magalhaes NEW
Salvatore D GlickJapanAsiya Javayant NEW
Isabel A MaletIndiaIoni Bowcher RENEWAL
Wickens R MarrierFranceBernardo Dominic NEGOTIATION
Silvio D FigeroaFranceStephen Shaw NEW
Jones C FerenczUnited KingdomXuxue Feng NEGOTIATION
Nicolas T ButtBrazilElwin Sharvill QUALIFIED
Johnson X GarufiCanadaBernardo Dominic NEGOTIATION
Tony I FollerGermanyIoni Bowcher QUALIFIED
Alejandro S DoeCanadaXuxue Feng NEGOTIATION
Ricardo R ShinkoIndiaAnna Fali QUALIFIED
Chavez U FigeroaIndiaAnna Fali PROPOSAL
Munro T RoysterBrazilOnyama Limba NEGOTIATION
Silvio W VenereGermanyStephen Shaw QUALIFIED
Aruna B BriddickArgentinaElwin Sharvill RENEWAL
Wickens L FlosiAustraliaXuxue Feng NEGOTIATION
James O GillianFranceBernardo Dominic QUALIFIED
Leon Z WhobreyFranceElwin Sharvill NEW
Ricardo U WieserRussiaAsiya Javayant UNQUALIFIED
David R MacleadFranceElwin Sharvill UNQUALIFIED
Julie W SaylorsBrazilIvan Magalhaes UNQUALIFIED
Sinclair A WieserAustraliaIvan Magalhaes RENEWAL
Clifford S DilliardFranceAnna Fali PROPOSAL
Adams D OldroydArgentinaAsiya Javayant RENEWAL
Rodrigues H WhobreyAustraliaAmy Elsner RENEWAL
Adams T KuskoBrazilOnyama Limba UNQUALIFIED
Alejandro Y StensethGermanyAnna Fali NEGOTIATION
Johnson I FerenczSpainAnna Fali QUALIFIED
Leja K MacleadIndiaIoni Bowcher QUALIFIED
Clifford I FlosiItalyAsiya Javayant UNQUALIFIED
Leon J DarakjyItalyOnyama Limba QUALIFIED
Silvio N GarufiJapanStephen Shaw QUALIFIED
Stacey W DarakjyIndiaXuxue Feng PROPOSAL
Smith V GarufiRussiaXuxue Feng NEGOTIATION
Morrow N SaylorsAustraliaBernardo Dominic RENEWAL
Greenwood N SergiJapanBernardo Dominic UNQUALIFIED
Cody S SlusarskiJapanOnyama Limba UNQUALIFIED
Adams T GillianSpainStephen Shaw PROPOSAL
Claire V AmigonCanadaElwin Sharvill UNQUALIFIED
Alejandro F OstroskyAustraliaElwin Sharvill UNQUALIFIED
Darci T InouyeUnited KingdomIvan Magalhaes QUALIFIED
Stacey X ChuiBrazilStephen Shaw NEW
Salvatore A GlickJapanAmy Elsner QUALIFIED
Emily I BologniaIndiaAnna Fali QUALIFIED
Ivar G AlbaresCanadaAmy Elsner PROPOSAL
Smith M TollnerCanadaXuxue Feng NEW
Ivar X MaletIndiaIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Aika C DoeCanadaAmy Elsner NEW
Cody J RutaFranceIoni Bowcher NEW
Leon O FigeroaAustraliaIvan Magalhaes PROPOSAL
Alejandro E GlickRussiaAmy Elsner UNQUALIFIED
Mayumi X MorascaIndiaAmy Elsner QUALIFIED
Cody O BowleyAustraliaElwin Sharvill PROPOSAL
Greenwood U MaletCanadaAmy Elsner UNQUALIFIED
Tony E MaletAustraliaIvan Magalhaes QUALIFIED
Morrow A MarrierJapanIoni Bowcher NEGOTIATION
Juan K FollerAustraliaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem T OldroydJapan2024-06-16Commercial Press UNQUALIFIED19Amy Elsner
1001Jones V NestleSpain2024-05-26Chanay, Jeffrey A Esq NEGOTIATION53Xuxue Feng
1002Salvatore O GarufiGermany2024-06-04Benton, John B Jr PROPOSAL94Xuxue Feng
1003Munro T GarufiUnited Kingdom2024-05-20Chemel, James L Cpa NEW24Amy Elsner
1004Murillo M StockhamIndia2024-06-11King, Christopher A Esq NEGOTIATION2Bernardo Dominic
1005Jones T OstroskyUnited Kingdom2024-05-27Rousseaux, Michael Esq NEGOTIATION32Anna Fali
1006Kadeem H SlusarskiBrazil2024-05-28Printing Dimensions UNQUALIFIED28Ivan Magalhaes
1007Ivar B VocelkaRussia2024-05-20Chapman, Ross E Esq UNQUALIFIED2Anna Fali
1008David B FerenczRussia2024-06-18Commercial Press RENEWAL67Stephen Shaw
1009James W SergiUnited Kingdom2024-06-04Benton, John B Jr PROPOSAL66Xuxue Feng
1010Misaki I GillianArgentina2024-06-03Feltz Printing Service RENEWAL58Onyama Limba
1011Smith C RoysterAustralia2024-06-09Benton, John B Jr RENEWAL43Ioni Bowcher
1012Wickens K GauchoRussia2024-05-29Dorl, James J Esq NEW22Stephen Shaw
1013Chavez H ButtCanada2024-05-29Chanay, Jeffrey A Esq QUALIFIED19Elwin Sharvill
1014Tony W GillianItaly2024-06-08Morlong Associates RENEWAL24Ivan Magalhaes
1015Jennifer G RoysterArgentina2024-06-14Feltz Printing Service NEW22Amy Elsner
1016Kaitlin S GauchoUnited Kingdom2024-06-16King, Christopher A Esq NEW11Asiya Javayant
1017Ricardo Y SchemmerRussia2024-06-01Rangoni Of Florence NEGOTIATION60Bernardo Dominic
1018Jefferson H ShinkoArgentina2024-05-22Chemel, James L Cpa UNQUALIFIED49Anna Fali
1019Leon F FigeroaGermany2024-05-26Benton, John B Jr UNQUALIFIED22Amy Elsner
1020Greenwood A RulapaughFrance2024-06-02Rousseaux, Michael Esq PROPOSAL77Onyama Limba
1021Jennifer W TollnerArgentina2024-06-09Rangoni Of Florence UNQUALIFIED46Anna Fali
1022Izzy K FollerAustralia2024-05-30Morlong Associates RENEWAL2Stephen Shaw
1023Alejandro T KuskoIndia2024-06-14Morlong Associates NEW14Xuxue Feng
1024Faith T PoquetteUnited Kingdom2024-06-08Commercial Press NEGOTIATION61Stephen Shaw
1025Murillo C RulapaughSpain2024-05-26Commercial Press RENEWAL74Onyama Limba
1026Sinclair D BowleyJapan2024-06-14Chemel, James L Cpa PROPOSAL29Ioni Bowcher
1027Mujtaba R BologniaItaly2024-05-24Buckley Miller Wright NEW25Stephen Shaw
1028Cody T RutaItaly2024-06-09Commercial Press PROPOSAL9Ioni Bowcher
1029Ricardo S BriddickJapan2024-06-17King, Christopher A Esq NEGOTIATION24Asiya Javayant
1030Ricardo G BologniaCanada2024-05-26Chanay, Jeffrey A Esq QUALIFIED96Anna Fali
1031Rodrigues T MorascaArgentina2024-06-09Commercial Press RENEWAL41Stephen Shaw
1032Adams W RimCanada2024-06-07Feiner Bros RENEWAL48Ivan Magalhaes
1033Darci K CaldareraFrance2024-06-02Feiner Bros UNQUALIFIED47Onyama Limba
1034Costa Y StockhamJapan2024-05-28Feltz Printing Service RENEWAL39Ivan Magalhaes
1035Johnson O IturbideBrazil2024-06-03Commercial Press RENEWAL71Elwin Sharvill
1036Costa U SchemmerIndia2024-06-06Dorl, James J Esq UNQUALIFIED50Amy Elsner
1037Costa X MaletUnited Kingdom2024-06-07Commercial Press RENEWAL83Anna Fali
1038Salvatore C AlbaresItaly2024-06-10Morlong Associates QUALIFIED40Onyama Limba
1039Chavez R SaylorsSpain2024-06-02Feiner Bros NEW84Bernardo Dominic
1040David N WieserBrazil2024-06-17Buckley Miller Wright UNQUALIFIED85Onyama Limba
1041Claire M OldroydBrazil2024-06-05Rangoni Of Florence UNQUALIFIED96Anna Fali
1042Jones Z VenereSpain2024-06-03Commercial Press UNQUALIFIED94Xuxue Feng
1043Jefferson C MaletArgentina2024-05-21Rangoni Of Florence UNQUALIFIED38Ivan Magalhaes
1044Leja W WieserBrazil2024-05-24King, Christopher A Esq RENEWAL69Ioni Bowcher
1045Costa L SergiBrazil2024-06-18Feltz Printing Service UNQUALIFIED86Ioni Bowcher
1046David G StensethFrance2024-05-20Benton, John B Jr PROPOSAL12Bernardo Dominic
1047Cody N SergiFrance2024-06-06Printing Dimensions NEGOTIATION91Elwin Sharvill
1048Deepesh O VocelkaFrance2024-05-26Chanay, Jeffrey A Esq NEW10Ioni Bowcher
1049David G MacleadJapan2024-05-23Rangoni Of Florence NEW95Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ricardo C FerenczRussiaIvan Magalhaes PROPOSAL
Maisha S MorascaCanadaBernardo Dominic RENEWAL
Wickens N SchemmerCanadaOnyama Limba NEW
Misaki I BologniaUnited KingdomBernardo Dominic NEW
Ricardo T GauchoRussiaAsiya Javayant NEW
Francesco U StensethRussiaIvan Magalhaes QUALIFIED
Leon V MacleadCanadaOnyama Limba PROPOSAL
Nicolas W ChuiCanadaXuxue Feng PROPOSAL
Julie T BowleyGermanyStephen Shaw UNQUALIFIED
Nicolas Q SchemmerCanadaIoni Bowcher NEW
Stacey L RoysterFranceIvan Magalhaes RENEWAL
Kaitlin Y OstroskyGermanyStephen Shaw NEGOTIATION
Jeanfrancois O FlosiUnited KingdomAsiya Javayant NEW
Sinclair B FerenczArgentinaBernardo Dominic QUALIFIED
Stacey O MaletUnited KingdomXuxue Feng NEGOTIATION
Mujtaba E DarakjyGermanyElwin Sharvill QUALIFIED
Isabel W FollerArgentinaOnyama Limba RENEWAL
Ivar V WaycottArgentinaBernardo Dominic NEW
Cody X PoquetteRussiaElwin Sharvill PROPOSAL
Julie U MarrierFranceBernardo Dominic PROPOSAL
Mujtaba N GlickArgentinaIvan Magalhaes NEGOTIATION
Aruna Y DoeSpainAsiya Javayant RENEWAL
Munro N AmigonItalyBernardo Dominic NEGOTIATION
Deepesh L CaldareraRussiaXuxue Feng NEW
Sinclair E WhobreyRussiaAsiya Javayant NEW
Maria H RutaJapanStephen Shaw RENEWAL
Maria A MarrierBrazilIvan Magalhaes PROPOSAL
Deepesh P SlusarskiItalyIoni Bowcher NEGOTIATION
Chavez B StensethArgentinaOnyama Limba UNQUALIFIED
Greenwood P VocelkaRussiaAmy Elsner NEW
Kaitlin Z VenereCanadaAsiya Javayant PROPOSAL
Isabel J FerenczCanadaBernardo Dominic NEGOTIATION
Jennifer U MaletCanadaXuxue Feng NEGOTIATION
Murillo J FlosiUnited KingdomBernardo Dominic UNQUALIFIED
Sinclair A MaletUnited KingdomAnna Fali RENEWAL
Nicolas V SergiJapanXuxue Feng RENEWAL
Leja B AlbaresSpainXuxue Feng NEGOTIATION
Jennifer I WhobreyFranceBernardo Dominic RENEWAL
Costa Q ShinkoRussiaIvan Magalhaes RENEWAL
Johnson C MacleadUnited KingdomXuxue Feng QUALIFIED
Izzy X ChuiAustraliaAsiya Javayant RENEWAL
Cody W OstroskyGermanyElwin Sharvill UNQUALIFIED
James Q KuskoUnited KingdomXuxue Feng QUALIFIED
Kaitlin R BowleyJapanAsiya Javayant RENEWAL
James R RimAustraliaIvan Magalhaes NEW
Aditya V MorascaRussiaAnna Fali NEW
Adams Q KuskoJapanOnyama Limba QUALIFIED
Mujtaba X GauchoAustraliaOnyama Limba RENEWAL
Rodrigues N NickaJapanAnna Fali RENEWAL
Clifford K RulapaughFranceAmy Elsner RENEWAL
Frozen Columns
Name
Aika R Shinko
Arvin U Poquette
Kaitlin L Kolmetz
Aika R Venere
Sinclair P Oldroyd
Deepesh A Rim
Leja Y Caudy
Izzy C Marrier
Jefferson O Amigon
Leja X Chui
Ivar I Iturbide
Jones H Vocelka
Smith P Bowley
Isabel I Oldroyd
Greenwood E Slusarski
Claire P Ferencz
Izzy T Bolognia
Adams F Marrier
Silvio Y Foller
Aika Q Wieser
Leja U Stockham
Silvio Z Albares
Julie M Marrier
Sinclair Z Ostrosky
Tony T Stockham
Jefferson A Ruta
Emily F Caldarera
Munro A Glick
Darci D Briddick
Izzy G Bowley
Greenwood O Slusarski
Greenwood X Tollner
James Z Foller
Jones H Butt
Juan D Stenseth
Ashley A Figeroa
Smith B Gillian
Antonio T Whobrey
Faith I Gillian
Jones F Ruta
David U Rulapaugh
Antonio G Chui
Adams W Malet
Adams M Maclead
Smith G Gillian
Aruna A Gillian
Kadeem I Chui
Tony D Darakjy
Munro Y Foller
Ricardo F Nestle
IdCountryDate
1000Russia2024-06-08
1001Germany2024-06-13
1002India2024-06-14
1003Russia2024-05-31
1004Russia2024-05-24
1005Brazil2024-05-21
1006Russia2024-06-01
1007Australia2024-06-14
1008Brazil2024-05-23
1009Argentina2024-05-30
1010United Kingdom2024-06-10
1011Italy2024-06-07
1012India2024-05-23
1013Japan2024-06-15
1014Russia2024-05-24
1015Australia2024-06-01
1016Japan2024-06-01
1017Italy2024-06-01
1018Australia2024-06-02
1019India2024-06-11
1020United Kingdom2024-05-26
1021Australia2024-06-07
1022Argentina2024-06-14
1023France2024-05-23
1024Italy2024-05-29
1025Brazil2024-06-14
1026United Kingdom2024-06-03
1027Australia2024-06-08
1028Canada2024-06-01
1029Italy2024-06-13
1030Japan2024-05-25
1031Australia2024-05-23
1032India2024-06-15
1033Japan2024-05-25
1034Brazil2024-06-18
1035India2024-05-24
1036Argentina2024-06-15
1037India2024-06-06
1038Brazil2024-06-09
1039Brazil2024-06-11
1040Russia2024-05-20
1041United Kingdom2024-06-11
1042United Kingdom2024-06-17
1043Germany2024-06-17
1044Italy2024-05-31
1045Japan2024-05-26
1046United Kingdom2024-05-31
1047Australia2024-05-24
1048Italy2024-06-05
1049Brazil2024-05-29

On-Demand Data

NameIdCountryDate
Antonio C Venere1000Italy2024-06-12
Rodrigues S Oldroyd1001Germany2024-06-08
Mayumi O Waycott1002Russia2024-06-12
Arvin F Caldarera1003Germany2024-06-10
Stacey I Chui1004India2024-05-29
Ricardo K Glick1005Argentina2024-05-24
Stacey E Vocelka1006India2024-06-06
Clifford F Rim1007Argentina2024-05-20
Leon B Butt1008Italy2024-05-20
Adams C Foller1009France2024-06-14
Darci Z Stockham1010India2024-06-16
Kaitlin A Butt1011Japan2024-06-16
Mujtaba S Iturbide1012Spain2024-05-31
Jennifer B Kolmetz1013Argentina2024-06-08
Cody W Stockham1014France2024-06-16
Jones L Gillian1015United Kingdom2024-06-09
Antonio A Maclead1016France2024-06-11
Ricardo I Nicka1017Japan2024-06-06
Clifford J Caudy1018Argentina2024-06-03
Tony L Kusko1019Italy2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya S FigeroaGermanyStephen Shaw NEW
Darci T RimIndiaAmy Elsner PROPOSAL
Maria Z PoquetteIndiaXuxue Feng NEGOTIATION
Tony V AmigonBrazilAnna Fali PROPOSAL
Stacey G PerinAustraliaStephen Shaw RENEWAL
Adams G CampainIndiaAnna Fali PROPOSAL
Emily G RulapaughSpainIoni Bowcher PROPOSAL
Silvio G CampainUnited KingdomXuxue Feng QUALIFIED
Deepesh V ButtAustraliaAsiya Javayant NEW
Ashley T RimArgentinaAsiya Javayant UNQUALIFIED
Nicolas B DilliardItalyIvan Magalhaes RENEWAL
Morrow Y NickaJapanElwin Sharvill QUALIFIED
Aruna R PoquetteAustraliaBernardo Dominic NEGOTIATION
Johnson B ShinkoCanadaBernardo Dominic NEGOTIATION
Wickens W DilliardGermanyBernardo Dominic NEGOTIATION
Faith D KolmetzUnited KingdomAsiya Javayant QUALIFIED
Francesco P GarufiArgentinaStephen Shaw NEGOTIATION
Tony Y InouyeIndiaOnyama Limba QUALIFIED
Darci M IturbideBrazilAmy Elsner PROPOSAL
Jennifer K WhobreyItalyAnna Fali UNQUALIFIED
Kaitlin A MaletCanadaBernardo Dominic NEW
Deepesh E SlusarskiJapanXuxue Feng NEW
Costa G StensethArgentinaBernardo Dominic PROPOSAL
Ivar G IturbideJapanOnyama Limba RENEWAL
Izzy Z WhobreyFranceAnna Fali RENEWAL
Ashley O ChuiAustraliaAnna Fali QUALIFIED
Silvio G CaudyGermanyOnyama Limba QUALIFIED
Emily J IturbideJapanIvan Magalhaes NEW
Misaki Z ShinkoUnited KingdomIoni Bowcher NEGOTIATION
Johnson Y RoysterArgentinaAmy Elsner RENEWAL
Wickens T StockhamItalyIvan Magalhaes NEGOTIATION
Francesco S NestleItalyIvan Magalhaes NEW
Nicolas W FerenczGermanyOnyama Limba PROPOSAL
Wickens V SchemmerSpainStephen Shaw NEGOTIATION
Munro G RimItalyBernardo Dominic QUALIFIED
Wickens Z BowleyCanadaAsiya Javayant NEW
Claire T OldroydGermanyOnyama Limba PROPOSAL
Alejandro T RoysterGermanyXuxue Feng NEW
Jones Q ChuiGermanyAsiya Javayant PROPOSAL
Alejandro P ShinkoFranceAnna Fali NEW

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