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 Z PaprockiSpainBernardo Dominic QUALIFIED
Ashley Q CaudyFranceOnyama Limba QUALIFIED
Jennifer G NickaAustraliaAnna Fali QUALIFIED
Deepesh V GillianUnited KingdomBernardo Dominic PROPOSAL
Isabel N PaprockiRussiaXuxue Feng QUALIFIED
Octavia N AlbaresCanadaXuxue Feng QUALIFIED
Murillo O KolmetzUnited KingdomXuxue Feng QUALIFIED
Maria Y FigeroaFranceAsiya Javayant QUALIFIED
Francesco S BriddickAustraliaOnyama Limba NEGOTIATION
Kadeem F SergiIndiaIoni Bowcher PROPOSAL
Greenwood H FollerGermanyAmy Elsner RENEWAL
Stacey U AmigonAustraliaBernardo Dominic RENEWAL
Mayumi S KolmetzUnited KingdomAsiya Javayant NEGOTIATION
Rodrigues Y AlbaresItalyAnna Fali QUALIFIED
Mujtaba L KolmetzJapanOnyama Limba PROPOSAL
David R PaprockiSpainIvan Magalhaes RENEWAL
Tony F CampainItalyStephen Shaw QUALIFIED
Chavez R FigeroaUnited KingdomBernardo Dominic PROPOSAL
Costa F GarufiFranceAsiya Javayant RENEWAL
Greenwood U DoeGermanyOnyama Limba RENEWAL
Morrow W CaldareraIndiaXuxue Feng NEW
Aditya L PaprockiGermanyAmy Elsner RENEWAL
Smith Q GauchoFranceStephen Shaw PROPOSAL
Darci P SaylorsUnited KingdomBernardo Dominic QUALIFIED
Maisha M FigeroaSpainBernardo Dominic RENEWAL
Clifford F GauchoJapanAsiya Javayant NEGOTIATION
Mayumi C GauchoCanadaXuxue Feng RENEWAL
Julie D WieserJapanIvan Magalhaes QUALIFIED
Maisha G CaldareraUnited KingdomAmy Elsner PROPOSAL
Julie C IturbideArgentinaOnyama Limba RENEWAL
Aika M PoquetteJapanIoni Bowcher RENEWAL
Ricardo A SaylorsBrazilIvan Magalhaes NEW
Claire D WieserItalyXuxue Feng RENEWAL
Silvio O GauchoBrazilIvan Magalhaes PROPOSAL
Johnson K GillianCanadaElwin Sharvill NEW
Salvatore C BologniaFranceAnna Fali NEGOTIATION
Emily I StensethItalyXuxue Feng RENEWAL
Julie Y WieserJapanIoni Bowcher RENEWAL
Francesco V StensethSpainAnna Fali NEW
Sinclair K KolmetzGermanyIvan Magalhaes UNQUALIFIED
Antonio R SergiIndiaAmy Elsner RENEWAL
Jefferson R BowleyFranceOnyama Limba UNQUALIFIED
Aditya H WaycottIndiaBernardo Dominic NEW
Faith F FigeroaRussiaAsiya Javayant PROPOSAL
Johnson S BriddickArgentinaAsiya Javayant QUALIFIED
Darci G WhobreyRussiaAsiya Javayant RENEWAL
Mujtaba F RutaIndiaXuxue Feng UNQUALIFIED
Ivar X KolmetzUnited KingdomXuxue Feng NEW
Kaitlin O PoquetteSpainStephen Shaw QUALIFIED
Kadeem Q NestleRussiaOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Izzy H SchemmerArgentinaXuxue Feng UNQUALIFIED
Greenwood C MaletUnited KingdomXuxue Feng NEGOTIATION
Antonio Y KuskoUnited KingdomElwin Sharvill UNQUALIFIED
Salvatore J RutaIndiaAnna Fali RENEWAL
Wickens Q DarakjyBrazilXuxue Feng UNQUALIFIED
Arvin A StensethRussiaAnna Fali PROPOSAL
Aruna X NickaCanadaOnyama Limba NEGOTIATION
Jefferson H MarrierArgentinaElwin Sharvill RENEWAL
Johnson W TollnerJapanBernardo Dominic QUALIFIED
Ivar Z MaletGermanyIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair H DoeJapan2024-05-10Morlong Associates RENEWAL84Stephen Shaw
1001Emily B PaprockiAustralia2024-05-26Feltz Printing Service QUALIFIED5Onyama Limba
1002Murillo H GarufiItaly2024-06-03Morlong Associates NEW79Bernardo Dominic
1003Misaki O FerenczCanada2024-05-14Rangoni Of Florence NEW71Stephen Shaw
1004Salvatore A GarufiFrance2024-05-18Benton, John B Jr NEW4Ivan Magalhaes
1005Darci B SlusarskiArgentina2024-05-09Printing Dimensions NEGOTIATION78Anna Fali
1006Tony R InouyeArgentina2024-05-12Feiner Bros UNQUALIFIED82Xuxue Feng
1007Ashley D RutaJapan2024-05-29Chapman, Ross E Esq RENEWAL99Asiya Javayant
1008Smith E FollerUnited Kingdom2024-05-13Chapman, Ross E Esq PROPOSAL98Ioni Bowcher
1009Smith U InouyeItaly2024-05-21Chemel, James L Cpa RENEWAL13Stephen Shaw
1010Wickens Q StockhamBrazil2024-06-03King, Christopher A Esq PROPOSAL53Bernardo Dominic
1011Adams O PaprockiGermany2024-05-08King, Christopher A Esq NEGOTIATION23Ioni Bowcher
1012Jennifer V VocelkaSpain2024-05-31Truhlar And Truhlar Attys NEGOTIATION75Anna Fali
1013Jones G PoquetteCanada2024-05-29King, Christopher A Esq NEW51Stephen Shaw
1014James U GauchoFrance2024-05-08Truhlar And Truhlar Attys NEW3Xuxue Feng
1015Chavez P PoquetteAustralia2024-06-03Rousseaux, Michael Esq UNQUALIFIED73Asiya Javayant
1016Johnson O WhobreyAustralia2024-06-01Printing Dimensions UNQUALIFIED58Ivan Magalhaes
1017Sinclair Q VocelkaSpain2024-05-14Morlong Associates UNQUALIFIED47Bernardo Dominic
1018Misaki E RoysterAustralia2024-05-26Rangoni Of Florence QUALIFIED88Anna Fali
1019Silvio M FigeroaRussia2024-05-17Commercial Press NEGOTIATION26Elwin Sharvill
1020Maisha K FerenczArgentina2024-05-29Dorl, James J Esq NEW96Asiya Javayant
1021Sinclair G AlbaresBrazil2024-06-03Dorl, James J Esq UNQUALIFIED26Ioni Bowcher
1022Aditya I CampainRussia2024-05-14Truhlar And Truhlar Attys PROPOSAL88Elwin Sharvill
1023Izzy U NestleGermany2024-05-12Buckley Miller Wright QUALIFIED64Ioni Bowcher
1024Chavez R FerenczArgentina2024-05-14Rangoni Of Florence NEGOTIATION24Ioni Bowcher
1025Jennifer V GarufiArgentina2024-05-24Morlong Associates RENEWAL48Ivan Magalhaes
1026Munro D PerinGermany2024-05-28Dorl, James J Esq UNQUALIFIED25Stephen Shaw
1027Murillo H DoeAustralia2024-05-18Rangoni Of Florence PROPOSAL53Ivan Magalhaes
1028Jeanfrancois P FerenczGermany2024-05-24Feiner Bros QUALIFIED63Stephen Shaw
1029Arvin Q NickaJapan2024-05-21Chemel, James L Cpa PROPOSAL81Xuxue Feng
1030Francesco J SergiUnited Kingdom2024-05-25Truhlar And Truhlar Attys NEW34Ioni Bowcher
1031Kaitlin C BowleyGermany2024-05-15Benton, John B Jr PROPOSAL10Ivan Magalhaes
1032Wickens W TollnerBrazil2024-06-02Buckley Miller Wright PROPOSAL19Asiya Javayant
1033Maisha B CampainAustralia2024-06-03Feltz Printing Service UNQUALIFIED93Elwin Sharvill
1034Salvatore O ShinkoJapan2024-05-07Feltz Printing Service QUALIFIED83Asiya Javayant
1035Mayumi K FollerAustralia2024-05-10Chemel, James L Cpa UNQUALIFIED23Anna Fali
1036Cody W NestleIndia2024-05-23Truhlar And Truhlar Attys QUALIFIED47Asiya Javayant
1037Alejandro V MaletSpain2024-05-24Chanay, Jeffrey A Esq PROPOSAL49Elwin Sharvill
1038Isabel G CaudyArgentina2024-05-19Rousseaux, Michael Esq UNQUALIFIED14Xuxue Feng
1039Adams K PoquetteIndia2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED20Ioni Bowcher
1040Leja M PerinItaly2024-05-07Benton, John B Jr NEGOTIATION92Ivan Magalhaes
1041Chavez K SergiSpain2024-05-12Benton, John B Jr PROPOSAL7Bernardo Dominic
1042Maisha I CampainAustralia2024-05-21Commercial Press UNQUALIFIED70Ioni Bowcher
1043Adams V TollnerJapan2024-05-17Chanay, Jeffrey A Esq PROPOSAL95Asiya Javayant
1044Claire G PoquetteAustralia2024-05-20Dorl, James J Esq NEW83Stephen Shaw
1045Aika T OstroskyItaly2024-05-10Chanay, Jeffrey A Esq RENEWAL59Onyama Limba
1046Salvatore Q BowleyArgentina2024-05-16Feltz Printing Service UNQUALIFIED33Anna Fali
1047Jeanfrancois M SlusarskiUnited Kingdom2024-05-08Feiner Bros NEGOTIATION16Asiya Javayant
1048Rodrigues U RimArgentina2024-05-17Rangoni Of Florence NEW38Onyama Limba
1049Wickens X GarufiFrance2024-06-02Rousseaux, Michael Esq RENEWAL59Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Emily O CampainGermanyIvan Magalhaes QUALIFIED
Kaitlin J WaycottJapanOnyama Limba NEGOTIATION
Arvin X GillianArgentinaElwin Sharvill RENEWAL
Mujtaba M BologniaFranceStephen Shaw PROPOSAL
Leja C DilliardArgentinaAsiya Javayant NEW
Munro K FollerSpainAmy Elsner PROPOSAL
Leja O CaldareraIndiaAmy Elsner RENEWAL
Murillo T TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Antonio A OldroydItalyIoni Bowcher UNQUALIFIED
Smith E FigeroaIndiaAnna Fali UNQUALIFIED
Julie X InouyeSpainElwin Sharvill NEGOTIATION
Ricardo U OldroydIndiaOnyama Limba PROPOSAL
Alejandro C FerenczItalyIoni Bowcher PROPOSAL
Mujtaba O AlbaresJapanAsiya Javayant RENEWAL
Johnson M GauchoJapanIoni Bowcher PROPOSAL
Morrow L DilliardSpainIoni Bowcher QUALIFIED
Izzy A PoquetteCanadaStephen Shaw PROPOSAL
Costa U MarrierBrazilXuxue Feng RENEWAL
Cody V BologniaAustraliaAsiya Javayant NEW
Kadeem S CampainIndiaOnyama Limba PROPOSAL
Darci P MaletFranceBernardo Dominic NEW
Kaitlin X NestleArgentinaAnna Fali NEW
Rodrigues V RoysterAustraliaIoni Bowcher PROPOSAL
Deepesh Y MaletBrazilXuxue Feng NEGOTIATION
Francesco M TollnerGermanyElwin Sharvill NEW
Antonio E SaylorsCanadaOnyama Limba QUALIFIED
Alejandro H DilliardArgentinaOnyama Limba NEW
Cody N PoquetteAustraliaAsiya Javayant NEGOTIATION
Faith X SlusarskiAustraliaIvan Magalhaes RENEWAL
Izzy J PoquetteGermanyElwin Sharvill UNQUALIFIED
Mayumi K RutaGermanyElwin Sharvill QUALIFIED
Julie B MorascaBrazilOnyama Limba NEW
Julie O FollerSpainOnyama Limba UNQUALIFIED
Leon G CaldareraJapanIvan Magalhaes NEGOTIATION
Silvio X WieserCanadaAsiya Javayant RENEWAL
Deepesh F PoquetteSpainBernardo Dominic UNQUALIFIED
Francesco L GarufiAustraliaElwin Sharvill NEGOTIATION
Greenwood S DilliardRussiaElwin Sharvill PROPOSAL
Juan X NestleUnited KingdomAmy Elsner QUALIFIED
Maria Z StensethJapanBernardo Dominic QUALIFIED
James T NickaCanadaAsiya Javayant PROPOSAL
Clifford L KolmetzFranceAnna Fali RENEWAL
Maria E OldroydArgentinaAmy Elsner RENEWAL
Stacey T VenereSpainAsiya Javayant NEW
Salvatore C KolmetzUnited KingdomAnna Fali RENEWAL
Tony F MorascaJapanIvan Magalhaes NEW
Darci V GauchoJapanXuxue Feng UNQUALIFIED
Aruna O RoysterArgentinaIvan Magalhaes RENEWAL
Maisha C TollnerUnited KingdomXuxue Feng RENEWAL
Silvio Y SlusarskiRussiaXuxue Feng PROPOSAL
Frozen Columns
Name
Leon O Butt
Clifford H Bolognia
Kaitlin P Nestle
Stacey L Caudy
Misaki W Gaucho
Kadeem V Kusko
Kaitlin W Vocelka
Claire F Whobrey
James Y Nicka
Kadeem Q Paprocki
Antonio S Oldroyd
Julie M Ruta
Nicolas Y Maclead
Mujtaba M Nicka
Julie H Iturbide
Stacey B Doe
Tony E Nicka
Murillo M Dilliard
Salvatore S Perin
Claire H Malet
Juan G Flosi
Faith M Vocelka
Greenwood T Whobrey
Sinclair X Waycott
Nicolas H Doe
Francesco F Foller
Tony D Iturbide
Salvatore H Garufi
Leon I Oldroyd
David F Bowley
Johnson Z Ostrosky
Chavez C Whobrey
Leon R Nicka
Maria E Whobrey
Aruna R Vocelka
Nicolas D Vocelka
Francesco O Vocelka
Jeanfrancois Z Briddick
David L Figeroa
Greenwood J Wieser
Greenwood U Garufi
Adams Y Caldarera
Aika N Marrier
Wickens L Briddick
Johnson R Wieser
Maisha K Albares
Cody J Gillian
Silvio Y Rulapaugh
Jefferson N Albares
Juan G Flosi
IdCountryDate
1000Japan2024-05-23
1001Brazil2024-06-01
1002Canada2024-05-09
1003Japan2024-05-23
1004Brazil2024-05-19
1005India2024-05-11
1006Spain2024-05-22
1007Japan2024-05-27
1008India2024-05-25
1009Argentina2024-05-23
1010Italy2024-06-01
1011United Kingdom2024-05-21
1012Canada2024-05-25
1013United Kingdom2024-05-19
1014Japan2024-05-22
1015Canada2024-05-21
1016Russia2024-06-05
1017Brazil2024-06-02
1018Argentina2024-05-24
1019India2024-05-09
1020Germany2024-05-27
1021Argentina2024-05-08
1022Spain2024-05-26
1023Russia2024-06-01
1024Spain2024-05-13
1025United Kingdom2024-05-13
1026Germany2024-05-17
1027Germany2024-05-22
1028Russia2024-05-28
1029India2024-05-31
1030Brazil2024-05-27
1031Russia2024-05-12
1032Spain2024-05-20
1033France2024-06-04
1034Italy2024-06-02
1035Brazil2024-05-15
1036Australia2024-05-25
1037Spain2024-05-16
1038Brazil2024-05-19
1039Argentina2024-05-11
1040Brazil2024-05-25
1041France2024-06-05
1042Germany2024-05-20
1043India2024-05-13
1044United Kingdom2024-05-12
1045Canada2024-05-27
1046India2024-05-15
1047Brazil2024-05-16
1048Australia2024-05-21
1049Japan2024-05-13

On-Demand Data

NameIdCountryDate
Antonio F Ostrosky1000France2024-05-19
Sinclair C Morasca1001Spain2024-06-03
Misaki T Dilliard1002India2024-05-23
Jennifer W Morasca1003Spain2024-05-27
Claire R Garufi1004United Kingdom2024-05-18
Mayumi S Dilliard1005Canada2024-06-02
Jones Q Bolognia1006Brazil2024-05-29
Francesco W Gillian1007Australia2024-06-02
Munro Z Malet1008Canada2024-05-16
Kadeem F Garufi1009Australia2024-06-03
Leon K Caldarera1010Argentina2024-05-26
Tony M Kusko1011Germany2024-05-16
Ricardo V Flosi1012Spain2024-05-30
Alejandro M Kusko1013Spain2024-06-03
Arvin V Briddick1014Italy2024-05-23
Francesco E Albares1015Canada2024-05-20
Aditya V Malet1016Argentina2024-06-05
Kaitlin D Doe1017Russia2024-05-24
Wickens E Waycott1018Italy2024-05-09
Leja V Ferencz1019United Kingdom2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar Q IturbideAustraliaIoni Bowcher RENEWAL
Ashley E CampainGermanyIvan Magalhaes QUALIFIED
James D MaletArgentinaOnyama Limba RENEWAL
Faith I OldroydArgentinaXuxue Feng UNQUALIFIED
Murillo P RutaIndiaAmy Elsner RENEWAL
Arvin F ButtJapanXuxue Feng QUALIFIED
Silvio H GlickIndiaAnna Fali QUALIFIED
Kadeem D FollerFranceOnyama Limba PROPOSAL
Aika R SchemmerGermanyStephen Shaw UNQUALIFIED
Aditya F MaletSpainStephen Shaw RENEWAL
Julie H GlickAustraliaAsiya Javayant NEW
Kadeem J StockhamJapanXuxue Feng NEW
Silvio P MacleadCanadaBernardo Dominic UNQUALIFIED
Izzy P CampainSpainIoni Bowcher QUALIFIED
Leon W PerinCanadaIvan Magalhaes PROPOSAL
Adams J MaletArgentinaAmy Elsner PROPOSAL
Tony F DilliardUnited KingdomStephen Shaw RENEWAL
Clifford F DarakjyGermanyStephen Shaw QUALIFIED
Adams F CaldareraFranceAnna Fali QUALIFIED
Murillo Y PaprockiJapanAnna Fali UNQUALIFIED
Munro J MarrierItalyOnyama Limba NEGOTIATION
Silvio P OstroskySpainElwin Sharvill QUALIFIED
Mujtaba U ButtSpainElwin Sharvill PROPOSAL
Adams W RutaArgentinaIoni Bowcher NEGOTIATION
Salvatore P RutaIndiaElwin Sharvill RENEWAL
Leja Z MarrierAustraliaAnna Fali NEGOTIATION
Juan I VenereJapanXuxue Feng RENEWAL
Faith P GarufiJapanAnna Fali QUALIFIED
Jeanfrancois I SergiUnited KingdomAsiya Javayant RENEWAL
Munro A CaldareraRussiaOnyama Limba UNQUALIFIED
Kaitlin K GillianGermanyIoni Bowcher RENEWAL
Morrow Y FlosiIndiaStephen Shaw QUALIFIED
Ricardo L MaletSpainXuxue Feng NEW
Juan H FlosiSpainIoni Bowcher PROPOSAL
Ivar F AmigonJapanIvan Magalhaes PROPOSAL
Izzy Z GlickIndiaAsiya Javayant NEW
Nicolas V DoeIndiaBernardo Dominic NEW
Misaki P PerinSpainElwin Sharvill NEW
James I VocelkaCanadaIoni Bowcher RENEWAL
James X CaudyItalyStephen Shaw 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>