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
Antonio X BologniaItalyXuxue Feng NEGOTIATION
Chavez C MacleadBrazilXuxue Feng UNQUALIFIED
Isabel X PoquetteItalyAmy Elsner NEW
Munro M ButtFranceElwin Sharvill NEGOTIATION
Salvatore X RutaItalyIoni Bowcher QUALIFIED
Salvatore Z KolmetzArgentinaAnna Fali QUALIFIED
Maisha L VenereGermanyStephen Shaw RENEWAL
Deepesh R TollnerItalyAsiya Javayant UNQUALIFIED
Deepesh O FigeroaBrazilElwin Sharvill RENEWAL
Aika K MaletIndiaAmy Elsner UNQUALIFIED
Jones O PoquetteItalyAsiya Javayant PROPOSAL
Murillo Z GillianFranceXuxue Feng PROPOSAL
Maisha T VocelkaCanadaStephen Shaw QUALIFIED
Antonio I KolmetzSpainOnyama Limba NEW
Ricardo G CaldareraFranceElwin Sharvill PROPOSAL
Jennifer W ChuiItalyAnna Fali UNQUALIFIED
Jennifer N MaletAustraliaStephen Shaw PROPOSAL
Kadeem P MarrierUnited KingdomAnna Fali QUALIFIED
Claire S FlosiJapanIoni Bowcher UNQUALIFIED
Francesco Y RulapaughJapanBernardo Dominic UNQUALIFIED
Kadeem K VocelkaCanadaIoni Bowcher RENEWAL
Maisha A InouyeCanadaAmy Elsner NEGOTIATION
Francesco K FlosiAustraliaIvan Magalhaes NEW
Chavez M SlusarskiUnited KingdomBernardo Dominic NEGOTIATION
Arvin D MorascaBrazilAmy Elsner NEGOTIATION
Kaitlin A KuskoArgentinaStephen Shaw NEW
Octavia L SergiRussiaAsiya Javayant PROPOSAL
Johnson A MaletBrazilOnyama Limba QUALIFIED
Deepesh J GillianRussiaAmy Elsner QUALIFIED
Misaki J AlbaresFranceIoni Bowcher NEGOTIATION
Isabel L KuskoCanadaXuxue Feng NEW
Leon N VocelkaBrazilAmy Elsner NEGOTIATION
Mujtaba P ChuiCanadaStephen Shaw PROPOSAL
Julie K BologniaUnited KingdomIoni Bowcher RENEWAL
Leja L WaycottUnited KingdomStephen Shaw UNQUALIFIED
James S NickaRussiaBernardo Dominic NEW
Julie N DarakjyUnited KingdomAnna Fali NEGOTIATION
Julie L OstroskySpainIvan Magalhaes RENEWAL
Darci O MacleadGermanyStephen Shaw NEW
Mujtaba K WieserArgentinaElwin Sharvill UNQUALIFIED
Cody A GillianFranceIvan Magalhaes UNQUALIFIED
Mujtaba I FerenczSpainOnyama Limba QUALIFIED
Salvatore O AmigonItalyBernardo Dominic QUALIFIED
Claire Y ShinkoItalyStephen Shaw UNQUALIFIED
Ivar Z MorascaJapanBernardo Dominic PROPOSAL
Aika N FigeroaCanadaXuxue Feng NEGOTIATION
Rodrigues J StensethSpainAmy Elsner QUALIFIED
Arvin B AmigonIndiaAmy Elsner RENEWAL
Arvin R ShinkoBrazilIvan Magalhaes NEGOTIATION
Smith Z RulapaughAustraliaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Mujtaba C StensethArgentinaStephen Shaw RENEWAL
Ashley O StockhamJapanAnna Fali PROPOSAL
Costa R MacleadItalyXuxue Feng RENEWAL
Jeanfrancois H CaldareraItalyBernardo Dominic UNQUALIFIED
Ivar V VenereJapanAsiya Javayant UNQUALIFIED
Morrow L FollerArgentinaStephen Shaw RENEWAL
Mujtaba U AmigonArgentinaElwin Sharvill QUALIFIED
Morrow G DarakjyUnited KingdomAmy Elsner QUALIFIED
Salvatore F MaletFranceBernardo Dominic PROPOSAL
Isabel R KuskoUnited KingdomElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson S PoquetteCanada2024-05-27Benton, John B Jr RENEWAL57Stephen Shaw
1001Izzy I FerenczCanada2024-06-14Dorl, James J Esq PROPOSAL85Ioni Bowcher
1002Clifford N BriddickCanada2024-06-17Chapman, Ross E Esq PROPOSAL31Bernardo Dominic
1003Greenwood N StensethCanada2024-06-10Buckley Miller Wright RENEWAL62Amy Elsner
1004Aika D CaudyBrazil2024-06-01Rangoni Of Florence RENEWAL29Anna Fali
1005Kadeem C WaycottFrance2024-05-30Chanay, Jeffrey A Esq QUALIFIED13Elwin Sharvill
1006Johnson B BriddickCanada2024-06-12Chanay, Jeffrey A Esq NEW13Stephen Shaw
1007Deepesh F FigeroaJapan2024-06-19Commercial Press NEGOTIATION27Ioni Bowcher
1008Alejandro B FollerUnited Kingdom2024-05-31Feltz Printing Service QUALIFIED77Ivan Magalhaes
1009Stacey N PerinIndia2024-05-28Rangoni Of Florence NEW58Bernardo Dominic
1010Emily O SchemmerJapan2024-06-13Rousseaux, Michael Esq NEW52Amy Elsner
1011Faith Y GauchoSpain2024-05-27Chapman, Ross E Esq UNQUALIFIED50Elwin Sharvill
1012Johnson A NestleBrazil2024-05-27King, Christopher A Esq NEGOTIATION48Anna Fali
1013Antonio T CampainUnited Kingdom2024-05-31Chemel, James L Cpa RENEWAL37Xuxue Feng
1014Faith Y InouyeJapan2024-06-21Commercial Press NEW0Amy Elsner
1015Mujtaba C PaprockiUnited Kingdom2024-05-29Benton, John B Jr RENEWAL45Onyama Limba
1016Jeanfrancois U BriddickFrance2024-06-05Commercial Press PROPOSAL44Bernardo Dominic
1017Costa B PaprockiJapan2024-06-08Morlong Associates RENEWAL28Anna Fali
1018Antonio B PaprockiCanada2024-06-09Chapman, Ross E Esq RENEWAL79Anna Fali
1019Silvio X DarakjyRussia2024-06-09Feltz Printing Service UNQUALIFIED61Xuxue Feng
1020Leja V WieserItaly2024-06-03King, Christopher A Esq NEGOTIATION45Xuxue Feng
1021Cody X RoysterRussia2024-05-26Dorl, James J Esq QUALIFIED0Amy Elsner
1022Arvin M DilliardCanada2024-06-07Feiner Bros RENEWAL56Amy Elsner
1023Maria S WaycottRussia2024-06-07King, Christopher A Esq NEGOTIATION50Elwin Sharvill
1024Alejandro V TollnerItaly2024-05-30King, Christopher A Esq NEGOTIATION37Ivan Magalhaes
1025Alejandro Q FigeroaSpain2024-05-25Morlong Associates NEW14Xuxue Feng
1026Johnson Q CampainUnited Kingdom2024-06-15Chanay, Jeffrey A Esq NEW52Bernardo Dominic
1027Faith H MacleadUnited Kingdom2024-05-30Buckley Miller Wright PROPOSAL75Stephen Shaw
1028Nicolas E RutaIndia2024-05-30Commercial Press NEW83Anna Fali
1029Misaki B SaylorsAustralia2024-05-31Feiner Bros QUALIFIED20Stephen Shaw
1030David J TollnerCanada2024-05-29Printing Dimensions RENEWAL41Amy Elsner
1031Alejandro P MorascaAustralia2024-06-11Commercial Press NEW50Bernardo Dominic
1032Mayumi V KuskoFrance2024-06-04Feiner Bros NEW81Anna Fali
1033Aruna Z AlbaresIndia2024-06-22Rousseaux, Michael Esq QUALIFIED71Elwin Sharvill
1034Faith O SchemmerFrance2024-06-12Dorl, James J Esq UNQUALIFIED53Asiya Javayant
1035Francesco G ButtCanada2024-05-29King, Christopher A Esq RENEWAL26Amy Elsner
1036Isabel P AmigonBrazil2024-05-26Chapman, Ross E Esq RENEWAL37Ivan Magalhaes
1037Deepesh P DarakjyGermany2024-06-09Feltz Printing Service RENEWAL83Elwin Sharvill
1038Mayumi W InouyeFrance2024-06-13Feiner Bros QUALIFIED68Onyama Limba
1039Cody R FollerGermany2024-06-18Chapman, Ross E Esq NEGOTIATION1Amy Elsner
1040Aika Q StensethBrazil2024-06-14Chapman, Ross E Esq QUALIFIED29Amy Elsner
1041Stacey E WhobreyFrance2024-05-29Feltz Printing Service PROPOSAL3Ivan Magalhaes
1042Antonio Q FerenczCanada2024-06-10Printing Dimensions UNQUALIFIED42Onyama Limba
1043Stacey P NestleRussia2024-06-20Chanay, Jeffrey A Esq NEW34Anna Fali
1044Ashley M MaletBrazil2024-06-05Morlong Associates PROPOSAL96Xuxue Feng
1045Aditya I WieserIndia2024-06-09Buckley Miller Wright NEW58Stephen Shaw
1046Aditya T OldroydFrance2024-06-08Chapman, Ross E Esq NEW32Bernardo Dominic
1047Nicolas X BriddickIndia2024-06-11Benton, John B Jr RENEWAL58Ivan Magalhaes
1048Murillo R DoeItaly2024-06-21King, Christopher A Esq QUALIFIED57Amy Elsner
1049Ricardo P SaylorsFrance2024-06-04Rangoni Of Florence UNQUALIFIED8Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin V DoeBrazilStephen Shaw QUALIFIED
Silvio U RoysterBrazilXuxue Feng NEW
Greenwood Z NestleItalyOnyama Limba RENEWAL
Misaki E GillianItalyOnyama Limba NEW
Silvio B IturbideSpainAnna Fali NEGOTIATION
Kaitlin I KolmetzRussiaOnyama Limba NEW
Jennifer L BowleyItalyOnyama Limba PROPOSAL
Adams S NickaArgentinaAnna Fali UNQUALIFIED
Greenwood G MacleadBrazilAnna Fali RENEWAL
Jeanfrancois D BologniaSpainIoni Bowcher RENEWAL
Jones O VocelkaItalyAsiya Javayant NEGOTIATION
Johnson Z WaycottItalyIoni Bowcher RENEWAL
Juan U NickaRussiaStephen Shaw RENEWAL
Julie D DilliardIndiaElwin Sharvill NEW
Adams T NickaJapanIoni Bowcher NEW
Aruna S BowleyBrazilBernardo Dominic NEGOTIATION
Rodrigues H PoquetteAustraliaBernardo Dominic UNQUALIFIED
Julie O GauchoCanadaOnyama Limba PROPOSAL
Faith K MorascaIndiaIoni Bowcher PROPOSAL
Maisha G WhobreyRussiaOnyama Limba NEW
Silvio V FollerCanadaAmy Elsner NEW
Mujtaba U KuskoArgentinaIoni Bowcher NEGOTIATION
Isabel Y SaylorsUnited KingdomAsiya Javayant UNQUALIFIED
Kadeem V MorascaSpainOnyama Limba RENEWAL
Greenwood S SchemmerUnited KingdomBernardo Dominic NEGOTIATION
Emily C SergiIndiaIoni Bowcher NEGOTIATION
Leja G GauchoArgentinaAnna Fali NEW
Munro N BowleySpainBernardo Dominic RENEWAL
Emily E RoysterRussiaStephen Shaw NEW
Claire O SlusarskiBrazilAsiya Javayant NEW
Deepesh F CampainItalyElwin Sharvill QUALIFIED
Francesco X MaletArgentinaStephen Shaw PROPOSAL
Faith S BologniaBrazilIvan Magalhaes PROPOSAL
Deepesh D SchemmerJapanBernardo Dominic NEGOTIATION
Mayumi I BowleySpainOnyama Limba NEGOTIATION
Jennifer F SlusarskiUnited KingdomBernardo Dominic NEGOTIATION
Nicolas N AmigonRussiaAmy Elsner QUALIFIED
Darci L TollnerBrazilStephen Shaw NEW
Ivar U CampainRussiaStephen Shaw RENEWAL
Isabel U GauchoIndiaIoni Bowcher UNQUALIFIED
James P SlusarskiAustraliaAnna Fali QUALIFIED
Darci V ButtGermanyIvan Magalhaes RENEWAL
Francesco V SchemmerFranceBernardo Dominic QUALIFIED
Jones P BologniaGermanyIvan Magalhaes UNQUALIFIED
Smith L VocelkaJapanAmy Elsner PROPOSAL
Misaki A SaylorsUnited KingdomAnna Fali NEW
Greenwood N SergiFranceElwin Sharvill PROPOSAL
Misaki C DilliardSpainBernardo Dominic QUALIFIED
Smith T PoquetteFranceXuxue Feng RENEWAL
Kaitlin S PaprockiJapanAnna Fali PROPOSAL
Frozen Columns
Name
Darci O Poquette
Leon W Perin
Kaitlin V Rulapaugh
Maria P Whobrey
Cody D Amigon
Sinclair C Venere
Juan L Garufi
Adams V Waycott
Leon W Ferencz
Jefferson J Malet
Costa Q Chui
Alejandro J Royster
Aika L Garufi
Johnson T Saylors
Munro T Perin
Misaki U Chui
Leja S Marrier
Wickens D Waycott
Adams N Ferencz
Sinclair S Butt
Cody O Campain
Misaki Y Perin
Ricardo P Waycott
Mujtaba D Schemmer
Clifford G Glick
Leja B Glick
Mayumi S Slusarski
Antonio R Ruta
James S Chui
Faith A Doe
Chavez Y Vocelka
Claire S Bowley
Aika F Paprocki
Kaitlin T Rim
Faith L Caldarera
Aruna U Saylors
James I Bowley
Johnson A Glick
Arvin C Ferencz
Wickens I Kusko
Jefferson K Gillian
Jeanfrancois Y Maclead
James Y Garufi
Rodrigues A Slusarski
Darci G Inouye
Mayumi H Malet
Chavez H Rulapaugh
Leon V Amigon
Adams O Foller
Smith Z Gaucho
IdCountryDate
1000Australia2024-06-17
1001Germany2024-05-31
1002Japan2024-06-01
1003Brazil2024-06-16
1004France2024-06-07
1005Russia2024-06-18
1006India2024-05-28
1007Spain2024-06-15
1008Spain2024-06-09
1009Japan2024-06-18
1010Canada2024-05-31
1011Spain2024-05-28
1012Germany2024-06-14
1013Italy2024-06-05
1014Brazil2024-06-06
1015Italy2024-05-28
1016Canada2024-05-30
1017Spain2024-06-20
1018United Kingdom2024-06-08
1019Australia2024-06-17
1020Australia2024-06-04
1021Argentina2024-05-26
1022Germany2024-06-06
1023Argentina2024-06-07
1024Argentina2024-06-15
1025Spain2024-06-16
1026Argentina2024-06-03
1027Germany2024-06-15
1028France2024-06-20
1029Japan2024-06-16
1030Spain2024-05-25
1031Brazil2024-06-21
1032France2024-06-05
1033France2024-06-07
1034France2024-05-29
1035India2024-06-15
1036Italy2024-06-18
1037Australia2024-06-15
1038Spain2024-06-14
1039Russia2024-05-26
1040Spain2024-05-31
1041Russia2024-06-14
1042France2024-06-13
1043India2024-06-09
1044Canada2024-06-06
1045Russia2024-06-04
1046Italy2024-05-26
1047France2024-05-25
1048Russia2024-06-06
1049India2024-06-02

On-Demand Data

NameIdCountryDate
Stacey K Caldarera1000Australia2024-06-12
Jones W Amigon1001Australia2024-06-08
Nicolas J Kusko1002Argentina2024-06-01
Salvatore T Poquette1003India2024-06-11
Tony G Maclead1004Russia2024-06-17
Antonio O Bolognia1005France2024-06-21
Kadeem U Inouye1006India2024-05-31
David L Morasca1007Japan2024-05-29
Leja T Butt1008United Kingdom2024-05-29
Jones D Albares1009Australia2024-05-28
Morrow J Kusko1010Russia2024-06-12
Faith Y Iturbide1011Brazil2024-06-11
Munro Y Vocelka1012United Kingdom2024-06-10
Ashley T Slusarski1013Spain2024-06-11
Morrow X Royster1014Brazil2024-05-30
Jefferson K Poquette1015United Kingdom2024-06-14
Claire J Doe1016Spain2024-05-25
Francesco P Oldroyd1017India2024-05-30
Misaki J Slusarski1018Argentina2024-05-27
Adams W Garufi1019France2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody G StensethArgentinaElwin Sharvill NEGOTIATION
Adams F MacleadCanadaXuxue Feng NEGOTIATION
Emily D SergiSpainAsiya Javayant PROPOSAL
Salvatore C VocelkaBrazilBernardo Dominic UNQUALIFIED
David F IturbideAustraliaOnyama Limba RENEWAL
Ricardo W ChuiRussiaAnna Fali NEW
Wickens F ChuiArgentinaAmy Elsner RENEWAL
Leon W WieserBrazilBernardo Dominic RENEWAL
Sinclair F MaletFranceBernardo Dominic UNQUALIFIED
Ivar D GarufiGermanyBernardo Dominic QUALIFIED
Aruna L VocelkaRussiaAmy Elsner RENEWAL
David A SaylorsCanadaBernardo Dominic NEW
Leja E RoysterSpainAmy Elsner UNQUALIFIED
Mayumi D NestleRussiaAsiya Javayant UNQUALIFIED
Rodrigues S BriddickUnited KingdomIvan Magalhaes QUALIFIED
Nicolas R MorascaRussiaElwin Sharvill NEGOTIATION
Tony M SlusarskiAustraliaAnna Fali QUALIFIED
Ivar M ButtBrazilOnyama Limba NEGOTIATION
Kaitlin M NickaGermanyOnyama Limba NEGOTIATION
Chavez Q CampainJapanAnna Fali UNQUALIFIED
Arvin Q GillianCanadaIvan Magalhaes QUALIFIED
Morrow E StensethIndiaIvan Magalhaes NEGOTIATION
Faith G ChuiGermanyAsiya Javayant NEW
Kadeem Y FigeroaJapanBernardo Dominic NEGOTIATION
Munro N PoquetteItalyStephen Shaw QUALIFIED
Alejandro S NestleFranceIoni Bowcher PROPOSAL
David V GillianFranceIoni Bowcher PROPOSAL
Deepesh Q WieserAustraliaElwin Sharvill NEGOTIATION
Misaki G CampainItalyIoni Bowcher PROPOSAL
Faith R VenereJapanAsiya Javayant QUALIFIED
Rodrigues H WieserArgentinaBernardo Dominic NEGOTIATION
Greenwood J CaldareraRussiaOnyama Limba QUALIFIED
Jones Y GillianUnited KingdomAnna Fali NEW
Maisha O KuskoUnited KingdomAsiya Javayant UNQUALIFIED
Leja D FerenczJapanIvan Magalhaes RENEWAL
Faith O ShinkoGermanyElwin Sharvill NEW
Nicolas F VenereAustraliaAnna Fali PROPOSAL
Leon X NestleCanadaAnna Fali NEW
Jefferson M CampainSpainXuxue Feng QUALIFIED
Kadeem J PaprockiArgentinaAsiya Javayant 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>