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
Arvin A SlusarskiUnited KingdomXuxue Feng NEW
Aruna O DilliardFranceStephen Shaw RENEWAL
Jefferson B GillianArgentinaIoni Bowcher QUALIFIED
Tony R BriddickSpainAsiya Javayant QUALIFIED
Tony S WaycottRussiaXuxue Feng NEW
Ashley A ChuiSpainXuxue Feng NEGOTIATION
Izzy A WieserIndiaAsiya Javayant RENEWAL
Tony B VenereBrazilIoni Bowcher PROPOSAL
Munro M GlickAustraliaXuxue Feng NEW
Ashley S RutaIndiaIvan Magalhaes RENEWAL
Leon G NestleCanadaXuxue Feng NEW
Jefferson Z OstroskySpainAsiya Javayant NEGOTIATION
Kadeem V OldroydJapanBernardo Dominic PROPOSAL
Mujtaba U MacleadItalyBernardo Dominic UNQUALIFIED
Murillo S FollerUnited KingdomOnyama Limba NEW
Deepesh M RutaArgentinaIoni Bowcher QUALIFIED
Ivar A PaprockiUnited KingdomAnna Fali QUALIFIED
James U OstroskyFranceStephen Shaw PROPOSAL
Greenwood D MorascaArgentinaAmy Elsner NEW
Aika Q GlickJapanOnyama Limba RENEWAL
Greenwood Y FerenczCanadaElwin Sharvill PROPOSAL
Juan D TollnerItalyElwin Sharvill NEW
Jennifer U RutaCanadaBernardo Dominic UNQUALIFIED
Claire O MarrierFranceAmy Elsner RENEWAL
Wickens O TollnerIndiaIvan Magalhaes QUALIFIED
Adams H AmigonUnited KingdomXuxue Feng QUALIFIED
Claire A SchemmerBrazilXuxue Feng PROPOSAL
Deepesh N VenereAustraliaIvan Magalhaes QUALIFIED
Nicolas E SchemmerGermanyIvan Magalhaes NEGOTIATION
Mayumi C BologniaBrazilElwin Sharvill UNQUALIFIED
Morrow P WhobreyArgentinaOnyama Limba RENEWAL
Silvio T MaletSpainAnna Fali NEGOTIATION
Arvin D GillianJapanStephen Shaw RENEWAL
Cody V BriddickAustraliaOnyama Limba UNQUALIFIED
Leon G OstroskyGermanyAsiya Javayant UNQUALIFIED
Costa K WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Jones X RutaCanadaAsiya Javayant QUALIFIED
Chavez P CampainIndiaIoni Bowcher PROPOSAL
Morrow Q WieserGermanyBernardo Dominic PROPOSAL
Juan D CampainGermanyIoni Bowcher NEW
David W TollnerArgentinaAsiya Javayant UNQUALIFIED
David S AlbaresBrazilIoni Bowcher NEW
Faith C WaycottAustraliaAmy Elsner RENEWAL
Kaitlin Y RimIndiaAsiya Javayant NEW
Alejandro U CaldareraIndiaAmy Elsner PROPOSAL
Cody H FerenczGermanyXuxue Feng RENEWAL
Arvin J BriddickSpainBernardo Dominic NEW
Octavia H DarakjyRussiaStephen Shaw RENEWAL
Murillo J WhobreyItalyBernardo Dominic NEGOTIATION
Munro F ChuiIndiaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Darci O IturbideIndiaAnna Fali NEW
Julie Y SergiBrazilAnna Fali QUALIFIED
Stacey J NickaCanadaElwin Sharvill QUALIFIED
Smith T OstroskyGermanyElwin Sharvill PROPOSAL
Costa W TollnerIndiaXuxue Feng NEW
Ivar K KuskoJapanOnyama Limba NEGOTIATION
Ivar B KolmetzCanadaAnna Fali RENEWAL
Kadeem T WhobreyAustraliaElwin Sharvill PROPOSAL
James E GlickArgentinaIoni Bowcher RENEWAL
Aika A MacleadCanadaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie F FerenczItaly2024-06-17Benton, John B Jr QUALIFIED39Anna Fali
1001Johnson W ShinkoJapan2024-06-07Feltz Printing Service PROPOSAL95Amy Elsner
1002James R MaletArgentina2024-05-24Morlong Associates QUALIFIED47Onyama Limba
1003Smith O RoysterGermany2024-05-26Rangoni Of Florence QUALIFIED33Amy Elsner
1004Clifford K MaletUnited Kingdom2024-06-01Feltz Printing Service NEW69Stephen Shaw
1005Silvio J SchemmerGermany2024-06-03Benton, John B Jr UNQUALIFIED43Ivan Magalhaes
1006Aika Y WieserIndia2024-05-21Chemel, James L Cpa PROPOSAL38Ioni Bowcher
1007Costa E RimItaly2024-05-24Truhlar And Truhlar Attys UNQUALIFIED62Elwin Sharvill
1008Salvatore O NestleItaly2024-05-29Rangoni Of Florence NEGOTIATION13Elwin Sharvill
1009Isabel T OldroydRussia2024-06-13Truhlar And Truhlar Attys NEGOTIATION74Amy Elsner
1010Isabel Q InouyeUnited Kingdom2024-06-17Dorl, James J Esq NEGOTIATION35Asiya Javayant
1011James T CaudyAustralia2024-06-02Feltz Printing Service NEGOTIATION55Elwin Sharvill
1012Ivar T DarakjyFrance2024-06-02Rousseaux, Michael Esq PROPOSAL58Bernardo Dominic
1013Jefferson X RutaUnited Kingdom2024-06-02Rousseaux, Michael Esq NEW9Bernardo Dominic
1014Aruna G BriddickJapan2024-05-30Morlong Associates PROPOSAL45Xuxue Feng
1015Faith U GauchoAustralia2024-05-28Dorl, James J Esq RENEWAL80Bernardo Dominic
1016Munro J NickaIndia2024-05-28Printing Dimensions NEGOTIATION94Amy Elsner
1017Ivar B NickaAustralia2024-05-29Rousseaux, Michael Esq PROPOSAL30Onyama Limba
1018Rodrigues O NickaCanada2024-05-26Commercial Press RENEWAL97Ivan Magalhaes
1019Jones B KuskoRussia2024-05-25Morlong Associates PROPOSAL63Amy Elsner
1020Darci T ButtArgentina2024-05-22Morlong Associates UNQUALIFIED2Bernardo Dominic
1021Chavez Q GauchoCanada2024-05-28Feltz Printing Service NEW43Asiya Javayant
1022Leon R RutaJapan2024-06-16Truhlar And Truhlar Attys UNQUALIFIED1Ioni Bowcher
1023Mujtaba H SergiAustralia2024-05-26Rousseaux, Michael Esq UNQUALIFIED85Stephen Shaw
1024Tony L GlickArgentina2024-06-13Feiner Bros QUALIFIED50Ioni Bowcher
1025Claire C IturbideAustralia2024-06-05Feiner Bros UNQUALIFIED47Xuxue Feng
1026Salvatore I MaletFrance2024-06-18Chemel, James L Cpa UNQUALIFIED7Ivan Magalhaes
1027Sinclair C WaycottItaly2024-05-26Dorl, James J Esq NEGOTIATION29Ivan Magalhaes
1028Jeanfrancois J StensethUnited Kingdom2024-05-26Feltz Printing Service PROPOSAL75Stephen Shaw
1029Julie L ButtIndia2024-06-03Feiner Bros NEW24Ioni Bowcher
1030Isabel A RutaRussia2024-05-25King, Christopher A Esq RENEWAL42Xuxue Feng
1031James I FlosiGermany2024-06-05Feltz Printing Service RENEWAL32Anna Fali
1032Francesco W BriddickUnited Kingdom2024-05-23Dorl, James J Esq NEW94Amy Elsner
1033Maisha C KuskoItaly2024-06-12Rangoni Of Florence UNQUALIFIED27Amy Elsner
1034Jeanfrancois J CaudyItaly2024-05-31Chapman, Ross E Esq NEW83Anna Fali
1035Ashley X KuskoIndia2024-06-03Buckley Miller Wright QUALIFIED51Bernardo Dominic
1036Mayumi S MorascaJapan2024-06-02Buckley Miller Wright RENEWAL88Onyama Limba
1037Julie L MaletItaly2024-06-12Feltz Printing Service UNQUALIFIED57Ivan Magalhaes
1038Jeanfrancois D SaylorsFrance2024-05-26Feltz Printing Service RENEWAL51Ioni Bowcher
1039Mayumi A VocelkaCanada2024-06-11King, Christopher A Esq QUALIFIED66Elwin Sharvill
1040Cody C RimBrazil2024-05-24Chemel, James L Cpa RENEWAL88Stephen Shaw
1041Octavia O ChuiJapan2024-06-16Feltz Printing Service UNQUALIFIED4Anna Fali
1042Costa H BriddickRussia2024-05-20Benton, John B Jr NEGOTIATION9Bernardo Dominic
1043Antonio T FollerFrance2024-06-05Chapman, Ross E Esq PROPOSAL48Xuxue Feng
1044Salvatore X DilliardAustralia2024-06-02Commercial Press QUALIFIED93Amy Elsner
1045Mujtaba D IturbideFrance2024-05-22Feiner Bros QUALIFIED41Xuxue Feng
1046Isabel J FerenczItaly2024-06-17Morlong Associates RENEWAL8Ioni Bowcher
1047Smith D SlusarskiGermany2024-06-10Truhlar And Truhlar Attys UNQUALIFIED86Asiya Javayant
1048Greenwood U FerenczGermany2024-06-17Rousseaux, Michael Esq RENEWAL37Amy Elsner
1049Stacey Q WaycottArgentina2024-06-03Chanay, Jeffrey A Esq UNQUALIFIED94Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Alejandro W WieserAustraliaElwin Sharvill RENEWAL
Stacey R GillianUnited KingdomIvan Magalhaes PROPOSAL
Mayumi S ButtGermanyStephen Shaw PROPOSAL
Nicolas V VenereUnited KingdomBernardo Dominic NEW
Aditya D OldroydJapanXuxue Feng NEW
Smith M DarakjySpainOnyama Limba UNQUALIFIED
Francesco M BriddickRussiaIvan Magalhaes NEGOTIATION
Ivar X OldroydBrazilStephen Shaw PROPOSAL
Johnson K VenereBrazilOnyama Limba QUALIFIED
Greenwood C BriddickJapanIvan Magalhaes NEGOTIATION
Darci N CaldareraBrazilElwin Sharvill NEW
Juan K ChuiArgentinaBernardo Dominic RENEWAL
Ashley T RulapaughBrazilElwin Sharvill PROPOSAL
Sinclair E RimBrazilIoni Bowcher QUALIFIED
Clifford D KuskoGermanyIoni Bowcher PROPOSAL
Aika G GillianGermanyOnyama Limba PROPOSAL
Leon W AmigonBrazilAmy Elsner PROPOSAL
Chavez D AmigonFranceAnna Fali QUALIFIED
Sinclair K MaletItalyIvan Magalhaes QUALIFIED
David R PerinCanadaBernardo Dominic PROPOSAL
Leja F VenereItalyStephen Shaw UNQUALIFIED
Smith E DilliardRussiaAsiya Javayant NEGOTIATION
Jones Z MaletGermanyStephen Shaw NEGOTIATION
Misaki H KolmetzJapanAsiya Javayant NEW
Ricardo G DoeGermanyAmy Elsner NEW
Rodrigues E SergiItalyAsiya Javayant RENEWAL
Faith S CampainJapanIoni Bowcher PROPOSAL
Rodrigues B FigeroaGermanyOnyama Limba NEW
Morrow K RimJapanBernardo Dominic RENEWAL
Antonio M BriddickJapanStephen Shaw PROPOSAL
Mayumi I VocelkaFranceStephen Shaw PROPOSAL
Ashley Q FerenczItalyAmy Elsner NEW
Darci Q VenereCanadaIoni Bowcher NEW
Darci B NickaArgentinaOnyama Limba NEW
Jones G WhobreyUnited KingdomIoni Bowcher PROPOSAL
Silvio O GauchoJapanAsiya Javayant UNQUALIFIED
Leon N FerenczJapanBernardo Dominic NEW
Julie R DoeCanadaOnyama Limba NEGOTIATION
Jeanfrancois Z MaletRussiaIvan Magalhaes QUALIFIED
Stacey V FollerItalyBernardo Dominic NEGOTIATION
Stacey T InouyeSpainIvan Magalhaes NEW
Jennifer G SchemmerRussiaOnyama Limba PROPOSAL
Murillo C AlbaresGermanyAsiya Javayant NEW
Deepesh X StensethBrazilXuxue Feng UNQUALIFIED
Morrow R SlusarskiGermanyElwin Sharvill NEW
Jeanfrancois D NestleJapanAsiya Javayant NEW
Mujtaba G OstroskyCanadaAsiya Javayant PROPOSAL
Murillo G ShinkoGermanyAmy Elsner UNQUALIFIED
Rodrigues Q KuskoRussiaXuxue Feng QUALIFIED
Jefferson G CampainAustraliaAnna Fali QUALIFIED
Frozen Columns
Name
Faith O Malet
Alejandro F Shinko
Jones N Ferencz
Maria S Maclead
Jennifer F Albares
Adams M Campain
Jeanfrancois N Ruta
Munro R Inouye
Mayumi Z Sergi
Aruna U Flosi
Stacey Y Kusko
Jefferson M Ferencz
Greenwood K Doe
Sinclair G Poquette
Faith B Briddick
Cody J Slusarski
Stacey L Malet
Greenwood O Slusarski
Francesco C Briddick
Isabel K Nestle
Munro E Campain
Aika L Kolmetz
Wickens V Malet
Aika D Schemmer
Jefferson Q Dilliard
Morrow O Kusko
Costa C Caldarera
Morrow N Venere
Faith S Vocelka
Aruna S Gaucho
Arvin Q Foller
Julie P Malet
Maria N Nestle
Ivar X Foller
Kadeem G Amigon
Greenwood U Morasca
Nicolas G Tollner
Nicolas I Rim
Jefferson N Bowley
Clifford R Gillian
Adams O Ferencz
Isabel W Butt
Adams U Poquette
Francesco E Darakjy
Smith Q Kusko
Tony Z Schemmer
David G Inouye
Aditya T Oldroyd
Salvatore I Caudy
Claire Y Iturbide
IdCountryDate
1000Spain2024-05-27
1001Russia2024-05-20
1002Canada2024-05-29
1003Russia2024-06-11
1004Italy2024-06-10
1005Argentina2024-05-21
1006United Kingdom2024-05-21
1007Japan2024-06-10
1008Japan2024-05-24
1009France2024-06-04
1010Russia2024-05-28
1011Spain2024-06-09
1012Russia2024-06-18
1013United Kingdom2024-05-21
1014Italy2024-06-07
1015India2024-06-18
1016Japan2024-06-17
1017India2024-06-01
1018Japan2024-06-16
1019Japan2024-05-31
1020India2024-05-30
1021Germany2024-05-21
1022Japan2024-05-24
1023Spain2024-06-08
1024Japan2024-06-10
1025Italy2024-05-25
1026Australia2024-05-27
1027Brazil2024-05-30
1028France2024-06-06
1029Canada2024-06-11
1030Germany2024-06-02
1031Argentina2024-05-25
1032Brazil2024-05-29
1033United Kingdom2024-06-04
1034France2024-06-07
1035Canada2024-06-08
1036Canada2024-06-11
1037Italy2024-05-29
1038Japan2024-06-08
1039France2024-06-02
1040France2024-05-20
1041France2024-06-15
1042Russia2024-06-08
1043France2024-06-04
1044Germany2024-05-20
1045United Kingdom2024-05-28
1046Germany2024-05-27
1047Spain2024-05-23
1048Japan2024-06-15
1049Argentina2024-06-18

On-Demand Data

NameIdCountryDate
Tony D Perin1000India2024-06-01
Alejandro B Dilliard1001Spain2024-06-01
Leja C Chui1002Japan2024-06-15
Aika W Nicka1003Italy2024-05-24
Deepesh L Tollner1004Germany2024-06-08
Claire W Wieser1005France2024-05-25
David N Paprocki1006Australia2024-06-12
Deepesh X Kolmetz1007Germany2024-06-17
Ricardo V Inouye1008Argentina2024-05-26
Cody F Whobrey1009India2024-06-07
Nicolas X Rulapaugh1010Japan2024-05-20
Mujtaba B Amigon1011France2024-06-13
Morrow N Foller1012Italy2024-06-05
Leja V Foller1013Japan2024-06-03
Adams C Darakjy1014Australia2024-06-12
Greenwood R Doe1015Australia2024-06-18
Silvio U Ostrosky1016Russia2024-05-28
Johnson U Campain1017Russia2024-05-27
Aditya V Malet1018Brazil2024-05-31
Greenwood O Ostrosky1019Japan2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika S IturbideCanadaAmy Elsner UNQUALIFIED
Misaki J BriddickGermanyXuxue Feng PROPOSAL
Chavez X DilliardSpainAnna Fali UNQUALIFIED
Costa B GarufiUnited KingdomOnyama Limba NEGOTIATION
Mujtaba E MarrierSpainAmy Elsner QUALIFIED
Alejandro P CampainArgentinaAsiya Javayant NEGOTIATION
Nicolas F OldroydJapanBernardo Dominic QUALIFIED
Mujtaba B SlusarskiSpainAsiya Javayant RENEWAL
Jennifer B AlbaresUnited KingdomIoni Bowcher QUALIFIED
Alejandro A FigeroaCanadaAsiya Javayant RENEWAL
Mujtaba U MaletUnited KingdomAsiya Javayant NEGOTIATION
Sinclair N KolmetzItalyIoni Bowcher NEW
Faith S RulapaughCanadaStephen Shaw UNQUALIFIED
Jeanfrancois Z SchemmerJapanXuxue Feng QUALIFIED
Arvin V PoquetteRussiaOnyama Limba NEGOTIATION
Aika R WieserUnited KingdomStephen Shaw NEGOTIATION
Juan L MarrierUnited KingdomAnna Fali UNQUALIFIED
James I InouyeIndiaAmy Elsner PROPOSAL
Aruna U IturbideIndiaElwin Sharvill QUALIFIED
Cody S RimAustraliaAmy Elsner RENEWAL
Leon Z FollerItalyIvan Magalhaes UNQUALIFIED
Clifford G MacleadJapanXuxue Feng QUALIFIED
Aruna I FlosiCanadaAsiya Javayant PROPOSAL
Faith M FollerBrazilOnyama Limba PROPOSAL
Smith K OstroskyUnited KingdomIvan Magalhaes NEGOTIATION
Octavia A AmigonItalyElwin Sharvill QUALIFIED
Ricardo T OstroskyAustraliaIvan Magalhaes RENEWAL
Jones B VenereBrazilAnna Fali QUALIFIED
Rodrigues O FigeroaItalyElwin Sharvill PROPOSAL
Smith Q VenereSpainIoni Bowcher UNQUALIFIED
Stacey K DilliardGermanyStephen Shaw UNQUALIFIED
Deepesh S PerinIndiaXuxue Feng NEGOTIATION
Aika U IturbideItalyElwin Sharvill NEW
Leja V GillianJapanOnyama Limba NEW
Kaitlin I KuskoSpainAnna Fali PROPOSAL
Arvin K NestleBrazilAmy Elsner NEW
Juan N KolmetzArgentinaAsiya Javayant UNQUALIFIED
Antonio X AlbaresSpainIvan Magalhaes RENEWAL
Misaki W BriddickItalyIoni Bowcher UNQUALIFIED
Chavez N GarufiSpainStephen Shaw 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>