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
Ricardo E CaldareraRussiaIoni Bowcher QUALIFIED
Mujtaba Z ChuiIndiaAmy Elsner QUALIFIED
Salvatore Z GarufiItalyIoni Bowcher PROPOSAL
Octavia S ShinkoRussiaAmy Elsner PROPOSAL
Ricardo X StensethArgentinaXuxue Feng QUALIFIED
Ivar V MorascaCanadaIvan Magalhaes NEGOTIATION
Adams O CampainSpainAnna Fali NEGOTIATION
Morrow J BowleyIndiaOnyama Limba NEGOTIATION
Kaitlin G PaprockiArgentinaStephen Shaw NEGOTIATION
Greenwood Q MorascaArgentinaAmy Elsner PROPOSAL
Francesco F PaprockiArgentinaXuxue Feng NEGOTIATION
Maria N FollerRussiaIoni Bowcher RENEWAL
Ashley F CampainRussiaBernardo Dominic QUALIFIED
Ashley V BologniaBrazilIvan Magalhaes NEGOTIATION
Aditya G SlusarskiSpainStephen Shaw QUALIFIED
Ivar T SlusarskiSpainStephen Shaw NEW
Mayumi W BowleyArgentinaAsiya Javayant PROPOSAL
Francesco A VocelkaAustraliaStephen Shaw RENEWAL
Maria C CaldareraSpainAsiya Javayant NEW
Juan G AlbaresJapanIvan Magalhaes UNQUALIFIED
Octavia Z VenereCanadaStephen Shaw NEW
Juan V StockhamCanadaIvan Magalhaes PROPOSAL
Nicolas M ButtItalyIvan Magalhaes NEGOTIATION
Munro K FerenczSpainAnna Fali RENEWAL
Greenwood L MacleadIndiaStephen Shaw NEGOTIATION
Sinclair A BowleyGermanyElwin Sharvill RENEWAL
Morrow V ButtCanadaAsiya Javayant PROPOSAL
Aruna Y PoquetteCanadaXuxue Feng QUALIFIED
Jones C IturbideAustraliaAnna Fali NEW
Nicolas Q CaldareraCanadaBernardo Dominic PROPOSAL
Jeanfrancois W ShinkoCanadaIvan Magalhaes QUALIFIED
Julie Z WieserFranceIvan Magalhaes RENEWAL
Kadeem C AmigonItalyStephen Shaw RENEWAL
David Y DoeGermanyBernardo Dominic QUALIFIED
Isabel V GillianBrazilStephen Shaw PROPOSAL
Isabel F WieserFranceIvan Magalhaes NEGOTIATION
Kaitlin Q StockhamSpainXuxue Feng RENEWAL
Aditya N BriddickIndiaIvan Magalhaes RENEWAL
Mayumi Z DilliardArgentinaIvan Magalhaes UNQUALIFIED
Maria Q WaycottUnited KingdomAsiya Javayant NEW
Kadeem X WhobreyCanadaIvan Magalhaes NEW
Ricardo G SaylorsRussiaXuxue Feng RENEWAL
Mayumi N NestleRussiaStephen Shaw RENEWAL
Chavez Q InouyeFranceXuxue Feng QUALIFIED
Johnson S PaprockiBrazilAnna Fali PROPOSAL
Darci P CaudyFranceAsiya Javayant NEW
Ashley N OstroskyUnited KingdomOnyama Limba NEGOTIATION
Johnson M BowleySpainAnna Fali NEGOTIATION
Wickens K AmigonFranceXuxue Feng UNQUALIFIED
Kaitlin V TollnerBrazilAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Clifford U StensethJapanAsiya Javayant PROPOSAL
Smith P TollnerBrazilAsiya Javayant PROPOSAL
Leon G PaprockiFranceAnna Fali NEGOTIATION
Jefferson U DarakjyAustraliaXuxue Feng NEGOTIATION
Silvio U BowleyGermanyOnyama Limba NEW
Jefferson S WhobreyUnited KingdomOnyama Limba NEGOTIATION
Chavez L CampainCanadaXuxue Feng PROPOSAL
Aditya S FerenczGermanyStephen Shaw QUALIFIED
Faith D CaudyArgentinaAnna Fali PROPOSAL
Francesco Q MaletAustraliaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha J IturbideCanada2024-06-04King, Christopher A Esq NEW6Ioni Bowcher
1001Claire Z RulapaughJapan2024-05-21Chemel, James L Cpa PROPOSAL63Ivan Magalhaes
1002Izzy S CaldareraItaly2024-05-26Benton, John B Jr RENEWAL60Stephen Shaw
1003Rodrigues A FlosiGermany2024-06-17Commercial Press PROPOSAL29Bernardo Dominic
1004Ashley Q MacleadUnited Kingdom2024-06-14Benton, John B Jr QUALIFIED31Amy Elsner
1005Clifford D OstroskyUnited Kingdom2024-05-29Commercial Press NEGOTIATION12Stephen Shaw
1006Tony A MarrierUnited Kingdom2024-05-19Printing Dimensions QUALIFIED25Elwin Sharvill
1007Misaki T RutaGermany2024-06-09Rousseaux, Michael Esq QUALIFIED20Stephen Shaw
1008Morrow X FollerIndia2024-06-11Feltz Printing Service NEGOTIATION93Anna Fali
1009Murillo M DarakjyArgentina2024-05-21Rousseaux, Michael Esq NEGOTIATION39Xuxue Feng
1010Ashley P RoysterFrance2024-06-05Morlong Associates UNQUALIFIED48Bernardo Dominic
1011Jones V RoysterAustralia2024-05-20Printing Dimensions RENEWAL15Elwin Sharvill
1012Maisha M KuskoSpain2024-05-22Chapman, Ross E Esq PROPOSAL11Amy Elsner
1013Tony X OstroskySpain2024-05-23Rousseaux, Michael Esq NEGOTIATION71Anna Fali
1014Jennifer V NestleFrance2024-06-11Benton, John B Jr PROPOSAL40Bernardo Dominic
1015Aditya F PaprockiIndia2024-06-03Morlong Associates PROPOSAL32Xuxue Feng
1016Leja C InouyeSpain2024-06-17Rangoni Of Florence QUALIFIED77Anna Fali
1017Silvio D AlbaresAustralia2024-05-26Feltz Printing Service RENEWAL33Bernardo Dominic
1018Clifford E RutaIndia2024-05-22King, Christopher A Esq NEGOTIATION93Xuxue Feng
1019Adams A RulapaughRussia2024-05-29Chanay, Jeffrey A Esq QUALIFIED83Ioni Bowcher
1020Cody Y ChuiJapan2024-05-24Feiner Bros NEGOTIATION69Bernardo Dominic
1021Chavez R OldroydGermany2024-06-17Benton, John B Jr NEW37Amy Elsner
1022Murillo Z CampainJapan2024-06-09Dorl, James J Esq QUALIFIED25Stephen Shaw
1023Tony I BologniaSpain2024-05-31Rangoni Of Florence PROPOSAL81Amy Elsner
1024Morrow K RulapaughRussia2024-06-02Truhlar And Truhlar Attys NEW43Onyama Limba
1025Kaitlin H RoysterFrance2024-05-22Morlong Associates UNQUALIFIED83Ioni Bowcher
1026Ivar Y FigeroaArgentina2024-06-08Rousseaux, Michael Esq NEW88Anna Fali
1027David A FerenczSpain2024-06-16Feiner Bros NEGOTIATION85Stephen Shaw
1028Claire J DilliardAustralia2024-06-10Benton, John B Jr UNQUALIFIED64Elwin Sharvill
1029Nicolas A MaletCanada2024-05-22Chemel, James L Cpa QUALIFIED90Amy Elsner
1030Deepesh E DilliardIndia2024-05-27Printing Dimensions UNQUALIFIED30Xuxue Feng
1031Kadeem C FerenczArgentina2024-05-31Truhlar And Truhlar Attys UNQUALIFIED17Ioni Bowcher
1032Johnson J AmigonJapan2024-05-30Morlong Associates PROPOSAL15Onyama Limba
1033Wickens I KuskoBrazil2024-06-04Truhlar And Truhlar Attys NEGOTIATION71Amy Elsner
1034Misaki U VenereAustralia2024-05-31Chemel, James L Cpa QUALIFIED56Anna Fali
1035Jefferson F FlosiAustralia2024-05-26Chanay, Jeffrey A Esq NEW24Amy Elsner
1036Costa A FigeroaBrazil2024-06-07Chemel, James L Cpa UNQUALIFIED33Ivan Magalhaes
1037Greenwood F FollerFrance2024-06-06Buckley Miller Wright RENEWAL77Elwin Sharvill
1038Costa Y GillianAustralia2024-06-12Rousseaux, Michael Esq RENEWAL74Elwin Sharvill
1039Kaitlin T PerinBrazil2024-05-28Feltz Printing Service NEGOTIATION32Elwin Sharvill
1040Smith B SchemmerIndia2024-06-08Truhlar And Truhlar Attys NEGOTIATION49Bernardo Dominic
1041Silvio Z FigeroaIndia2024-05-29Buckley Miller Wright QUALIFIED98Stephen Shaw
1042Kadeem E MarrierIndia2024-05-27Buckley Miller Wright RENEWAL51Elwin Sharvill
1043Mayumi O CaldareraCanada2024-05-24Morlong Associates PROPOSAL47Amy Elsner
1044Maisha Q AmigonUnited Kingdom2024-06-12Buckley Miller Wright QUALIFIED26Asiya Javayant
1045Darci Y CampainBrazil2024-05-28King, Christopher A Esq UNQUALIFIED44Bernardo Dominic
1046Adams Z WieserGermany2024-06-08Feltz Printing Service QUALIFIED64Anna Fali
1047Emily Y CampainBrazil2024-05-22Benton, John B Jr NEGOTIATION33Ioni Bowcher
1048Ashley R GillianItaly2024-06-06Printing Dimensions RENEWAL39Ioni Bowcher
1049Claire V PerinFrance2024-06-02Chanay, Jeffrey A Esq UNQUALIFIED96Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Silvio N BowleyRussiaBernardo Dominic UNQUALIFIED
Emily J PoquetteGermanyAnna Fali PROPOSAL
Maria J CaldareraBrazilAnna Fali QUALIFIED
Nicolas N KolmetzBrazilAmy Elsner PROPOSAL
Julie R IturbideRussiaBernardo Dominic UNQUALIFIED
Juan X OstroskyCanadaAsiya Javayant PROPOSAL
Greenwood R RulapaughUnited KingdomIvan Magalhaes UNQUALIFIED
Maisha V OldroydRussiaAmy Elsner RENEWAL
Leja J MaletArgentinaAsiya Javayant UNQUALIFIED
Adams A MorascaItalyOnyama Limba QUALIFIED
Leja W MacleadItalyStephen Shaw UNQUALIFIED
Cody V PerinCanadaElwin Sharvill NEGOTIATION
Mujtaba O DarakjySpainXuxue Feng UNQUALIFIED
Darci B GillianAustraliaBernardo Dominic PROPOSAL
Kadeem S GauchoRussiaElwin Sharvill RENEWAL
Maria V SergiFranceBernardo Dominic PROPOSAL
Antonio M StockhamCanadaIvan Magalhaes QUALIFIED
Munro N GlickCanadaStephen Shaw NEGOTIATION
Morrow W SchemmerArgentinaIvan Magalhaes RENEWAL
Izzy I DoeArgentinaXuxue Feng UNQUALIFIED
Kaitlin Z MacleadArgentinaStephen Shaw NEW
James N NickaJapanIvan Magalhaes UNQUALIFIED
Julie N WhobreyRussiaAnna Fali NEW
David D KolmetzRussiaIvan Magalhaes PROPOSAL
Darci J WhobreyBrazilXuxue Feng UNQUALIFIED
Francesco F NestleItalyIvan Magalhaes UNQUALIFIED
Emily O SergiAustraliaXuxue Feng NEW
Murillo M NestleCanadaXuxue Feng NEGOTIATION
Alejandro Z CampainAustraliaBernardo Dominic RENEWAL
Rodrigues K MarrierAustraliaXuxue Feng QUALIFIED
Munro Z WaycottCanadaIvan Magalhaes RENEWAL
Kaitlin C AmigonFranceOnyama Limba NEW
Aika N GlickUnited KingdomIvan Magalhaes UNQUALIFIED
James I NickaArgentinaElwin Sharvill NEGOTIATION
Smith D PoquetteFranceStephen Shaw QUALIFIED
Jones P StockhamUnited KingdomOnyama Limba NEW
Wickens P MacleadFranceIvan Magalhaes UNQUALIFIED
Ashley M RutaJapanAmy Elsner RENEWAL
Faith L ChuiIndiaElwin Sharvill UNQUALIFIED
Julie J GlickGermanyAnna Fali QUALIFIED
Johnson W TollnerSpainAnna Fali PROPOSAL
Francesco G VocelkaCanadaIvan Magalhaes NEW
Cody R KuskoCanadaXuxue Feng UNQUALIFIED
Claire A WaycottAustraliaAnna Fali RENEWAL
Jeanfrancois I SaylorsRussiaAmy Elsner QUALIFIED
Ivar R BologniaItalyAmy Elsner NEW
Alejandro K OldroydJapanAmy Elsner QUALIFIED
Ivar M WaycottFranceAnna Fali NEW
Adams H OldroydCanadaIvan Magalhaes NEGOTIATION
David P SaylorsAustraliaAmy Elsner NEW
Frozen Columns
Name
Adams X Stenseth
Mayumi H Briddick
Jennifer Q Ferencz
Cody Y Tollner
Aruna L Ferencz
Aditya M Slusarski
Jeanfrancois T Amigon
David Z Saylors
Kadeem K Saylors
Maisha T Poquette
Misaki N Butt
Maisha B Chui
Clifford W Iturbide
Aika W Nestle
Leon S Perin
Isabel X Oldroyd
Ricardo T Rulapaugh
David Y Dilliard
Faith C Bowley
Morrow W Stenseth
Kadeem S Marrier
Mayumi B Saylors
Emily U Morasca
Murillo E Albares
Deepesh Y Shinko
Alejandro E Bolognia
Jefferson Y Shinko
Cody K Amigon
Antonio T Stenseth
Misaki Z Doe
Kaitlin X Inouye
Arvin E Gillian
Kadeem J Figeroa
Jones U Schemmer
Ivar S Whobrey
James X Slusarski
Kadeem U Perin
Mujtaba M Nestle
Nicolas H Briddick
Wickens I Nicka
Darci X Whobrey
Misaki F Vocelka
Juan W Stockham
Clifford G Kolmetz
Deepesh W Stockham
Juan G Kolmetz
Jefferson J Albares
Maisha Q Marrier
Arvin Y Tollner
Silvio M Doe
IdCountryDate
1000India2024-05-27
1001India2024-06-13
1002Canada2024-06-16
1003India2024-05-23
1004Argentina2024-05-19
1005Brazil2024-05-29
1006Russia2024-05-29
1007France2024-05-30
1008Japan2024-06-12
1009Canada2024-06-11
1010France2024-06-15
1011Canada2024-05-31
1012Italy2024-05-24
1013Italy2024-06-07
1014United Kingdom2024-05-23
1015France2024-06-01
1016Italy2024-06-15
1017France2024-06-17
1018Brazil2024-05-19
1019Canada2024-05-27
1020India2024-05-19
1021Italy2024-06-04
1022United Kingdom2024-06-13
1023Spain2024-05-29
1024Canada2024-05-28
1025Argentina2024-06-08
1026Argentina2024-06-10
1027Argentina2024-06-02
1028Australia2024-06-04
1029Canada2024-06-13
1030Argentina2024-06-12
1031Argentina2024-06-15
1032Australia2024-05-24
1033Japan2024-06-13
1034United Kingdom2024-05-22
1035United Kingdom2024-06-16
1036India2024-05-27
1037Italy2024-05-30
1038Russia2024-06-01
1039Australia2024-05-31
1040Spain2024-06-15
1041Italy2024-06-06
1042Argentina2024-06-02
1043Argentina2024-06-15
1044Japan2024-06-17
1045Australia2024-06-06
1046Spain2024-05-31
1047Spain2024-05-25
1048India2024-05-26
1049France2024-06-12

On-Demand Data

NameIdCountryDate
Misaki V Royster1000Argentina2024-06-03
Mujtaba O Nestle1001India2024-06-11
Johnson N Darakjy1002Russia2024-05-21
Claire K Glick1003India2024-05-20
Cody L Kolmetz1004Germany2024-05-30
Tony A Campain1005United Kingdom2024-06-12
Darci B Dilliard1006Italy2024-06-14
Isabel H Poquette1007Argentina2024-05-25
James Q Bowley1008Spain2024-06-04
Kaitlin O Ruta1009United Kingdom2024-05-19
Emily C Marrier1010Canada2024-06-03
Wickens C Wieser1011United Kingdom2024-05-25
Aika J Saylors1012United Kingdom2024-06-11
Stacey L Poquette1013Canada2024-05-20
Salvatore D Venere1014Canada2024-06-11
Maria Y Albares1015Australia2024-05-22
Johnson F Saylors1016Germany2024-06-10
Aruna J Flosi1017Spain2024-05-25
Nicolas M Glick1018United Kingdom2024-05-27
Claire T Dilliard1019Spain2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow V MacleadSpainAsiya Javayant NEW
Costa M CaudyArgentinaAnna Fali NEGOTIATION
Darci I MaletJapanAmy Elsner NEW
Morrow X SchemmerUnited KingdomElwin Sharvill PROPOSAL
Clifford M RoysterFranceAmy Elsner PROPOSAL
Sinclair K BowleyItalyXuxue Feng PROPOSAL
Faith Z ButtIndiaBernardo Dominic UNQUALIFIED
Alejandro K InouyeSpainAsiya Javayant QUALIFIED
Munro F FollerBrazilIoni Bowcher PROPOSAL
Francesco N GauchoFranceOnyama Limba QUALIFIED
David G FlosiIndiaOnyama Limba PROPOSAL
Jennifer A RimAustraliaAmy Elsner NEW
Salvatore D StensethUnited KingdomIvan Magalhaes QUALIFIED
Maisha C GarufiSpainIvan Magalhaes QUALIFIED
Mujtaba O FollerRussiaIvan Magalhaes PROPOSAL
Isabel T OldroydJapanAsiya Javayant NEGOTIATION
Sinclair Z MarrierItalyBernardo Dominic PROPOSAL
Munro T MorascaIndiaElwin Sharvill QUALIFIED
David I AmigonJapanAnna Fali NEGOTIATION
David X MarrierCanadaAnna Fali NEW
Kadeem M MorascaFranceIvan Magalhaes RENEWAL
Murillo Q WhobreyJapanBernardo Dominic QUALIFIED
Morrow V BologniaFranceOnyama Limba PROPOSAL
David R WaycottBrazilOnyama Limba RENEWAL
Antonio I SlusarskiCanadaXuxue Feng PROPOSAL
Emily J BowleyJapanBernardo Dominic QUALIFIED
Emily D StensethRussiaAmy Elsner PROPOSAL
Faith E GlickBrazilOnyama Limba RENEWAL
Wickens K RulapaughUnited KingdomOnyama Limba UNQUALIFIED
Munro A DilliardRussiaAnna Fali QUALIFIED
Silvio W SchemmerFranceXuxue Feng UNQUALIFIED
Kaitlin W GillianUnited KingdomAsiya Javayant PROPOSAL
Isabel K StensethBrazilIoni Bowcher NEGOTIATION
Jennifer E NestleItalyOnyama Limba QUALIFIED
Antonio U ButtGermanyAsiya Javayant UNQUALIFIED
Ivar D CaldareraUnited KingdomAnna Fali PROPOSAL
Emily U PoquetteItalyStephen Shaw PROPOSAL
James R WaycottItalyBernardo Dominic NEW
Cody D BriddickGermanyStephen Shaw UNQUALIFIED
Silvio I RoysterRussiaIoni Bowcher QUALIFIED

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