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
Silvio P MacleadCanadaOnyama Limba UNQUALIFIED
Smith E RulapaughJapanBernardo Dominic RENEWAL
Octavia I AlbaresRussiaIvan Magalhaes NEW
Stacey N RimUnited KingdomStephen Shaw UNQUALIFIED
Octavia X RutaIndiaAnna Fali UNQUALIFIED
Mujtaba I CampainJapanXuxue Feng NEGOTIATION
Ricardo J FigeroaRussiaAnna Fali QUALIFIED
Salvatore C ShinkoUnited KingdomAmy Elsner RENEWAL
Jefferson T CaldareraJapanXuxue Feng RENEWAL
Misaki J TollnerRussiaAnna Fali RENEWAL
Silvio Z PaprockiJapanAmy Elsner QUALIFIED
Morrow E SlusarskiIndiaIoni Bowcher NEGOTIATION
Greenwood R VenereUnited KingdomAsiya Javayant UNQUALIFIED
Faith J MarrierSpainAmy Elsner UNQUALIFIED
Rodrigues B WieserIndiaStephen Shaw QUALIFIED
Sinclair V GarufiBrazilOnyama Limba NEGOTIATION
Arvin L PerinAustraliaElwin Sharvill UNQUALIFIED
David H StockhamAustraliaAmy Elsner PROPOSAL
Murillo I GlickUnited KingdomElwin Sharvill QUALIFIED
Stacey I BologniaBrazilStephen Shaw NEW
Aika E RimFranceAmy Elsner RENEWAL
Alejandro K RutaRussiaElwin Sharvill NEW
Izzy S KolmetzArgentinaAsiya Javayant NEW
Jennifer A CaldareraGermanyIvan Magalhaes NEW
James T CaudyJapanIoni Bowcher UNQUALIFIED
Salvatore J MaletItalyIvan Magalhaes UNQUALIFIED
Jones Y RulapaughArgentinaIoni Bowcher PROPOSAL
David P SaylorsItalyIoni Bowcher QUALIFIED
Jeanfrancois T DilliardSpainXuxue Feng UNQUALIFIED
Kadeem M FollerCanadaOnyama Limba QUALIFIED
Chavez Q BologniaCanadaStephen Shaw RENEWAL
Nicolas G FollerItalyBernardo Dominic QUALIFIED
Smith C OldroydCanadaIoni Bowcher QUALIFIED
Leon E StockhamItalyElwin Sharvill PROPOSAL
Claire X MorascaSpainIoni Bowcher QUALIFIED
Julie O InouyeCanadaIvan Magalhaes UNQUALIFIED
Kadeem A VocelkaCanadaAmy Elsner NEGOTIATION
Clifford R SergiBrazilAsiya Javayant RENEWAL
Jones F FerenczItalyBernardo Dominic NEGOTIATION
Juan M WhobreyRussiaXuxue Feng QUALIFIED
Jeanfrancois Q MorascaIndiaAsiya Javayant NEGOTIATION
Salvatore T FollerGermanyAmy Elsner PROPOSAL
Salvatore F VocelkaGermanyIoni Bowcher QUALIFIED
Tony Q NestleCanadaXuxue Feng UNQUALIFIED
Aika O SlusarskiJapanBernardo Dominic UNQUALIFIED
Rodrigues C GlickSpainElwin Sharvill UNQUALIFIED
Julie X NestleJapanAsiya Javayant RENEWAL
Maisha W RutaSpainAmy Elsner PROPOSAL
Adams X PerinCanadaIvan Magalhaes QUALIFIED
Octavia K FlosiRussiaAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon K AmigonSpainAmy Elsner UNQUALIFIED
Munro V BologniaBrazilAnna Fali UNQUALIFIED
Juan W FigeroaAustraliaAsiya Javayant NEGOTIATION
Greenwood M ChuiUnited KingdomXuxue Feng UNQUALIFIED
Ashley D GillianUnited KingdomXuxue Feng NEW
Octavia F ChuiArgentinaAsiya Javayant UNQUALIFIED
Francesco R IturbideUnited KingdomStephen Shaw RENEWAL
Costa R FerenczAustraliaOnyama Limba NEGOTIATION
Ivar X FerenczArgentinaOnyama Limba QUALIFIED
Rodrigues C KuskoBrazilAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez S GarufiArgentina2024-08-24King, Christopher A Esq NEW79Ioni Bowcher
1001David R PerinGermany2024-08-28Morlong Associates NEGOTIATION21Anna Fali
1002Smith O MaletAustralia2024-09-18Dorl, James J Esq RENEWAL76Bernardo Dominic
1003Murillo K SlusarskiFrance2024-09-13Chemel, James L Cpa QUALIFIED37Bernardo Dominic
1004Stacey K BologniaJapan2024-09-15Morlong Associates RENEWAL90Anna Fali
1005David H RoysterSpain2024-09-17Rangoni Of Florence RENEWAL45Anna Fali
1006Cody L RimCanada2024-09-13King, Christopher A Esq PROPOSAL53Ivan Magalhaes
1007Munro U StensethJapan2024-09-07Truhlar And Truhlar Attys RENEWAL19Asiya Javayant
1008Octavia K GillianCanada2024-08-26Benton, John B Jr NEW2Amy Elsner
1009Antonio A KolmetzIndia2024-09-03King, Christopher A Esq NEGOTIATION96Anna Fali
1010Arvin J OldroydItaly2024-09-09Feltz Printing Service NEW43Bernardo Dominic
1011Ashley Q FollerJapan2024-09-09Rangoni Of Florence QUALIFIED16Elwin Sharvill
1012Jefferson Q WieserGermany2024-09-08Feltz Printing Service QUALIFIED50Bernardo Dominic
1013Arvin Z MaletRussia2024-09-10Truhlar And Truhlar Attys UNQUALIFIED24Elwin Sharvill
1014Chavez Z GauchoFrance2024-09-16Buckley Miller Wright QUALIFIED39Asiya Javayant
1015Claire E ChuiArgentina2024-09-13Chanay, Jeffrey A Esq NEGOTIATION68Amy Elsner
1016David J FlosiJapan2024-08-28Benton, John B Jr UNQUALIFIED67Ivan Magalhaes
1017Jefferson P OstroskyItaly2024-09-07Morlong Associates PROPOSAL70Anna Fali
1018David X ChuiUnited Kingdom2024-08-22Morlong Associates NEGOTIATION77Amy Elsner
1019Greenwood X BriddickArgentina2024-09-18Chemel, James L Cpa PROPOSAL59Ivan Magalhaes
1020Faith L SlusarskiFrance2024-09-02Feiner Bros NEW91Ioni Bowcher
1021Ricardo O OstroskyIndia2024-09-04Chanay, Jeffrey A Esq NEGOTIATION36Onyama Limba
1022Murillo F MarrierArgentina2024-09-09Chemel, James L Cpa NEGOTIATION43Amy Elsner
1023Sinclair A MorascaIndia2024-08-26Dorl, James J Esq PROPOSAL18Elwin Sharvill
1024Wickens M FigeroaCanada2024-08-26King, Christopher A Esq QUALIFIED55Stephen Shaw
1025Misaki I NestleGermany2024-09-03Commercial Press NEW74Amy Elsner
1026Kaitlin P SlusarskiUnited Kingdom2024-08-26Chanay, Jeffrey A Esq NEW4Asiya Javayant
1027Misaki D OldroydGermany2024-09-15Chanay, Jeffrey A Esq QUALIFIED35Ioni Bowcher
1028Jennifer Q PoquetteFrance2024-09-05Chemel, James L Cpa QUALIFIED82Stephen Shaw
1029Francesco U ButtArgentina2024-09-06Chemel, James L Cpa NEGOTIATION27Asiya Javayant
1030Clifford M DoeSpain2024-08-25Benton, John B Jr NEGOTIATION32Bernardo Dominic
1031Greenwood N BriddickAustralia2024-09-10Chapman, Ross E Esq UNQUALIFIED23Onyama Limba
1032Murillo S ButtCanada2024-09-10Rangoni Of Florence PROPOSAL0Ioni Bowcher
1033Jennifer R StockhamIndia2024-09-09Commercial Press NEW11Stephen Shaw
1034Greenwood B PoquetteJapan2024-08-26Rangoni Of Florence NEGOTIATION12Elwin Sharvill
1035Jeanfrancois R NestleIndia2024-09-11Chemel, James L Cpa UNQUALIFIED52Ioni Bowcher
1036Alejandro I WaycottAustralia2024-09-12Chapman, Ross E Esq QUALIFIED66Amy Elsner
1037Aika A SchemmerSpain2024-08-31Morlong Associates NEGOTIATION97Onyama Limba
1038Cody X PerinUnited Kingdom2024-09-10Rangoni Of Florence NEW38Ivan Magalhaes
1039Maria D MarrierBrazil2024-09-16Printing Dimensions QUALIFIED72Elwin Sharvill
1040Isabel M NickaFrance2024-09-02Feltz Printing Service NEGOTIATION3Xuxue Feng
1041Emily M AlbaresGermany2024-09-15Morlong Associates QUALIFIED25Elwin Sharvill
1042Leon W MaletFrance2024-08-31Benton, John B Jr RENEWAL18Anna Fali
1043James J ShinkoFrance2024-09-10Rousseaux, Michael Esq QUALIFIED71Ivan Magalhaes
1044Clifford M RulapaughAustralia2024-08-21Buckley Miller Wright NEW32Elwin Sharvill
1045Leja B CaudyRussia2024-09-19Chemel, James L Cpa UNQUALIFIED28Bernardo Dominic
1046Adams H WieserSpain2024-09-18Chapman, Ross E Esq UNQUALIFIED26Amy Elsner
1047Salvatore O PerinGermany2024-09-12Dorl, James J Esq RENEWAL11Asiya Javayant
1048Ashley Y ShinkoSpain2024-09-11Feltz Printing Service QUALIFIED76Amy Elsner
1049Kadeem I CaudyGermany2024-09-05Chanay, Jeffrey A Esq NEW41Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Sinclair O StensethItalyBernardo Dominic NEGOTIATION
Octavia U OldroydRussiaXuxue Feng NEGOTIATION
Antonio U DoeJapanXuxue Feng UNQUALIFIED
Morrow T FollerSpainAsiya Javayant NEGOTIATION
Deepesh X StensethIndiaXuxue Feng PROPOSAL
Nicolas U WaycottSpainAmy Elsner RENEWAL
Misaki R SergiIndiaAsiya Javayant UNQUALIFIED
Morrow D PaprockiJapanXuxue Feng PROPOSAL
Jennifer B PerinFranceXuxue Feng RENEWAL
Rodrigues U GauchoArgentinaBernardo Dominic UNQUALIFIED
Costa N AlbaresGermanyOnyama Limba UNQUALIFIED
Stacey R FollerItalyAmy Elsner NEW
James Q OstroskyGermanyAmy Elsner NEGOTIATION
Murillo M MaletBrazilStephen Shaw UNQUALIFIED
Silvio Y DoeGermanyOnyama Limba NEGOTIATION
Cody G FlosiIndiaIvan Magalhaes QUALIFIED
Aika X RulapaughSpainOnyama Limba NEGOTIATION
Octavia K WhobreyFranceOnyama Limba RENEWAL
Clifford Y KuskoUnited KingdomElwin Sharvill PROPOSAL
Antonio H SaylorsCanadaBernardo Dominic NEW
Octavia K GarufiItalyOnyama Limba QUALIFIED
Maria C BriddickItalyElwin Sharvill NEW
Mujtaba I OstroskySpainIoni Bowcher QUALIFIED
Clifford Z AlbaresItalyElwin Sharvill UNQUALIFIED
Johnson Y StockhamRussiaOnyama Limba QUALIFIED
Arvin N AmigonAustraliaXuxue Feng UNQUALIFIED
Chavez E ChuiIndiaStephen Shaw RENEWAL
Sinclair X RutaItalyAnna Fali NEGOTIATION
Greenwood H GillianIndiaAmy Elsner RENEWAL
Aika P GauchoRussiaAnna Fali UNQUALIFIED
Nicolas L ChuiFranceXuxue Feng NEW
Juan C GillianItalyIvan Magalhaes NEGOTIATION
Octavia I DoeAustraliaBernardo Dominic RENEWAL
Jones Q PaprockiBrazilIoni Bowcher NEGOTIATION
Kaitlin O RutaRussiaElwin Sharvill PROPOSAL
Darci J ButtCanadaIvan Magalhaes NEGOTIATION
Wickens Z MaletCanadaXuxue Feng UNQUALIFIED
Arvin N SergiSpainIvan Magalhaes QUALIFIED
Julie N SergiJapanIvan Magalhaes NEGOTIATION
Alejandro K KolmetzArgentinaXuxue Feng QUALIFIED
Aika E DarakjyGermanyIvan Magalhaes RENEWAL
Maisha I GillianRussiaXuxue Feng RENEWAL
Munro H RimJapanOnyama Limba NEGOTIATION
Jennifer H OstroskyAustraliaXuxue Feng RENEWAL
Jeanfrancois Y KuskoAustraliaBernardo Dominic PROPOSAL
Emily X VenereGermanyAsiya Javayant RENEWAL
Tony R OstroskyCanadaIvan Magalhaes NEW
Faith E SlusarskiGermanyAsiya Javayant RENEWAL
Cody A BowleyAustraliaStephen Shaw PROPOSAL
Jeanfrancois F FigeroaBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Jennifer M Poquette
Salvatore T Butt
Aditya M Gaucho
James A Shinko
Chavez Z Shinko
Ashley M Butt
Arvin P Venere
Kadeem C Chui
Salvatore I Tollner
Aika J Gaucho
Aika H Glick
Cody X Glick
Jones F Oldroyd
David L Slusarski
Jennifer U Malet
Ricardo Q Dilliard
Kaitlin M Ruta
Morrow R Inouye
Greenwood B Sergi
Sinclair L Shinko
Jefferson B Butt
Nicolas B Garufi
Octavia J Caldarera
Ricardo C Royster
Leon R Caldarera
Jeanfrancois Y Rim
Ricardo D Sergi
Jefferson C Briddick
James F Tollner
Ashley K Sergi
Francesco G Malet
Leon C Figeroa
Stacey Z Sergi
Greenwood U Vocelka
Aruna A Tollner
Ricardo V Slusarski
Aruna W Waycott
Leja O Shinko
Sinclair K Venere
Greenwood K Inouye
Aruna T Stockham
Adams J Inouye
Jennifer C Nestle
Jeanfrancois L Ostrosky
Aika B Morasca
Juan O Caudy
Maisha W Stockham
Greenwood A Ruta
Antonio J Royster
Maisha D Amigon
IdCountryDate
1000Brazil2024-09-09
1001Japan2024-09-18
1002Spain2024-09-09
1003Germany2024-09-11
1004Italy2024-08-30
1005Spain2024-09-16
1006Argentina2024-09-01
1007Argentina2024-09-02
1008Spain2024-09-18
1009India2024-09-09
1010United Kingdom2024-09-07
1011Japan2024-09-18
1012Spain2024-09-05
1013Italy2024-08-26
1014Japan2024-09-13
1015Argentina2024-08-30
1016Canada2024-09-09
1017Argentina2024-09-17
1018Germany2024-09-04
1019Spain2024-09-13
1020India2024-09-16
1021Spain2024-09-16
1022India2024-08-23
1023France2024-08-30
1024Canada2024-09-18
1025Italy2024-09-18
1026Argentina2024-09-08
1027Canada2024-08-30
1028Italy2024-08-27
1029Australia2024-09-06
1030Japan2024-09-16
1031France2024-08-29
1032Germany2024-09-11
1033Australia2024-08-22
1034Australia2024-09-05
1035Russia2024-09-11
1036Italy2024-09-10
1037France2024-09-08
1038Japan2024-08-24
1039France2024-09-05
1040Japan2024-08-24
1041Argentina2024-09-01
1042Italy2024-09-05
1043Japan2024-09-06
1044Spain2024-08-26
1045United Kingdom2024-08-29
1046Canada2024-09-19
1047Italy2024-08-31
1048Argentina2024-09-05
1049Spain2024-08-21

On-Demand Data

NameIdCountryDate
Aika G Inouye1000United Kingdom2024-08-23
Aruna H Rim1001Russia2024-09-14
Claire L Stenseth1002Brazil2024-09-02
Antonio X Venere1003France2024-09-07
Wickens M Tollner1004Russia2024-09-17
Salvatore M Venere1005Brazil2024-09-17
Kadeem W Flosi1006Argentina2024-09-01
Arvin Z Nicka1007Brazil2024-09-01
Aika X Rulapaugh1008Japan2024-09-17
Antonio N Albares1009Australia2024-08-21
Morrow Y Iturbide1010United Kingdom2024-09-17
Salvatore Z Vocelka1011India2024-08-28
Salvatore A Maclead1012Argentina2024-09-11
Isabel G Tollner1013Canada2024-08-23
Salvatore J Figeroa1014India2024-09-08
Cody C Foller1015Italy2024-09-07
Stacey Q Darakjy1016Russia2024-09-04
Isabel L Campain1017Australia2024-09-09
Jefferson C Poquette1018Russia2024-08-27
Deepesh N Sergi1019Argentina2024-09-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody H TollnerUnited KingdomIoni Bowcher PROPOSAL
Adams U GlickItalyAnna Fali UNQUALIFIED
Sinclair L MarrierCanadaAnna Fali QUALIFIED
Maisha H SergiBrazilAmy Elsner RENEWAL
Silvio D DoeAustraliaElwin Sharvill NEGOTIATION
Clifford I PoquetteAustraliaXuxue Feng RENEWAL
Aika E DarakjyIndiaOnyama Limba QUALIFIED
Julie D FerenczArgentinaBernardo Dominic UNQUALIFIED
Leja K FerenczRussiaAnna Fali RENEWAL
Murillo E DilliardItalyIoni Bowcher NEGOTIATION
David H RulapaughUnited KingdomElwin Sharvill RENEWAL
Francesco N VenereFranceAmy Elsner QUALIFIED
Antonio D PerinCanadaElwin Sharvill RENEWAL
Morrow C InouyeCanadaElwin Sharvill PROPOSAL
Ashley V ShinkoIndiaStephen Shaw PROPOSAL
Salvatore D WaycottGermanyOnyama Limba QUALIFIED
David S TollnerUnited KingdomAmy Elsner NEGOTIATION
Juan F AmigonIndiaIvan Magalhaes UNQUALIFIED
Aditya Q GarufiBrazilOnyama Limba NEW
Nicolas R VocelkaArgentinaXuxue Feng NEW
Mayumi I GauchoSpainAmy Elsner NEW
Emily O RoysterItalyXuxue Feng QUALIFIED
Jefferson E StockhamFranceBernardo Dominic NEW
Murillo M CampainBrazilAsiya Javayant UNQUALIFIED
Mayumi G KuskoItalyAsiya Javayant QUALIFIED
Ashley U WieserItalyXuxue Feng QUALIFIED
Mujtaba Y StensethGermanyAnna Fali QUALIFIED
Cody S CaldareraRussiaXuxue Feng NEW
Arvin X WieserAustraliaAmy Elsner PROPOSAL
Juan U FlosiArgentinaBernardo Dominic RENEWAL
Alejandro M WhobreyJapanIoni Bowcher NEW
Aditya B OstroskySpainBernardo Dominic RENEWAL
Aika M WhobreyBrazilAnna Fali RENEWAL
Octavia U InouyeUnited KingdomIvan Magalhaes QUALIFIED
Claire I NestleItalyIoni Bowcher QUALIFIED
Francesco M NestleBrazilXuxue Feng NEGOTIATION
Tony W OldroydGermanyIvan Magalhaes PROPOSAL
Cody H GarufiArgentinaXuxue Feng UNQUALIFIED
Johnson M MorascaGermanyAmy Elsner NEW
Sinclair A OldroydJapanAnna Fali NEW

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