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
Aruna G MaletIndiaBernardo Dominic RENEWAL
Izzy U StensethBrazilBernardo Dominic NEGOTIATION
Alejandro L ChuiBrazilIvan Magalhaes PROPOSAL
Francesco Z GlickSpainXuxue Feng QUALIFIED
Octavia G AlbaresBrazilIoni Bowcher QUALIFIED
Silvio E FlosiBrazilIvan Magalhaes NEW
Smith H BriddickCanadaIvan Magalhaes NEW
Isabel O FlosiIndiaOnyama Limba UNQUALIFIED
Jefferson F DilliardBrazilBernardo Dominic NEW
Maisha J BriddickFranceBernardo Dominic QUALIFIED
Jones T MaletJapanBernardo Dominic UNQUALIFIED
Mayumi P DarakjySpainAnna Fali NEGOTIATION
Ashley D DoeIndiaAsiya Javayant PROPOSAL
Arvin P OstroskyJapanElwin Sharvill QUALIFIED
Costa Y RutaItalyAmy Elsner QUALIFIED
Murillo U TollnerGermanyElwin Sharvill QUALIFIED
Isabel E InouyeAustraliaIoni Bowcher PROPOSAL
Maisha O MaletIndiaAnna Fali NEGOTIATION
Stacey X SergiJapanAsiya Javayant NEGOTIATION
Jennifer W RimFranceAnna Fali NEGOTIATION
Munro M MaletSpainAsiya Javayant NEGOTIATION
Silvio V BriddickSpainAnna Fali NEW
Mujtaba X RoysterItalyAnna Fali RENEWAL
Ivar T MaletRussiaIvan Magalhaes UNQUALIFIED
Murillo A WaycottCanadaAmy Elsner RENEWAL
Jefferson J IturbideGermanyXuxue Feng RENEWAL
Emily E GarufiIndiaBernardo Dominic PROPOSAL
Misaki G SergiItalyBernardo Dominic UNQUALIFIED
Aditya L RutaFranceAsiya Javayant QUALIFIED
Alejandro P SergiArgentinaXuxue Feng NEGOTIATION
Misaki B FlosiGermanyAsiya Javayant UNQUALIFIED
Greenwood C CaudyItalyBernardo Dominic QUALIFIED
Emily V SchemmerIndiaElwin Sharvill NEGOTIATION
Aruna P ButtIndiaXuxue Feng NEW
Antonio N StockhamFranceAmy Elsner NEGOTIATION
Sinclair M PoquetteCanadaAnna Fali RENEWAL
Arvin Z RulapaughCanadaOnyama Limba PROPOSAL
Darci X FlosiJapanAmy Elsner NEW
Stacey M OldroydAustraliaIvan Magalhaes NEW
Izzy Y AlbaresArgentinaXuxue Feng UNQUALIFIED
Rodrigues N StockhamArgentinaAnna Fali RENEWAL
David L BologniaSpainIvan Magalhaes RENEWAL
Aruna H FerenczBrazilStephen Shaw NEW
Jefferson Q KolmetzGermanyStephen Shaw PROPOSAL
Maisha X WaycottCanadaXuxue Feng RENEWAL
Rodrigues P VocelkaItalyIvan Magalhaes QUALIFIED
Nicolas E SchemmerJapanAsiya Javayant NEW
Kaitlin L WaycottBrazilAmy Elsner UNQUALIFIED
Aditya L NestleItalyIoni Bowcher NEW
James F GarufiBrazilIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Johnson P ButtFranceIoni Bowcher QUALIFIED
Ricardo F SlusarskiSpainOnyama Limba NEW
Clifford D FlosiAustraliaElwin Sharvill NEW
Aika O FlosiSpainIvan Magalhaes UNQUALIFIED
Mayumi Y DoeUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues E RulapaughItalyElwin Sharvill UNQUALIFIED
Claire U CaldareraUnited KingdomXuxue Feng UNQUALIFIED
Deepesh F WaycottSpainElwin Sharvill NEGOTIATION
Wickens U AmigonUnited KingdomIoni Bowcher NEW
Jennifer V NestleFranceElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha R BologniaUnited Kingdom2024-05-30Morlong Associates UNQUALIFIED27Ioni Bowcher
1001Kadeem V MaletGermany2024-05-31King, Christopher A Esq RENEWAL98Ivan Magalhaes
1002Munro D GarufiRussia2024-06-07Feltz Printing Service RENEWAL53Ivan Magalhaes
1003Mayumi P SlusarskiGermany2024-05-30King, Christopher A Esq NEGOTIATION38Onyama Limba
1004Darci F StockhamBrazil2024-05-24Truhlar And Truhlar Attys PROPOSAL85Stephen Shaw
1005Salvatore T WhobreySpain2024-06-13Morlong Associates QUALIFIED11Bernardo Dominic
1006Tony W DoeCanada2024-06-13Chapman, Ross E Esq PROPOSAL23Stephen Shaw
1007Antonio M WaycottBrazil2024-05-22Chapman, Ross E Esq NEW26Stephen Shaw
1008Maria P CaldareraUnited Kingdom2024-06-02Feiner Bros PROPOSAL84Stephen Shaw
1009Aika B MaletCanada2024-06-10Dorl, James J Esq NEGOTIATION49Asiya Javayant
1010Salvatore Z WieserItaly2024-06-08Buckley Miller Wright NEGOTIATION60Asiya Javayant
1011Wickens L MorascaJapan2024-05-26Rangoni Of Florence NEGOTIATION3Ioni Bowcher
1012James F MacleadAustralia2024-06-14Morlong Associates UNQUALIFIED6Amy Elsner
1013Jefferson T KuskoArgentina2024-06-07Rousseaux, Michael Esq NEW11Xuxue Feng
1014Stacey U AlbaresIndia2024-05-27Dorl, James J Esq QUALIFIED24Bernardo Dominic
1015James B SaylorsUnited Kingdom2024-05-20Chemel, James L Cpa QUALIFIED78Anna Fali
1016Chavez P VenereFrance2024-06-07Rousseaux, Michael Esq RENEWAL68Elwin Sharvill
1017Salvatore D PaprockiRussia2024-06-12Dorl, James J Esq PROPOSAL95Onyama Limba
1018Johnson M MacleadArgentina2024-06-15Feiner Bros UNQUALIFIED53Elwin Sharvill
1019Murillo U MorascaBrazil2024-06-06Morlong Associates RENEWAL81Ivan Magalhaes
1020Emily I MarrierIndia2024-06-15Dorl, James J Esq UNQUALIFIED2Stephen Shaw
1021Isabel T SlusarskiRussia2024-05-19Commercial Press NEGOTIATION2Bernardo Dominic
1022David I CampainArgentina2024-05-20Rousseaux, Michael Esq RENEWAL32Xuxue Feng
1023Aika B GillianRussia2024-06-14King, Christopher A Esq PROPOSAL88Ivan Magalhaes
1024Octavia D SaylorsBrazil2024-05-21Dorl, James J Esq NEGOTIATION67Elwin Sharvill
1025Ivar Z WhobreyBrazil2024-06-04Morlong Associates QUALIFIED72Amy Elsner
1026Jennifer Y RoysterCanada2024-06-10King, Christopher A Esq RENEWAL10Ioni Bowcher
1027Izzy M MaletGermany2024-05-22Rangoni Of Florence QUALIFIED8Stephen Shaw
1028Morrow Y DarakjyUnited Kingdom2024-06-05Commercial Press PROPOSAL59Asiya Javayant
1029Kaitlin G FigeroaAustralia2024-06-02Printing Dimensions RENEWAL35Stephen Shaw
1030Ivar O KuskoGermany2024-05-20Truhlar And Truhlar Attys PROPOSAL99Stephen Shaw
1031Francesco F WaycottBrazil2024-06-14Truhlar And Truhlar Attys UNQUALIFIED41Anna Fali
1032Munro J KolmetzFrance2024-06-12Dorl, James J Esq RENEWAL78Asiya Javayant
1033Cody X VenereIndia2024-05-31Truhlar And Truhlar Attys NEW76Amy Elsner
1034Silvio M StockhamBrazil2024-06-03Buckley Miller Wright PROPOSAL44Bernardo Dominic
1035Leja D BologniaIndia2024-06-12Truhlar And Truhlar Attys UNQUALIFIED78Anna Fali
1036Costa T StockhamRussia2024-05-20Truhlar And Truhlar Attys PROPOSAL42Ivan Magalhaes
1037Arvin M WaycottArgentina2024-06-13Chanay, Jeffrey A Esq RENEWAL60Onyama Limba
1038Kadeem F WieserJapan2024-06-14Feltz Printing Service PROPOSAL70Stephen Shaw
1039Emily X FigeroaGermany2024-06-12Feltz Printing Service UNQUALIFIED51Xuxue Feng
1040Salvatore S MorascaSpain2024-06-13King, Christopher A Esq UNQUALIFIED75Xuxue Feng
1041Tony E FlosiItaly2024-05-31Buckley Miller Wright NEW55Anna Fali
1042Julie Z AmigonUnited Kingdom2024-06-15Morlong Associates UNQUALIFIED51Stephen Shaw
1043Greenwood K FlosiFrance2024-05-28Chanay, Jeffrey A Esq RENEWAL16Xuxue Feng
1044Stacey J BologniaFrance2024-06-01King, Christopher A Esq RENEWAL89Bernardo Dominic
1045Nicolas L BriddickSpain2024-06-06Rangoni Of Florence RENEWAL52Onyama Limba
1046Francesco K OldroydFrance2024-05-21Truhlar And Truhlar Attys RENEWAL14Bernardo Dominic
1047Jeanfrancois L RimBrazil2024-06-09Feltz Printing Service RENEWAL74Ioni Bowcher
1048Nicolas D PaprockiAustralia2024-06-08Morlong Associates NEW12Elwin Sharvill
1049Morrow S PerinUnited Kingdom2024-06-09Chanay, Jeffrey A Esq RENEWAL13Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aruna C PaprockiAustraliaXuxue Feng RENEWAL
Julie V AmigonJapanAmy Elsner NEW
Silvio F RulapaughBrazilIvan Magalhaes PROPOSAL
James G SaylorsFranceXuxue Feng RENEWAL
Maria Q OldroydFranceIoni Bowcher QUALIFIED
Wickens Y SchemmerArgentinaIoni Bowcher NEGOTIATION
Munro J PerinUnited KingdomOnyama Limba PROPOSAL
David Y AlbaresRussiaIvan Magalhaes PROPOSAL
Aika J NickaAustraliaStephen Shaw QUALIFIED
Nicolas A BologniaRussiaAnna Fali NEGOTIATION
Clifford X CaldareraItalyXuxue Feng NEW
Adams W ChuiCanadaIvan Magalhaes NEW
Sinclair D MacleadGermanyIoni Bowcher PROPOSAL
Jeanfrancois X BologniaCanadaAsiya Javayant RENEWAL
Greenwood Q GlickGermanyAmy Elsner NEGOTIATION
Greenwood X BriddickIndiaIvan Magalhaes NEW
Arvin D GlickAustraliaStephen Shaw UNQUALIFIED
Kaitlin D KolmetzIndiaStephen Shaw QUALIFIED
Mujtaba A KolmetzJapanAmy Elsner RENEWAL
Wickens R StensethUnited KingdomIvan Magalhaes UNQUALIFIED
Clifford O ButtJapanElwin Sharvill PROPOSAL
Ivar K InouyeJapanOnyama Limba NEW
Maisha P KolmetzItalyStephen Shaw QUALIFIED
Salvatore H DoeSpainAnna Fali RENEWAL
Nicolas W NickaFranceXuxue Feng PROPOSAL
Antonio P StockhamCanadaStephen Shaw RENEWAL
Ashley F GillianJapanBernardo Dominic QUALIFIED
Maria R BowleyJapanAsiya Javayant RENEWAL
Octavia F GlickBrazilIoni Bowcher PROPOSAL
Salvatore A RulapaughUnited KingdomAsiya Javayant QUALIFIED
Ashley O KuskoGermanyIoni Bowcher QUALIFIED
Greenwood P StensethItalyAmy Elsner NEGOTIATION
Faith R MacleadCanadaAsiya Javayant UNQUALIFIED
Sinclair R PoquetteJapanBernardo Dominic UNQUALIFIED
Jones E FlosiCanadaStephen Shaw RENEWAL
Claire S MacleadFranceAnna Fali UNQUALIFIED
Maria S ChuiIndiaAmy Elsner PROPOSAL
Emily I AlbaresUnited KingdomAmy Elsner UNQUALIFIED
Costa X WhobreyArgentinaIvan Magalhaes NEW
Rodrigues H SlusarskiRussiaIvan Magalhaes NEGOTIATION
Arvin P SergiArgentinaStephen Shaw QUALIFIED
Kadeem F VocelkaBrazilOnyama Limba PROPOSAL
Kaitlin A NestleGermanyIoni Bowcher QUALIFIED
Jennifer X CaudyUnited KingdomAmy Elsner NEW
Wickens A CampainFranceStephen Shaw NEGOTIATION
Aditya Q OldroydSpainXuxue Feng RENEWAL
David B WaycottGermanyBernardo Dominic RENEWAL
Juan B CaldareraItalyXuxue Feng RENEWAL
Aika I RulapaughGermanyStephen Shaw NEW
Misaki P SlusarskiJapanAnna Fali UNQUALIFIED
Frozen Columns
Name
Chavez H Bolognia
Juan K Glick
Cody I Ferencz
Clifford O Flosi
Jones B Figeroa
Faith W Oldroyd
Salvatore E Nicka
Cody L Ruta
Antonio Z Figeroa
Adams S Inouye
Leja V Bolognia
Alejandro Z Garufi
Aika L Darakjy
Alejandro K Whobrey
Ivar D Malet
Tony L Inouye
Isabel A Caldarera
Stacey R Ferencz
Maria L Butt
Alejandro J Stenseth
Alejandro H Campain
Deepesh O Caldarera
Murillo M Glick
Ashley G Chui
Greenwood Q Albares
Faith N Shinko
Aika A Kusko
Leja K Shinko
Cody Z Malet
Aika A Malet
Aika N Malet
Maria O Rulapaugh
Aruna P Garufi
Nicolas C Marrier
Jones P Iturbide
Octavia Q Malet
Chavez N Sergi
Arvin P Amigon
Silvio Q Paprocki
Johnson D Stenseth
Cody J Wieser
Deepesh H Ruta
Julie Z Bolognia
Antonio B Garufi
Octavia C Caudy
Isabel K Ruta
Isabel N Schemmer
Kaitlin C Rim
Julie J Chui
Mujtaba M Doe
IdCountryDate
1000India2024-06-12
1001France2024-06-01
1002Argentina2024-05-23
1003Japan2024-05-26
1004France2024-05-19
1005Italy2024-05-28
1006India2024-06-08
1007Australia2024-06-11
1008Argentina2024-05-18
1009India2024-06-10
1010United Kingdom2024-06-11
1011Italy2024-05-28
1012Japan2024-06-01
1013Spain2024-05-17
1014Australia2024-05-24
1015India2024-05-26
1016Russia2024-05-23
1017Japan2024-06-03
1018Italy2024-06-13
1019India2024-06-04
1020Japan2024-05-17
1021Canada2024-06-10
1022France2024-06-09
1023India2024-05-27
1024Argentina2024-05-29
1025India2024-06-05
1026Australia2024-06-13
1027Canada2024-06-04
1028Spain2024-05-27
1029India2024-06-03
1030Argentina2024-05-20
1031Australia2024-05-20
1032Russia2024-05-19
1033Brazil2024-06-15
1034Germany2024-06-01
1035Spain2024-05-27
1036Canada2024-06-06
1037Spain2024-05-18
1038Australia2024-06-05
1039India2024-05-28
1040Russia2024-05-30
1041Russia2024-05-22
1042United Kingdom2024-06-08
1043Italy2024-05-29
1044Canada2024-06-12
1045India2024-06-09
1046Canada2024-05-22
1047Italy2024-06-13
1048India2024-06-07
1049Germany2024-05-24

On-Demand Data

NameIdCountryDate
Adams S Inouye1000Japan2024-06-04
Stacey G Bowley1001Russia2024-05-25
James C Albares1002Canada2024-06-02
Nicolas T Nicka1003Japan2024-05-26
Jones K Stockham1004Italy2024-06-13
Johnson Q Nicka1005Canada2024-06-06
Wickens Z Royster1006Spain2024-06-08
Kaitlin G Butt1007India2024-06-13
Faith U Malet1008Russia2024-06-13
Mujtaba C Inouye1009France2024-05-22
Arvin R Paprocki1010United Kingdom2024-05-19
Isabel J Schemmer1011Germany2024-05-17
Adams Q Bowley1012Spain2024-05-30
Jones L Sergi1013Canada2024-06-03
David B Ostrosky1014Canada2024-06-09
Julie K Tollner1015Brazil2024-05-22
Nicolas G Amigon1016France2024-05-23
Aditya E Morasca1017Japan2024-05-18
Jeanfrancois R Vocelka1018France2024-06-08
Adams D Tollner1019Argentina2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily C ChuiArgentinaBernardo Dominic PROPOSAL
Cody C CaldareraSpainAmy Elsner QUALIFIED
Alejandro F FigeroaIndiaIoni Bowcher RENEWAL
Claire O CaldareraUnited KingdomAnna Fali NEW
Julie R KolmetzUnited KingdomOnyama Limba NEGOTIATION
Adams Z NestleUnited KingdomBernardo Dominic NEGOTIATION
Wickens Y NickaBrazilOnyama Limba NEW
Julie H StockhamFranceXuxue Feng NEGOTIATION
Morrow G FigeroaAustraliaIvan Magalhaes NEGOTIATION
Ricardo L VenereCanadaElwin Sharvill UNQUALIFIED
Jefferson S RulapaughIndiaOnyama Limba QUALIFIED
Maria I GillianGermanyStephen Shaw NEGOTIATION
James W RulapaughSpainOnyama Limba UNQUALIFIED
Leon M MaletArgentinaElwin Sharvill RENEWAL
Ashley Y WaycottBrazilXuxue Feng PROPOSAL
Kadeem L MarrierUnited KingdomXuxue Feng NEW
Arvin V AmigonIndiaBernardo Dominic RENEWAL
Ashley Y IturbideCanadaElwin Sharvill QUALIFIED
Costa Z NickaRussiaAsiya Javayant NEGOTIATION
Sinclair K SlusarskiArgentinaOnyama Limba RENEWAL
Leja A OldroydBrazilAnna Fali RENEWAL
Nicolas R DoeAustraliaIvan Magalhaes PROPOSAL
Alejandro N SaylorsRussiaOnyama Limba NEW
Munro E KolmetzIndiaBernardo Dominic NEW
Octavia K VenereRussiaStephen Shaw RENEWAL
Julie G DilliardRussiaAmy Elsner QUALIFIED
Jones P DilliardBrazilXuxue Feng RENEWAL
Kadeem R MaletJapanAnna Fali PROPOSAL
Maisha B FlosiAustraliaIoni Bowcher NEGOTIATION
Aditya L MarrierGermanyAnna Fali NEW
Sinclair W InouyeCanadaIvan Magalhaes UNQUALIFIED
Deepesh V MaletRussiaAsiya Javayant UNQUALIFIED
Maria R WieserUnited KingdomBernardo Dominic NEGOTIATION
Chavez I BowleyFranceOnyama Limba UNQUALIFIED
Rodrigues G RulapaughIndiaAsiya Javayant NEW
Isabel J PoquetteUnited KingdomStephen Shaw NEW
Kaitlin I FlosiCanadaIvan Magalhaes PROPOSAL
Tony P SlusarskiSpainIoni Bowcher NEW
Faith V CampainItalyIvan Magalhaes QUALIFIED
Claire X CaudyGermanyAnna Fali 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>