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
Mayumi E StensethJapanElwin Sharvill RENEWAL
Adams N GarufiRussiaBernardo Dominic UNQUALIFIED
Claire X BriddickUnited KingdomBernardo Dominic QUALIFIED
Mayumi H SergiAustraliaXuxue Feng NEGOTIATION
Costa J OldroydItalyElwin Sharvill RENEWAL
Juan W DarakjyArgentinaAmy Elsner NEGOTIATION
Leon R AmigonFranceElwin Sharvill PROPOSAL
Mujtaba W OstroskyCanadaAmy Elsner PROPOSAL
Emily J RimFranceAsiya Javayant RENEWAL
Munro M TollnerArgentinaAnna Fali NEGOTIATION
Greenwood A FerenczRussiaElwin Sharvill RENEWAL
Aika I InouyeAustraliaOnyama Limba NEGOTIATION
Aruna J SlusarskiGermanyAnna Fali NEW
Arvin N InouyeArgentinaBernardo Dominic PROPOSAL
Claire B WaycottArgentinaBernardo Dominic PROPOSAL
Sinclair T DilliardItalyAnna Fali NEW
Nicolas Q IturbideRussiaAnna Fali NEGOTIATION
Isabel C AmigonAustraliaBernardo Dominic PROPOSAL
Adams Z GauchoCanadaStephen Shaw NEGOTIATION
Kaitlin H RulapaughArgentinaAnna Fali UNQUALIFIED
Isabel B SchemmerSpainStephen Shaw QUALIFIED
Stacey T ChuiJapanIvan Magalhaes QUALIFIED
Jones Y KolmetzUnited KingdomOnyama Limba NEW
Nicolas Q FlosiCanadaAnna Fali NEGOTIATION
Mayumi R RutaAustraliaAnna Fali RENEWAL
Juan P StensethRussiaXuxue Feng RENEWAL
Alejandro G BologniaIndiaOnyama Limba NEGOTIATION
Stacey A PoquetteJapanStephen Shaw UNQUALIFIED
Cody V CampainArgentinaBernardo Dominic QUALIFIED
Clifford P ChuiFranceAsiya Javayant NEW
Misaki R WieserItalyElwin Sharvill PROPOSAL
Izzy Z PerinIndiaXuxue Feng QUALIFIED
Kaitlin Z MacleadArgentinaXuxue Feng NEGOTIATION
Darci L SlusarskiRussiaAmy Elsner QUALIFIED
Johnson F PaprockiGermanyElwin Sharvill NEGOTIATION
Murillo Z SaylorsGermanyElwin Sharvill RENEWAL
Juan B NestleAustraliaAmy Elsner UNQUALIFIED
Deepesh I VocelkaIndiaIoni Bowcher UNQUALIFIED
Julie Q PoquetteRussiaOnyama Limba PROPOSAL
Clifford P CampainAustraliaBernardo Dominic PROPOSAL
Aika N GillianUnited KingdomAsiya Javayant NEGOTIATION
Morrow N CaudyRussiaAmy Elsner UNQUALIFIED
Sinclair C VocelkaIndiaAnna Fali RENEWAL
Sinclair G AmigonCanadaIoni Bowcher QUALIFIED
Kaitlin N StockhamGermanyOnyama Limba NEW
Mujtaba G MorascaAustraliaBernardo Dominic PROPOSAL
Claire E CampainArgentinaAnna Fali PROPOSAL
Francesco L FollerSpainAsiya Javayant RENEWAL
Tony U RulapaughFranceStephen Shaw QUALIFIED
Faith Y OstroskySpainXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Mayumi I ButtArgentinaAsiya Javayant PROPOSAL
Silvio V ChuiAustraliaElwin Sharvill UNQUALIFIED
Aditya D NickaIndiaAmy Elsner PROPOSAL
Octavia L FlosiAustraliaAnna Fali QUALIFIED
Claire Q RimFranceAmy Elsner QUALIFIED
Claire K MacleadSpainIvan Magalhaes NEW
Izzy P AlbaresCanadaIvan Magalhaes UNQUALIFIED
Misaki B PoquetteAustraliaStephen Shaw RENEWAL
Izzy I OstroskyRussiaIoni Bowcher RENEWAL
Tony Z MarrierCanadaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues E CaudyAustralia2024-05-31Chapman, Ross E Esq QUALIFIED60Asiya Javayant
1001Stacey Z MaletIndia2024-06-14Feltz Printing Service NEGOTIATION27Anna Fali
1002Smith G FerenczAustralia2024-05-26Dorl, James J Esq NEGOTIATION89Ioni Bowcher
1003Morrow T GauchoCanada2024-05-29Benton, John B Jr NEGOTIATION22Ivan Magalhaes
1004Julie Z WhobreyCanada2024-06-12Feiner Bros RENEWAL25Asiya Javayant
1005Izzy I PaprockiArgentina2024-06-06King, Christopher A Esq NEW25Bernardo Dominic
1006Aditya F BologniaRussia2024-05-22Morlong Associates UNQUALIFIED50Anna Fali
1007Misaki G NestleFrance2024-06-11Buckley Miller Wright QUALIFIED69Asiya Javayant
1008Misaki U NickaUnited Kingdom2024-05-23Feiner Bros UNQUALIFIED48Bernardo Dominic
1009Tony F SaylorsIndia2024-05-24Feltz Printing Service NEW18Amy Elsner
1010Faith H CaldareraGermany2024-05-30Feltz Printing Service UNQUALIFIED15Ioni Bowcher
1011Ricardo N FigeroaArgentina2024-05-26Buckley Miller Wright RENEWAL63Ioni Bowcher
1012Maria Z CampainRussia2024-06-15Chemel, James L Cpa UNQUALIFIED44Asiya Javayant
1013Rodrigues D ButtGermany2024-06-15Morlong Associates UNQUALIFIED36Elwin Sharvill
1014Ivar B BriddickItaly2024-06-13Commercial Press NEGOTIATION88Elwin Sharvill
1015Munro E FollerFrance2024-05-23Feiner Bros NEW62Ioni Bowcher
1016Jefferson R MarrierGermany2024-06-11Printing Dimensions UNQUALIFIED4Xuxue Feng
1017Izzy L WaycottGermany2024-05-28Truhlar And Truhlar Attys RENEWAL76Elwin Sharvill
1018Munro B WaycottGermany2024-06-14King, Christopher A Esq PROPOSAL7Bernardo Dominic
1019Adams V WieserIndia2024-05-22Feltz Printing Service QUALIFIED40Xuxue Feng
1020Greenwood K MaletGermany2024-06-03Feltz Printing Service NEGOTIATION20Onyama Limba
1021Emily O VocelkaFrance2024-05-29Feiner Bros NEW52Amy Elsner
1022Aika L ChuiRussia2024-06-02Chanay, Jeffrey A Esq QUALIFIED91Elwin Sharvill
1023Jefferson C ShinkoFrance2024-05-23Buckley Miller Wright RENEWAL63Stephen Shaw
1024Greenwood D RoysterBrazil2024-06-10King, Christopher A Esq PROPOSAL38Amy Elsner
1025Mujtaba I FerenczBrazil2024-06-09Feltz Printing Service UNQUALIFIED58Elwin Sharvill
1026Darci R OstroskyBrazil2024-06-02Rangoni Of Florence NEGOTIATION1Stephen Shaw
1027Isabel N KuskoCanada2024-06-14Feltz Printing Service PROPOSAL11Amy Elsner
1028Ivar P FigeroaCanada2024-05-27King, Christopher A Esq UNQUALIFIED29Ioni Bowcher
1029Faith E FigeroaFrance2024-05-23King, Christopher A Esq RENEWAL68Onyama Limba
1030Sinclair R ShinkoFrance2024-05-21Feltz Printing Service PROPOSAL15Ioni Bowcher
1031Johnson U WaycottArgentina2024-05-27Rangoni Of Florence PROPOSAL86Xuxue Feng
1032Murillo J CaldareraItaly2024-05-24Truhlar And Truhlar Attys PROPOSAL87Ioni Bowcher
1033Stacey S VenereFrance2024-06-03Rangoni Of Florence RENEWAL51Xuxue Feng
1034David R KolmetzRussia2024-06-06Feltz Printing Service NEGOTIATION5Ioni Bowcher
1035Mayumi V ButtArgentina2024-06-08Buckley Miller Wright NEW44Ivan Magalhaes
1036Aditya H PoquetteIndia2024-06-01Chapman, Ross E Esq RENEWAL30Elwin Sharvill
1037Tony F WieserUnited Kingdom2024-05-31Morlong Associates NEGOTIATION28Amy Elsner
1038Deepesh H MaletFrance2024-06-02Commercial Press QUALIFIED14Asiya Javayant
1039Smith I VenereJapan2024-05-22Commercial Press UNQUALIFIED22Elwin Sharvill
1040Munro B NickaRussia2024-06-15Rangoni Of Florence RENEWAL72Anna Fali
1041Leon N BriddickItaly2024-06-08Chanay, Jeffrey A Esq PROPOSAL61Xuxue Feng
1042Aruna V FollerBrazil2024-05-25Dorl, James J Esq QUALIFIED80Xuxue Feng
1043Ricardo S MacleadBrazil2024-06-10Rousseaux, Michael Esq NEW34Amy Elsner
1044Nicolas S NestleItaly2024-05-23Chanay, Jeffrey A Esq PROPOSAL95Ioni Bowcher
1045Alejandro L SlusarskiSpain2024-05-24Commercial Press NEW93Stephen Shaw
1046Claire Q NestleJapan2024-05-25Benton, John B Jr NEGOTIATION55Ivan Magalhaes
1047Jefferson M SchemmerSpain2024-05-23Buckley Miller Wright NEW72Amy Elsner
1048Chavez H MorascaRussia2024-06-10Commercial Press NEGOTIATION90Onyama Limba
1049Aika T ButtItaly2024-06-16Feiner Bros NEGOTIATION27Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Deepesh B BowleyBrazilOnyama Limba QUALIFIED
Claire Q CampainSpainStephen Shaw NEW
Nicolas B GarufiUnited KingdomAnna Fali UNQUALIFIED
Chavez L AmigonIndiaBernardo Dominic NEGOTIATION
Morrow J KolmetzCanadaIvan Magalhaes QUALIFIED
Aruna H DarakjyItalyElwin Sharvill NEW
Adams Q GlickJapanIoni Bowcher QUALIFIED
Silvio H SergiUnited KingdomElwin Sharvill QUALIFIED
Octavia P WaycottAustraliaAnna Fali QUALIFIED
Johnson A SchemmerCanadaElwin Sharvill NEGOTIATION
Aika E CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Ivar Z SergiRussiaOnyama Limba UNQUALIFIED
Tony F VocelkaUnited KingdomBernardo Dominic NEW
Tony M NickaBrazilAsiya Javayant QUALIFIED
Isabel C KuskoCanadaStephen Shaw UNQUALIFIED
Costa D ButtFranceAmy Elsner NEGOTIATION
Leja B MorascaSpainElwin Sharvill QUALIFIED
Ashley O BriddickFranceAsiya Javayant RENEWAL
Alejandro C SaylorsRussiaAsiya Javayant RENEWAL
Adams H FollerFranceAsiya Javayant NEW
Francesco T ButtBrazilXuxue Feng PROPOSAL
Costa G SaylorsGermanyAsiya Javayant NEW
Jennifer O TollnerUnited KingdomAsiya Javayant NEW
Octavia L RutaCanadaElwin Sharvill UNQUALIFIED
Nicolas G PerinSpainElwin Sharvill QUALIFIED
Jones C DilliardIndiaOnyama Limba QUALIFIED
Isabel A InouyeRussiaBernardo Dominic NEW
Salvatore F MacleadUnited KingdomIvan Magalhaes NEW
Costa L WaycottSpainElwin Sharvill NEW
Tony A WieserCanadaAmy Elsner NEW
Faith S MacleadAustraliaElwin Sharvill NEW
Maisha S RoysterItalyXuxue Feng PROPOSAL
Rodrigues L CaudyGermanyAnna Fali QUALIFIED
Nicolas U ShinkoFranceOnyama Limba UNQUALIFIED
Emily Q StensethBrazilStephen Shaw UNQUALIFIED
Cody E StockhamFranceAsiya Javayant NEGOTIATION
Arvin O BowleyItalyIoni Bowcher RENEWAL
Greenwood E FlosiArgentinaAnna Fali RENEWAL
Morrow J VocelkaIndiaBernardo Dominic QUALIFIED
Arvin R StensethCanadaElwin Sharvill QUALIFIED
Morrow Y FlosiItalyAsiya Javayant UNQUALIFIED
Jeanfrancois I RimUnited KingdomAsiya Javayant NEW
Jones F ButtRussiaElwin Sharvill RENEWAL
Murillo L SchemmerFranceOnyama Limba QUALIFIED
Maria U RutaAustraliaAnna Fali PROPOSAL
Jennifer Y MaletAustraliaOnyama Limba RENEWAL
Nicolas B StensethGermanyAmy Elsner UNQUALIFIED
Leon W SchemmerUnited KingdomStephen Shaw NEW
Sinclair Y RoysterItalyOnyama Limba NEGOTIATION
Munro H WhobreyBrazilAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Jefferson H Oldroyd
Isabel N Flosi
Maria P Glick
Jones Q Foller
Deepesh J Ruta
Morrow J Kusko
Wickens O Gaucho
Leon J Garufi
Clifford H Rim
Leja O Rim
Silvio A Saylors
Aditya O Morasca
Misaki R Flosi
Aruna I Oldroyd
Rodrigues O Amigon
Misaki W Iturbide
Aruna G Caldarera
Kadeem K Glick
Nicolas T Maclead
Antonio E Ferencz
Costa G Waycott
Antonio T Flosi
Smith T Doe
Deepesh F Amigon
Leon A Dilliard
Clifford U Doe
Murillo B Bowley
James Y Malet
Aika A Maclead
Jennifer Q Tollner
Isabel V Ferencz
Darci T Iturbide
Stacey T Rulapaugh
Clifford F Briddick
Silvio Z Dilliard
Leja S Marrier
Maria X Vocelka
Antonio Q Perin
Misaki D Foller
Leja Z Foller
Juan A Perin
Aruna T Foller
Claire U Vocelka
Nicolas W Malet
Clifford S Venere
Jeanfrancois K Tollner
David R Schemmer
Silvio M Sergi
Leon Q Caldarera
Aika J Wieser
IdCountryDate
1000Australia2024-06-03
1001Russia2024-06-16
1002Italy2024-05-31
1003Spain2024-05-31
1004Germany2024-06-04
1005France2024-05-31
1006Japan2024-05-27
1007Japan2024-06-13
1008France2024-05-27
1009Italy2024-05-25
1010United Kingdom2024-05-22
1011Germany2024-06-15
1012Argentina2024-06-15
1013Australia2024-06-15
1014Japan2024-06-06
1015Australia2024-05-21
1016Italy2024-06-17
1017India2024-05-30
1018Canada2024-05-28
1019United Kingdom2024-05-23
1020Argentina2024-06-12
1021Brazil2024-06-15
1022Spain2024-05-21
1023Australia2024-06-18
1024Australia2024-06-08
1025Italy2024-06-10
1026Brazil2024-06-07
1027Italy2024-05-27
1028Germany2024-06-02
1029Germany2024-05-20
1030Russia2024-05-29
1031India2024-05-31
1032France2024-05-30
1033Spain2024-06-01
1034Canada2024-06-18
1035India2024-06-09
1036Canada2024-06-07
1037Brazil2024-05-29
1038India2024-06-18
1039Japan2024-06-03
1040Germany2024-06-03
1041Canada2024-06-11
1042France2024-06-10
1043Italy2024-06-12
1044Italy2024-06-13
1045Italy2024-06-08
1046Japan2024-05-30
1047United Kingdom2024-06-14
1048United Kingdom2024-05-23
1049Argentina2024-06-16

On-Demand Data

NameIdCountryDate
Salvatore V Ruta1000Japan2024-06-10
Adams M Schemmer1001France2024-06-11
Ashley W Inouye1002Japan2024-05-25
Octavia T Ferencz1003United Kingdom2024-05-27
Jefferson W Rim1004Canada2024-06-02
Aruna C Wieser1005Russia2024-05-29
Leon J Darakjy1006India2024-05-30
Ivar J Butt1007Spain2024-06-13
Silvio Q Bolognia1008Canada2024-06-10
Aika B Venere1009Japan2024-05-29
Wickens Z Perin1010Japan2024-05-26
Misaki H Maclead1011India2024-05-23
David U Garufi1012Brazil2024-06-17
Adams Y Morasca1013Spain2024-05-23
Nicolas J Foller1014Australia2024-06-08
Jones F Amigon1015India2024-06-12
Mujtaba V Waycott1016Russia2024-06-16
Wickens L Saylors1017Russia2024-06-18
Aruna Z Saylors1018Brazil2024-06-07
Misaki O Marrier1019Italy2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria C MaletFranceAmy Elsner PROPOSAL
Johnson G NickaArgentinaAsiya Javayant PROPOSAL
Kaitlin X ShinkoCanadaAsiya Javayant NEGOTIATION
Octavia J GillianArgentinaIoni Bowcher PROPOSAL
Maria L IturbideItalyAnna Fali QUALIFIED
Adams Q PaprockiIndiaBernardo Dominic UNQUALIFIED
Kadeem L FlosiAustraliaOnyama Limba RENEWAL
Jones W RulapaughSpainIoni Bowcher QUALIFIED
David X CaldareraBrazilStephen Shaw NEGOTIATION
Wickens L CampainGermanyBernardo Dominic PROPOSAL
Mayumi R DoeIndiaAmy Elsner NEGOTIATION
Claire H DoeRussiaIoni Bowcher NEGOTIATION
Smith M TollnerBrazilAnna Fali PROPOSAL
Tony C SergiCanadaXuxue Feng RENEWAL
Julie R CampainAustraliaBernardo Dominic QUALIFIED
Chavez L FollerJapanAnna Fali NEGOTIATION
Francesco M RutaItalyAnna Fali UNQUALIFIED
Misaki U WieserFranceBernardo Dominic PROPOSAL
Leja C OldroydJapanOnyama Limba NEW
Ricardo M SchemmerFranceBernardo Dominic UNQUALIFIED
Emily R SlusarskiArgentinaAsiya Javayant NEGOTIATION
Rodrigues O GarufiArgentinaIvan Magalhaes PROPOSAL
Darci P BologniaFranceAnna Fali UNQUALIFIED
Salvatore V DilliardAustraliaOnyama Limba PROPOSAL
Mayumi W MorascaJapanXuxue Feng RENEWAL
Octavia J GauchoUnited KingdomAsiya Javayant NEGOTIATION
Alejandro I MaletItalyAmy Elsner PROPOSAL
Kaitlin P WieserArgentinaElwin Sharvill UNQUALIFIED
Mayumi W CampainSpainXuxue Feng PROPOSAL
Kadeem N KuskoRussiaBernardo Dominic UNQUALIFIED
Nicolas T NickaItalyAsiya Javayant QUALIFIED
Francesco C ShinkoItalyAmy Elsner RENEWAL
Nicolas E StockhamItalyStephen Shaw RENEWAL
Deepesh P GauchoGermanyXuxue Feng RENEWAL
Leja L ShinkoRussiaAsiya Javayant QUALIFIED
Leon J SaylorsGermanyXuxue Feng RENEWAL
Isabel K ShinkoIndiaAmy Elsner PROPOSAL
Silvio X FlosiUnited KingdomAsiya Javayant NEW
Salvatore P BologniaArgentinaAsiya Javayant UNQUALIFIED
Arvin R AlbaresUnited KingdomXuxue Feng UNQUALIFIED

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