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
Claire C NickaFranceOnyama Limba PROPOSAL
Greenwood P BologniaRussiaIvan Magalhaes UNQUALIFIED
Aika H BriddickIndiaOnyama Limba NEW
Cody M BriddickJapanAmy Elsner UNQUALIFIED
Jones V VenereUnited KingdomElwin Sharvill RENEWAL
Leja V FerenczItalyElwin Sharvill NEGOTIATION
Jennifer U WieserIndiaStephen Shaw PROPOSAL
Ricardo A RulapaughSpainIoni Bowcher RENEWAL
Nicolas G DoeIndiaStephen Shaw NEW
Aditya U PerinUnited KingdomBernardo Dominic QUALIFIED
James C ChuiRussiaOnyama Limba NEW
James G SergiSpainIvan Magalhaes NEGOTIATION
Murillo F OldroydCanadaAnna Fali NEGOTIATION
Mayumi Y CaudyAustraliaXuxue Feng QUALIFIED
Aika V AmigonIndiaAnna Fali QUALIFIED
Morrow N NickaCanadaXuxue Feng QUALIFIED
Isabel F KolmetzSpainAsiya Javayant NEW
Mayumi G NestleUnited KingdomXuxue Feng NEW
Salvatore W AlbaresAustraliaAnna Fali PROPOSAL
Munro R DarakjyIndiaAnna Fali NEGOTIATION
Juan M SchemmerRussiaOnyama Limba RENEWAL
Francesco N PaprockiArgentinaOnyama Limba NEGOTIATION
Smith Z OldroydItalyAnna Fali UNQUALIFIED
Aika G BologniaArgentinaBernardo Dominic NEW
Chavez S WieserIndiaElwin Sharvill UNQUALIFIED
Kaitlin Y RoysterArgentinaElwin Sharvill QUALIFIED
Darci G WaycottIndiaAmy Elsner NEW
Arvin X OstroskyGermanyIoni Bowcher UNQUALIFIED
Leon P KuskoItalyIoni Bowcher NEW
Smith S VocelkaIndiaOnyama Limba UNQUALIFIED
Aika S StensethItalyOnyama Limba RENEWAL
Octavia L IturbideItalyOnyama Limba PROPOSAL
Juan A CaudyRussiaElwin Sharvill PROPOSAL
Antonio Z GarufiJapanAsiya Javayant PROPOSAL
Tony W CaldareraAustraliaBernardo Dominic RENEWAL
Misaki L TollnerBrazilAnna Fali NEGOTIATION
Aditya G DoeCanadaXuxue Feng UNQUALIFIED
Darci K VocelkaIndiaAsiya Javayant RENEWAL
Adams D SaylorsCanadaElwin Sharvill NEW
Munro C RimItalyAnna Fali NEW
Ricardo N CampainFranceStephen Shaw PROPOSAL
Silvio J SlusarskiGermanyAmy Elsner PROPOSAL
Maisha C GarufiItalyIvan Magalhaes NEGOTIATION
Faith N DoeAustraliaElwin Sharvill UNQUALIFIED
Alejandro S RimCanadaXuxue Feng PROPOSAL
Munro Q MacleadUnited KingdomOnyama Limba UNQUALIFIED
Antonio A TollnerBrazilOnyama Limba QUALIFIED
Mujtaba I StensethIndiaStephen Shaw QUALIFIED
Leon A FerenczRussiaXuxue Feng NEW
Stacey X SchemmerArgentinaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
David F MarrierIndiaBernardo Dominic UNQUALIFIED
Antonio V FerenczRussiaOnyama Limba RENEWAL
Misaki N ButtBrazilIvan Magalhaes RENEWAL
Smith H StensethFranceXuxue Feng NEGOTIATION
Leon H RimArgentinaAsiya Javayant QUALIFIED
Mayumi O RutaItalyXuxue Feng PROPOSAL
Clifford D BologniaItalyElwin Sharvill PROPOSAL
Smith Z MorascaArgentinaBernardo Dominic PROPOSAL
Mujtaba N FlosiBrazilIoni Bowcher NEGOTIATION
Munro G BowleySpainXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya I NestleJapan2024-05-27Chapman, Ross E Esq PROPOSAL80Ivan Magalhaes
1001Leja G OldroydItaly2024-05-27Rangoni Of Florence PROPOSAL7Ioni Bowcher
1002Costa K ChuiJapan2024-06-05Chapman, Ross E Esq UNQUALIFIED61Ioni Bowcher
1003Aditya V PoquetteCanada2024-06-15Chanay, Jeffrey A Esq UNQUALIFIED86Bernardo Dominic
1004Wickens Q SchemmerCanada2024-05-28Feltz Printing Service RENEWAL72Elwin Sharvill
1005Misaki W RoysterCanada2024-05-23Chanay, Jeffrey A Esq NEW53Bernardo Dominic
1006Mujtaba Z FigeroaSpain2024-06-14Dorl, James J Esq PROPOSAL5Asiya Javayant
1007Sinclair O FigeroaSpain2024-06-14Benton, John B Jr UNQUALIFIED3Xuxue Feng
1008Rodrigues Q DilliardCanada2024-06-16Feiner Bros PROPOSAL38Xuxue Feng
1009Antonio X WieserJapan2024-06-14Morlong Associates QUALIFIED52Ivan Magalhaes
1010Rodrigues N OldroydItaly2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED27Asiya Javayant
1011Julie W CaldareraIndia2024-05-26Chanay, Jeffrey A Esq RENEWAL83Bernardo Dominic
1012Sinclair C DoeArgentina2024-05-29Chemel, James L Cpa RENEWAL37Onyama Limba
1013Claire H FollerGermany2024-06-13Feltz Printing Service RENEWAL51Amy Elsner
1014Isabel D FigeroaFrance2024-06-14Benton, John B Jr NEW15Xuxue Feng
1015Deepesh N WieserAustralia2024-06-14Chapman, Ross E Esq RENEWAL56Bernardo Dominic
1016Aika C RimRussia2024-06-05Rangoni Of Florence UNQUALIFIED8Bernardo Dominic
1017Greenwood V FerenczSpain2024-05-21Feiner Bros PROPOSAL90Asiya Javayant
1018Maria I FollerJapan2024-06-01Chanay, Jeffrey A Esq NEGOTIATION71Xuxue Feng
1019Greenwood P FlosiFrance2024-05-30Dorl, James J Esq NEGOTIATION92Ioni Bowcher
1020Stacey L IturbideAustralia2024-06-15Feltz Printing Service RENEWAL51Asiya Javayant
1021Izzy K VocelkaFrance2024-06-04Rangoni Of Florence NEGOTIATION53Stephen Shaw
1022Johnson E RimGermany2024-06-04Chapman, Ross E Esq RENEWAL11Ioni Bowcher
1023Cody G BriddickFrance2024-05-19Chemel, James L Cpa UNQUALIFIED79Stephen Shaw
1024Francesco T RutaItaly2024-06-13Benton, John B Jr NEGOTIATION68Xuxue Feng
1025James C AmigonJapan2024-05-23Commercial Press RENEWAL78Elwin Sharvill
1026Claire Z FlosiFrance2024-06-16Printing Dimensions UNQUALIFIED60Xuxue Feng
1027Antonio F PaprockiArgentina2024-05-29Morlong Associates NEW38Asiya Javayant
1028Emily Q CampainCanada2024-05-24Chemel, James L Cpa RENEWAL63Ivan Magalhaes
1029Cody V RimItaly2024-06-07Feiner Bros UNQUALIFIED32Amy Elsner
1030Ivar Y WaycottFrance2024-06-05Truhlar And Truhlar Attys NEW11Ioni Bowcher
1031Darci H BologniaItaly2024-05-21Chanay, Jeffrey A Esq PROPOSAL11Ioni Bowcher
1032Darci R SchemmerUnited Kingdom2024-06-07Benton, John B Jr PROPOSAL32Amy Elsner
1033Ashley V SaylorsRussia2024-05-23Buckley Miller Wright NEGOTIATION10Amy Elsner
1034Stacey O GlickGermany2024-05-25Feiner Bros PROPOSAL34Ivan Magalhaes
1035Misaki N WhobreyUnited Kingdom2024-06-06Benton, John B Jr NEGOTIATION39Bernardo Dominic
1036Nicolas V RulapaughBrazil2024-05-29Chapman, Ross E Esq NEW62Stephen Shaw
1037Aruna Q GauchoItaly2024-06-11Chapman, Ross E Esq UNQUALIFIED16Xuxue Feng
1038Murillo S MaletCanada2024-06-13Truhlar And Truhlar Attys QUALIFIED40Elwin Sharvill
1039Munro J RimFrance2024-06-15Chanay, Jeffrey A Esq NEW80Anna Fali
1040Antonio V SlusarskiJapan2024-06-09Benton, John B Jr NEGOTIATION77Amy Elsner
1041Munro X WaycottGermany2024-06-03Morlong Associates PROPOSAL46Amy Elsner
1042Silvio P RulapaughItaly2024-05-19Benton, John B Jr QUALIFIED87Ivan Magalhaes
1043Ivar V WhobreyBrazil2024-06-03Feiner Bros NEW92Ioni Bowcher
1044Ivar B GlickRussia2024-06-08Rangoni Of Florence UNQUALIFIED21Amy Elsner
1045Mayumi Z BriddickGermany2024-05-24Chemel, James L Cpa UNQUALIFIED91Amy Elsner
1046Mujtaba A MaletFrance2024-05-26Benton, John B Jr RENEWAL88Ivan Magalhaes
1047Antonio W PaprockiSpain2024-05-19Morlong Associates PROPOSAL47Anna Fali
1048Morrow K CaldareraItaly2024-06-07Feiner Bros RENEWAL82Stephen Shaw
1049Morrow B SergiAustralia2024-05-25Chemel, James L Cpa NEW72Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Johnson G BowleyUnited KingdomAnna Fali PROPOSAL
Leon L PaprockiIndiaAmy Elsner PROPOSAL
Johnson X ShinkoCanadaBernardo Dominic QUALIFIED
Murillo E DoeAustraliaAmy Elsner RENEWAL
David H SlusarskiJapanBernardo Dominic RENEWAL
Isabel P RoysterArgentinaAnna Fali NEW
Julie B StockhamIndiaOnyama Limba QUALIFIED
Leon M SaylorsUnited KingdomAmy Elsner PROPOSAL
Octavia M PaprockiBrazilIvan Magalhaes UNQUALIFIED
Aditya Q FerenczUnited KingdomXuxue Feng RENEWAL
Julie R MaletFranceIoni Bowcher QUALIFIED
Antonio M AlbaresIndiaAnna Fali NEGOTIATION
James N DilliardCanadaIoni Bowcher NEW
Chavez I StockhamSpainXuxue Feng UNQUALIFIED
Johnson X StockhamUnited KingdomStephen Shaw NEGOTIATION
Aika E AlbaresJapanAmy Elsner UNQUALIFIED
Ivar W OldroydBrazilStephen Shaw QUALIFIED
Munro V VocelkaCanadaBernardo Dominic RENEWAL
Clifford W ChuiGermanyAmy Elsner NEGOTIATION
Juan W MacleadUnited KingdomXuxue Feng PROPOSAL
Alejandro R FigeroaGermanyStephen Shaw QUALIFIED
Julie L GauchoCanadaBernardo Dominic UNQUALIFIED
Arvin I NickaBrazilAmy Elsner NEGOTIATION
Cody U SlusarskiJapanBernardo Dominic QUALIFIED
James O StockhamJapanAmy Elsner RENEWAL
Rodrigues B CaudyAustraliaElwin Sharvill UNQUALIFIED
Rodrigues A CampainCanadaElwin Sharvill NEGOTIATION
Stacey G MaletGermanyBernardo Dominic PROPOSAL
James I CaldareraRussiaAnna Fali RENEWAL
Francesco K NickaJapanOnyama Limba NEGOTIATION
Clifford Q RoysterBrazilStephen Shaw UNQUALIFIED
Claire K MarrierIndiaAmy Elsner UNQUALIFIED
Juan M SlusarskiArgentinaBernardo Dominic NEW
Aditya M NestleSpainStephen Shaw RENEWAL
Kaitlin A InouyeBrazilAsiya Javayant PROPOSAL
Emily W GarufiRussiaXuxue Feng NEW
Arvin V MacleadBrazilOnyama Limba PROPOSAL
Alejandro I BowleyBrazilAnna Fali PROPOSAL
Sinclair E GauchoGermanyElwin Sharvill RENEWAL
Aditya W GauchoJapanIvan Magalhaes RENEWAL
Munro C RimBrazilAmy Elsner QUALIFIED
Maisha Q WieserJapanStephen Shaw NEGOTIATION
Deepesh Y SlusarskiArgentinaXuxue Feng UNQUALIFIED
Mujtaba U PaprockiIndiaIvan Magalhaes RENEWAL
Deepesh F MorascaRussiaAmy Elsner NEGOTIATION
Kaitlin D FollerJapanBernardo Dominic QUALIFIED
Clifford J DilliardAustraliaAmy Elsner NEW
Jeanfrancois N OldroydArgentinaIvan Magalhaes PROPOSAL
Ashley H GlickUnited KingdomAmy Elsner QUALIFIED
Smith Y VocelkaCanadaXuxue Feng NEW
Frozen Columns
Name
Juan I Whobrey
Jones Z Chui
Wickens I Ferencz
Jones D Glick
James O Figeroa
Aika A Gaucho
Darci N Stockham
Kadeem K Albares
Salvatore V Slusarski
Leja A Marrier
Octavia T Maclead
Chavez V Stenseth
James F Nestle
Smith V Royster
Maisha F Nicka
Maria L Iturbide
Isabel L Garufi
Mayumi M Albares
Faith P Schemmer
Silvio L Paprocki
Antonio S Wieser
Tony M Vocelka
Jennifer U Iturbide
Sinclair H Kolmetz
Isabel Q Caudy
Maisha R Doe
Greenwood R Maclead
Deepesh T Whobrey
Cody X Venere
Jeanfrancois L Waycott
Wickens V Tollner
Mujtaba U Garufi
Francesco W Caldarera
Aruna H Nestle
James Z Darakjy
Emily E Schemmer
Ashley R Ruta
Mujtaba P Ostrosky
Salvatore U Briddick
Stacey Z Royster
James T Stenseth
Francesco N Tollner
Sinclair C Foller
Rodrigues R Slusarski
Rodrigues Z Stenseth
Nicolas C Foller
Misaki D Nestle
Tony L Amigon
Munro S Wieser
Darci Q Kolmetz
IdCountryDate
1000Spain2024-06-11
1001Australia2024-05-23
1002Russia2024-06-14
1003Italy2024-06-01
1004Argentina2024-05-20
1005Argentina2024-06-11
1006Canada2024-05-20
1007France2024-06-01
1008France2024-05-25
1009Russia2024-05-29
1010France2024-06-06
1011India2024-06-02
1012India2024-06-06
1013Brazil2024-05-19
1014Canada2024-05-24
1015Australia2024-05-30
1016Brazil2024-05-28
1017Australia2024-06-03
1018Argentina2024-05-19
1019Italy2024-05-20
1020Spain2024-06-03
1021Argentina2024-06-06
1022Japan2024-06-11
1023United Kingdom2024-05-19
1024Germany2024-05-25
1025France2024-06-07
1026Russia2024-05-23
1027Australia2024-06-14
1028Russia2024-06-08
1029Spain2024-05-20
1030Japan2024-05-29
1031Australia2024-05-22
1032Italy2024-06-02
1033France2024-06-04
1034Germany2024-06-07
1035Russia2024-05-27
1036Australia2024-05-26
1037France2024-06-17
1038Argentina2024-06-09
1039Brazil2024-06-06
1040Italy2024-06-16
1041Argentina2024-05-25
1042Japan2024-05-20
1043France2024-06-15
1044Spain2024-06-03
1045Spain2024-06-12
1046Brazil2024-06-13
1047Russia2024-05-25
1048Australia2024-06-12
1049Russia2024-05-27

On-Demand Data

NameIdCountryDate
Emily J Figeroa1000Australia2024-06-12
Jefferson V Morasca1001Spain2024-06-16
Kadeem Y Ostrosky1002India2024-06-17
Kadeem W Figeroa1003France2024-06-06
Claire L Saylors1004Japan2024-06-10
Cody D Briddick1005Germany2024-06-11
Jefferson F Paprocki1006United Kingdom2024-05-22
Ashley R Gaucho1007Brazil2024-05-25
Julie O Briddick1008France2024-05-30
Leja S Schemmer1009France2024-06-02
Mayumi D Ostrosky1010Spain2024-05-28
Leja B Royster1011Spain2024-06-09
Aditya J Shinko1012Russia2024-05-31
James H Caudy1013Russia2024-06-13
David U Maclead1014Germany2024-06-17
Rodrigues S Maclead1015India2024-06-10
Leja G Tollner1016United Kingdom2024-06-17
Murillo C Foller1017United Kingdom2024-06-02
Smith L Glick1018Argentina2024-05-22
Cody D Garufi1019Spain2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer K FollerArgentinaIoni Bowcher NEGOTIATION
Claire Z VocelkaBrazilAmy Elsner NEGOTIATION
Deepesh X FlosiJapanOnyama Limba NEW
James T IturbideRussiaAsiya Javayant UNQUALIFIED
Kaitlin N DilliardRussiaIvan Magalhaes NEW
Kaitlin N MaletRussiaBernardo Dominic NEW
Kaitlin N GarufiJapanStephen Shaw RENEWAL
Kadeem T WhobreyArgentinaAsiya Javayant NEGOTIATION
Isabel S VenereAustraliaIvan Magalhaes PROPOSAL
Jones I KolmetzGermanyAnna Fali RENEWAL
Kadeem Y PoquetteBrazilStephen Shaw NEW
Sinclair L VocelkaGermanyOnyama Limba NEW
Faith I SaylorsGermanyIvan Magalhaes RENEWAL
Silvio T OstroskyIndiaStephen Shaw NEW
Kaitlin W PoquetteRussiaStephen Shaw QUALIFIED
Costa X RutaIndiaStephen Shaw NEW
Aika L GillianUnited KingdomBernardo Dominic UNQUALIFIED
Munro M SchemmerIndiaAnna Fali UNQUALIFIED
Ashley V SaylorsJapanStephen Shaw NEW
Deepesh O IturbideBrazilBernardo Dominic RENEWAL
Aika P IturbideFranceBernardo Dominic NEGOTIATION
Maria Y GillianCanadaStephen Shaw RENEWAL
Costa X MaletCanadaIvan Magalhaes UNQUALIFIED
David N MorascaUnited KingdomAnna Fali PROPOSAL
Kaitlin K PoquetteRussiaXuxue Feng RENEWAL
Francesco X VocelkaBrazilStephen Shaw UNQUALIFIED
Deepesh V CaudyArgentinaAsiya Javayant RENEWAL
Nicolas F CampainBrazilXuxue Feng QUALIFIED
Rodrigues Y CaudyIndiaAsiya Javayant QUALIFIED
Aika V TollnerFranceIvan Magalhaes UNQUALIFIED
Izzy L RoysterArgentinaOnyama Limba UNQUALIFIED
Jeanfrancois F MacleadFranceElwin Sharvill NEGOTIATION
Rodrigues J FlosiArgentinaIoni Bowcher NEW
Clifford O SlusarskiRussiaElwin Sharvill RENEWAL
Maisha C WaycottCanadaIoni Bowcher NEW
Ashley C TollnerAustraliaBernardo Dominic NEW
Julie V DilliardGermanyStephen Shaw NEW
Deepesh J ShinkoSpainAmy Elsner QUALIFIED
Antonio A AlbaresSpainOnyama Limba NEGOTIATION
Morrow W WhobreyJapanBernardo 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>