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
Murillo T AlbaresSpainXuxue Feng NEW
Ricardo Q VenereRussiaIvan Magalhaes NEW
Maria R DoeCanadaElwin Sharvill NEGOTIATION
Tony L RutaFranceAsiya Javayant NEGOTIATION
Costa Y AlbaresCanadaBernardo Dominic PROPOSAL
Wickens D BowleyRussiaIvan Magalhaes RENEWAL
Kaitlin B BriddickRussiaStephen Shaw NEW
Wickens F ChuiArgentinaOnyama Limba PROPOSAL
Costa Y MarrierUnited KingdomOnyama Limba UNQUALIFIED
Aika M StockhamBrazilAsiya Javayant NEGOTIATION
Ivar W WhobreySpainElwin Sharvill UNQUALIFIED
David G CaldareraCanadaAsiya Javayant NEW
Jefferson P TollnerIndiaIoni Bowcher QUALIFIED
Julie X GlickFranceXuxue Feng UNQUALIFIED
Jones P ShinkoJapanBernardo Dominic PROPOSAL
Costa T InouyeGermanyXuxue Feng NEW
Johnson O GarufiIndiaIoni Bowcher NEGOTIATION
Claire M PerinFranceAmy Elsner NEGOTIATION
Salvatore W SergiRussiaAnna Fali NEW
Silvio T SergiIndiaAsiya Javayant QUALIFIED
Johnson B DarakjyGermanyIoni Bowcher NEW
Deepesh L PerinRussiaAmy Elsner PROPOSAL
Morrow U DilliardGermanyAmy Elsner NEW
Cody X BriddickArgentinaElwin Sharvill PROPOSAL
Emily H GillianGermanyIoni Bowcher RENEWAL
Clifford B GarufiJapanElwin Sharvill UNQUALIFIED
Deepesh P ButtRussiaAsiya Javayant PROPOSAL
Sinclair D AlbaresCanadaStephen Shaw RENEWAL
Arvin P InouyeUnited KingdomBernardo Dominic NEGOTIATION
Kadeem Z VenereFranceAmy Elsner RENEWAL
Darci E SergiIndiaIvan Magalhaes QUALIFIED
Nicolas G PoquetteGermanyAsiya Javayant NEGOTIATION
Julie I TollnerRussiaIoni Bowcher QUALIFIED
Misaki P MaletJapanBernardo Dominic NEW
David S AmigonCanadaBernardo Dominic UNQUALIFIED
Julie B RutaJapanIoni Bowcher NEW
Jefferson C StockhamRussiaStephen Shaw RENEWAL
Adams V ShinkoItalyOnyama Limba RENEWAL
Deepesh H PerinItalyAsiya Javayant QUALIFIED
Octavia Y WieserSpainIoni Bowcher PROPOSAL
Jones S GlickRussiaAmy Elsner QUALIFIED
Jefferson R TollnerFranceAmy Elsner PROPOSAL
James G WieserUnited KingdomBernardo Dominic RENEWAL
Julie R NickaIndiaOnyama Limba RENEWAL
Adams X FollerJapanElwin Sharvill QUALIFIED
Octavia I VocelkaSpainXuxue Feng NEGOTIATION
Francesco B RulapaughUnited KingdomXuxue Feng NEGOTIATION
Octavia T OldroydJapanAsiya Javayant QUALIFIED
Antonio M GauchoItalyIvan Magalhaes NEW
Kadeem F PaprockiIndiaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Isabel I KuskoBrazilXuxue Feng PROPOSAL
Maria M FigeroaBrazilAmy Elsner NEW
Mujtaba U PaprockiUnited KingdomAmy Elsner PROPOSAL
Aruna G DoeUnited KingdomAnna Fali NEGOTIATION
Murillo F CaudyArgentinaXuxue Feng RENEWAL
Tony V VenereBrazilAnna Fali NEGOTIATION
Jones U OldroydRussiaIoni Bowcher NEGOTIATION
Kaitlin Z FerenczSpainXuxue Feng UNQUALIFIED
Nicolas I SlusarskiJapanElwin Sharvill RENEWAL
Leon N SlusarskiItalyAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens X SchemmerGermany2024-05-19Chanay, Jeffrey A Esq UNQUALIFIED94Asiya Javayant
1001Munro D ShinkoCanada2024-06-08Feiner Bros UNQUALIFIED62Stephen Shaw
1002Silvio O GarufiIndia2024-06-10Printing Dimensions QUALIFIED43Asiya Javayant
1003Misaki A ChuiUnited Kingdom2024-05-21Buckley Miller Wright UNQUALIFIED29Amy Elsner
1004Ricardo L WieserIndia2024-06-12Dorl, James J Esq RENEWAL26Asiya Javayant
1005Emily T NickaCanada2024-06-05Rousseaux, Michael Esq UNQUALIFIED43Xuxue Feng
1006Francesco J MacleadSpain2024-06-13King, Christopher A Esq NEGOTIATION5Elwin Sharvill
1007Emily M MacleadCanada2024-06-05Rousseaux, Michael Esq RENEWAL5Onyama Limba
1008Alejandro Q MarrierJapan2024-06-07Morlong Associates PROPOSAL92Ivan Magalhaes
1009Ricardo K GillianBrazil2024-05-30Chanay, Jeffrey A Esq RENEWAL57Ioni Bowcher
1010Isabel Z StockhamGermany2024-06-08Feiner Bros QUALIFIED89Xuxue Feng
1011Murillo G MacleadRussia2024-06-06Feiner Bros NEGOTIATION45Xuxue Feng
1012David Z ShinkoSpain2024-06-09Dorl, James J Esq NEGOTIATION19Elwin Sharvill
1013Alejandro X FerenczUnited Kingdom2024-05-28Chanay, Jeffrey A Esq QUALIFIED71Onyama Limba
1014Wickens I SlusarskiAustralia2024-05-28Buckley Miller Wright RENEWAL56Elwin Sharvill
1015Kaitlin Q VenereRussia2024-05-20King, Christopher A Esq NEGOTIATION61Anna Fali
1016Octavia W CaldareraGermany2024-06-05Chemel, James L Cpa UNQUALIFIED25Asiya Javayant
1017David Q GillianArgentina2024-06-05Printing Dimensions NEGOTIATION78Elwin Sharvill
1018Arvin F CaudyItaly2024-05-25Chanay, Jeffrey A Esq RENEWAL81Anna Fali
1019Jeanfrancois U ChuiIndia2024-06-02Feltz Printing Service PROPOSAL17Stephen Shaw
1020Chavez F CampainIndia2024-05-23Rangoni Of Florence RENEWAL16Stephen Shaw
1021Francesco I IturbideCanada2024-05-17King, Christopher A Esq RENEWAL43Bernardo Dominic
1022Isabel L StensethItaly2024-05-26Buckley Miller Wright NEGOTIATION46Onyama Limba
1023Stacey T GillianAustralia2024-06-12Dorl, James J Esq UNQUALIFIED61Anna Fali
1024Octavia K SaylorsCanada2024-05-27Rousseaux, Michael Esq UNQUALIFIED91Anna Fali
1025Greenwood V DarakjyIndia2024-05-20Rousseaux, Michael Esq QUALIFIED15Ioni Bowcher
1026Francesco I KuskoAustralia2024-06-03Rousseaux, Michael Esq RENEWAL72Bernardo Dominic
1027Ricardo A PaprockiRussia2024-05-16Dorl, James J Esq RENEWAL18Amy Elsner
1028Greenwood T GillianBrazil2024-05-26Morlong Associates PROPOSAL45Amy Elsner
1029Antonio B PaprockiRussia2024-06-10Chanay, Jeffrey A Esq NEW38Elwin Sharvill
1030Jeanfrancois C PerinRussia2024-06-09Morlong Associates NEW66Amy Elsner
1031Morrow B FlosiGermany2024-06-01Chemel, James L Cpa NEW81Bernardo Dominic
1032Sinclair Z CampainIndia2024-05-21Rangoni Of Florence UNQUALIFIED54Elwin Sharvill
1033Greenwood S ButtArgentina2024-06-06Benton, John B Jr QUALIFIED60Ioni Bowcher
1034Claire U MarrierJapan2024-06-03Printing Dimensions NEW76Anna Fali
1035Kadeem A FollerIndia2024-06-12Truhlar And Truhlar Attys RENEWAL23Xuxue Feng
1036Julie K OstroskyUnited Kingdom2024-06-08King, Christopher A Esq UNQUALIFIED98Ioni Bowcher
1037Kadeem T DarakjyRussia2024-06-01King, Christopher A Esq QUALIFIED30Asiya Javayant
1038Adams P AmigonIndia2024-05-18Truhlar And Truhlar Attys NEW72Stephen Shaw
1039Tony G KuskoCanada2024-06-08Printing Dimensions NEGOTIATION54Stephen Shaw
1040Deepesh K SchemmerBrazil2024-06-04Chapman, Ross E Esq RENEWAL78Onyama Limba
1041Jennifer E SergiIndia2024-05-24Truhlar And Truhlar Attys RENEWAL27Stephen Shaw
1042Jeanfrancois D FollerSpain2024-06-12Dorl, James J Esq UNQUALIFIED82Anna Fali
1043Jefferson S VocelkaUnited Kingdom2024-05-23Buckley Miller Wright RENEWAL67Asiya Javayant
1044Jefferson V AlbaresArgentina2024-05-25Commercial Press NEW10Asiya Javayant
1045Adams M AlbaresItaly2024-05-18Morlong Associates QUALIFIED78Ivan Magalhaes
1046Isabel H SergiFrance2024-06-05Feltz Printing Service PROPOSAL35Elwin Sharvill
1047Claire W ShinkoItaly2024-05-18Chanay, Jeffrey A Esq NEW46Ivan Magalhaes
1048Maisha P AlbaresCanada2024-05-31Benton, John B Jr RENEWAL10Onyama Limba
1049Jefferson H GlickAustralia2024-06-08Morlong Associates NEW33Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Misaki V MorascaUnited KingdomOnyama Limba NEW
Arvin O WaycottGermanyAmy Elsner RENEWAL
Juan W FerenczCanadaAnna Fali UNQUALIFIED
Wickens L GauchoJapanIoni Bowcher NEGOTIATION
Juan T RimUnited KingdomOnyama Limba PROPOSAL
David K ButtGermanyIvan Magalhaes RENEWAL
Ashley A SergiUnited KingdomStephen Shaw NEGOTIATION
Salvatore E GarufiGermanyIoni Bowcher QUALIFIED
Sinclair R KuskoFranceAsiya Javayant PROPOSAL
Leja W StensethJapanXuxue Feng NEGOTIATION
Leja G TollnerJapanBernardo Dominic UNQUALIFIED
Cody F InouyeRussiaAsiya Javayant NEW
Misaki G WaycottFranceIoni Bowcher UNQUALIFIED
Julie Q InouyeGermanyAmy Elsner NEW
Alejandro Y DoeAustraliaStephen Shaw RENEWAL
Kadeem V VenereJapanStephen Shaw NEW
Kaitlin V DoeAustraliaStephen Shaw PROPOSAL
Cody H ShinkoJapanElwin Sharvill NEW
Francesco A RulapaughJapanIvan Magalhaes NEW
Julie D DilliardArgentinaAsiya Javayant NEW
Jeanfrancois H BriddickFranceAsiya Javayant UNQUALIFIED
Kadeem M CaudyGermanyStephen Shaw NEGOTIATION
Francesco D GlickSpainXuxue Feng NEW
Jones E VocelkaItalyOnyama Limba NEW
Rodrigues T RulapaughItalyAmy Elsner QUALIFIED
Adams D DarakjyItalyAnna Fali NEW
Maria W WaycottRussiaAmy Elsner NEGOTIATION
Munro Y GarufiSpainStephen Shaw NEGOTIATION
Julie Y PoquetteCanadaAmy Elsner PROPOSAL
Jefferson Y NestleItalyXuxue Feng NEGOTIATION
Mujtaba M NestleJapanBernardo Dominic NEW
Costa D SchemmerItalyXuxue Feng NEGOTIATION
Arvin W FollerAustraliaElwin Sharvill UNQUALIFIED
Antonio K KuskoCanadaIvan Magalhaes QUALIFIED
Antonio D StockhamAustraliaElwin Sharvill PROPOSAL
James Q SergiSpainAsiya Javayant PROPOSAL
Aditya B CaudyIndiaIoni Bowcher QUALIFIED
Francesco R StockhamJapanBernardo Dominic QUALIFIED
Deepesh V WhobreyUnited KingdomAnna Fali NEGOTIATION
Aika M CaldareraCanadaXuxue Feng NEW
James I SergiFranceStephen Shaw NEW
Francesco T SlusarskiArgentinaStephen Shaw NEGOTIATION
Aditya N GillianJapanIoni Bowcher NEW
Kadeem W ButtArgentinaIvan Magalhaes UNQUALIFIED
Misaki O CaudyUnited KingdomBernardo Dominic RENEWAL
Adams U CaudySpainElwin Sharvill QUALIFIED
Salvatore E GauchoCanadaOnyama Limba NEW
Rodrigues D MaletJapanOnyama Limba RENEWAL
Arvin C GillianCanadaElwin Sharvill RENEWAL
Jeanfrancois S VocelkaGermanyAnna Fali QUALIFIED
Frozen Columns
Name
Leon E Butt
Darci R Shinko
Claire U Perin
Jones E Ruta
Kadeem W Wieser
David J Iturbide
Munro P Inouye
Ricardo V Royster
Jefferson W Campain
Alejandro F Gaucho
Chavez A Morasca
Darci W Gillian
Sinclair P Stockham
Ricardo K Kusko
Clifford W Amigon
Chavez H Perin
Silvio A Bolognia
Munro W Figeroa
Leon D Caudy
Ricardo L Dilliard
Ashley L Kolmetz
Misaki K Dilliard
Maisha I Figeroa
Jeanfrancois C Rulapaugh
Jeanfrancois Q Butt
Silvio L Amigon
Adams N Doe
David I Kolmetz
Silvio B Tollner
Maisha N Ferencz
James H Stenseth
Darci A Doe
Aditya B Bolognia
Izzy F Inouye
Octavia G Glick
Murillo J Gaucho
Darci I Schemmer
Deepesh U Shinko
Aika M Royster
Murillo U Chui
Misaki A Ferencz
Jeanfrancois V Shinko
Maria K Kolmetz
Salvatore G Ferencz
Jennifer I Amigon
Claire C Waycott
Sinclair F Schemmer
Misaki E Bolognia
Octavia G Amigon
Claire D Inouye
IdCountryDate
1000Italy2024-06-10
1001Argentina2024-05-22
1002Argentina2024-05-24
1003Germany2024-05-15
1004Japan2024-05-27
1005Argentina2024-06-12
1006Brazil2024-05-26
1007Argentina2024-06-07
1008Russia2024-06-02
1009Japan2024-06-13
1010Spain2024-05-18
1011Italy2024-05-31
1012Brazil2024-05-25
1013Germany2024-05-25
1014Germany2024-05-23
1015Brazil2024-06-08
1016Japan2024-05-23
1017Argentina2024-06-13
1018Canada2024-05-21
1019United Kingdom2024-05-17
1020India2024-05-27
1021Japan2024-06-01
1022Argentina2024-05-16
1023Brazil2024-05-21
1024Australia2024-05-28
1025Italy2024-05-22
1026Australia2024-06-05
1027India2024-06-01
1028India2024-05-25
1029Russia2024-05-23
1030Australia2024-06-13
1031Italy2024-05-20
1032Russia2024-06-06
1033Australia2024-06-01
1034Argentina2024-05-21
1035Italy2024-06-03
1036Australia2024-05-16
1037India2024-05-30
1038Italy2024-06-07
1039Japan2024-06-08
1040Spain2024-05-20
1041Canada2024-05-16
1042Brazil2024-06-03
1043Canada2024-06-06
1044Brazil2024-06-09
1045Brazil2024-05-19
1046Australia2024-06-01
1047India2024-06-10
1048Italy2024-05-17
1049Spain2024-06-12

On-Demand Data

NameIdCountryDate
Kaitlin G Whobrey1000United Kingdom2024-06-08
Juan V Chui1001Spain2024-06-05
Misaki R Royster1002Italy2024-05-15
Morrow U Glick1003Spain2024-06-07
Clifford P Kolmetz1004Brazil2024-06-06
Jennifer A Ruta1005Spain2024-05-20
Munro J Inouye1006Spain2024-05-31
Isabel H Caldarera1007Russia2024-05-19
Chavez I Figeroa1008Canada2024-05-19
Maisha S Darakjy1009Germany2024-06-09
Sinclair O Campain1010Brazil2024-06-11
Isabel W Darakjy1011Brazil2024-05-18
Murillo B Malet1012India2024-06-09
Juan Z Doe1013Brazil2024-06-01
Izzy O Doe1014Russia2024-06-01
Rodrigues O Venere1015Brazil2024-06-10
Salvatore T Bowley1016Germany2024-05-15
Clifford E Perin1017France2024-05-24
Clifford Y Stenseth1018Brazil2024-05-28
Maria X Perin1019Japan2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley I AmigonGermanyStephen Shaw RENEWAL
Jefferson B PerinRussiaStephen Shaw UNQUALIFIED
Rodrigues E WieserIndiaAnna Fali NEGOTIATION
Izzy I WieserRussiaIvan Magalhaes NEGOTIATION
Aditya X MorascaUnited KingdomIvan Magalhaes UNQUALIFIED
Silvio S OldroydAustraliaAnna Fali PROPOSAL
Mujtaba Q WieserJapanBernardo Dominic RENEWAL
Salvatore P IturbideRussiaAnna Fali PROPOSAL
Deepesh Z NestleIndiaStephen Shaw NEW
Clifford S PaprockiCanadaBernardo Dominic PROPOSAL
Sinclair C PaprockiAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois L PerinIndiaAsiya Javayant UNQUALIFIED
Costa T ChuiBrazilBernardo Dominic NEGOTIATION
Emily P SlusarskiCanadaIoni Bowcher NEGOTIATION
Antonio B BowleyArgentinaElwin Sharvill PROPOSAL
Jones K KuskoSpainAsiya Javayant QUALIFIED
Chavez M RoysterArgentinaAmy Elsner UNQUALIFIED
Leon X ButtBrazilBernardo Dominic NEW
Emily T RutaArgentinaAnna Fali RENEWAL
Jeanfrancois O WaycottJapanIvan Magalhaes UNQUALIFIED
Wickens N AmigonCanadaAnna Fali UNQUALIFIED
Mujtaba D SaylorsIndiaAnna Fali PROPOSAL
Salvatore E DarakjyGermanyAnna Fali QUALIFIED
Aika R AmigonCanadaAmy Elsner NEW
Aika L WieserRussiaBernardo Dominic NEW
Claire X OstroskyGermanyAsiya Javayant NEGOTIATION
Greenwood M BowleyGermanyAmy Elsner PROPOSAL
Nicolas W NestleItalyElwin Sharvill NEW
Juan W WieserFranceAmy Elsner RENEWAL
Sinclair G MaletArgentinaAmy Elsner QUALIFIED
Kaitlin Q FollerUnited KingdomBernardo Dominic UNQUALIFIED
Francesco H OstroskyGermanyOnyama Limba QUALIFIED
Silvio C RutaArgentinaElwin Sharvill UNQUALIFIED
Ivar N OldroydSpainOnyama Limba QUALIFIED
Francesco H BriddickCanadaXuxue Feng QUALIFIED
Faith Q FlosiBrazilStephen Shaw NEGOTIATION
Misaki V MacleadJapanXuxue Feng UNQUALIFIED
Aruna A BriddickItalyElwin Sharvill UNQUALIFIED
Munro A OstroskyCanadaStephen Shaw UNQUALIFIED
Jones F RulapaughBrazilOnyama Limba 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>