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
Antonio G AmigonAustraliaStephen Shaw PROPOSAL
Cody U StensethAustraliaBernardo Dominic QUALIFIED
Chavez J CampainCanadaOnyama Limba UNQUALIFIED
Costa R InouyeJapanIoni Bowcher UNQUALIFIED
Salvatore I GauchoIndiaAnna Fali UNQUALIFIED
Mujtaba N DarakjyItalyAmy Elsner RENEWAL
Adams F RulapaughCanadaBernardo Dominic NEGOTIATION
Kadeem F SlusarskiUnited KingdomXuxue Feng UNQUALIFIED
Aika I DoeSpainOnyama Limba NEW
Deepesh W SaylorsFranceStephen Shaw NEW
Johnson Z PerinSpainElwin Sharvill QUALIFIED
Rodrigues I DoeAustraliaElwin Sharvill UNQUALIFIED
Clifford J CampainBrazilIvan Magalhaes NEW
Kaitlin C FollerFranceAmy Elsner RENEWAL
Aditya X CaldareraItalyIoni Bowcher NEW
David D SlusarskiGermanyAmy Elsner QUALIFIED
Claire P TollnerAustraliaAmy Elsner PROPOSAL
Alejandro O GauchoGermanyBernardo Dominic RENEWAL
James K RimJapanIoni Bowcher UNQUALIFIED
Costa C WhobreyItalyXuxue Feng PROPOSAL
Deepesh V KuskoGermanyXuxue Feng RENEWAL
Adams Q SlusarskiFranceXuxue Feng RENEWAL
Maisha N FerenczItalyAsiya Javayant NEW
Sinclair Z CampainItalyAnna Fali RENEWAL
Misaki J SaylorsCanadaStephen Shaw PROPOSAL
Izzy W GarufiUnited KingdomBernardo Dominic UNQUALIFIED
Maisha X FigeroaSpainAmy Elsner NEGOTIATION
Ricardo N FlosiAustraliaAnna Fali RENEWAL
Mujtaba Z CaudyUnited KingdomBernardo Dominic PROPOSAL
Wickens D NickaGermanyBernardo Dominic RENEWAL
Aruna W GlickIndiaStephen Shaw NEW
Claire Y ShinkoUnited KingdomAsiya Javayant UNQUALIFIED
Silvio I DoeAustraliaBernardo Dominic NEW
Tony Z FerenczFranceOnyama Limba QUALIFIED
Faith K AmigonAustraliaIoni Bowcher PROPOSAL
Clifford M DilliardIndiaAnna Fali PROPOSAL
Faith F FigeroaJapanAsiya Javayant RENEWAL
Jennifer X IturbideCanadaStephen Shaw NEW
Jones X InouyeBrazilIoni Bowcher NEGOTIATION
Isabel B KolmetzSpainStephen Shaw UNQUALIFIED
Salvatore D RimUnited KingdomElwin Sharvill PROPOSAL
Chavez E MaletSpainOnyama Limba QUALIFIED
Munro L MaletArgentinaStephen Shaw UNQUALIFIED
Sinclair D AlbaresArgentinaIoni Bowcher QUALIFIED
Jennifer X TollnerRussiaStephen Shaw NEW
Smith X StockhamIndiaElwin Sharvill PROPOSAL
James P WieserIndiaBernardo Dominic RENEWAL
Aruna D BriddickUnited KingdomIoni Bowcher NEGOTIATION
Johnson M MacleadIndiaXuxue Feng PROPOSAL
Munro Z ButtJapanStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Alejandro O OldroydIndiaXuxue Feng NEW
Mujtaba Q FigeroaUnited KingdomIvan Magalhaes PROPOSAL
James P VocelkaCanadaXuxue Feng NEGOTIATION
Leon T PerinGermanyIoni Bowcher UNQUALIFIED
Isabel V MacleadArgentinaStephen Shaw PROPOSAL
Ashley E CaldareraRussiaAsiya Javayant UNQUALIFIED
Mujtaba S GarufiGermanyAnna Fali NEGOTIATION
Sinclair L CampainJapanStephen Shaw UNQUALIFIED
Greenwood G KolmetzCanadaXuxue Feng PROPOSAL
Antonio H CaldareraGermanyElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem P SaylorsIndia2024-06-12Chanay, Jeffrey A Esq QUALIFIED41Anna Fali
1001Costa L SlusarskiRussia2024-06-06Commercial Press PROPOSAL72Onyama Limba
1002Morrow X CaldareraBrazil2024-06-21Rousseaux, Michael Esq NEW74Amy Elsner
1003Salvatore V StockhamBrazil2024-06-08Commercial Press RENEWAL68Xuxue Feng
1004Octavia U ChuiRussia2024-06-12Commercial Press NEW68Anna Fali
1005Ashley C PerinGermany2024-06-07Chemel, James L Cpa QUALIFIED73Asiya Javayant
1006Sinclair H NickaCanada2024-06-10Chemel, James L Cpa RENEWAL4Bernardo Dominic
1007Alejandro W CampainJapan2024-06-19Chemel, James L Cpa QUALIFIED72Stephen Shaw
1008Maisha E RimRussia2024-05-24Chemel, James L Cpa QUALIFIED96Asiya Javayant
1009Misaki G MacleadSpain2024-06-07Feiner Bros UNQUALIFIED51Stephen Shaw
1010Antonio Y SchemmerCanada2024-06-10Commercial Press RENEWAL13Amy Elsner
1011Adams R PaprockiBrazil2024-06-03Rangoni Of Florence PROPOSAL93Xuxue Feng
1012Cody D GauchoJapan2024-06-03Truhlar And Truhlar Attys NEGOTIATION70Onyama Limba
1013Adams X CaldareraArgentina2024-06-22Rangoni Of Florence RENEWAL18Ioni Bowcher
1014Isabel J ChuiSpain2024-06-01Chemel, James L Cpa PROPOSAL7Ioni Bowcher
1015Ashley G MaletIndia2024-06-13Benton, John B Jr NEGOTIATION69Ioni Bowcher
1016Maisha A OldroydBrazil2024-06-17Printing Dimensions RENEWAL75Elwin Sharvill
1017Greenwood U MaletJapan2024-06-15Chapman, Ross E Esq NEW7Xuxue Feng
1018Julie F NickaRussia2024-05-31Rangoni Of Florence UNQUALIFIED88Asiya Javayant
1019Silvio V StockhamRussia2024-05-27Dorl, James J Esq QUALIFIED11Amy Elsner
1020Juan L PerinFrance2024-06-09King, Christopher A Esq PROPOSAL44Ioni Bowcher
1021Francesco W FigeroaGermany2024-05-29Commercial Press RENEWAL40Ioni Bowcher
1022David E PerinSpain2024-05-28Buckley Miller Wright PROPOSAL19Amy Elsner
1023Claire T KuskoIndia2024-05-31Truhlar And Truhlar Attys NEW39Ioni Bowcher
1024Aditya O SchemmerJapan2024-05-28Dorl, James J Esq RENEWAL42Ivan Magalhaes
1025Salvatore L CampainSpain2024-06-19Feltz Printing Service NEW9Asiya Javayant
1026Antonio Q WhobreyCanada2024-05-25Feltz Printing Service RENEWAL99Asiya Javayant
1027Johnson B ChuiSpain2024-05-28Morlong Associates RENEWAL93Ivan Magalhaes
1028Kaitlin N FlosiJapan2024-06-11Rangoni Of Florence RENEWAL29Stephen Shaw
1029Leja G GlickSpain2024-06-03Chanay, Jeffrey A Esq NEGOTIATION83Bernardo Dominic
1030Maria U ShinkoSpain2024-06-06Feiner Bros RENEWAL91Amy Elsner
1031Aika S RulapaughJapan2024-05-28Feltz Printing Service PROPOSAL21Bernardo Dominic
1032Faith P ButtBrazil2024-06-05Dorl, James J Esq UNQUALIFIED54Ivan Magalhaes
1033Smith A NestleJapan2024-06-08Feltz Printing Service QUALIFIED46Ioni Bowcher
1034Misaki F DilliardJapan2024-06-07Rousseaux, Michael Esq PROPOSAL64Elwin Sharvill
1035Mujtaba D FlosiRussia2024-06-06Feltz Printing Service NEW76Ioni Bowcher
1036Ricardo E WieserBrazil2024-06-11Rangoni Of Florence UNQUALIFIED74Onyama Limba
1037Ricardo Z FerenczJapan2024-06-14Benton, John B Jr PROPOSAL18Amy Elsner
1038Faith M BriddickFrance2024-06-03Rangoni Of Florence NEGOTIATION98Elwin Sharvill
1039Jefferson U InouyeGermany2024-06-21Printing Dimensions NEGOTIATION43Amy Elsner
1040Silvio A CaudyJapan2024-06-14Feltz Printing Service UNQUALIFIED26Xuxue Feng
1041Mayumi C FigeroaUnited Kingdom2024-06-06Chanay, Jeffrey A Esq PROPOSAL74Asiya Javayant
1042Johnson N BologniaUnited Kingdom2024-06-13Benton, John B Jr QUALIFIED36Anna Fali
1043Arvin J GlickSpain2024-06-03Truhlar And Truhlar Attys NEGOTIATION56Bernardo Dominic
1044Murillo G FollerRussia2024-06-04Feltz Printing Service PROPOSAL21Onyama Limba
1045Smith C StensethBrazil2024-06-04Chapman, Ross E Esq NEGOTIATION9Bernardo Dominic
1046Aruna K ChuiBrazil2024-06-12Chemel, James L Cpa NEW54Bernardo Dominic
1047Antonio K RimArgentina2024-06-17Dorl, James J Esq RENEWAL69Onyama Limba
1048Jeanfrancois B SchemmerItaly2024-06-06Commercial Press QUALIFIED42Anna Fali
1049Costa V GlickBrazil2024-05-24King, Christopher A Esq PROPOSAL62Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Adams R WhobreyCanadaElwin Sharvill NEW
Clifford W GarufiSpainBernardo Dominic QUALIFIED
Murillo R NickaJapanAnna Fali QUALIFIED
Deepesh W BriddickArgentinaElwin Sharvill NEGOTIATION
Faith X BriddickSpainElwin Sharvill NEW
Jones J PerinCanadaBernardo Dominic RENEWAL
Deepesh V OstroskyAustraliaAmy Elsner RENEWAL
Cody G VocelkaUnited KingdomXuxue Feng NEW
Wickens H BologniaArgentinaElwin Sharvill RENEWAL
Julie S CaldareraJapanElwin Sharvill UNQUALIFIED
Chavez A ButtItalyXuxue Feng PROPOSAL
Jones I InouyeArgentinaBernardo Dominic NEW
Alejandro N MarrierFranceAnna Fali QUALIFIED
Stacey W CaldareraCanadaIvan Magalhaes NEW
Arvin F CaldareraGermanyIvan Magalhaes RENEWAL
Darci Q KuskoUnited KingdomBernardo Dominic UNQUALIFIED
Wickens H RulapaughItalyBernardo Dominic PROPOSAL
Isabel Q NestleRussiaXuxue Feng NEW
Leja R NickaCanadaStephen Shaw QUALIFIED
Alejandro W FerenczItalyOnyama Limba UNQUALIFIED
Jones U CaudySpainAsiya Javayant RENEWAL
Octavia I OstroskyRussiaStephen Shaw PROPOSAL
Darci F SaylorsAustraliaAsiya Javayant QUALIFIED
Antonio Y DilliardIndiaStephen Shaw PROPOSAL
Mujtaba R GillianJapanXuxue Feng NEGOTIATION
Misaki N KuskoJapanIvan Magalhaes QUALIFIED
Octavia Q SlusarskiUnited KingdomOnyama Limba NEW
Jefferson M GarufiIndiaStephen Shaw NEGOTIATION
Deepesh M FigeroaGermanyIoni Bowcher UNQUALIFIED
Ricardo M MorascaCanadaBernardo Dominic NEGOTIATION
Wickens R FlosiFranceAsiya Javayant QUALIFIED
Jennifer Z GarufiArgentinaOnyama Limba PROPOSAL
Misaki Z GlickIndiaStephen Shaw PROPOSAL
Juan C InouyeAustraliaAsiya Javayant PROPOSAL
Antonio V SchemmerAustraliaOnyama Limba UNQUALIFIED
Kadeem T DilliardIndiaOnyama Limba QUALIFIED
Nicolas I GlickJapanStephen Shaw RENEWAL
Rodrigues I MacleadBrazilBernardo Dominic NEW
Alejandro H DilliardUnited KingdomStephen Shaw PROPOSAL
Julie V BologniaGermanyIoni Bowcher RENEWAL
Morrow G RulapaughFranceStephen Shaw QUALIFIED
Jeanfrancois V WieserArgentinaXuxue Feng UNQUALIFIED
Maria Z IturbideUnited KingdomBernardo Dominic UNQUALIFIED
Morrow R SaylorsAustraliaAsiya Javayant NEGOTIATION
Mujtaba Z PaprockiRussiaOnyama Limba PROPOSAL
Arvin L KolmetzArgentinaOnyama Limba PROPOSAL
Johnson F NestleUnited KingdomIoni Bowcher QUALIFIED
Ricardo U MorascaBrazilXuxue Feng QUALIFIED
Adams L OstroskyBrazilAsiya Javayant QUALIFIED
Jennifer U WaycottJapanStephen Shaw PROPOSAL
Frozen Columns
Name
Sinclair B Caudy
James M Kusko
Arvin T Butt
Sinclair P Whobrey
James M Venere
Aditya E Venere
Faith K Iturbide
Octavia O Bowley
Cody V Morasca
Mujtaba G Bowley
Morrow Z Caldarera
James E Dilliard
Ricardo O Caldarera
Stacey P Campain
Cody E Poquette
Mayumi Y Flosi
Jefferson S Foller
Aruna I Figeroa
Cody F Paprocki
Juan G Nicka
Claire V Nicka
Aika R Waycott
Jones E Ostrosky
Arvin Q Vocelka
Clifford B Saylors
Jones D Caudy
Rodrigues E Poquette
Stacey S Stockham
Johnson H Albares
Aditya T Shinko
Kaitlin A Albares
Emily A Garufi
Kadeem H Malet
Tony Z Nicka
Juan O Bowley
David W Nicka
Aruna Z Darakjy
Morrow O Shinko
Greenwood R Ruta
Maisha C Bolognia
Kaitlin D Venere
Leon B Wieser
Stacey G Rim
Ivar F Darakjy
Jefferson R Dilliard
Johnson X Paprocki
Misaki D Caudy
Murillo L Ferencz
Greenwood M Royster
Chavez Z Oldroyd
IdCountryDate
1000Argentina2024-06-20
1001India2024-06-04
1002Russia2024-06-04
1003Germany2024-06-08
1004Canada2024-06-11
1005United Kingdom2024-05-26
1006India2024-05-30
1007Russia2024-06-02
1008India2024-06-04
1009Brazil2024-06-17
1010United Kingdom2024-06-01
1011France2024-06-06
1012Germany2024-06-21
1013Canada2024-06-09
1014Germany2024-06-19
1015Germany2024-06-02
1016Argentina2024-06-12
1017Germany2024-05-27
1018Canada2024-06-15
1019Japan2024-06-16
1020India2024-06-22
1021Brazil2024-06-05
1022Spain2024-06-20
1023Germany2024-06-22
1024Russia2024-06-16
1025India2024-06-21
1026Australia2024-06-01
1027Brazil2024-06-17
1028Canada2024-06-04
1029Canada2024-06-19
1030Canada2024-06-15
1031Canada2024-06-16
1032Japan2024-06-16
1033Spain2024-06-19
1034Australia2024-06-14
1035Canada2024-06-21
1036France2024-05-25
1037United Kingdom2024-05-30
1038Germany2024-06-19
1039Russia2024-06-16
1040Japan2024-06-14
1041Japan2024-05-31
1042Australia2024-06-21
1043France2024-05-27
1044France2024-06-20
1045Russia2024-06-21
1046India2024-06-18
1047Argentina2024-05-30
1048Russia2024-06-15
1049Argentina2024-06-01

On-Demand Data

NameIdCountryDate
Rodrigues N Doe1000Brazil2024-06-03
Jefferson T Wieser1001Canada2024-06-22
Aruna H Malet1002United Kingdom2024-06-07
Cody G Oldroyd1003Spain2024-05-24
Johnson C Caudy1004India2024-05-24
Darci O Albares1005Germany2024-06-21
Maria R Glick1006Russia2024-05-28
Isabel F Garufi1007Australia2024-06-08
Silvio Q Gillian1008Spain2024-06-09
Darci C Darakjy1009Italy2024-06-19
Emily W Wieser1010Brazil2024-05-31
Kadeem T Inouye1011Australia2024-06-22
Leja H Stenseth1012Canada2024-06-03
Chavez H Slusarski1013Russia2024-06-07
Wickens B Maclead1014Australia2024-06-05
David Y Tollner1015France2024-05-29
Juan M Marrier1016United Kingdom2024-06-03
Jennifer X Venere1017India2024-05-29
Murillo O Kolmetz1018Germany2024-06-08
Adams Y Sergi1019Australia2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin H ChuiRussiaIvan Magalhaes RENEWAL
Jones V DilliardSpainAsiya Javayant UNQUALIFIED
Aditya N AlbaresJapanAmy Elsner NEGOTIATION
Ashley E PerinIndiaElwin Sharvill QUALIFIED
Wickens K MorascaItalyAmy Elsner UNQUALIFIED
Johnson P FlosiItalyElwin Sharvill QUALIFIED
Octavia K ShinkoArgentinaAnna Fali NEGOTIATION
Mayumi T FigeroaUnited KingdomAnna Fali QUALIFIED
Jeanfrancois F StensethRussiaElwin Sharvill PROPOSAL
Juan T BologniaFranceElwin Sharvill RENEWAL
James T WhobreyArgentinaOnyama Limba PROPOSAL
Emily X FigeroaSpainBernardo Dominic PROPOSAL
Smith Z PaprockiBrazilAsiya Javayant QUALIFIED
Jones S KuskoJapanXuxue Feng UNQUALIFIED
Cody H WieserFranceStephen Shaw NEW
Ashley O FlosiSpainXuxue Feng RENEWAL
Johnson Z BriddickRussiaAmy Elsner RENEWAL
Jefferson Q RutaFranceBernardo Dominic NEGOTIATION
Claire V VocelkaArgentinaOnyama Limba NEW
Izzy F GarufiArgentinaOnyama Limba RENEWAL
Munro T RulapaughUnited KingdomStephen Shaw NEW
Emily L ChuiBrazilXuxue Feng PROPOSAL
James N SergiJapanOnyama Limba PROPOSAL
Jeanfrancois Y StensethJapanElwin Sharvill NEW
Johnson Z IturbideCanadaIoni Bowcher RENEWAL
Ivar J CaldareraJapanAmy Elsner PROPOSAL
Costa Y MarrierItalyIvan Magalhaes NEW
Silvio Y WaycottAustraliaBernardo Dominic NEGOTIATION
Mayumi R SlusarskiFranceAsiya Javayant UNQUALIFIED
Francesco Z FerenczUnited KingdomBernardo Dominic QUALIFIED
Maria A StensethGermanyAsiya Javayant NEW
Alejandro I GlickSpainElwin Sharvill NEW
Maisha V StockhamGermanyElwin Sharvill NEW
Sinclair U DoeJapanAsiya Javayant NEGOTIATION
Faith A PerinFranceIoni Bowcher NEW
Julie E OstroskyIndiaAsiya Javayant QUALIFIED
Aditya C ChuiJapanElwin Sharvill QUALIFIED
Sinclair K AmigonSpainXuxue Feng QUALIFIED
Greenwood M MaletUnited KingdomXuxue Feng UNQUALIFIED
Murillo E OstroskyRussiaBernardo Dominic 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>