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
Silvio L KuskoCanadaIvan Magalhaes NEGOTIATION
Rodrigues G MaletUnited KingdomIvan Magalhaes QUALIFIED
Ashley I KolmetzItalyAnna Fali NEGOTIATION
Ivar Y GarufiFranceOnyama Limba PROPOSAL
Faith Q MorascaCanadaAsiya Javayant QUALIFIED
Mayumi W WaycottAustraliaBernardo Dominic NEW
Claire S WaycottCanadaAnna Fali QUALIFIED
Jefferson Y OldroydRussiaOnyama Limba PROPOSAL
Kadeem U NickaFranceBernardo Dominic NEW
Rodrigues Z CaudyFranceBernardo Dominic PROPOSAL
Kadeem H MarrierBrazilOnyama Limba RENEWAL
Jefferson R StensethAustraliaBernardo Dominic PROPOSAL
Alejandro K DilliardCanadaBernardo Dominic QUALIFIED
Murillo L VocelkaJapanXuxue Feng UNQUALIFIED
Aditya G CaldareraIndiaAmy Elsner UNQUALIFIED
Arvin M FollerCanadaIvan Magalhaes NEGOTIATION
Isabel I CampainCanadaElwin Sharvill PROPOSAL
Deepesh F MaletItalyIoni Bowcher NEGOTIATION
Mayumi Q AmigonAustraliaBernardo Dominic RENEWAL
Francesco N CampainFranceAsiya Javayant UNQUALIFIED
Antonio E StensethCanadaBernardo Dominic PROPOSAL
Johnson V FollerItalyElwin Sharvill PROPOSAL
Mujtaba Z CaldareraCanadaAmy Elsner NEGOTIATION
Darci Q WieserAustraliaAnna Fali NEGOTIATION
Leja N DoeJapanBernardo Dominic NEGOTIATION
Deepesh Y MaletBrazilElwin Sharvill NEW
Leja Q NestleJapanAnna Fali QUALIFIED
Jefferson S ShinkoSpainAsiya Javayant NEGOTIATION
Chavez P VenereArgentinaIoni Bowcher NEW
Sinclair N GlickArgentinaElwin Sharvill PROPOSAL
Greenwood K SergiRussiaXuxue Feng NEGOTIATION
Jeanfrancois G AlbaresAustraliaIvan Magalhaes QUALIFIED
Munro I RoysterFranceBernardo Dominic NEW
Mujtaba H MarrierItalyAmy Elsner RENEWAL
Kadeem E DilliardGermanyOnyama Limba NEGOTIATION
Antonio W NestleCanadaAmy Elsner QUALIFIED
Smith H BriddickFranceAmy Elsner NEGOTIATION
Arvin T MaletIndiaAnna Fali QUALIFIED
Costa C DilliardArgentinaBernardo Dominic QUALIFIED
Greenwood V OldroydItalyOnyama Limba UNQUALIFIED
Cody O RoysterAustraliaAnna Fali PROPOSAL
James T KolmetzIndiaIvan Magalhaes UNQUALIFIED
Alejandro S SlusarskiAustraliaBernardo Dominic NEGOTIATION
Sinclair K MacleadFranceAmy Elsner QUALIFIED
Leja S OldroydSpainAnna Fali RENEWAL
Wickens J DoeUnited KingdomOnyama Limba UNQUALIFIED
Maisha U SchemmerUnited KingdomAmy Elsner NEW
Jefferson Q FlosiRussiaIvan Magalhaes NEW
Rodrigues M DilliardItalyAmy Elsner NEGOTIATION
Aika Z PoquetteIndiaAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois M ChuiGermanyAmy Elsner UNQUALIFIED
Kadeem G MaletBrazilOnyama Limba QUALIFIED
Mujtaba C OldroydFranceXuxue Feng NEW
Mayumi F StensethIndiaAmy Elsner NEGOTIATION
Ivar M RutaIndiaAnna Fali UNQUALIFIED
Francesco N AmigonRussiaAsiya Javayant RENEWAL
Alejandro R FlosiRussiaBernardo Dominic PROPOSAL
Octavia J RimIndiaIvan Magalhaes NEGOTIATION
Aruna Y DilliardAustraliaElwin Sharvill NEW
Nicolas X MaletArgentinaXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria M MacleadItaly2024-06-04Feltz Printing Service NEW51Stephen Shaw
1001Salvatore D CaudyItaly2024-06-16King, Christopher A Esq PROPOSAL42Anna Fali
1002Izzy E GauchoArgentina2024-06-03Benton, John B Jr RENEWAL52Stephen Shaw
1003James J GauchoBrazil2024-06-04Feiner Bros NEGOTIATION34Elwin Sharvill
1004Costa J NestleGermany2024-06-10Truhlar And Truhlar Attys UNQUALIFIED56Bernardo Dominic
1005Stacey J GlickCanada2024-06-06Dorl, James J Esq NEW94Bernardo Dominic
1006Silvio U ShinkoIndia2024-06-14Morlong Associates RENEWAL52Onyama Limba
1007Clifford G VenereBrazil2024-05-24Rangoni Of Florence QUALIFIED7Amy Elsner
1008Arvin R ChuiItaly2024-05-25Rousseaux, Michael Esq NEW74Elwin Sharvill
1009Chavez C KolmetzRussia2024-06-10Commercial Press PROPOSAL6Amy Elsner
1010Tony T MaletBrazil2024-06-19Commercial Press PROPOSAL21Elwin Sharvill
1011Munro K SaylorsFrance2024-06-18Feiner Bros UNQUALIFIED49Asiya Javayant
1012Costa T CaldareraSpain2024-06-02Benton, John B Jr RENEWAL26Bernardo Dominic
1013Rodrigues Y ChuiIndia2024-06-11Buckley Miller Wright QUALIFIED12Asiya Javayant
1014Antonio H ButtIndia2024-06-10Chemel, James L Cpa UNQUALIFIED40Xuxue Feng
1015Faith C GillianJapan2024-06-17Feltz Printing Service NEW7Amy Elsner
1016Ricardo N BologniaJapan2024-05-29Benton, John B Jr NEGOTIATION66Asiya Javayant
1017David U CaldareraItaly2024-06-03Chanay, Jeffrey A Esq RENEWAL69Xuxue Feng
1018Jeanfrancois F GillianRussia2024-06-20Commercial Press UNQUALIFIED38Anna Fali
1019Mujtaba M OldroydArgentina2024-06-01Chemel, James L Cpa QUALIFIED14Anna Fali
1020Emily L RulapaughCanada2024-06-06Rousseaux, Michael Esq NEGOTIATION70Ioni Bowcher
1021Jefferson A MaletIndia2024-05-29Chemel, James L Cpa UNQUALIFIED25Asiya Javayant
1022Antonio I RimAustralia2024-05-30Benton, John B Jr PROPOSAL81Onyama Limba
1023Nicolas X ShinkoIndia2024-05-31Printing Dimensions QUALIFIED89Bernardo Dominic
1024Darci J PerinCanada2024-06-20Feltz Printing Service RENEWAL77Ivan Magalhaes
1025Emily K WaycottGermany2024-05-25Buckley Miller Wright RENEWAL10Anna Fali
1026Emily E RoysterUnited Kingdom2024-06-13Rousseaux, Michael Esq RENEWAL43Onyama Limba
1027Emily F NickaCanada2024-05-24Rangoni Of Florence NEGOTIATION95Bernardo Dominic
1028Izzy R IturbideJapan2024-06-04Dorl, James J Esq PROPOSAL82Bernardo Dominic
1029Johnson D KuskoFrance2024-06-13Morlong Associates NEW61Xuxue Feng
1030Rodrigues A FollerJapan2024-06-01Feiner Bros RENEWAL30Stephen Shaw
1031Alejandro Q WieserArgentina2024-05-24Buckley Miller Wright NEGOTIATION24Anna Fali
1032Salvatore O MacleadGermany2024-06-08Buckley Miller Wright UNQUALIFIED3Stephen Shaw
1033Emily X FigeroaIndia2024-05-24Chemel, James L Cpa PROPOSAL25Amy Elsner
1034Leja U MaletRussia2024-06-19Chemel, James L Cpa QUALIFIED57Asiya Javayant
1035Clifford M RimArgentina2024-05-24Rangoni Of Florence RENEWAL86Stephen Shaw
1036Jeanfrancois S StensethBrazil2024-06-09Printing Dimensions NEW68Onyama Limba
1037Cody I ShinkoRussia2024-05-28Benton, John B Jr PROPOSAL9Elwin Sharvill
1038Sinclair H MaletFrance2024-06-22Rangoni Of Florence QUALIFIED77Elwin Sharvill
1039Emily F VenereIndia2024-05-24Feltz Printing Service NEGOTIATION23Asiya Javayant
1040Leja U VenereFrance2024-06-07Chanay, Jeffrey A Esq NEW16Elwin Sharvill
1041Darci F BowleyFrance2024-06-12Feiner Bros QUALIFIED80Bernardo Dominic
1042Salvatore T DarakjyBrazil2024-05-29Chemel, James L Cpa PROPOSAL69Onyama Limba
1043Munro Q DarakjyIndia2024-05-29Feltz Printing Service NEW46Ivan Magalhaes
1044Costa M GauchoRussia2024-05-25Commercial Press QUALIFIED51Stephen Shaw
1045Faith K WhobreySpain2024-06-08Truhlar And Truhlar Attys NEW32Ioni Bowcher
1046Stacey N BriddickRussia2024-06-09Commercial Press QUALIFIED98Bernardo Dominic
1047Smith V MaletItaly2024-06-05Chapman, Ross E Esq QUALIFIED19Elwin Sharvill
1048Aruna H MorascaItaly2024-05-25Dorl, James J Esq RENEWAL46Ivan Magalhaes
1049Clifford V StockhamGermany2024-06-01Printing Dimensions PROPOSAL84Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ashley R CampainArgentinaIoni Bowcher RENEWAL
Jennifer S MacleadUnited KingdomBernardo Dominic NEGOTIATION
Clifford H FlosiItalyAmy Elsner UNQUALIFIED
Claire M CaldareraUnited KingdomAnna Fali PROPOSAL
Aruna R GauchoCanadaAsiya Javayant NEGOTIATION
Silvio C StensethUnited KingdomAmy Elsner QUALIFIED
Aruna F PoquetteIndiaAnna Fali UNQUALIFIED
Cody Z GauchoJapanBernardo Dominic PROPOSAL
Misaki Y CampainBrazilAnna Fali QUALIFIED
Murillo X ChuiArgentinaStephen Shaw NEW
Munro E VenereFranceXuxue Feng UNQUALIFIED
Munro E GillianGermanyIoni Bowcher NEW
Darci T BologniaRussiaAnna Fali NEW
Darci G PoquetteRussiaXuxue Feng QUALIFIED
Francesco C MaletGermanyIvan Magalhaes NEW
Kaitlin W MorascaAustraliaIvan Magalhaes NEW
Octavia L ButtRussiaIvan Magalhaes QUALIFIED
Kadeem B GillianGermanyIoni Bowcher QUALIFIED
Leon O StensethArgentinaBernardo Dominic NEW
Claire J MaletBrazilBernardo Dominic NEW
Mujtaba L WhobreyCanadaBernardo Dominic UNQUALIFIED
Jeanfrancois R GauchoJapanBernardo Dominic RENEWAL
Mujtaba G AlbaresAustraliaBernardo Dominic PROPOSAL
Arvin J BologniaItalyBernardo Dominic NEGOTIATION
Ashley Z StensethIndiaAsiya Javayant NEGOTIATION
Julie S StockhamArgentinaStephen Shaw RENEWAL
Maria D ChuiRussiaAmy Elsner NEGOTIATION
Kaitlin T BowleyUnited KingdomAmy Elsner RENEWAL
Maria U SergiGermanyIvan Magalhaes RENEWAL
Ashley V FlosiGermanyXuxue Feng QUALIFIED
Jones M VenereBrazilAmy Elsner RENEWAL
Rodrigues M StensethSpainIoni Bowcher QUALIFIED
Aika O KuskoArgentinaElwin Sharvill UNQUALIFIED
Leja C BowleyGermanyElwin Sharvill QUALIFIED
Deepesh D AlbaresGermanyElwin Sharvill RENEWAL
Juan P VenereSpainElwin Sharvill PROPOSAL
Francesco E DilliardJapanAnna Fali RENEWAL
Ashley L GlickArgentinaIoni Bowcher UNQUALIFIED
Johnson G BowleyFranceAsiya Javayant UNQUALIFIED
Munro Y ButtSpainAsiya Javayant NEW
Morrow O MorascaCanadaXuxue Feng QUALIFIED
Clifford P OstroskyItalyStephen Shaw NEGOTIATION
Leon V PaprockiUnited KingdomBernardo Dominic PROPOSAL
Jones L InouyeItalyBernardo Dominic RENEWAL
Salvatore U PerinAustraliaXuxue Feng NEW
Clifford N FlosiRussiaOnyama Limba NEW
Adams E VocelkaBrazilXuxue Feng NEW
Emily L WieserRussiaElwin Sharvill UNQUALIFIED
Octavia L RutaJapanIoni Bowcher RENEWAL
Aika R RulapaughArgentinaIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Stacey I Paprocki
Smith J Rim
Ashley R Saylors
Salvatore Q Ostrosky
Antonio L Kusko
Octavia L Paprocki
Izzy V Glick
Silvio I Ostrosky
Clifford C Ostrosky
Darci I Albares
Murillo O Ostrosky
Sinclair O Paprocki
Aruna B Briddick
Francesco M Caldarera
Wickens W Royster
Ashley P Kusko
Ivar P Bolognia
David L Iturbide
Mujtaba K Albares
David G Shinko
Maisha O Nicka
Jefferson C Doe
Claire Q Campain
Rodrigues Z Ruta
Silvio O Morasca
Johnson U Darakjy
Kaitlin I Rulapaugh
Chavez Y Flosi
Tony F Caldarera
Jones S Wieser
Ashley B Waycott
Stacey J Inouye
Nicolas I Flosi
Darci L Morasca
Emily R Saylors
Ivar S Maclead
Jefferson E Foller
Chavez Z Malet
Ashley Z Garufi
Arvin D Figeroa
Isabel X Tollner
Rodrigues H Briddick
Julie G Gillian
Claire W Saylors
Jennifer T Whobrey
Clifford R Stockham
Jeanfrancois D Poquette
Juan N Whobrey
Jones I Gaucho
Maisha W Glick
IdCountryDate
1000Canada2024-05-30
1001Brazil2024-06-08
1002France2024-06-13
1003Argentina2024-05-24
1004India2024-05-27
1005Brazil2024-05-26
1006Argentina2024-06-16
1007Italy2024-05-25
1008Canada2024-06-11
1009India2024-06-17
1010India2024-06-13
1011United Kingdom2024-06-01
1012Italy2024-05-25
1013Brazil2024-06-03
1014Germany2024-06-15
1015India2024-06-22
1016Russia2024-05-29
1017United Kingdom2024-06-22
1018France2024-06-04
1019United Kingdom2024-05-26
1020France2024-06-07
1021Russia2024-06-13
1022Germany2024-05-25
1023Canada2024-06-19
1024Japan2024-06-06
1025United Kingdom2024-06-04
1026Spain2024-06-10
1027Russia2024-06-05
1028Italy2024-06-12
1029Japan2024-06-13
1030Australia2024-06-20
1031Russia2024-06-07
1032India2024-06-22
1033Japan2024-06-04
1034France2024-06-11
1035Australia2024-06-16
1036Japan2024-06-05
1037Australia2024-06-03
1038Argentina2024-06-14
1039Canada2024-05-29
1040Japan2024-06-12
1041India2024-06-18
1042Japan2024-06-21
1043Canada2024-06-01
1044Italy2024-05-27
1045Russia2024-06-14
1046France2024-06-08
1047Russia2024-06-04
1048Brazil2024-05-24
1049Canada2024-06-18

On-Demand Data

NameIdCountryDate
Jeanfrancois K Morasca1000Russia2024-05-25
Tony K Campain1001United Kingdom2024-06-12
Salvatore P Garufi1002Argentina2024-05-30
Darci H Inouye1003United Kingdom2024-05-24
Jefferson S Glick1004Spain2024-06-20
Francesco T Garufi1005Brazil2024-06-12
James Z Schemmer1006Russia2024-05-25
Juan V Butt1007India2024-06-07
Maisha T Figeroa1008Japan2024-06-02
Alejandro T Waycott1009France2024-06-13
Claire P Garufi1010India2024-06-17
Deepesh M Vocelka1011United Kingdom2024-05-28
Jeanfrancois V Doe1012Argentina2024-06-06
Salvatore G Dilliard1013India2024-06-07
Jennifer N Caudy1014Spain2024-06-11
Claire H Campain1015Germany2024-06-12
Adams W Schemmer1016Brazil2024-05-26
Alejandro Y Glick1017United Kingdom2024-05-31
Kadeem E Foller1018United Kingdom2024-06-10
Clifford I Bowley1019Spain2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio Q AmigonRussiaBernardo Dominic NEW
Costa Z FollerItalyOnyama Limba NEGOTIATION
Leon K CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
Maisha U ButtGermanyElwin Sharvill UNQUALIFIED
Costa Y OstroskyArgentinaIvan Magalhaes QUALIFIED
Jennifer V GarufiRussiaXuxue Feng PROPOSAL
Greenwood G GillianAustraliaIvan Magalhaes RENEWAL
Salvatore S GlickJapanXuxue Feng QUALIFIED
Kaitlin B StockhamItalyAnna Fali RENEWAL
Silvio Q WieserFranceStephen Shaw NEGOTIATION
Isabel O VocelkaJapanIoni Bowcher QUALIFIED
Leja W VocelkaJapanBernardo Dominic NEGOTIATION
Jefferson R WaycottRussiaBernardo Dominic PROPOSAL
Stacey Q PerinArgentinaAmy Elsner NEGOTIATION
Jefferson L PaprockiAustraliaAnna Fali UNQUALIFIED
Ashley H VenereBrazilStephen Shaw QUALIFIED
Greenwood F VocelkaRussiaStephen Shaw NEGOTIATION
Murillo U SlusarskiJapanAmy Elsner QUALIFIED
Ricardo K CaudyCanadaElwin Sharvill RENEWAL
Mayumi X RulapaughFranceBernardo Dominic QUALIFIED
Deepesh P SergiBrazilXuxue Feng PROPOSAL
Wickens S RimGermanyAnna Fali NEGOTIATION
Juan A BowleyFranceAsiya Javayant UNQUALIFIED
Mujtaba L VocelkaIndiaElwin Sharvill NEW
Adams E AlbaresSpainOnyama Limba NEGOTIATION
Jennifer O DoeBrazilElwin Sharvill PROPOSAL
Mayumi U FerenczFranceIvan Magalhaes NEW
Leja H WieserIndiaAnna Fali QUALIFIED
Adams E AmigonArgentinaAsiya Javayant PROPOSAL
Cody U FollerItalyOnyama Limba QUALIFIED
Maria G DilliardIndiaBernardo Dominic QUALIFIED
James I RutaJapanXuxue Feng PROPOSAL
Greenwood Y StensethItalyXuxue Feng QUALIFIED
Chavez G GillianArgentinaIvan Magalhaes QUALIFIED
Munro Z MaletRussiaAsiya Javayant NEGOTIATION
James O DoeBrazilElwin Sharvill QUALIFIED
Stacey S IturbideFranceElwin Sharvill NEW
Kaitlin C AmigonFranceXuxue Feng UNQUALIFIED
Octavia N OstroskyFranceElwin Sharvill RENEWAL
Ivar T InouyeGermanyElwin Sharvill PROPOSAL

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