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
Maisha B MacleadIndiaAmy Elsner QUALIFIED
Emily J InouyeJapanAnna Fali UNQUALIFIED
Jefferson N PaprockiFranceIvan Magalhaes UNQUALIFIED
Antonio R FlosiIndiaAmy Elsner RENEWAL
Aruna D MarrierRussiaIoni Bowcher NEW
Juan H RutaAustraliaElwin Sharvill UNQUALIFIED
Ricardo O AlbaresSpainAnna Fali NEW
Maria G WhobreyAustraliaIoni Bowcher PROPOSAL
Jefferson D TollnerAustraliaElwin Sharvill NEGOTIATION
Leja O RulapaughJapanBernardo Dominic UNQUALIFIED
Misaki P KuskoRussiaAnna Fali UNQUALIFIED
Wickens A CaldareraItalyAmy Elsner RENEWAL
Nicolas W FerenczGermanyIvan Magalhaes PROPOSAL
Deepesh F MaletUnited KingdomXuxue Feng QUALIFIED
Wickens S InouyeJapanElwin Sharvill RENEWAL
James J KuskoItalyOnyama Limba NEW
Misaki H BologniaSpainBernardo Dominic RENEWAL
Silvio P DilliardGermanyXuxue Feng NEW
Francesco V FollerSpainIvan Magalhaes UNQUALIFIED
Cody D WieserArgentinaIoni Bowcher PROPOSAL
David J MacleadJapanBernardo Dominic NEGOTIATION
Ivar U ChuiFranceAsiya Javayant NEW
Isabel H DarakjyUnited KingdomOnyama Limba QUALIFIED
Wickens M IturbideIndiaAsiya Javayant NEW
Stacey H NestleBrazilIoni Bowcher PROPOSAL
Izzy M MaletGermanyStephen Shaw NEW
Mayumi X VenereCanadaAsiya Javayant QUALIFIED
Cody G AlbaresIndiaBernardo Dominic UNQUALIFIED
Wickens L VocelkaItalyXuxue Feng NEGOTIATION
Jennifer D RutaGermanyIoni Bowcher NEW
Alejandro B AlbaresCanadaStephen Shaw QUALIFIED
Murillo I StensethRussiaElwin Sharvill PROPOSAL
Jones A RulapaughFranceIoni Bowcher NEGOTIATION
Jeanfrancois J InouyeIndiaStephen Shaw RENEWAL
Nicolas O BowleyAustraliaIoni Bowcher QUALIFIED
Ricardo D AlbaresIndiaIvan Magalhaes NEGOTIATION
Salvatore D WhobreyRussiaOnyama Limba PROPOSAL
Mayumi H ShinkoCanadaIvan Magalhaes UNQUALIFIED
Faith N PerinAustraliaXuxue Feng PROPOSAL
Johnson Y FollerGermanyBernardo Dominic QUALIFIED
Jennifer Q OldroydArgentinaXuxue Feng NEGOTIATION
Jennifer Z InouyeIndiaStephen Shaw PROPOSAL
Rodrigues P MorascaFranceIoni Bowcher RENEWAL
Isabel R DoeFranceStephen Shaw PROPOSAL
Smith G AmigonUnited KingdomStephen Shaw RENEWAL
Silvio I AmigonAustraliaStephen Shaw PROPOSAL
James V WieserItalyBernardo Dominic NEW
Greenwood I NickaItalyAsiya Javayant NEW
Mujtaba J MarrierArgentinaIoni Bowcher RENEWAL
Julie J SlusarskiGermanyIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika X RoysterIndiaXuxue Feng NEGOTIATION
Aditya O AlbaresIndiaStephen Shaw NEGOTIATION
Johnson J WhobreyUnited KingdomStephen Shaw RENEWAL
Mujtaba U BriddickArgentinaElwin Sharvill NEGOTIATION
Adams M GillianItalyIoni Bowcher RENEWAL
Jennifer K OldroydJapanAmy Elsner UNQUALIFIED
Rodrigues G AmigonGermanyIoni Bowcher PROPOSAL
Morrow G SlusarskiJapanStephen Shaw RENEWAL
Silvio A SchemmerUnited KingdomBernardo Dominic NEW
Misaki W RulapaughUnited KingdomIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony A CampainCanada2024-06-02Rangoni Of Florence RENEWAL28Bernardo Dominic
1001Jones Z SchemmerItaly2024-06-06Feiner Bros QUALIFIED51Amy Elsner
1002Sinclair V BologniaGermany2024-05-26Chemel, James L Cpa NEGOTIATION38Bernardo Dominic
1003Salvatore R OldroydArgentina2024-06-07Chanay, Jeffrey A Esq PROPOSAL10Elwin Sharvill
1004Cody L OstroskyItaly2024-06-11Chapman, Ross E Esq NEGOTIATION44Bernardo Dominic
1005Aruna N DoeUnited Kingdom2024-06-21Feltz Printing Service UNQUALIFIED42Onyama Limba
1006Alejandro B OstroskyItaly2024-06-02Truhlar And Truhlar Attys NEW83Amy Elsner
1007Ashley N StockhamSpain2024-05-30Chanay, Jeffrey A Esq NEW50Elwin Sharvill
1008Murillo G AmigonUnited Kingdom2024-06-17Printing Dimensions UNQUALIFIED93Stephen Shaw
1009Aditya D DilliardArgentina2024-06-22Printing Dimensions RENEWAL40Elwin Sharvill
1010Leon U RimUnited Kingdom2024-06-14Rousseaux, Michael Esq RENEWAL45Xuxue Feng
1011Maisha Q FigeroaItaly2024-06-11Buckley Miller Wright QUALIFIED33Ioni Bowcher
1012Deepesh X RoysterSpain2024-06-08Morlong Associates NEGOTIATION73Amy Elsner
1013Wickens O SergiFrance2024-06-22Benton, John B Jr QUALIFIED37Amy Elsner
1014Arvin Q GlickSpain2024-06-19Rangoni Of Florence UNQUALIFIED34Stephen Shaw
1015Maisha Q StockhamSpain2024-06-16King, Christopher A Esq PROPOSAL61Amy Elsner
1016Arvin T DarakjyJapan2024-05-25Chemel, James L Cpa QUALIFIED11Stephen Shaw
1017Francesco T FollerRussia2024-05-24Chanay, Jeffrey A Esq NEGOTIATION5Ioni Bowcher
1018Darci Y CampainArgentina2024-06-10Chanay, Jeffrey A Esq RENEWAL48Ivan Magalhaes
1019Jefferson P FollerJapan2024-06-20Morlong Associates PROPOSAL73Elwin Sharvill
1020Juan K InouyeBrazil2024-06-11Chemel, James L Cpa NEW52Bernardo Dominic
1021Ivar D StensethCanada2024-05-30Rangoni Of Florence PROPOSAL87Elwin Sharvill
1022Jennifer V PerinGermany2024-06-04Rousseaux, Michael Esq UNQUALIFIED99Asiya Javayant
1023Sinclair X FlosiAustralia2024-06-12Benton, John B Jr NEW21Amy Elsner
1024Misaki Z ShinkoUnited Kingdom2024-06-05Benton, John B Jr PROPOSAL12Amy Elsner
1025Francesco B DilliardGermany2024-06-17Dorl, James J Esq UNQUALIFIED94Ioni Bowcher
1026Darci Y VocelkaArgentina2024-05-30Chemel, James L Cpa QUALIFIED62Bernardo Dominic
1027Mayumi U StensethItaly2024-05-26Printing Dimensions QUALIFIED27Ioni Bowcher
1028Leon M GarufiFrance2024-06-21Dorl, James J Esq PROPOSAL22Amy Elsner
1029Leja R PerinFrance2024-06-07Chemel, James L Cpa RENEWAL6Xuxue Feng
1030Leon A AlbaresCanada2024-06-18Rousseaux, Michael Esq PROPOSAL84Ioni Bowcher
1031Jeanfrancois D KolmetzRussia2024-06-13Commercial Press PROPOSAL70Anna Fali
1032Antonio J PaprockiItaly2024-06-01Printing Dimensions NEW5Onyama Limba
1033Maria O SchemmerSpain2024-06-04King, Christopher A Esq UNQUALIFIED13Anna Fali
1034Cody C VenereRussia2024-06-18Rousseaux, Michael Esq PROPOSAL60Anna Fali
1035Maria U BologniaSpain2024-06-19Rousseaux, Michael Esq UNQUALIFIED88Anna Fali
1036Deepesh R SlusarskiCanada2024-06-13Chemel, James L Cpa NEW95Anna Fali
1037Mayumi X GillianGermany2024-06-20Chemel, James L Cpa NEGOTIATION43Xuxue Feng
1038Ashley F RutaJapan2024-05-29Chanay, Jeffrey A Esq PROPOSAL57Onyama Limba
1039Wickens I RimFrance2024-06-04Benton, John B Jr NEW21Anna Fali
1040Antonio Y MaletFrance2024-06-22Commercial Press NEW19Onyama Limba
1041Smith D PerinCanada2024-06-13Commercial Press NEW74Amy Elsner
1042Julie D FigeroaRussia2024-05-27Commercial Press QUALIFIED60Asiya Javayant
1043Aditya E GauchoIndia2024-06-06Rangoni Of Florence RENEWAL5Onyama Limba
1044Alejandro E SchemmerRussia2024-06-08King, Christopher A Esq UNQUALIFIED65Anna Fali
1045Emily H NickaItaly2024-06-15Feltz Printing Service UNQUALIFIED39Elwin Sharvill
1046Aika L MarrierJapan2024-05-25Feltz Printing Service PROPOSAL48Anna Fali
1047Ricardo E PaprockiJapan2024-06-07Rangoni Of Florence PROPOSAL44Asiya Javayant
1048Cody Q BowleySpain2024-06-04Printing Dimensions QUALIFIED67Asiya Javayant
1049Darci Q GarufiRussia2024-05-24Rousseaux, Michael Esq NEW75Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Mayumi T AlbaresItalyAmy Elsner NEGOTIATION
Aditya U MacleadUnited KingdomOnyama Limba UNQUALIFIED
Maisha E CampainGermanyAnna Fali QUALIFIED
Misaki E ShinkoRussiaAnna Fali QUALIFIED
Misaki M SergiArgentinaBernardo Dominic RENEWAL
Emily O CaudyBrazilAnna Fali RENEWAL
Rodrigues T MaletSpainElwin Sharvill RENEWAL
Sinclair G MaletArgentinaAnna Fali UNQUALIFIED
Ashley W AmigonFranceAsiya Javayant QUALIFIED
Juan O StockhamGermanyIvan Magalhaes PROPOSAL
Aditya P GarufiIndiaXuxue Feng NEGOTIATION
Wickens C FerenczAustraliaIvan Magalhaes UNQUALIFIED
Morrow F ChuiIndiaStephen Shaw RENEWAL
Francesco Z PerinCanadaElwin Sharvill NEGOTIATION
Sinclair O AmigonCanadaStephen Shaw QUALIFIED
Costa B ButtFranceElwin Sharvill PROPOSAL
Adams M RutaItalyAmy Elsner QUALIFIED
Morrow M PerinFranceIvan Magalhaes NEW
Deepesh K SergiGermanyElwin Sharvill NEGOTIATION
Jeanfrancois P DilliardCanadaIvan Magalhaes RENEWAL
Maisha U SlusarskiRussiaElwin Sharvill NEW
Clifford O DarakjyArgentinaIvan Magalhaes NEGOTIATION
Aditya G PaprockiJapanAmy Elsner PROPOSAL
Adams S DarakjyRussiaAmy Elsner RENEWAL
Munro L WaycottGermanyXuxue Feng UNQUALIFIED
Smith W WieserAustraliaBernardo Dominic PROPOSAL
Misaki Q FigeroaRussiaAsiya Javayant NEGOTIATION
Octavia Q ButtGermanyAmy Elsner RENEWAL
Murillo Q SchemmerSpainAnna Fali QUALIFIED
Mayumi L GarufiCanadaAsiya Javayant UNQUALIFIED
James V TollnerFranceAnna Fali NEGOTIATION
Smith E GauchoGermanyAsiya Javayant RENEWAL
Salvatore C AmigonArgentinaBernardo Dominic QUALIFIED
Leon I StockhamIndiaAmy Elsner UNQUALIFIED
James X VocelkaItalyIoni Bowcher PROPOSAL
Nicolas S CaudyRussiaAsiya Javayant QUALIFIED
Wickens X GlickSpainAmy Elsner NEGOTIATION
Salvatore V RulapaughGermanyIoni Bowcher UNQUALIFIED
Kaitlin M SergiCanadaOnyama Limba UNQUALIFIED
Cody I AmigonJapanXuxue Feng NEW
Octavia R FlosiRussiaAmy Elsner QUALIFIED
Maria F SchemmerIndiaAmy Elsner UNQUALIFIED
Izzy K PerinGermanyAmy Elsner UNQUALIFIED
Nicolas E BriddickItalyElwin Sharvill PROPOSAL
Maisha S NestleArgentinaElwin Sharvill QUALIFIED
Darci O ChuiRussiaIvan Magalhaes RENEWAL
Wickens F FollerArgentinaElwin Sharvill NEW
Alejandro L SchemmerSpainElwin Sharvill NEGOTIATION
Arvin X NickaItalyOnyama Limba PROPOSAL
Emily Y GillianJapanElwin Sharvill RENEWAL
Frozen Columns
Name
Nicolas M Saylors
Leja T Malet
Isabel I Kusko
Greenwood S Royster
Aditya U Bolognia
Arvin J Butt
Smith V Tollner
Morrow R Flosi
James E Iturbide
Octavia K Caldarera
Cody K Darakjy
Claire S Rim
Aruna P Gaucho
Morrow G Nestle
Adams I Ferencz
Mayumi N Figeroa
Ricardo A Campain
Jeanfrancois G Inouye
Kaitlin H Maclead
Jeanfrancois G Inouye
Mujtaba E Dilliard
David G Wieser
Jennifer T Bowley
Munro O Caldarera
Juan E Ferencz
Maria N Bowley
Leon E Schemmer
Emily I Rim
Emily H Perin
Kaitlin U Malet
Leja G Rulapaugh
Izzy Y Darakjy
Izzy J Doe
Ashley N Royster
Julie X Caldarera
Jones S Rim
Mujtaba M Ferencz
David Y Caudy
Alejandro R Chui
Darci W Amigon
Greenwood L Ferencz
Jeanfrancois L Caudy
Claire O Tollner
Wickens Z Bowley
Emily U Venere
Costa A Figeroa
Misaki G Slusarski
Deepesh A Poquette
Kaitlin I Whobrey
Jones W Royster
IdCountryDate
1000Russia2024-05-30
1001Argentina2024-06-15
1002Brazil2024-06-06
1003Spain2024-06-07
1004Germany2024-06-14
1005Spain2024-05-27
1006Australia2024-06-05
1007India2024-05-29
1008Canada2024-06-16
1009India2024-06-10
1010Russia2024-05-31
1011France2024-05-24
1012Canada2024-06-11
1013United Kingdom2024-06-02
1014Australia2024-06-14
1015Argentina2024-06-22
1016Italy2024-05-30
1017India2024-06-12
1018Canada2024-06-10
1019France2024-06-10
1020Canada2024-06-18
1021Australia2024-05-29
1022Germany2024-06-04
1023United Kingdom2024-06-09
1024Italy2024-06-20
1025Italy2024-05-29
1026Spain2024-06-12
1027Brazil2024-06-17
1028Brazil2024-06-15
1029France2024-06-01
1030Brazil2024-06-16
1031Germany2024-05-28
1032Germany2024-06-05
1033Japan2024-06-11
1034Brazil2024-05-27
1035France2024-06-07
1036Brazil2024-05-31
1037France2024-06-20
1038Australia2024-06-19
1039Canada2024-05-29
1040France2024-05-28
1041India2024-05-28
1042Germany2024-06-09
1043Italy2024-06-15
1044France2024-06-01
1045Italy2024-05-27
1046Italy2024-06-17
1047France2024-05-24
1048France2024-05-27
1049Australia2024-06-07

On-Demand Data

NameIdCountryDate
Aditya C Vocelka1000Australia2024-06-14
Maria W Schemmer1001Russia2024-06-17
Cody D Ostrosky1002Canada2024-05-24
Ivar G Saylors1003Brazil2024-05-28
Rodrigues M Iturbide1004France2024-06-09
Leon Y Stenseth1005Japan2024-06-12
Wickens H Iturbide1006Spain2024-06-16
Mayumi O Sergi1007Australia2024-05-25
Adams Q Tollner1008Australia2024-06-21
Greenwood Z Iturbide1009Australia2024-06-21
Greenwood K Garufi1010Russia2024-06-13
Isabel Z Nestle1011Japan2024-05-25
Jennifer G Stockham1012Spain2024-05-27
Rodrigues A Rulapaugh1013France2024-06-03
Claire V Dilliard1014France2024-06-17
Clifford F Inouye1015Spain2024-06-10
Mujtaba R Slusarski1016India2024-06-14
Clifford W Garufi1017Canada2024-06-12
Emily O Garufi1018Argentina2024-06-06
Octavia M Stockham1019India2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh N KolmetzBrazilAmy Elsner PROPOSAL
Misaki F BriddickAustraliaXuxue Feng NEW
Murillo W NickaSpainXuxue Feng QUALIFIED
Costa Q DarakjyGermanyBernardo Dominic UNQUALIFIED
Cody A NestleFranceIvan Magalhaes NEGOTIATION
Greenwood M ChuiFranceBernardo Dominic NEW
Aika L RutaFranceElwin Sharvill NEW
Cody K MaletItalyAsiya Javayant UNQUALIFIED
Morrow H OstroskyGermanyAsiya Javayant NEW
Wickens W FerenczBrazilElwin Sharvill PROPOSAL
Munro F DilliardGermanyElwin Sharvill NEGOTIATION
Clifford X RoysterAustraliaAmy Elsner QUALIFIED
David O InouyeItalyAnna Fali RENEWAL
Maisha I SchemmerIndiaIoni Bowcher QUALIFIED
Emily K DoeRussiaAmy Elsner NEGOTIATION
Arvin E GarufiRussiaOnyama Limba UNQUALIFIED
Jefferson I GlickRussiaOnyama Limba PROPOSAL
Izzy Y BriddickRussiaOnyama Limba QUALIFIED
Maria T CaldareraItalyStephen Shaw NEGOTIATION
Izzy U ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Ricardo G TollnerSpainOnyama Limba RENEWAL
Tony L PoquetteArgentinaAsiya Javayant QUALIFIED
Jefferson A FollerGermanyAnna Fali RENEWAL
Ricardo K WieserCanadaOnyama Limba PROPOSAL
Julie I OstroskyRussiaStephen Shaw PROPOSAL
Silvio Y MaletBrazilElwin Sharvill PROPOSAL
David T MaletCanadaAsiya Javayant PROPOSAL
Rodrigues U CaudyGermanyAmy Elsner PROPOSAL
Murillo S AmigonIndiaBernardo Dominic NEW
Antonio U VenereUnited KingdomXuxue Feng NEGOTIATION
Faith Q BriddickArgentinaAsiya Javayant QUALIFIED
Jones V MarrierBrazilStephen Shaw UNQUALIFIED
Misaki O NestleUnited KingdomAmy Elsner NEGOTIATION
Arvin G RutaGermanyAsiya Javayant NEW
Mayumi P MorascaArgentinaIvan Magalhaes PROPOSAL
Claire W DilliardUnited KingdomAmy Elsner RENEWAL
Mujtaba O InouyeGermanyStephen Shaw QUALIFIED
James E BriddickCanadaAmy Elsner NEGOTIATION
Octavia D IturbideBrazilIoni Bowcher NEGOTIATION
Isabel F InouyeJapanAmy Elsner 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>