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
Izzy K KuskoSpainElwin Sharvill UNQUALIFIED
Misaki Z RoysterGermanyAnna Fali NEW
Kaitlin K FollerGermanyBernardo Dominic PROPOSAL
Greenwood Q SergiArgentinaAnna Fali NEGOTIATION
Mujtaba X OstroskyUnited KingdomElwin Sharvill PROPOSAL
David X PerinArgentinaAnna Fali PROPOSAL
Deepesh F FerenczItalyIvan Magalhaes PROPOSAL
Aika S SlusarskiJapanAsiya Javayant UNQUALIFIED
Johnson W KuskoBrazilOnyama Limba NEW
Octavia X ButtCanadaOnyama Limba RENEWAL
Faith F IturbideRussiaAnna Fali NEW
Aika N KolmetzRussiaStephen Shaw PROPOSAL
Murillo Z IturbideCanadaBernardo Dominic QUALIFIED
Izzy A AmigonRussiaBernardo Dominic RENEWAL
Wickens T SlusarskiFranceXuxue Feng NEGOTIATION
Maria S MaletFranceAnna Fali PROPOSAL
Jeanfrancois R RulapaughUnited KingdomStephen Shaw QUALIFIED
Ashley V MorascaCanadaOnyama Limba UNQUALIFIED
Kadeem G TollnerSpainBernardo Dominic NEW
Maria V NestleItalyStephen Shaw NEW
Claire Y GarufiArgentinaAsiya Javayant NEGOTIATION
Claire U MaletAustraliaOnyama Limba PROPOSAL
Cody J NestleArgentinaBernardo Dominic PROPOSAL
Deepesh A FollerArgentinaAnna Fali PROPOSAL
Costa E OldroydJapanAmy Elsner NEW
Maisha W BologniaItalyAmy Elsner QUALIFIED
Jennifer N GlickRussiaIoni Bowcher NEGOTIATION
Kaitlin F OstroskyGermanyBernardo Dominic RENEWAL
Tony Q CampainJapanBernardo Dominic QUALIFIED
Jeanfrancois D RoysterIndiaElwin Sharvill QUALIFIED
Deepesh P BologniaGermanyAsiya Javayant RENEWAL
Ricardo C OstroskyArgentinaAnna Fali PROPOSAL
Maria P ChuiJapanIvan Magalhaes NEW
Cody E MacleadItalyStephen Shaw NEGOTIATION
Leon J ButtArgentinaStephen Shaw RENEWAL
Kaitlin F ChuiFranceXuxue Feng UNQUALIFIED
Stacey Y StensethBrazilIoni Bowcher NEW
Julie I KolmetzArgentinaIvan Magalhaes QUALIFIED
Misaki J GarufiFranceXuxue Feng UNQUALIFIED
Alejandro W MaletGermanyAnna Fali RENEWAL
Antonio T MaletSpainOnyama Limba NEGOTIATION
Silvio Q AlbaresItalyBernardo Dominic NEW
Ricardo I FollerSpainBernardo Dominic RENEWAL
Darci A CaldareraAustraliaAmy Elsner UNQUALIFIED
Antonio V FerenczJapanStephen Shaw RENEWAL
Munro D MarrierJapanBernardo Dominic PROPOSAL
Tony T ShinkoCanadaBernardo Dominic RENEWAL
Salvatore Y PoquetteJapanStephen Shaw UNQUALIFIED
Kaitlin M GarufiBrazilStephen Shaw PROPOSAL
Aika S AmigonIndiaAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Clifford B SchemmerBrazilXuxue Feng QUALIFIED
Francesco C VenereArgentinaXuxue Feng NEW
Ashley F StockhamSpainBernardo Dominic UNQUALIFIED
James V AmigonUnited KingdomElwin Sharvill NEW
Jefferson L MorascaCanadaXuxue Feng PROPOSAL
Isabel C BowleyIndiaElwin Sharvill RENEWAL
Stacey D DilliardSpainElwin Sharvill RENEWAL
Julie I AmigonGermanyAmy Elsner RENEWAL
Antonio E AlbaresCanadaIvan Magalhaes QUALIFIED
Arvin U StensethJapanElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens F GillianSpain2024-06-07Chapman, Ross E Esq RENEWAL81Xuxue Feng
1001Jones P ChuiArgentina2024-06-04Feiner Bros QUALIFIED1Elwin Sharvill
1002Tony W WieserSpain2024-06-03Chemel, James L Cpa UNQUALIFIED75Anna Fali
1003Antonio O CaudySpain2024-05-29Truhlar And Truhlar Attys QUALIFIED82Stephen Shaw
1004Darci W DoeGermany2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED14Ioni Bowcher
1005Nicolas N StockhamBrazil2024-06-09Feltz Printing Service PROPOSAL36Stephen Shaw
1006David R ChuiCanada2024-06-10Rangoni Of Florence PROPOSAL82Onyama Limba
1007Ricardo Z BriddickCanada2024-06-08King, Christopher A Esq RENEWAL34Xuxue Feng
1008Julie D RutaGermany2024-06-21Morlong Associates RENEWAL83Asiya Javayant
1009Julie G RulapaughFrance2024-06-04Chanay, Jeffrey A Esq RENEWAL67Elwin Sharvill
1010Clifford W SchemmerItaly2024-06-15Truhlar And Truhlar Attys UNQUALIFIED29Onyama Limba
1011Nicolas M CaldareraAustralia2024-05-26Dorl, James J Esq UNQUALIFIED87Onyama Limba
1012Ashley S FerenczIndia2024-05-27Printing Dimensions PROPOSAL63Ivan Magalhaes
1013Kaitlin O CampainCanada2024-05-30Feltz Printing Service NEW20Ivan Magalhaes
1014Smith H DoeFrance2024-06-02Chanay, Jeffrey A Esq UNQUALIFIED17Asiya Javayant
1015Aika P PerinUnited Kingdom2024-05-25Chapman, Ross E Esq PROPOSAL92Onyama Limba
1016James W BriddickArgentina2024-06-08Chapman, Ross E Esq QUALIFIED91Amy Elsner
1017Jennifer A RulapaughBrazil2024-06-19Buckley Miller Wright RENEWAL28Stephen Shaw
1018Leja V IturbideBrazil2024-06-07Chapman, Ross E Esq QUALIFIED37Ivan Magalhaes
1019Stacey F RoysterArgentina2024-06-11Morlong Associates UNQUALIFIED74Anna Fali
1020Wickens Z DarakjyBrazil2024-06-13Morlong Associates NEGOTIATION94Xuxue Feng
1021Silvio N MarrierCanada2024-06-16Printing Dimensions RENEWAL10Ioni Bowcher
1022Smith K SchemmerFrance2024-05-29Rousseaux, Michael Esq UNQUALIFIED52Xuxue Feng
1023Mujtaba D RutaItaly2024-05-29Chapman, Ross E Esq NEW41Elwin Sharvill
1024Julie O FlosiBrazil2024-06-19Truhlar And Truhlar Attys NEW85Bernardo Dominic
1025Arvin Q StensethAustralia2024-05-28Dorl, James J Esq RENEWAL16Bernardo Dominic
1026Misaki E GarufiGermany2024-06-18Truhlar And Truhlar Attys RENEWAL95Bernardo Dominic
1027Isabel E RulapaughArgentina2024-06-22Truhlar And Truhlar Attys NEW30Ivan Magalhaes
1028Aditya L StensethGermany2024-06-17Chemel, James L Cpa RENEWAL94Elwin Sharvill
1029Maria P MacleadIndia2024-06-21Truhlar And Truhlar Attys RENEWAL98Amy Elsner
1030James L CampainJapan2024-06-07Commercial Press UNQUALIFIED82Ivan Magalhaes
1031Nicolas E ShinkoGermany2024-06-14Feiner Bros RENEWAL4Stephen Shaw
1032Alejandro V PaprockiRussia2024-06-02Feltz Printing Service UNQUALIFIED73Onyama Limba
1033James D InouyeRussia2024-06-13Rousseaux, Michael Esq PROPOSAL16Bernardo Dominic
1034Leja R OstroskyArgentina2024-06-17Chanay, Jeffrey A Esq UNQUALIFIED56Xuxue Feng
1035Greenwood J MaletGermany2024-05-25Chemel, James L Cpa NEW4Ioni Bowcher
1036Stacey E MaletRussia2024-06-12Printing Dimensions NEGOTIATION63Elwin Sharvill
1037Misaki Y SaylorsAustralia2024-06-06Benton, John B Jr PROPOSAL0Elwin Sharvill
1038Jones L BowleyJapan2024-06-22Feltz Printing Service UNQUALIFIED92Amy Elsner
1039Jefferson I MarrierCanada2024-06-12Morlong Associates PROPOSAL85Anna Fali
1040Silvio Z FlosiArgentina2024-06-05Benton, John B Jr QUALIFIED77Xuxue Feng
1041Ivar Y CaldareraAustralia2024-05-30Morlong Associates UNQUALIFIED8Elwin Sharvill
1042Darci N RutaCanada2024-06-14Rangoni Of Florence UNQUALIFIED21Xuxue Feng
1043Aika T RulapaughItaly2024-05-25Chemel, James L Cpa QUALIFIED39Ioni Bowcher
1044Julie M NickaArgentina2024-06-07Chapman, Ross E Esq QUALIFIED55Ivan Magalhaes
1045David U FollerCanada2024-06-22Chapman, Ross E Esq NEGOTIATION63Amy Elsner
1046Izzy R StockhamRussia2024-06-21Feiner Bros UNQUALIFIED20Onyama Limba
1047Greenwood O NickaAustralia2024-05-31King, Christopher A Esq QUALIFIED23Xuxue Feng
1048Kadeem X SlusarskiBrazil2024-05-30Printing Dimensions QUALIFIED96Bernardo Dominic
1049Leja V VenereBrazil2024-05-26Commercial Press PROPOSAL28Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Wickens R CaldareraCanadaStephen Shaw QUALIFIED
Sinclair V IturbideUnited KingdomOnyama Limba RENEWAL
Emily M NestleIndiaElwin Sharvill UNQUALIFIED
Ashley W CaudyArgentinaOnyama Limba NEGOTIATION
Maisha E RulapaughCanadaAsiya Javayant QUALIFIED
Ashley T GarufiItalyElwin Sharvill NEGOTIATION
Izzy Y ChuiItalyAnna Fali QUALIFIED
Clifford E BologniaBrazilIoni Bowcher NEGOTIATION
Faith R ShinkoGermanyIvan Magalhaes NEW
Adams V FigeroaArgentinaIvan Magalhaes RENEWAL
Jones U InouyeSpainAnna Fali RENEWAL
Adams N WhobreyFranceAsiya Javayant NEW
Arvin Q TollnerIndiaAsiya Javayant RENEWAL
Kaitlin Y CampainCanadaStephen Shaw NEGOTIATION
Sinclair F GillianGermanyElwin Sharvill RENEWAL
Ivar H OldroydSpainOnyama Limba QUALIFIED
Silvio D VocelkaItalyAsiya Javayant NEW
Jones P ChuiSpainIvan Magalhaes NEW
Francesco V WieserAustraliaAnna Fali RENEWAL
David X RimUnited KingdomAnna Fali UNQUALIFIED
Morrow Y NickaRussiaIvan Magalhaes UNQUALIFIED
Kaitlin R CaudyArgentinaElwin Sharvill QUALIFIED
Francesco J RulapaughIndiaOnyama Limba PROPOSAL
Kaitlin B StockhamSpainElwin Sharvill NEGOTIATION
Johnson V RoysterAustraliaXuxue Feng RENEWAL
Cody V GlickItalyElwin Sharvill NEGOTIATION
Antonio X NestleJapanIoni Bowcher PROPOSAL
David X PerinAustraliaXuxue Feng PROPOSAL
Aditya A SaylorsUnited KingdomIoni Bowcher PROPOSAL
Jones N MacleadUnited KingdomXuxue Feng NEGOTIATION
Leja I WaycottSpainElwin Sharvill QUALIFIED
Jennifer J DarakjyFranceAmy Elsner PROPOSAL
Johnson J FerenczArgentinaXuxue Feng RENEWAL
Cody K DoeArgentinaAsiya Javayant PROPOSAL
Francesco R BriddickRussiaXuxue Feng NEGOTIATION
Smith L WhobreyArgentinaAnna Fali RENEWAL
Munro Q GillianJapanAnna Fali QUALIFIED
Ashley N MarrierJapanXuxue Feng NEGOTIATION
Silvio V IturbideBrazilOnyama Limba QUALIFIED
Ricardo K FerenczJapanOnyama Limba QUALIFIED
Silvio L InouyeArgentinaOnyama Limba UNQUALIFIED
Kaitlin T KuskoGermanyIvan Magalhaes RENEWAL
Sinclair M ChuiItalyAsiya Javayant NEW
Antonio E FigeroaArgentinaBernardo Dominic NEW
Ashley Z BologniaFranceStephen Shaw RENEWAL
Sinclair G FerenczItalyStephen Shaw NEW
Leon F MaletCanadaIvan Magalhaes NEW
Leon R BowleyGermanyAmy Elsner UNQUALIFIED
Jeanfrancois K RimUnited KingdomOnyama Limba RENEWAL
Faith L BologniaArgentinaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Izzy T Rim
Kadeem I Gaucho
Rodrigues Q Dilliard
Murillo Y Albares
Mayumi J Doe
Isabel M Marrier
Darci O Dilliard
Rodrigues O Bolognia
Faith L Caudy
Faith O Venere
Silvio Z Stockham
Faith L Malet
Johnson Y Saylors
Mayumi X Kusko
Deepesh D Tollner
Murillo Y Waycott
Costa J Ostrosky
Maisha H Perin
Chavez U Doe
Misaki B Venere
Costa M Morasca
Ricardo F Amigon
Juan C Venere
Silvio K Maclead
Claire K Doe
Jefferson A Schemmer
Maisha V Ostrosky
Smith V Shinko
Ashley U Bolognia
David S Albares
Arvin V Slusarski
Octavia Z Poquette
Clifford R Kolmetz
Morrow F Saylors
Salvatore Q Nicka
Isabel F Stockham
Faith S Shinko
Deepesh E Ruta
Mujtaba T Oldroyd
Arvin V Inouye
Jeanfrancois F Paprocki
Leon Q Amigon
Mayumi H Tollner
Emily O Saylors
Sinclair W Malet
Julie S Schemmer
Jefferson Y Stenseth
Jefferson R Poquette
Izzy W Ostrosky
Silvio C Caudy
IdCountryDate
1000Canada2024-06-13
1001Germany2024-06-06
1002Germany2024-06-10
1003Argentina2024-06-13
1004Italy2024-06-02
1005Germany2024-06-19
1006France2024-06-09
1007Australia2024-06-21
1008Japan2024-06-09
1009India2024-06-21
1010Canada2024-06-16
1011United Kingdom2024-06-18
1012Japan2024-06-12
1013Japan2024-06-13
1014Russia2024-05-30
1015France2024-05-27
1016United Kingdom2024-06-09
1017Spain2024-06-01
1018Australia2024-06-03
1019Australia2024-06-09
1020Spain2024-05-28
1021Canada2024-06-01
1022Brazil2024-06-01
1023Brazil2024-06-14
1024United Kingdom2024-05-27
1025Australia2024-06-17
1026United Kingdom2024-05-30
1027Canada2024-06-03
1028India2024-06-09
1029United Kingdom2024-06-09
1030Germany2024-06-02
1031United Kingdom2024-06-04
1032Spain2024-06-17
1033Japan2024-06-03
1034United Kingdom2024-06-21
1035Spain2024-05-28
1036Brazil2024-06-12
1037United Kingdom2024-06-10
1038Russia2024-06-09
1039Australia2024-06-21
1040United Kingdom2024-05-30
1041Russia2024-06-01
1042Argentina2024-06-15
1043Italy2024-06-16
1044Italy2024-06-14
1045Japan2024-06-22
1046Italy2024-06-02
1047Spain2024-06-11
1048United Kingdom2024-05-29
1049United Kingdom2024-06-01

On-Demand Data

NameIdCountryDate
Arvin O Foller1000Japan2024-06-05
Adams Q Garufi1001Australia2024-06-09
Morrow U Ferencz1002India2024-05-26
Kaitlin D Poquette1003Australia2024-06-01
Tony F Kusko1004United Kingdom2024-06-12
Silvio P Bowley1005Australia2024-06-11
Maria I Sergi1006Canada2024-06-05
Cody E Chui1007Spain2024-06-21
Costa H Ruta1008India2024-06-16
Jennifer P Glick1009United Kingdom2024-06-21
Maisha T Oldroyd1010Spain2024-06-17
Jennifer V Oldroyd1011Russia2024-05-30
Costa U Saylors1012Canada2024-06-01
Jennifer A Chui1013United Kingdom2024-06-17
Ricardo U Stockham1014Italy2024-05-24
David C Venere1015United Kingdom2024-06-07
Alejandro X Kolmetz1016Germany2024-06-17
Izzy M Figeroa1017Spain2024-06-19
Costa H Shinko1018Canada2024-06-06
Kadeem L Whobrey1019United Kingdom2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro D MaletJapanAmy Elsner NEGOTIATION
Aika Y FollerGermanyOnyama Limba NEGOTIATION
Tony F VocelkaArgentinaAnna Fali NEW
Claire P NickaArgentinaAnna Fali UNQUALIFIED
Octavia X BologniaIndiaElwin Sharvill NEW
Arvin D GarufiRussiaXuxue Feng NEW
James O InouyeUnited KingdomStephen Shaw RENEWAL
Aditya T MaletRussiaXuxue Feng PROPOSAL
Jennifer L CampainFranceAsiya Javayant PROPOSAL
Juan C WaycottFranceElwin Sharvill QUALIFIED
Leon V DilliardJapanIoni Bowcher NEGOTIATION
Izzy N KuskoAustraliaAnna Fali QUALIFIED
Francesco Y AlbaresJapanAnna Fali NEGOTIATION
Leon R BowleyCanadaAnna Fali NEW
David Y VenereJapanAnna Fali QUALIFIED
Jones E GauchoFranceIoni Bowcher QUALIFIED
Deepesh M RoysterSpainAsiya Javayant NEW
Claire Z GillianCanadaOnyama Limba PROPOSAL
David W IturbideJapanIvan Magalhaes PROPOSAL
Rodrigues X WhobreySpainAmy Elsner NEW
Claire G SchemmerUnited KingdomIvan Magalhaes RENEWAL
Ivar X GillianIndiaStephen Shaw PROPOSAL
Antonio W MacleadRussiaIoni Bowcher NEW
James G GlickUnited KingdomIvan Magalhaes QUALIFIED
Faith M NickaAustraliaIvan Magalhaes PROPOSAL
Munro H NestleCanadaBernardo Dominic UNQUALIFIED
Clifford P MorascaJapanElwin Sharvill UNQUALIFIED
Alejandro T WieserArgentinaOnyama Limba UNQUALIFIED
Adams P SchemmerArgentinaAsiya Javayant NEW
Faith K OstroskyIndiaAnna Fali QUALIFIED
Ashley K SchemmerUnited KingdomXuxue Feng NEGOTIATION
Leon Q KuskoRussiaStephen Shaw RENEWAL
Salvatore E CampainGermanyIoni Bowcher RENEWAL
Ricardo W CaldareraUnited KingdomOnyama Limba QUALIFIED
Emily F DoeBrazilAnna Fali UNQUALIFIED
Clifford I GarufiFranceIoni Bowcher NEW
Nicolas M IturbideJapanAmy Elsner RENEWAL
Smith F RoysterBrazilAmy Elsner RENEWAL
Jones L BriddickAustraliaStephen Shaw UNQUALIFIED
Ricardo K RimUnited KingdomXuxue Feng NEGOTIATION

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