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
Mayumi Y CaudyArgentinaElwin Sharvill UNQUALIFIED
Mayumi F VocelkaUnited KingdomIvan Magalhaes UNQUALIFIED
Salvatore L MaletRussiaAmy Elsner QUALIFIED
Silvio Q CampainItalyAmy Elsner NEW
Deepesh R StensethAustraliaXuxue Feng NEW
Ivar B RulapaughFranceAmy Elsner RENEWAL
Clifford D NickaAustraliaElwin Sharvill NEW
Darci A SergiGermanyIoni Bowcher UNQUALIFIED
Ashley X SaylorsAustraliaStephen Shaw UNQUALIFIED
Sinclair S SergiGermanyAmy Elsner QUALIFIED
Maria J MaletIndiaIvan Magalhaes RENEWAL
Nicolas A MaletAustraliaXuxue Feng RENEWAL
Aditya L AmigonIndiaAnna Fali NEGOTIATION
Ricardo W SlusarskiCanadaElwin Sharvill NEGOTIATION
Smith G WhobreyFranceXuxue Feng NEGOTIATION
Misaki G PerinJapanAmy Elsner RENEWAL
Misaki R OstroskyCanadaAmy Elsner RENEWAL
Sinclair Q GillianArgentinaAnna Fali NEW
Leja I GlickArgentinaStephen Shaw UNQUALIFIED
Faith M AmigonAustraliaBernardo Dominic QUALIFIED
Greenwood N VenereIndiaXuxue Feng UNQUALIFIED
Chavez U PerinItalyAnna Fali QUALIFIED
Maisha C GlickFranceElwin Sharvill PROPOSAL
Kadeem Q ButtArgentinaAnna Fali QUALIFIED
Leja B GlickBrazilIvan Magalhaes RENEWAL
Mujtaba G DoeUnited KingdomBernardo Dominic UNQUALIFIED
James X PoquetteSpainStephen Shaw NEGOTIATION
Munro W DilliardCanadaBernardo Dominic QUALIFIED
Octavia P CaudyGermanyXuxue Feng PROPOSAL
Emily F SlusarskiIndiaIoni Bowcher PROPOSAL
David X CaudySpainAmy Elsner UNQUALIFIED
Morrow F MarrierArgentinaStephen Shaw UNQUALIFIED
Aika X PoquetteUnited KingdomOnyama Limba RENEWAL
Ricardo C AmigonSpainBernardo Dominic QUALIFIED
Octavia T NickaArgentinaAmy Elsner UNQUALIFIED
Octavia P VenereItalyStephen Shaw QUALIFIED
Alejandro T OstroskyBrazilAmy Elsner QUALIFIED
Aika T SergiBrazilAmy Elsner RENEWAL
Rodrigues Z FerenczFranceAmy Elsner RENEWAL
Leon N WieserJapanElwin Sharvill NEGOTIATION
Smith L RulapaughItalyElwin Sharvill UNQUALIFIED
Costa N GlickIndiaStephen Shaw QUALIFIED
Julie Y NickaSpainOnyama Limba NEW
Izzy I PaprockiAustraliaStephen Shaw UNQUALIFIED
Julie Y SergiRussiaIvan Magalhaes NEGOTIATION
Isabel U CaudyJapanAmy Elsner QUALIFIED
Stacey N SlusarskiRussiaOnyama Limba RENEWAL
James O DarakjyBrazilIoni Bowcher UNQUALIFIED
Jennifer B ShinkoArgentinaIoni Bowcher NEW
Clifford I GauchoUnited KingdomAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Alejandro P MacleadRussiaOnyama Limba UNQUALIFIED
Murillo H OldroydArgentinaBernardo Dominic NEW
Octavia S StockhamUnited KingdomElwin Sharvill PROPOSAL
Chavez P DoeBrazilIoni Bowcher RENEWAL
Aditya A GlickArgentinaOnyama Limba PROPOSAL
Cody G NestleUnited KingdomIvan Magalhaes NEW
Clifford K NestleCanadaXuxue Feng RENEWAL
James P BologniaRussiaAnna Fali RENEWAL
Isabel R RulapaughRussiaAnna Fali NEGOTIATION
Aruna U SlusarskiUnited KingdomElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo R OldroydIndia2024-05-27Rousseaux, Michael Esq NEW91Ivan Magalhaes
1001Octavia I FerenczItaly2024-06-19Chapman, Ross E Esq PROPOSAL49Ivan Magalhaes
1002Jeanfrancois X CampainGermany2024-06-07Feltz Printing Service PROPOSAL81Stephen Shaw
1003Arvin R VenereGermany2024-06-13Benton, John B Jr PROPOSAL58Onyama Limba
1004Mujtaba B FerenczItaly2024-05-23Rangoni Of Florence RENEWAL99Xuxue Feng
1005Jennifer J OstroskyCanada2024-06-17Truhlar And Truhlar Attys UNQUALIFIED48Ioni Bowcher
1006Smith X NestleFrance2024-05-24Chapman, Ross E Esq RENEWAL22Amy Elsner
1007Aika O MaletSpain2024-06-03Printing Dimensions RENEWAL89Xuxue Feng
1008Maisha Y VenereGermany2024-06-21Rangoni Of Florence RENEWAL8Ivan Magalhaes
1009Claire O PerinJapan2024-06-18Rangoni Of Florence NEGOTIATION31Onyama Limba
1010Johnson Y NestleIndia2024-06-01Chanay, Jeffrey A Esq NEW62Ivan Magalhaes
1011Aruna E CaldareraArgentina2024-06-07Rousseaux, Michael Esq QUALIFIED92Ivan Magalhaes
1012Smith A BowleyJapan2024-05-26King, Christopher A Esq PROPOSAL69Stephen Shaw
1013Silvio F StensethIndia2024-06-15Rousseaux, Michael Esq UNQUALIFIED50Onyama Limba
1014Jefferson U VocelkaBrazil2024-05-25Chapman, Ross E Esq UNQUALIFIED85Amy Elsner
1015Cody P FollerArgentina2024-06-02Benton, John B Jr RENEWAL66Elwin Sharvill
1016Leja R ButtGermany2024-06-12Chapman, Ross E Esq RENEWAL84Elwin Sharvill
1017Mujtaba U FerenczBrazil2024-05-28Morlong Associates NEGOTIATION86Xuxue Feng
1018Antonio K PoquetteUnited Kingdom2024-05-25Printing Dimensions RENEWAL37Amy Elsner
1019Greenwood T VocelkaJapan2024-06-04Feiner Bros NEGOTIATION56Onyama Limba
1020Octavia I CaudyFrance2024-06-07Chapman, Ross E Esq QUALIFIED36Bernardo Dominic
1021Ricardo U MorascaItaly2024-06-17Printing Dimensions NEW50Stephen Shaw
1022Leon A DilliardSpain2024-05-24Chanay, Jeffrey A Esq PROPOSAL56Ioni Bowcher
1023Antonio X MaletBrazil2024-06-16Rousseaux, Michael Esq RENEWAL44Elwin Sharvill
1024Faith W WhobreyFrance2024-06-05Chanay, Jeffrey A Esq NEW37Stephen Shaw
1025Alejandro Y SchemmerRussia2024-06-03Morlong Associates UNQUALIFIED11Anna Fali
1026Salvatore M FigeroaRussia2024-06-11Rangoni Of Florence QUALIFIED12Ivan Magalhaes
1027Arvin E KolmetzJapan2024-06-20Printing Dimensions NEW19Ivan Magalhaes
1028Aika A OldroydIndia2024-06-01Chanay, Jeffrey A Esq PROPOSAL94Ioni Bowcher
1029Clifford Q WieserFrance2024-06-02Chanay, Jeffrey A Esq PROPOSAL77Bernardo Dominic
1030Tony E StensethCanada2024-05-27Chemel, James L Cpa NEW14Elwin Sharvill
1031Mayumi S FollerFrance2024-05-31Commercial Press UNQUALIFIED0Xuxue Feng
1032David Y RulapaughIndia2024-05-31Benton, John B Jr NEGOTIATION61Anna Fali
1033Octavia L MorascaFrance2024-06-17Rousseaux, Michael Esq QUALIFIED20Xuxue Feng
1034Mujtaba J MaletRussia2024-06-06Chemel, James L Cpa PROPOSAL8Elwin Sharvill
1035Adams K FigeroaCanada2024-06-06Chemel, James L Cpa NEGOTIATION65Amy Elsner
1036Misaki M WaycottFrance2024-06-14Feiner Bros QUALIFIED23Onyama Limba
1037Ivar N ShinkoCanada2024-06-10Buckley Miller Wright PROPOSAL34Onyama Limba
1038Clifford O MorascaAustralia2024-06-11Commercial Press RENEWAL10Ivan Magalhaes
1039Jeanfrancois J StensethAustralia2024-05-23Feltz Printing Service RENEWAL71Elwin Sharvill
1040Aruna U GauchoUnited Kingdom2024-06-04Benton, John B Jr RENEWAL17Ioni Bowcher
1041Octavia R InouyeFrance2024-06-14Feiner Bros RENEWAL9Anna Fali
1042David L OldroydBrazil2024-06-12Dorl, James J Esq UNQUALIFIED72Elwin Sharvill
1043Kaitlin F OldroydAustralia2024-06-21King, Christopher A Esq PROPOSAL62Stephen Shaw
1044Arvin E RoysterArgentina2024-06-06Buckley Miller Wright UNQUALIFIED73Ivan Magalhaes
1045Salvatore Y NickaItaly2024-06-19Feltz Printing Service UNQUALIFIED85Onyama Limba
1046Maria Q MarrierArgentina2024-06-04Rousseaux, Michael Esq UNQUALIFIED8Anna Fali
1047Jennifer W BologniaCanada2024-06-20Feiner Bros QUALIFIED24Bernardo Dominic
1048Francesco T WhobreyItaly2024-05-28Truhlar And Truhlar Attys NEW60Ioni Bowcher
1049Izzy H GarufiBrazil2024-06-21Dorl, James J Esq PROPOSAL25Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Octavia N PaprockiAustraliaAnna Fali UNQUALIFIED
Silvio W RulapaughUnited KingdomElwin Sharvill RENEWAL
Jennifer P SchemmerBrazilAmy Elsner QUALIFIED
Aika N KolmetzFranceIvan Magalhaes UNQUALIFIED
Wickens T BriddickJapanAsiya Javayant NEGOTIATION
Claire E VocelkaGermanyIvan Magalhaes QUALIFIED
Ivar P MaletGermanyStephen Shaw UNQUALIFIED
Ashley M SaylorsJapanAsiya Javayant NEGOTIATION
Mayumi Y BriddickFranceOnyama Limba QUALIFIED
Jones C RimBrazilAmy Elsner UNQUALIFIED
Kaitlin H RoysterUnited KingdomAsiya Javayant RENEWAL
Munro U IturbideFranceBernardo Dominic QUALIFIED
Clifford Y FlosiCanadaBernardo Dominic UNQUALIFIED
Morrow P CaldareraItalyAsiya Javayant UNQUALIFIED
Smith Y FigeroaRussiaAsiya Javayant PROPOSAL
Antonio L GlickUnited KingdomAmy Elsner NEGOTIATION
Ashley J RulapaughRussiaBernardo Dominic PROPOSAL
Rodrigues Z DilliardIndiaOnyama Limba RENEWAL
Chavez R VenereArgentinaXuxue Feng NEW
Silvio Y SchemmerGermanyBernardo Dominic RENEWAL
Faith W AmigonArgentinaBernardo Dominic RENEWAL
Aruna H InouyeFranceBernardo Dominic RENEWAL
Aditya M GarufiIndiaStephen Shaw QUALIFIED
Emily O VocelkaItalyElwin Sharvill UNQUALIFIED
Deepesh X MacleadGermanyAsiya Javayant NEGOTIATION
Smith B PerinCanadaOnyama Limba QUALIFIED
Nicolas P FerenczArgentinaXuxue Feng NEW
Mujtaba T DarakjyFranceStephen Shaw QUALIFIED
Ashley N GillianBrazilIoni Bowcher NEW
Maria M FollerBrazilXuxue Feng RENEWAL
Kaitlin X AmigonFranceElwin Sharvill NEGOTIATION
Jeanfrancois F ChuiJapanIvan Magalhaes NEW
Misaki X DarakjyFranceAsiya Javayant NEGOTIATION
Izzy V MaletAustraliaXuxue Feng UNQUALIFIED
Julie J KuskoBrazilAsiya Javayant PROPOSAL
Ricardo K VocelkaAustraliaStephen Shaw QUALIFIED
Johnson A NickaAustraliaBernardo Dominic QUALIFIED
Julie Z OldroydCanadaAmy Elsner NEGOTIATION
Leja C FollerUnited KingdomOnyama Limba NEGOTIATION
Octavia T DarakjyJapanXuxue Feng NEW
Costa H AmigonSpainAsiya Javayant PROPOSAL
Jefferson K WaycottGermanyIoni Bowcher RENEWAL
Mujtaba X WhobreyIndiaStephen Shaw NEW
Darci M PaprockiArgentinaIoni Bowcher NEW
Greenwood U RutaAustraliaAmy Elsner UNQUALIFIED
Salvatore D RimGermanyIoni Bowcher NEGOTIATION
Antonio Q ShinkoBrazilOnyama Limba RENEWAL
Ricardo Q DoeIndiaStephen Shaw UNQUALIFIED
Rodrigues H OstroskyCanadaIvan Magalhaes PROPOSAL
Maria D GarufiArgentinaStephen Shaw RENEWAL
Frozen Columns
Name
Leon B Malet
Julie T Amigon
James E Slusarski
James L Amigon
Rodrigues Y Perin
Silvio M Poquette
Silvio J Briddick
Julie U Campain
Smith T Glick
Maisha J Rim
Greenwood I Marrier
Antonio S Vocelka
Octavia S Vocelka
Wickens J Nicka
Chavez H Figeroa
Chavez X Waycott
Francesco D Shinko
Chavez S Dilliard
Tony K Iturbide
Francesco F Gillian
Julie L Slusarski
Jones I Campain
Izzy Y Butt
Maria N Flosi
Nicolas N Marrier
Smith X Rulapaugh
James Z Poquette
Deepesh W Sergi
Izzy M Maclead
Salvatore P Doe
Julie N Malet
David J Slusarski
Arvin M Ruta
Maria K Caldarera
Arvin D Malet
Maisha L Figeroa
Arvin P Doe
Rodrigues X Malet
Johnson O Dilliard
Sinclair I Schemmer
Arvin A Malet
Juan G Flosi
Mayumi G Campain
Munro U Kusko
Wickens M Caldarera
Maria Y Oldroyd
Emily O Glick
Jefferson T Gillian
Smith X Poquette
Ivar E Inouye
IdCountryDate
1000Canada2024-06-16
1001Australia2024-06-18
1002India2024-05-25
1003Australia2024-05-28
1004Russia2024-06-21
1005Brazil2024-06-07
1006Argentina2024-06-13
1007Brazil2024-05-29
1008Brazil2024-06-17
1009Australia2024-06-18
1010Germany2024-06-08
1011Australia2024-05-25
1012France2024-05-24
1013Germany2024-06-10
1014Italy2024-05-29
1015Argentina2024-05-28
1016Italy2024-05-29
1017Spain2024-06-21
1018Canada2024-05-23
1019Japan2024-06-09
1020Italy2024-05-29
1021United Kingdom2024-06-16
1022Canada2024-06-18
1023Japan2024-06-03
1024Brazil2024-05-24
1025Argentina2024-06-17
1026Japan2024-06-12
1027France2024-06-19
1028Germany2024-06-02
1029Italy2024-05-31
1030Germany2024-06-03
1031Germany2024-06-10
1032Canada2024-05-24
1033Canada2024-06-17
1034Russia2024-05-26
1035Italy2024-06-01
1036United Kingdom2024-06-09
1037Italy2024-06-17
1038Argentina2024-06-05
1039Germany2024-06-07
1040Brazil2024-06-03
1041Brazil2024-05-31
1042Canada2024-05-23
1043Argentina2024-06-12
1044United Kingdom2024-05-30
1045Russia2024-06-14
1046Japan2024-06-18
1047Argentina2024-06-04
1048Italy2024-06-18
1049India2024-05-31

On-Demand Data

NameIdCountryDate
Stacey M Malet1000Italy2024-06-01
Juan D Shinko1001France2024-06-02
Maisha M Venere1002Brazil2024-06-11
Munro T Amigon1003Spain2024-06-14
Ashley W Venere1004Australia2024-06-18
Emily J Maclead1005Italy2024-06-03
Chavez X Sergi1006Australia2024-05-29
Johnson V Venere1007India2024-05-29
Greenwood N Glick1008Spain2024-06-07
Adams P Rulapaugh1009India2024-05-28
Costa A Figeroa1010India2024-05-28
Morrow J Malet1011Germany2024-05-25
Misaki C Gaucho1012Canada2024-05-31
Leja N Schemmer1013Spain2024-06-03
Kadeem Q Butt1014Canada2024-05-23
Isabel Z Figeroa1015India2024-06-20
Morrow F Morasca1016Australia2024-06-11
Chavez U Vocelka1017United Kingdom2024-06-05
Izzy D Royster1018Australia2024-06-09
Wickens D Nestle1019Argentina2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson Y NestleJapanOnyama Limba UNQUALIFIED
Kadeem V FigeroaJapanStephen Shaw QUALIFIED
David U ChuiItalyElwin Sharvill RENEWAL
Stacey B MacleadJapanOnyama Limba RENEWAL
Leon Y GillianItalyAmy Elsner NEGOTIATION
Kaitlin H MaletArgentinaAsiya Javayant NEW
Claire C WhobreyRussiaAnna Fali PROPOSAL
Juan K MaletIndiaXuxue Feng RENEWAL
Aruna U BriddickSpainAnna Fali NEW
James X MaletSpainXuxue Feng QUALIFIED
Aruna P RutaAustraliaAmy Elsner NEW
Murillo Z SchemmerItalyElwin Sharvill PROPOSAL
Francesco A StensethCanadaElwin Sharvill NEW
Deepesh N CaldareraSpainStephen Shaw QUALIFIED
Mayumi F DilliardFranceAsiya Javayant QUALIFIED
Greenwood X DarakjyArgentinaAsiya Javayant RENEWAL
Clifford Y KolmetzIndiaAnna Fali RENEWAL
Faith O PaprockiIndiaIvan Magalhaes NEGOTIATION
Sinclair R IturbideFranceStephen Shaw NEW
Aruna J PerinRussiaAmy Elsner RENEWAL
Jefferson O MorascaArgentinaIvan Magalhaes PROPOSAL
Aika F KuskoItalyAsiya Javayant NEGOTIATION
Francesco D NestleArgentinaIoni Bowcher UNQUALIFIED
Jefferson Z CampainBrazilXuxue Feng NEW
Julie U CaldareraRussiaElwin Sharvill PROPOSAL
Deepesh H MacleadSpainStephen Shaw PROPOSAL
Claire Y RutaItalyStephen Shaw NEW
Morrow H MacleadFranceAsiya Javayant UNQUALIFIED
Cody T NickaArgentinaAnna Fali UNQUALIFIED
Sinclair B BriddickAustraliaIvan Magalhaes RENEWAL
Izzy S FollerItalyBernardo Dominic RENEWAL
Cody A DoeJapanBernardo Dominic NEW
James E AmigonBrazilOnyama Limba NEGOTIATION
Misaki X CaudyJapanStephen Shaw NEGOTIATION
Juan T OldroydAustraliaOnyama Limba QUALIFIED
Wickens F NestleArgentinaAsiya Javayant NEW
Aruna F FerenczArgentinaXuxue Feng NEGOTIATION
Izzy P TollnerAustraliaAmy Elsner PROPOSAL
Silvio F CaldareraCanadaIvan Magalhaes QUALIFIED
Cody V BowleyRussiaAmy Elsner PROPOSAL

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