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
Nicolas Z DoeUnited KingdomAmy Elsner NEW
Costa J CaldareraGermanyOnyama Limba UNQUALIFIED
Deepesh U GlickIndiaStephen Shaw QUALIFIED
Ivar Q DarakjyAustraliaAmy Elsner NEW
Darci O StockhamCanadaAmy Elsner PROPOSAL
Leon I KuskoItalyXuxue Feng UNQUALIFIED
Johnson J CampainRussiaXuxue Feng NEW
Nicolas E FlosiUnited KingdomOnyama Limba QUALIFIED
Leja Z FollerRussiaXuxue Feng NEGOTIATION
Tony I GlickFranceBernardo Dominic NEW
Nicolas W StockhamItalyBernardo Dominic UNQUALIFIED
Izzy R StockhamFranceAnna Fali NEW
Jennifer T StensethAustraliaOnyama Limba UNQUALIFIED
Nicolas Y ChuiRussiaXuxue Feng NEGOTIATION
Rodrigues W WieserRussiaIoni Bowcher RENEWAL
Jennifer C WhobreyJapanOnyama Limba QUALIFIED
Tony M GarufiSpainXuxue Feng QUALIFIED
Murillo E MaletUnited KingdomAsiya Javayant QUALIFIED
Chavez X FlosiUnited KingdomOnyama Limba QUALIFIED
Leja J MaletGermanyOnyama Limba UNQUALIFIED
Silvio X AmigonSpainElwin Sharvill QUALIFIED
Sinclair C VenereGermanyBernardo Dominic NEW
Arvin O MaletIndiaBernardo Dominic NEGOTIATION
Sinclair K GlickJapanAmy Elsner NEW
Jennifer G RutaIndiaAsiya Javayant NEW
Julie S FigeroaCanadaXuxue Feng QUALIFIED
Isabel O RulapaughIndiaAnna Fali QUALIFIED
Leon P OldroydRussiaIvan Magalhaes NEW
Jefferson A AmigonCanadaXuxue Feng UNQUALIFIED
Stacey Y StockhamItalyStephen Shaw PROPOSAL
Kaitlin K StockhamRussiaStephen Shaw NEGOTIATION
Leon C GillianIndiaXuxue Feng UNQUALIFIED
Jeanfrancois Q MaletSpainElwin Sharvill QUALIFIED
Julie X BowleyFranceBernardo Dominic RENEWAL
Leja B WaycottAustraliaOnyama Limba NEGOTIATION
Octavia A GlickAustraliaAnna Fali RENEWAL
Tony J WieserFranceAnna Fali NEGOTIATION
Jefferson O KuskoGermanyElwin Sharvill PROPOSAL
David K SergiArgentinaAnna Fali NEW
Misaki C AmigonIndiaXuxue Feng NEGOTIATION
Rodrigues I GillianCanadaBernardo Dominic QUALIFIED
Antonio K OldroydGermanyBernardo Dominic RENEWAL
Murillo T VenereJapanIvan Magalhaes NEGOTIATION
Emily O FlosiUnited KingdomStephen Shaw NEW
Clifford P AmigonArgentinaStephen Shaw PROPOSAL
James V MorascaRussiaXuxue Feng NEGOTIATION
Emily G CampainBrazilXuxue Feng UNQUALIFIED
Deepesh D CaudyUnited KingdomXuxue Feng UNQUALIFIED
Kadeem M GauchoRussiaElwin Sharvill NEW
Aika P SchemmerRussiaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens A CaldareraGermanyBernardo Dominic NEW
Aditya Z IturbideArgentinaIoni Bowcher QUALIFIED
Adams P StockhamFranceXuxue Feng RENEWAL
Alejandro R TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Maria D MacleadCanadaElwin Sharvill NEGOTIATION
Darci K ChuiAustraliaIoni Bowcher PROPOSAL
Chavez R NestleArgentinaAnna Fali RENEWAL
Sinclair G RoysterArgentinaAsiya Javayant UNQUALIFIED
Aruna T KuskoIndiaAsiya Javayant NEW
Salvatore Z PoquetteSpainAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci S MaletItaly2024-05-16Chemel, James L Cpa UNQUALIFIED30Xuxue Feng
1001Mayumi F MarrierIndia2024-05-10Printing Dimensions RENEWAL70Asiya Javayant
1002Jennifer T MarrierUnited Kingdom2024-05-24Rangoni Of Florence QUALIFIED42Elwin Sharvill
1003Octavia R MacleadRussia2024-05-07Feltz Printing Service NEW70Amy Elsner
1004Smith P DarakjyIndia2024-05-27Feiner Bros PROPOSAL71Xuxue Feng
1005Antonio V ButtSpain2024-04-29Rangoni Of Florence RENEWAL51Bernardo Dominic
1006Emily E StensethBrazil2024-05-03Commercial Press RENEWAL2Amy Elsner
1007Isabel G AmigonUnited Kingdom2024-05-20Commercial Press PROPOSAL21Anna Fali
1008Maria L FigeroaAustralia2024-05-25King, Christopher A Esq NEGOTIATION13Amy Elsner
1009Juan F OldroydBrazil2024-05-21Chemel, James L Cpa NEGOTIATION0Stephen Shaw
1010Murillo O BriddickUnited Kingdom2024-05-10Truhlar And Truhlar Attys PROPOSAL28Anna Fali
1011Costa C MacleadCanada2024-05-03Chapman, Ross E Esq NEW42Asiya Javayant
1012Rodrigues B MarrierArgentina2024-05-19Chemel, James L Cpa QUALIFIED8Amy Elsner
1013Costa L BologniaItaly2024-05-15Chapman, Ross E Esq RENEWAL18Bernardo Dominic
1014Morrow A WhobreyArgentina2024-05-23Morlong Associates NEGOTIATION34Amy Elsner
1015Mujtaba B RimIndia2024-05-19Feltz Printing Service PROPOSAL81Elwin Sharvill
1016Octavia N FigeroaSpain2024-05-27Buckley Miller Wright UNQUALIFIED47Amy Elsner
1017Claire M WhobreyAustralia2024-05-02Printing Dimensions NEW91Onyama Limba
1018Aditya M GauchoJapan2024-05-06Printing Dimensions NEGOTIATION81Onyama Limba
1019Jones S BriddickUnited Kingdom2024-05-10Truhlar And Truhlar Attys NEGOTIATION10Elwin Sharvill
1020Greenwood Y RulapaughJapan2024-05-19Feiner Bros NEW41Ioni Bowcher
1021Arvin G PoquetteRussia2024-05-24Buckley Miller Wright RENEWAL97Onyama Limba
1022Izzy J MaletJapan2024-05-08Chanay, Jeffrey A Esq UNQUALIFIED16Onyama Limba
1023Chavez L MarrierAustralia2024-05-10Buckley Miller Wright RENEWAL52Ivan Magalhaes
1024Deepesh A PoquetteFrance2024-05-14Chemel, James L Cpa NEW9Elwin Sharvill
1025Octavia V SergiItaly2024-05-14Feiner Bros UNQUALIFIED61Asiya Javayant
1026Misaki S OldroydRussia2024-05-18Chanay, Jeffrey A Esq NEW83Asiya Javayant
1027Clifford Q VocelkaGermany2024-05-27Dorl, James J Esq QUALIFIED22Bernardo Dominic
1028Antonio Y SergiBrazil2024-05-01Feltz Printing Service PROPOSAL35Onyama Limba
1029Faith W RimItaly2024-05-07Morlong Associates NEGOTIATION1Bernardo Dominic
1030Tony W NickaFrance2024-05-19Feiner Bros NEGOTIATION45Xuxue Feng
1031Ashley P MaletSpain2024-05-17Truhlar And Truhlar Attys QUALIFIED16Ivan Magalhaes
1032Ashley S CaudyItaly2024-04-28Buckley Miller Wright RENEWAL68Xuxue Feng
1033Juan G RulapaughUnited Kingdom2024-05-17Feltz Printing Service NEW1Ivan Magalhaes
1034Mayumi K CampainUnited Kingdom2024-05-26Chemel, James L Cpa PROPOSAL12Bernardo Dominic
1035Johnson N MaletRussia2024-05-22Dorl, James J Esq RENEWAL96Ioni Bowcher
1036Arvin N StensethCanada2024-05-20Truhlar And Truhlar Attys QUALIFIED11Anna Fali
1037Wickens W SaylorsArgentina2024-05-07Chanay, Jeffrey A Esq UNQUALIFIED52Ivan Magalhaes
1038Isabel H GlickArgentina2024-05-20Feltz Printing Service PROPOSAL66Amy Elsner
1039Greenwood S CaldareraIndia2024-05-07Morlong Associates NEW86Elwin Sharvill
1040Silvio G DilliardUnited Kingdom2024-05-12Benton, John B Jr RENEWAL33Asiya Javayant
1041Mayumi B FigeroaRussia2024-05-20Dorl, James J Esq QUALIFIED51Anna Fali
1042Kaitlin X GarufiGermany2024-05-26Printing Dimensions RENEWAL13Ivan Magalhaes
1043Ivar I FerenczItaly2024-05-21Truhlar And Truhlar Attys PROPOSAL80Elwin Sharvill
1044Deepesh N MaletAustralia2024-05-11Feiner Bros UNQUALIFIED22Onyama Limba
1045Sinclair S IturbideFrance2024-05-13Rangoni Of Florence UNQUALIFIED40Ivan Magalhaes
1046Leja H MacleadUnited Kingdom2024-05-24King, Christopher A Esq PROPOSAL37Xuxue Feng
1047Jones I IturbideCanada2024-04-29Commercial Press NEGOTIATION48Anna Fali
1048Aika B BowleyArgentina2024-05-10Benton, John B Jr NEGOTIATION30Elwin Sharvill
1049Leon F GillianJapan2024-05-17Rousseaux, Michael Esq RENEWAL74Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Arvin R BriddickGermanyBernardo Dominic RENEWAL
Alejandro A FollerJapanAsiya Javayant QUALIFIED
Maisha P GarufiItalyStephen Shaw QUALIFIED
Alejandro P IturbideCanadaOnyama Limba QUALIFIED
Francesco X PerinAustraliaElwin Sharvill PROPOSAL
Claire H InouyeSpainOnyama Limba NEGOTIATION
James X RimItalyOnyama Limba RENEWAL
Sinclair G MarrierGermanyXuxue Feng RENEWAL
Adams P PoquetteRussiaAsiya Javayant NEGOTIATION
Sinclair X FlosiCanadaXuxue Feng NEW
Misaki B DarakjyRussiaAsiya Javayant QUALIFIED
Ricardo G SaylorsAustraliaElwin Sharvill NEGOTIATION
Izzy O StensethCanadaBernardo Dominic NEGOTIATION
Izzy F AlbaresGermanyXuxue Feng QUALIFIED
Nicolas W SaylorsCanadaAmy Elsner RENEWAL
Claire P VocelkaIndiaXuxue Feng RENEWAL
Leon P InouyeItalyIvan Magalhaes NEGOTIATION
Ricardo K NestleArgentinaAnna Fali UNQUALIFIED
Sinclair W StockhamFranceXuxue Feng NEGOTIATION
Misaki R CaudyGermanyAsiya Javayant RENEWAL
Julie Y AlbaresFranceIvan Magalhaes UNQUALIFIED
Nicolas R AmigonBrazilOnyama Limba NEGOTIATION
Claire S MaletGermanyAmy Elsner PROPOSAL
Misaki I RulapaughItalyStephen Shaw QUALIFIED
Johnson U FerenczUnited KingdomOnyama Limba NEGOTIATION
Greenwood G VocelkaItalyElwin Sharvill UNQUALIFIED
Faith U FollerArgentinaStephen Shaw PROPOSAL
Julie R MacleadArgentinaAnna Fali NEW
Mayumi B SaylorsGermanyAmy Elsner QUALIFIED
Chavez D AlbaresAustraliaOnyama Limba QUALIFIED
Juan K NickaFranceIoni Bowcher RENEWAL
Kaitlin Z OldroydJapanOnyama Limba QUALIFIED
Sinclair I VenereItalyXuxue Feng PROPOSAL
Alejandro Q MorascaCanadaElwin Sharvill RENEWAL
Francesco L TollnerSpainAnna Fali NEW
Jefferson Q IturbideRussiaIoni Bowcher PROPOSAL
Faith P RimRussiaIoni Bowcher NEGOTIATION
Jefferson G DilliardGermanyBernardo Dominic QUALIFIED
Ricardo L InouyeIndiaXuxue Feng PROPOSAL
Ashley U PaprockiArgentinaAnna Fali UNQUALIFIED
James Y IturbideItalyIvan Magalhaes NEGOTIATION
Wickens O SergiGermanyOnyama Limba QUALIFIED
Rodrigues P GillianIndiaAsiya Javayant RENEWAL
Costa R OldroydAustraliaXuxue Feng QUALIFIED
Francesco U GauchoFranceBernardo Dominic RENEWAL
Adams S DilliardItalyAmy Elsner NEW
Claire Z PaprockiIndiaBernardo Dominic UNQUALIFIED
Kaitlin W WieserBrazilIoni Bowcher NEW
Francesco S ButtJapanStephen Shaw QUALIFIED
James B RoysterIndiaXuxue Feng RENEWAL
Frozen Columns
Name
Misaki V Poquette
Francesco N Nestle
David W Rim
Johnson Z Butt
Costa E Butt
Claire J Wieser
Kaitlin U Darakjy
Morrow O Oldroyd
Stacey A Caldarera
Mujtaba M Oldroyd
Arvin W Rulapaugh
Costa C Shinko
Cody P Ostrosky
Deepesh T Figeroa
Francesco Y Bolognia
Jeanfrancois F Maclead
Clifford D Schemmer
Deepesh X Briddick
Munro B Stenseth
Izzy Q Shinko
Johnson S Figeroa
Jones K Flosi
Jones W Butt
James C Stenseth
Izzy Q Gaucho
Jones L Kolmetz
Greenwood G Gillian
Tony Q Ostrosky
Juan T Royster
James E Caudy
Sinclair O Iturbide
Kadeem V Foller
Kaitlin P Poquette
Rodrigues D Venere
Clifford M Darakjy
Jones T Paprocki
Johnson G Royster
Alejandro H Rulapaugh
Cody F Albares
Rodrigues S Ruta
Jones R Oldroyd
Francesco M Marrier
Mujtaba W Figeroa
Ivar Y Poquette
Ashley D Flosi
Nicolas K Ostrosky
Adams F Wieser
Nicolas X Morasca
Claire N Garufi
Darci T Maclead
IdCountryDate
1000Germany2024-05-16
1001Germany2024-05-21
1002Canada2024-05-15
1003India2024-05-22
1004Japan2024-05-24
1005Italy2024-05-21
1006Italy2024-04-28
1007India2024-05-16
1008Japan2024-05-01
1009India2024-05-14
1010Canada2024-05-18
1011Germany2024-05-16
1012Germany2024-05-05
1013Argentina2024-04-29
1014Russia2024-05-27
1015India2024-05-06
1016Argentina2024-05-02
1017Brazil2024-05-04
1018Spain2024-05-15
1019India2024-04-28
1020Australia2024-04-29
1021Russia2024-05-20
1022Spain2024-04-30
1023Australia2024-05-26
1024Italy2024-05-07
1025Argentina2024-05-03
1026India2024-05-16
1027Japan2024-05-15
1028Germany2024-05-10
1029Italy2024-05-04
1030Japan2024-04-30
1031Italy2024-05-24
1032Canada2024-05-22
1033Japan2024-05-21
1034Spain2024-05-26
1035Russia2024-05-03
1036Japan2024-05-23
1037India2024-05-24
1038Germany2024-05-16
1039Australia2024-05-23
1040Argentina2024-05-03
1041Japan2024-05-23
1042Japan2024-05-15
1043India2024-05-03
1044Japan2024-05-02
1045United Kingdom2024-04-30
1046Australia2024-05-24
1047Australia2024-05-09
1048Japan2024-05-27
1049Spain2024-05-17

On-Demand Data

NameIdCountryDate
Adams T Slusarski1000Brazil2024-05-20
Aditya Q Kusko1001Brazil2024-05-26
Octavia G Kusko1002India2024-05-02
Kaitlin A Paprocki1003Brazil2024-04-29
Jefferson O Butt1004Australia2024-04-29
Aditya I Caudy1005Australia2024-04-30
David L Iturbide1006France2024-04-30
Antonio O Perin1007Germany2024-05-15
Salvatore G Campain1008France2024-05-22
Greenwood I Glick1009Spain2024-05-01
Salvatore P Butt1010Argentina2024-05-04
Leon T Oldroyd1011Russia2024-05-06
Wickens E Inouye1012India2024-05-02
Jennifer D Vocelka1013Argentina2024-05-16
Emily N Whobrey1014Argentina2024-05-22
Aika F Foller1015Italy2024-05-16
Leon T Caudy1016United Kingdom2024-05-03
Costa U Whobrey1017India2024-05-20
Jeanfrancois P Dilliard1018United Kingdom2024-05-20
Jones T Gaucho1019Russia2024-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy D OstroskyGermanyBernardo Dominic RENEWAL
Wickens Q PoquetteBrazilXuxue Feng RENEWAL
Silvio D OldroydUnited KingdomElwin Sharvill NEGOTIATION
Juan P MaletSpainXuxue Feng PROPOSAL
Faith D AmigonRussiaStephen Shaw PROPOSAL
Chavez L MorascaAustraliaStephen Shaw RENEWAL
Emily T FollerCanadaXuxue Feng PROPOSAL
Adams F MacleadItalyAnna Fali NEGOTIATION
Clifford W FollerAustraliaIoni Bowcher PROPOSAL
Rodrigues G NestleGermanyElwin Sharvill QUALIFIED
Smith F GauchoFranceElwin Sharvill PROPOSAL
Murillo O MorascaGermanyBernardo Dominic UNQUALIFIED
Leon F SlusarskiArgentinaOnyama Limba NEGOTIATION
Smith I DoeRussiaIvan Magalhaes NEGOTIATION
Cody F StensethFranceXuxue Feng RENEWAL
Salvatore H WhobreyBrazilAmy Elsner RENEWAL
Claire U FollerSpainAmy Elsner RENEWAL
Aruna K BologniaRussiaAsiya Javayant PROPOSAL
Adams H VocelkaBrazilAsiya Javayant NEW
Greenwood C GlickSpainXuxue Feng NEW
Claire Y ButtAustraliaXuxue Feng PROPOSAL
Deepesh S MaletArgentinaOnyama Limba NEW
Arvin G WaycottAustraliaIoni Bowcher PROPOSAL
Isabel G NickaCanadaIvan Magalhaes NEW
Ricardo F SaylorsUnited KingdomIvan Magalhaes PROPOSAL
Jennifer H PerinFranceXuxue Feng QUALIFIED
Silvio U PoquetteCanadaStephen Shaw RENEWAL
Maisha R MarrierFranceElwin Sharvill NEW
Adams J VocelkaJapanAnna Fali PROPOSAL
Costa T MacleadGermanyBernardo Dominic UNQUALIFIED
Silvio Q StensethRussiaIoni Bowcher RENEWAL
Isabel Y DilliardGermanyXuxue Feng PROPOSAL
Isabel V PaprockiCanadaAmy Elsner UNQUALIFIED
Cody K PerinUnited KingdomAsiya Javayant UNQUALIFIED
Maisha N ChuiCanadaAmy Elsner RENEWAL
Ivar B PaprockiFranceElwin Sharvill NEGOTIATION
Alejandro B GarufiIndiaAnna Fali PROPOSAL
James B ChuiGermanyOnyama Limba PROPOSAL
Deepesh Y SlusarskiArgentinaAmy Elsner UNQUALIFIED
Morrow S VenereItalyBernardo Dominic UNQUALIFIED

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