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
Aika U RulapaughBrazilAnna Fali RENEWAL
Costa B KolmetzCanadaAsiya Javayant NEW
Maisha W NestleSpainAsiya Javayant QUALIFIED
Mayumi T SchemmerBrazilAsiya Javayant QUALIFIED
Tony A RimUnited KingdomOnyama Limba NEGOTIATION
Stacey X FollerBrazilAnna Fali UNQUALIFIED
Claire Y WieserItalyIoni Bowcher QUALIFIED
Morrow D SergiItalyXuxue Feng QUALIFIED
Leon V FigeroaBrazilAsiya Javayant NEGOTIATION
Emily B MacleadAustraliaBernardo Dominic PROPOSAL
Ricardo F DoeJapanXuxue Feng QUALIFIED
Rodrigues B PoquetteIndiaBernardo Dominic RENEWAL
Ashley Q KolmetzSpainBernardo Dominic NEW
Antonio I FigeroaRussiaAnna Fali UNQUALIFIED
Tony F RimSpainAmy Elsner NEW
James H NickaSpainXuxue Feng NEGOTIATION
James H InouyeUnited KingdomAsiya Javayant PROPOSAL
Claire H BowleyItalyAsiya Javayant NEW
Clifford P IturbideJapanAnna Fali UNQUALIFIED
Salvatore U MarrierSpainStephen Shaw RENEWAL
Munro M AmigonFranceAsiya Javayant PROPOSAL
Jefferson R DilliardArgentinaStephen Shaw RENEWAL
Faith R DarakjyJapanAsiya Javayant RENEWAL
Misaki R WhobreyFranceAsiya Javayant NEW
Mayumi N IturbideCanadaOnyama Limba RENEWAL
Misaki E GillianIndiaAnna Fali PROPOSAL
Greenwood S NestleUnited KingdomBernardo Dominic UNQUALIFIED
Izzy J CaudyArgentinaElwin Sharvill QUALIFIED
Ivar W FollerRussiaStephen Shaw NEW
Greenwood H BologniaGermanyIoni Bowcher UNQUALIFIED
Jennifer X ChuiRussiaAmy Elsner NEGOTIATION
Kaitlin Z AmigonArgentinaBernardo Dominic UNQUALIFIED
Sinclair W GarufiSpainAmy Elsner NEW
Claire Q AmigonCanadaIvan Magalhaes RENEWAL
Aruna S MacleadAustraliaIvan Magalhaes UNQUALIFIED
Leon F SlusarskiItalyStephen Shaw QUALIFIED
Jones E DilliardFranceOnyama Limba NEGOTIATION
Stacey P StockhamJapanAmy Elsner QUALIFIED
Johnson O WhobreyAustraliaXuxue Feng PROPOSAL
Jennifer F PerinGermanyElwin Sharvill RENEWAL
Smith J AmigonAustraliaBernardo Dominic NEW
Aika T SchemmerRussiaBernardo Dominic NEGOTIATION
Jeanfrancois J FlosiSpainAnna Fali NEW
Johnson Q CaldareraIndiaXuxue Feng PROPOSAL
Rodrigues H PoquetteArgentinaIvan Magalhaes RENEWAL
Deepesh E SaylorsFranceAsiya Javayant NEW
Faith Q GlickIndiaBernardo Dominic PROPOSAL
Maria G BowleyCanadaStephen Shaw NEW
Jefferson C CaldareraIndiaIvan Magalhaes PROPOSAL
Deepesh L GlickGermanyIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Deepesh N SergiArgentinaElwin Sharvill NEW
Antonio W FerenczArgentinaBernardo Dominic NEGOTIATION
Silvio W ShinkoCanadaOnyama Limba UNQUALIFIED
Cody F CampainSpainAsiya Javayant PROPOSAL
Claire Y SergiAustraliaIoni Bowcher NEGOTIATION
Antonio X SlusarskiItalyIoni Bowcher QUALIFIED
Ricardo D DilliardArgentinaBernardo Dominic NEW
Jones F AmigonIndiaStephen Shaw QUALIFIED
Deepesh A NestleFranceStephen Shaw PROPOSAL
Leon K CampainCanadaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan M GillianIndia2024-06-24Chanay, Jeffrey A Esq UNQUALIFIED76Ivan Magalhaes
1001Ashley S PaprockiAustralia2024-06-21Rousseaux, Michael Esq RENEWAL67Stephen Shaw
1002Maria Q WaycottCanada2024-06-10Rangoni Of Florence UNQUALIFIED81Bernardo Dominic
1003Munro H WhobreyAustralia2024-06-17Morlong Associates QUALIFIED19Anna Fali
1004Greenwood O MarrierFrance2024-06-17Commercial Press UNQUALIFIED16Anna Fali
1005Kaitlin X IturbideFrance2024-06-07Benton, John B Jr PROPOSAL8Elwin Sharvill
1006Jones K NickaItaly2024-05-29King, Christopher A Esq UNQUALIFIED81Asiya Javayant
1007Octavia F StensethBrazil2024-06-04Morlong Associates PROPOSAL78Xuxue Feng
1008Ashley I ButtIndia2024-06-03Buckley Miller Wright RENEWAL35Ioni Bowcher
1009Juan O SaylorsFrance2024-05-30King, Christopher A Esq RENEWAL34Ioni Bowcher
1010Isabel P CampainBrazil2024-05-28Dorl, James J Esq QUALIFIED35Stephen Shaw
1011Cody W StockhamGermany2024-06-05Buckley Miller Wright PROPOSAL29Stephen Shaw
1012Mayumi N StensethArgentina2024-06-13Morlong Associates NEW35Asiya Javayant
1013Juan T GillianIndia2024-06-04Dorl, James J Esq RENEWAL24Asiya Javayant
1014Chavez O FollerAustralia2024-06-22Commercial Press RENEWAL29Bernardo Dominic
1015Costa A RulapaughFrance2024-06-08Truhlar And Truhlar Attys UNQUALIFIED85Ioni Bowcher
1016Maisha O CaudyCanada2024-06-20Feiner Bros PROPOSAL5Anna Fali
1017Silvio W RimCanada2024-05-31Truhlar And Truhlar Attys NEGOTIATION57Elwin Sharvill
1018Mayumi A SlusarskiJapan2024-06-16Buckley Miller Wright RENEWAL66Onyama Limba
1019Johnson K InouyeFrance2024-05-31Rangoni Of Florence NEW30Xuxue Feng
1020Stacey I MaletUnited Kingdom2024-06-07Chanay, Jeffrey A Esq NEGOTIATION25Asiya Javayant
1021Aruna P NickaBrazil2024-06-16Truhlar And Truhlar Attys QUALIFIED97Anna Fali
1022Mujtaba W ChuiSpain2024-06-13King, Christopher A Esq PROPOSAL6Anna Fali
1023Murillo M FlosiAustralia2024-06-23Commercial Press UNQUALIFIED90Asiya Javayant
1024Claire R MorascaIndia2024-05-30Printing Dimensions PROPOSAL3Bernardo Dominic
1025Morrow I IturbideSpain2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED42Elwin Sharvill
1026Emily M MarrierUnited Kingdom2024-06-16King, Christopher A Esq RENEWAL87Onyama Limba
1027Jennifer S GlickArgentina2024-06-16Feltz Printing Service RENEWAL95Amy Elsner
1028Aika G SchemmerCanada2024-05-30Chemel, James L Cpa NEGOTIATION90Amy Elsner
1029Aruna B OstroskyJapan2024-05-27Chanay, Jeffrey A Esq NEGOTIATION74Anna Fali
1030Morrow G AmigonUnited Kingdom2024-06-20Dorl, James J Esq UNQUALIFIED48Asiya Javayant
1031Darci K FollerUnited Kingdom2024-06-23Buckley Miller Wright UNQUALIFIED84Amy Elsner
1032Aika S PoquetteBrazil2024-06-12Commercial Press NEGOTIATION66Ivan Magalhaes
1033Kaitlin T FigeroaAustralia2024-06-16Rangoni Of Florence NEGOTIATION85Xuxue Feng
1034Cody C WieserJapan2024-05-30Chanay, Jeffrey A Esq QUALIFIED67Elwin Sharvill
1035Aditya Z GauchoFrance2024-06-02Chemel, James L Cpa QUALIFIED83Anna Fali
1036Jefferson V GillianRussia2024-06-06King, Christopher A Esq QUALIFIED64Stephen Shaw
1037Mujtaba R RimUnited Kingdom2024-05-28Rousseaux, Michael Esq RENEWAL2Elwin Sharvill
1038Misaki H FollerJapan2024-06-11Commercial Press PROPOSAL78Onyama Limba
1039Greenwood O GlickGermany2024-05-29Feltz Printing Service UNQUALIFIED53Xuxue Feng
1040Silvio D KuskoArgentina2024-06-04Dorl, James J Esq NEGOTIATION60Asiya Javayant
1041Antonio Y CampainArgentina2024-05-26King, Christopher A Esq UNQUALIFIED30Elwin Sharvill
1042Murillo B WhobreyItaly2024-06-06Rangoni Of Florence PROPOSAL2Onyama Limba
1043David V SchemmerJapan2024-06-19Benton, John B Jr NEW4Onyama Limba
1044Morrow Z StensethSpain2024-06-21Feltz Printing Service UNQUALIFIED57Bernardo Dominic
1045Kadeem N GillianAustralia2024-06-10Truhlar And Truhlar Attys UNQUALIFIED31Amy Elsner
1046Emily A CaldareraUnited Kingdom2024-06-04Dorl, James J Esq NEGOTIATION65Ivan Magalhaes
1047Murillo L MarrierAustralia2024-06-09Chanay, Jeffrey A Esq NEW31Xuxue Feng
1048Jones H BowleyGermany2024-06-21King, Christopher A Esq RENEWAL70Onyama Limba
1049Misaki A ButtRussia2024-06-19Commercial Press NEW16Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Jennifer U RimAustraliaAsiya Javayant UNQUALIFIED
Mayumi U AlbaresArgentinaIoni Bowcher QUALIFIED
Kadeem I WieserCanadaBernardo Dominic NEW
Tony R VenereRussiaXuxue Feng UNQUALIFIED
Chavez M ShinkoRussiaIvan Magalhaes RENEWAL
Mujtaba F StensethGermanyAsiya Javayant UNQUALIFIED
James G CaudyUnited KingdomOnyama Limba NEGOTIATION
Francesco C PaprockiJapanIoni Bowcher PROPOSAL
Octavia U IturbideIndiaXuxue Feng NEW
Tony Y ShinkoGermanyXuxue Feng NEW
Ricardo I DilliardAustraliaElwin Sharvill UNQUALIFIED
Julie K GlickSpainAmy Elsner UNQUALIFIED
Mujtaba M DarakjyIndiaBernardo Dominic NEW
Chavez R ChuiUnited KingdomAmy Elsner RENEWAL
Faith K FlosiArgentinaIvan Magalhaes NEGOTIATION
Smith I MarrierArgentinaOnyama Limba PROPOSAL
Arvin A SchemmerFranceAsiya Javayant UNQUALIFIED
Jeanfrancois S FollerUnited KingdomIoni Bowcher QUALIFIED
Antonio Y SchemmerArgentinaAnna Fali UNQUALIFIED
Costa G FerenczRussiaStephen Shaw RENEWAL
Ivar E NickaBrazilStephen Shaw NEW
Mayumi X TollnerArgentinaIoni Bowcher PROPOSAL
Jefferson R BowleyAustraliaAsiya Javayant PROPOSAL
Rodrigues T MacleadJapanAsiya Javayant PROPOSAL
Julie L FlosiSpainIvan Magalhaes UNQUALIFIED
Tony I GarufiBrazilAnna Fali PROPOSAL
Aditya R MaletArgentinaBernardo Dominic UNQUALIFIED
Darci B GillianJapanBernardo Dominic NEW
Mujtaba T DarakjyCanadaXuxue Feng NEW
Nicolas Q ButtRussiaXuxue Feng NEGOTIATION
Emily D BowleyUnited KingdomElwin Sharvill NEW
Julie M MaletAustraliaElwin Sharvill NEW
Leon C SaylorsBrazilAnna Fali QUALIFIED
Murillo P SergiGermanyStephen Shaw PROPOSAL
Sinclair V FerenczFranceBernardo Dominic PROPOSAL
Emily X SchemmerBrazilXuxue Feng NEGOTIATION
Salvatore P VocelkaBrazilAmy Elsner NEGOTIATION
Jones U ChuiItalyXuxue Feng RENEWAL
Stacey E InouyeFranceOnyama Limba NEGOTIATION
Costa P DarakjyFranceAnna Fali QUALIFIED
Emily E AmigonIndiaOnyama Limba UNQUALIFIED
Leja T DilliardItalyOnyama Limba RENEWAL
Isabel Z FigeroaFranceOnyama Limba RENEWAL
Leon B IturbideFranceAmy Elsner QUALIFIED
Munro A FigeroaBrazilXuxue Feng NEGOTIATION
Deepesh S RoysterJapanStephen Shaw PROPOSAL
Salvatore O FerenczUnited KingdomXuxue Feng QUALIFIED
Aditya R TollnerArgentinaIoni Bowcher RENEWAL
Adams X FlosiRussiaOnyama Limba NEW
Cody X MarrierRussiaBernardo Dominic NEW
Frozen Columns
Name
Sinclair O Whobrey
Chavez Q Inouye
Francesco L Rim
Aika K Malet
Maisha N Sergi
Cody Q Waycott
Mayumi Y Caldarera
Salvatore B Rulapaugh
Emily K Gillian
Morrow Q Darakjy
Faith R Stockham
Munro I Glick
Aruna T Ruta
Emily G Doe
Julie D Royster
Juan Z Campain
Faith V Dilliard
Isabel A Royster
Sinclair B Paprocki
Jones B Bowley
James G Kolmetz
Wickens V Paprocki
Chavez M Darakjy
Aditya A Nicka
Claire A Chui
Maria J Ostrosky
James I Venere
Silvio N Kolmetz
Mayumi S Saylors
Silvio M Stockham
Izzy T Darakjy
Jeanfrancois R Dilliard
Mujtaba P Malet
Alejandro X Albares
Mujtaba E Rulapaugh
Emily A Briddick
Jefferson F Caudy
Silvio G Bolognia
Jones Y Shinko
Claire V Sergi
Rodrigues D Bolognia
Ivar C Paprocki
Ivar D Albares
Aditya K Rim
Chavez M Foller
Julie X Ostrosky
Morrow V Ferencz
Octavia O Caldarera
Aika V Royster
Nicolas U Bolognia
IdCountryDate
1000France2024-06-17
1001Canada2024-06-02
1002Japan2024-06-17
1003Argentina2024-06-09
1004Spain2024-06-15
1005France2024-05-27
1006Japan2024-05-29
1007Spain2024-06-18
1008Argentina2024-06-04
1009Italy2024-06-05
1010India2024-05-26
1011Italy2024-06-15
1012Russia2024-06-23
1013Japan2024-05-27
1014Argentina2024-06-21
1015France2024-06-13
1016United Kingdom2024-06-02
1017India2024-06-22
1018Brazil2024-06-03
1019Brazil2024-05-26
1020Japan2024-06-01
1021United Kingdom2024-06-08
1022Japan2024-06-16
1023Spain2024-06-23
1024Brazil2024-06-20
1025France2024-06-17
1026Brazil2024-06-02
1027France2024-06-07
1028Russia2024-06-05
1029Spain2024-06-13
1030Australia2024-05-30
1031Argentina2024-06-06
1032Russia2024-06-06
1033Australia2024-05-31
1034Russia2024-06-10
1035Brazil2024-06-18
1036Russia2024-06-07
1037Germany2024-06-03
1038United Kingdom2024-06-04
1039France2024-05-26
1040France2024-06-23
1041United Kingdom2024-06-03
1042Japan2024-05-27
1043Italy2024-06-17
1044Spain2024-06-22
1045Canada2024-05-28
1046France2024-06-02
1047Italy2024-06-08
1048Australia2024-05-30
1049France2024-05-26

On-Demand Data

NameIdCountryDate
Maisha S Ferencz1000United Kingdom2024-06-19
Adams Q Stockham1001France2024-05-27
Silvio Y Foller1002Brazil2024-06-06
Aditya O Bolognia1003Canada2024-06-23
Darci N Caldarera1004Canada2024-05-29
Wickens F Bowley1005Germany2024-05-31
Maisha U Amigon1006Italy2024-06-22
Antonio H Ruta1007France2024-06-09
Silvio L Schemmer1008Brazil2024-06-01
Maisha K Slusarski1009Argentina2024-06-07
Deepesh Y Stockham1010Spain2024-06-13
Silvio N Stenseth1011Russia2024-06-02
Chavez Z Bolognia1012France2024-05-26
Kaitlin K Briddick1013India2024-06-03
Emily G Albares1014Italy2024-06-09
Juan V Bowley1015India2024-06-17
Leja P Gillian1016Germany2024-05-27
Antonio R Ostrosky1017Australia2024-06-24
Aika R Marrier1018Canada2024-05-26
Mayumi Z Morasca1019Germany2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar Y NestleFranceOnyama Limba QUALIFIED
Aruna O NickaGermanyIoni Bowcher PROPOSAL
Morrow O MaletJapanXuxue Feng UNQUALIFIED
Juan I MarrierUnited KingdomStephen Shaw NEW
Ivar M KuskoIndiaIvan Magalhaes NEW
Leja M NickaUnited KingdomAsiya Javayant NEW
Jefferson G MarrierFranceIoni Bowcher QUALIFIED
Julie M KolmetzAustraliaBernardo Dominic QUALIFIED
Claire X RoysterCanadaIoni Bowcher RENEWAL
Kadeem O WieserGermanyBernardo Dominic PROPOSAL
Faith D MorascaIndiaStephen Shaw NEGOTIATION
Deepesh A PerinGermanyAnna Fali PROPOSAL
Leon U BologniaSpainIvan Magalhaes NEW
Ricardo M InouyeArgentinaXuxue Feng UNQUALIFIED
Kadeem V BriddickIndiaAnna Fali RENEWAL
Ricardo Y BologniaSpainStephen Shaw NEW
Greenwood P SlusarskiFranceAsiya Javayant QUALIFIED
Jeanfrancois Q AmigonGermanyIoni Bowcher QUALIFIED
Octavia J GlickUnited KingdomIvan Magalhaes QUALIFIED
Maisha W NestleItalyElwin Sharvill QUALIFIED
Ivar E CaudyFranceIoni Bowcher QUALIFIED
Ashley Z MorascaSpainAmy Elsner QUALIFIED
Maria K AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Smith A PoquetteAustraliaXuxue Feng NEW
Sinclair Z DilliardUnited KingdomIoni Bowcher UNQUALIFIED
Ashley Q AlbaresAustraliaAsiya Javayant NEW
Jones C InouyeJapanAsiya Javayant NEW
Nicolas Z MaletGermanyBernardo Dominic NEGOTIATION
Jeanfrancois O TollnerArgentinaElwin Sharvill NEGOTIATION
Emily V SaylorsArgentinaXuxue Feng NEW
Smith O ChuiSpainIoni Bowcher QUALIFIED
Juan C GauchoArgentinaIvan Magalhaes QUALIFIED
Kaitlin D CaudyGermanyXuxue Feng NEW
Jefferson V CampainUnited KingdomAmy Elsner PROPOSAL
Octavia O KuskoItalyBernardo Dominic RENEWAL
Tony X WhobreyItalyAnna Fali PROPOSAL
Julie B WaycottFranceElwin Sharvill PROPOSAL
Smith I BologniaAustraliaIoni Bowcher PROPOSAL
Stacey G FigeroaUnited KingdomIoni Bowcher NEW
Arvin N BriddickUnited KingdomElwin Sharvill 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>