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
Julie X TollnerIndiaStephen Shaw QUALIFIED
Deepesh K InouyeArgentinaIoni Bowcher UNQUALIFIED
Stacey J CaudyRussiaStephen Shaw NEW
Johnson Z CaldareraJapanElwin Sharvill NEW
Arvin W VenereSpainXuxue Feng PROPOSAL
Cody J DoeSpainAnna Fali NEW
Ricardo D SlusarskiUnited KingdomOnyama Limba UNQUALIFIED
Mayumi K GlickGermanyIoni Bowcher PROPOSAL
Jennifer T SergiIndiaIoni Bowcher NEW
Ashley X PoquetteRussiaBernardo Dominic PROPOSAL
Leon O FollerIndiaOnyama Limba UNQUALIFIED
Adams F OstroskyIndiaOnyama Limba QUALIFIED
Adams I VocelkaSpainBernardo Dominic PROPOSAL
Aditya E ButtSpainXuxue Feng PROPOSAL
Munro V VenereCanadaBernardo Dominic UNQUALIFIED
Arvin J OstroskyGermanyStephen Shaw UNQUALIFIED
Wickens A FigeroaAustraliaIoni Bowcher NEW
Aditya X SchemmerCanadaElwin Sharvill UNQUALIFIED
Julie G RulapaughAustraliaStephen Shaw UNQUALIFIED
Adams Y TollnerIndiaStephen Shaw NEGOTIATION
Jefferson I GillianGermanyAnna Fali PROPOSAL
Cody O BowleySpainOnyama Limba QUALIFIED
Cody C RulapaughIndiaAnna Fali PROPOSAL
Francesco H FerenczJapanElwin Sharvill PROPOSAL
Johnson V IturbideUnited KingdomBernardo Dominic RENEWAL
Smith P GlickUnited KingdomOnyama Limba RENEWAL
Aditya T KolmetzCanadaElwin Sharvill UNQUALIFIED
Jefferson Z ChuiAustraliaBernardo Dominic UNQUALIFIED
Antonio T DoeUnited KingdomXuxue Feng QUALIFIED
Ivar K GlickItalyAnna Fali NEW
Octavia I KolmetzRussiaElwin Sharvill NEGOTIATION
Greenwood W AmigonItalyBernardo Dominic RENEWAL
Jennifer T ShinkoCanadaXuxue Feng QUALIFIED
Kaitlin O BologniaAustraliaStephen Shaw RENEWAL
Kadeem F InouyeFranceAsiya Javayant UNQUALIFIED
Silvio H RimSpainAnna Fali RENEWAL
Mujtaba K OldroydGermanyOnyama Limba NEGOTIATION
Ashley G CaldareraAustraliaOnyama Limba QUALIFIED
Adams N StensethSpainAmy Elsner NEW
Jeanfrancois M FlosiUnited KingdomAsiya Javayant UNQUALIFIED
Murillo S MaletUnited KingdomIoni Bowcher NEW
Chavez F WaycottSpainAmy Elsner RENEWAL
Julie W GillianRussiaAsiya Javayant RENEWAL
James A AlbaresRussiaIvan Magalhaes NEW
Morrow G MacleadUnited KingdomElwin Sharvill NEGOTIATION
James T SaylorsItalyAsiya Javayant NEGOTIATION
Stacey B IturbideGermanyStephen Shaw RENEWAL
Izzy V OldroydCanadaAnna Fali UNQUALIFIED
Nicolas L WieserAustraliaIvan Magalhaes RENEWAL
Ashley T WhobreyCanadaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kadeem P SergiJapanAnna Fali NEGOTIATION
Francesco K FlosiFranceStephen Shaw QUALIFIED
Jennifer O TollnerItalyAnna Fali RENEWAL
Clifford W SaylorsItalyBernardo Dominic QUALIFIED
Kadeem G SergiUnited KingdomAsiya Javayant NEW
Rodrigues Y CaldareraRussiaStephen Shaw QUALIFIED
Nicolas J MacleadJapanIoni Bowcher NEW
Claire Z TollnerUnited KingdomOnyama Limba QUALIFIED
Rodrigues H MaletSpainXuxue Feng NEW
Munro W GillianFranceOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo O OldroydUnited Kingdom2024-05-29King, Christopher A Esq NEGOTIATION75Ivan Magalhaes
1001Mayumi S AlbaresGermany2024-06-04Benton, John B Jr NEW1Elwin Sharvill
1002Maria U FigeroaIndia2024-05-21Truhlar And Truhlar Attys NEW44Amy Elsner
1003Ashley P WhobreyRussia2024-05-30Chanay, Jeffrey A Esq QUALIFIED45Elwin Sharvill
1004Chavez K VocelkaAustralia2024-06-09Rangoni Of Florence PROPOSAL44Ioni Bowcher
1005Mujtaba O AlbaresBrazil2024-05-24Rangoni Of Florence QUALIFIED5Bernardo Dominic
1006David C KolmetzCanada2024-05-24King, Christopher A Esq NEGOTIATION89Ioni Bowcher
1007Smith E GlickGermany2024-05-27Chapman, Ross E Esq NEW92Asiya Javayant
1008Jefferson M KuskoItaly2024-05-26Feiner Bros NEGOTIATION73Ioni Bowcher
1009Ricardo O GillianCanada2024-06-10Rangoni Of Florence PROPOSAL43Onyama Limba
1010Emily L IturbideIndia2024-06-16Feltz Printing Service RENEWAL77Xuxue Feng
1011James O RutaCanada2024-06-18Chapman, Ross E Esq NEW63Xuxue Feng
1012Smith M GarufiCanada2024-06-03Dorl, James J Esq NEGOTIATION55Ioni Bowcher
1013Silvio L StockhamUnited Kingdom2024-06-10Chanay, Jeffrey A Esq PROPOSAL17Stephen Shaw
1014Emily G DarakjyFrance2024-05-27Rangoni Of Florence QUALIFIED56Xuxue Feng
1015Octavia Q InouyeFrance2024-06-03Commercial Press UNQUALIFIED21Anna Fali
1016Cody M GarufiSpain2024-06-16Dorl, James J Esq NEW55Ivan Magalhaes
1017Costa T RimUnited Kingdom2024-06-04Printing Dimensions NEGOTIATION71Xuxue Feng
1018Rodrigues G StensethItaly2024-06-07Feiner Bros RENEWAL75Ioni Bowcher
1019David O BriddickBrazil2024-05-27Feltz Printing Service UNQUALIFIED38Onyama Limba
1020Rodrigues S SaylorsCanada2024-06-11Commercial Press RENEWAL7Onyama Limba
1021Deepesh N BologniaSpain2024-05-22Feiner Bros RENEWAL25Stephen Shaw
1022Aruna D PerinUnited Kingdom2024-06-17Feiner Bros PROPOSAL77Onyama Limba
1023David D CaudyUnited Kingdom2024-06-10Chapman, Ross E Esq NEGOTIATION90Ivan Magalhaes
1024Murillo J WieserUnited Kingdom2024-06-04Truhlar And Truhlar Attys NEW6Elwin Sharvill
1025Alejandro J PerinUnited Kingdom2024-05-21Chanay, Jeffrey A Esq QUALIFIED84Xuxue Feng
1026Wickens X NestleJapan2024-06-03King, Christopher A Esq RENEWAL1Xuxue Feng
1027Izzy K ChuiFrance2024-05-30Rangoni Of Florence PROPOSAL13Ioni Bowcher
1028Ashley Y DarakjyUnited Kingdom2024-05-27Printing Dimensions NEGOTIATION62Asiya Javayant
1029Aika Q GlickIndia2024-06-11Chanay, Jeffrey A Esq QUALIFIED26Ioni Bowcher
1030Ivar U WhobreyItaly2024-06-07Dorl, James J Esq NEGOTIATION50Onyama Limba
1031Nicolas V StockhamBrazil2024-05-24Buckley Miller Wright RENEWAL29Stephen Shaw
1032Ivar I CampainBrazil2024-06-13Feltz Printing Service PROPOSAL45Elwin Sharvill
1033Jennifer S WhobreyUnited Kingdom2024-05-22Chemel, James L Cpa PROPOSAL1Xuxue Feng
1034Darci Y ButtUnited Kingdom2024-05-26Dorl, James J Esq NEW54Asiya Javayant
1035Morrow S BologniaIndia2024-06-07Printing Dimensions NEW47Amy Elsner
1036Chavez P CaudyRussia2024-05-31Chemel, James L Cpa NEW5Xuxue Feng
1037Cody A MacleadUnited Kingdom2024-06-10Morlong Associates UNQUALIFIED35Xuxue Feng
1038Kadeem B BologniaArgentina2024-06-12Chemel, James L Cpa NEW70Onyama Limba
1039Jeanfrancois Z RoysterSpain2024-06-09Commercial Press RENEWAL94Ivan Magalhaes
1040Izzy Y RulapaughIndia2024-05-31Truhlar And Truhlar Attys NEGOTIATION14Bernardo Dominic
1041Aruna U PerinGermany2024-05-31Truhlar And Truhlar Attys NEGOTIATION18Onyama Limba
1042Munro U BowleyFrance2024-06-06King, Christopher A Esq UNQUALIFIED72Elwin Sharvill
1043Kadeem G FigeroaGermany2024-06-06Benton, John B Jr PROPOSAL39Elwin Sharvill
1044Leon Y ChuiCanada2024-05-30Truhlar And Truhlar Attys PROPOSAL19Xuxue Feng
1045Wickens T StensethBrazil2024-05-31Chanay, Jeffrey A Esq QUALIFIED92Ioni Bowcher
1046Jennifer C AlbaresJapan2024-06-05Rangoni Of Florence QUALIFIED54Amy Elsner
1047David M MorascaIndia2024-05-31Feiner Bros QUALIFIED83Bernardo Dominic
1048Rodrigues Y FerenczGermany2024-06-17Buckley Miller Wright PROPOSAL94Bernardo Dominic
1049Wickens Y PaprockiJapan2024-06-03Chemel, James L Cpa QUALIFIED44Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin E TollnerUnited KingdomAnna Fali NEGOTIATION
Rodrigues E KolmetzFranceIvan Magalhaes UNQUALIFIED
James C SergiCanadaOnyama Limba UNQUALIFIED
Antonio E NestleJapanIoni Bowcher UNQUALIFIED
Emily T SchemmerRussiaIvan Magalhaes QUALIFIED
Costa M WhobreyJapanAsiya Javayant RENEWAL
Claire D OstroskyCanadaIvan Magalhaes QUALIFIED
Faith B TollnerAustraliaXuxue Feng NEGOTIATION
Cody X PoquetteBrazilBernardo Dominic RENEWAL
Leja K SergiFranceIoni Bowcher NEW
Kadeem M IturbideBrazilIoni Bowcher UNQUALIFIED
Kadeem F ShinkoJapanAnna Fali QUALIFIED
Faith J AlbaresFranceXuxue Feng NEGOTIATION
Claire M CaldareraCanadaAmy Elsner RENEWAL
Johnson T AlbaresAustraliaXuxue Feng NEW
Aditya G ChuiGermanyXuxue Feng UNQUALIFIED
James T MaletBrazilStephen Shaw UNQUALIFIED
Leja U KuskoArgentinaStephen Shaw RENEWAL
Jones L TollnerArgentinaAnna Fali QUALIFIED
Tony M OldroydArgentinaBernardo Dominic PROPOSAL
Adams K TollnerFranceAnna Fali RENEWAL
Maisha O TollnerIndiaXuxue Feng UNQUALIFIED
Misaki N SaylorsItalyIoni Bowcher NEW
Kaitlin K ShinkoArgentinaAmy Elsner QUALIFIED
Antonio M SchemmerJapanIvan Magalhaes PROPOSAL
Mujtaba P KolmetzGermanyElwin Sharvill QUALIFIED
Alejandro T CampainAustraliaIvan Magalhaes NEW
Murillo D NickaRussiaXuxue Feng UNQUALIFIED
Julie N NestleFranceAsiya Javayant NEW
Munro E PoquetteArgentinaBernardo Dominic UNQUALIFIED
Jeanfrancois E PerinGermanyBernardo Dominic NEW
Alejandro R InouyeUnited KingdomIvan Magalhaes NEGOTIATION
Ashley Q NickaBrazilAsiya Javayant QUALIFIED
Ricardo U IturbideIndiaOnyama Limba NEW
Julie V SaylorsCanadaBernardo Dominic PROPOSAL
Stacey U WhobreyAustraliaElwin Sharvill PROPOSAL
Morrow V ButtUnited KingdomAnna Fali NEW
Francesco Q AlbaresUnited KingdomAmy Elsner NEW
Ricardo E WieserBrazilAsiya Javayant NEW
Adams Z ShinkoRussiaXuxue Feng NEW
Munro G ChuiCanadaElwin Sharvill RENEWAL
Mayumi U OldroydRussiaAsiya Javayant QUALIFIED
Nicolas A ChuiBrazilAmy Elsner QUALIFIED
Costa Q FigeroaBrazilXuxue Feng PROPOSAL
Octavia D GlickGermanyBernardo Dominic RENEWAL
Mujtaba W CaudyRussiaIoni Bowcher UNQUALIFIED
Octavia L StockhamSpainXuxue Feng UNQUALIFIED
Murillo R KolmetzAustraliaBernardo Dominic RENEWAL
Aditya K MaletGermanyOnyama Limba NEGOTIATION
David N MacleadBrazilAmy Elsner NEGOTIATION
Frozen Columns
Name
Salvatore T Royster
Octavia W Doe
Aruna L Ruta
Silvio V Rulapaugh
Greenwood C Slusarski
Stacey Q Garufi
Ivar I Dilliard
Izzy A Whobrey
Octavia U Shinko
Murillo M Gaucho
Jones E Nestle
Tony N Venere
Arvin A Wieser
Silvio J Darakjy
Costa Z Foller
Stacey U Bolognia
Munro X Flosi
Aika D Iturbide
Clifford A Nestle
Aika A Marrier
Salvatore S Sergi
Ashley T Bowley
Cody I Rulapaugh
Ashley N Chui
Aruna I Tollner
Isabel P Schemmer
James O Nestle
Izzy Y Nestle
Salvatore W Inouye
Chavez A Waycott
Nicolas F Ostrosky
Jones J Doe
Faith D Perin
Misaki G Marrier
Sinclair P Oldroyd
Mujtaba Y Stockham
Ashley D Perin
Alejandro I Dilliard
Sinclair C Kusko
Jeanfrancois G Oldroyd
Wickens J Chui
Wickens D Foller
Misaki N Dilliard
Faith L Inouye
Stacey H Briddick
Aruna G Wieser
Silvio W Oldroyd
Jeanfrancois G Stenseth
Juan L Dilliard
Darci P Campain
IdCountryDate
1000Japan2024-06-10
1001India2024-05-25
1002India2024-06-03
1003Germany2024-06-04
1004Germany2024-06-12
1005India2024-05-21
1006Argentina2024-06-05
1007Spain2024-06-04
1008United Kingdom2024-06-16
1009Spain2024-05-29
1010Japan2024-05-26
1011India2024-05-21
1012Canada2024-06-17
1013France2024-05-20
1014Spain2024-06-05
1015France2024-05-25
1016Germany2024-06-16
1017France2024-05-28
1018Argentina2024-06-01
1019United Kingdom2024-06-13
1020Brazil2024-06-01
1021Canada2024-05-21
1022Japan2024-05-27
1023Argentina2024-05-24
1024Brazil2024-06-15
1025Russia2024-06-13
1026Brazil2024-06-15
1027Russia2024-05-29
1028Italy2024-05-27
1029Japan2024-05-25
1030Russia2024-06-01
1031Brazil2024-05-21
1032Brazil2024-06-01
1033Germany2024-06-01
1034Australia2024-06-10
1035Germany2024-06-04
1036Spain2024-05-20
1037India2024-06-11
1038Russia2024-05-20
1039Italy2024-06-09
1040Australia2024-06-08
1041Canada2024-06-17
1042Spain2024-06-02
1043Australia2024-05-26
1044Japan2024-06-06
1045Brazil2024-06-15
1046France2024-06-08
1047France2024-05-24
1048United Kingdom2024-05-21
1049Germany2024-06-17

On-Demand Data

NameIdCountryDate
Claire H Nestle1000Spain2024-06-06
Wickens Y Iturbide1001Germany2024-06-10
Mayumi I Ostrosky1002Brazil2024-06-02
Emily J Flosi1003Japan2024-06-11
Jennifer W Maclead1004Japan2024-06-16
Maria X Briddick1005Canada2024-05-31
James N Chui1006Argentina2024-06-07
Maisha L Doe1007Brazil2024-05-28
Chavez V Saylors1008Germany2024-06-03
Misaki J Garufi1009Japan2024-05-24
Claire O Ferencz1010Spain2024-06-10
Nicolas Z Iturbide1011Germany2024-05-25
Jefferson I Iturbide1012Italy2024-06-04
Adams P Caldarera1013Japan2024-05-31
Jennifer I Venere1014Spain2024-06-03
Misaki L Doe1015Australia2024-06-15
Emily B Kusko1016Germany2024-06-05
Wickens T Kolmetz1017India2024-06-13
Johnson O Nicka1018Italy2024-06-05
James E Albares1019Canada2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh Q RimJapanElwin Sharvill PROPOSAL
Octavia O RoysterAustraliaBernardo Dominic QUALIFIED
Aika N GauchoRussiaAsiya Javayant QUALIFIED
Izzy U InouyeUnited KingdomBernardo Dominic RENEWAL
Mujtaba D MorascaIndiaAnna Fali RENEWAL
Greenwood S RimItalyOnyama Limba PROPOSAL
Munro Y FlosiGermanyAnna Fali QUALIFIED
Smith A ChuiAustraliaAsiya Javayant UNQUALIFIED
Nicolas B FollerBrazilAsiya Javayant NEGOTIATION
Wickens O SaylorsSpainXuxue Feng RENEWAL
Johnson W RimSpainIoni Bowcher RENEWAL
Deepesh K DoeAustraliaIoni Bowcher NEGOTIATION
Maisha O NestleIndiaOnyama Limba UNQUALIFIED
Aika I VenereJapanElwin Sharvill NEGOTIATION
Jennifer F OstroskyGermanyAnna Fali UNQUALIFIED
Alejandro L FerenczRussiaOnyama Limba NEGOTIATION
Costa I AmigonIndiaIvan Magalhaes QUALIFIED
Juan O ShinkoArgentinaStephen Shaw UNQUALIFIED
Leja X MorascaGermanyAsiya Javayant NEW
Alejandro M GlickIndiaBernardo Dominic RENEWAL
Ashley Y MaletAustraliaOnyama Limba PROPOSAL
Aditya H DoeIndiaIvan Magalhaes PROPOSAL
Kadeem W NickaUnited KingdomIoni Bowcher UNQUALIFIED
Ricardo D OstroskyFranceIvan Magalhaes PROPOSAL
Adams D MacleadAustraliaXuxue Feng NEW
Emily U GarufiItalyAsiya Javayant QUALIFIED
Munro E BriddickAustraliaAnna Fali PROPOSAL
Wickens G MaletBrazilXuxue Feng RENEWAL
Murillo E VenereRussiaElwin Sharvill RENEWAL
Izzy C GauchoUnited KingdomAsiya Javayant NEGOTIATION
Antonio X SlusarskiJapanIoni Bowcher NEW
Darci W RulapaughSpainBernardo Dominic RENEWAL
Johnson O FigeroaBrazilAnna Fali RENEWAL
Antonio K GarufiSpainIoni Bowcher RENEWAL
Nicolas F AmigonAustraliaAsiya Javayant PROPOSAL
Mayumi J DilliardGermanyAsiya Javayant UNQUALIFIED
Mayumi E OldroydJapanXuxue Feng PROPOSAL
Aika S OstroskyUnited KingdomXuxue Feng UNQUALIFIED
Ivar B VenereUnited KingdomElwin Sharvill UNQUALIFIED
Maria M GillianJapanStephen Shaw RENEWAL

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