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
Deepesh W KuskoBrazilElwin Sharvill RENEWAL
Costa O AlbaresRussiaXuxue Feng PROPOSAL
Munro Q FerenczIndiaOnyama Limba QUALIFIED
Salvatore H VenereItalyBernardo Dominic NEW
Aruna X RoysterAustraliaAsiya Javayant NEW
Munro A StockhamFranceOnyama Limba QUALIFIED
Kadeem D StensethSpainXuxue Feng QUALIFIED
Deepesh G PoquetteArgentinaXuxue Feng NEW
Maria C ShinkoJapanIoni Bowcher PROPOSAL
Ashley E RulapaughBrazilBernardo Dominic NEW
Jones O RutaCanadaElwin Sharvill NEW
Greenwood M FerenczJapanBernardo Dominic RENEWAL
Stacey A MarrierArgentinaAnna Fali UNQUALIFIED
Francesco D FollerArgentinaXuxue Feng UNQUALIFIED
Mayumi I ShinkoBrazilIoni Bowcher QUALIFIED
Ivar T PerinArgentinaOnyama Limba NEW
Rodrigues L RimJapanAnna Fali UNQUALIFIED
Adams B RoysterJapanAnna Fali NEW
Adams I BologniaBrazilElwin Sharvill UNQUALIFIED
Munro Q CaudyIndiaAsiya Javayant NEW
Salvatore B CaldareraFranceAmy Elsner NEGOTIATION
Leja J FigeroaBrazilElwin Sharvill QUALIFIED
Ashley V PoquetteAustraliaElwin Sharvill QUALIFIED
Smith U BowleyItalyAnna Fali UNQUALIFIED
Mayumi O KuskoIndiaXuxue Feng NEW
Maria V SlusarskiBrazilAsiya Javayant UNQUALIFIED
Juan Q MaletItalyIoni Bowcher NEGOTIATION
Silvio L BologniaAustraliaBernardo Dominic RENEWAL
Misaki B StensethIndiaIvan Magalhaes QUALIFIED
Faith E FigeroaItalyIoni Bowcher QUALIFIED
Deepesh K DarakjyFranceElwin Sharvill UNQUALIFIED
Smith M WhobreyRussiaAnna Fali NEW
Kadeem E MorascaRussiaIvan Magalhaes UNQUALIFIED
Clifford E DoeUnited KingdomOnyama Limba NEGOTIATION
Tony V RulapaughBrazilAnna Fali NEGOTIATION
Adams I PerinItalyOnyama Limba NEW
Antonio I FlosiUnited KingdomAmy Elsner RENEWAL
Ricardo J OstroskyArgentinaElwin Sharvill NEGOTIATION
Smith S StensethSpainStephen Shaw PROPOSAL
Alejandro S SaylorsItalyBernardo Dominic NEW
Kadeem M WhobreyUnited KingdomIvan Magalhaes QUALIFIED
Rodrigues O OstroskyIndiaStephen Shaw QUALIFIED
Faith O GlickIndiaAnna Fali RENEWAL
Greenwood B NestleRussiaStephen Shaw PROPOSAL
Morrow K KolmetzFranceStephen Shaw PROPOSAL
Rodrigues X RulapaughFranceElwin Sharvill NEGOTIATION
Leon O FollerGermanyBernardo Dominic UNQUALIFIED
Emily E AlbaresAustraliaOnyama Limba RENEWAL
Arvin Z BowleyRussiaAmy Elsner NEW
Murillo Q SlusarskiAustraliaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Octavia N InouyeJapanIoni Bowcher RENEWAL
Ivar D StockhamGermanyStephen Shaw NEGOTIATION
Munro Q ChuiCanadaElwin Sharvill UNQUALIFIED
Aditya U WaycottAustraliaAmy Elsner QUALIFIED
Faith G MarrierAustraliaAmy Elsner NEGOTIATION
Cody M BriddickUnited KingdomIvan Magalhaes UNQUALIFIED
Smith M BologniaJapanStephen Shaw RENEWAL
Faith S TollnerCanadaElwin Sharvill NEW
Maisha Y ButtBrazilElwin Sharvill NEGOTIATION
Jones A ButtGermanyXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria Q ButtSpain2024-04-27Benton, John B Jr PROPOSAL49Anna Fali
1001Wickens B AmigonRussia2024-05-07Buckley Miller Wright UNQUALIFIED86Anna Fali
1002Jones D DarakjyGermany2024-05-13Chapman, Ross E Esq UNQUALIFIED33Amy Elsner
1003Ricardo I WieserItaly2024-05-26Morlong Associates UNQUALIFIED23Xuxue Feng
1004Darci K RulapaughJapan2024-05-02King, Christopher A Esq NEW41Anna Fali
1005Claire I WaycottRussia2024-04-27Chapman, Ross E Esq NEW61Stephen Shaw
1006Maria G AlbaresJapan2024-04-27Rangoni Of Florence UNQUALIFIED84Asiya Javayant
1007Cody R MaletFrance2024-05-19Chanay, Jeffrey A Esq UNQUALIFIED74Stephen Shaw
1008Clifford V NickaAustralia2024-05-25Commercial Press PROPOSAL99Amy Elsner
1009Jefferson W SlusarskiUnited Kingdom2024-05-25Morlong Associates PROPOSAL77Onyama Limba
1010Greenwood R KolmetzGermany2024-05-25Chapman, Ross E Esq RENEWAL84Stephen Shaw
1011Arvin M MorascaArgentina2024-05-02Chemel, James L Cpa NEW8Elwin Sharvill
1012Jennifer Y CaldareraFrance2024-05-11Chemel, James L Cpa NEW70Ioni Bowcher
1013Emily U VenereBrazil2024-05-20Chapman, Ross E Esq NEGOTIATION11Bernardo Dominic
1014Octavia O CaudyCanada2024-04-28Rousseaux, Michael Esq QUALIFIED56Asiya Javayant
1015Stacey M PaprockiUnited Kingdom2024-05-19Printing Dimensions NEW24Ivan Magalhaes
1016Morrow I ButtBrazil2024-05-23Morlong Associates PROPOSAL8Amy Elsner
1017Deepesh L KolmetzBrazil2024-04-27Rangoni Of Florence UNQUALIFIED72Stephen Shaw
1018Nicolas Q NestleFrance2024-05-03Truhlar And Truhlar Attys QUALIFIED4Xuxue Feng
1019Jones D WhobreyArgentina2024-05-26Chapman, Ross E Esq NEW85Asiya Javayant
1020Antonio H MaletFrance2024-05-13Chanay, Jeffrey A Esq NEGOTIATION31Xuxue Feng
1021Nicolas X FlosiCanada2024-05-03Truhlar And Truhlar Attys RENEWAL84Stephen Shaw
1022Deepesh P VocelkaArgentina2024-05-26Rousseaux, Michael Esq PROPOSAL38Elwin Sharvill
1023Ivar Q KolmetzFrance2024-05-23Chemel, James L Cpa NEGOTIATION60Ivan Magalhaes
1024Leon L WhobreyUnited Kingdom2024-05-24Feiner Bros RENEWAL16Bernardo Dominic
1025Deepesh L BriddickSpain2024-05-23Morlong Associates RENEWAL32Bernardo Dominic
1026Ashley F BologniaGermany2024-05-10Printing Dimensions QUALIFIED72Ioni Bowcher
1027Misaki T DarakjyBrazil2024-04-30Feiner Bros PROPOSAL36Elwin Sharvill
1028Costa L PoquetteBrazil2024-05-08Buckley Miller Wright NEW91Anna Fali
1029Munro E DarakjyIndia2024-05-25King, Christopher A Esq UNQUALIFIED64Anna Fali
1030Chavez B DarakjyIndia2024-05-25Printing Dimensions NEW84Anna Fali
1031James R RutaFrance2024-05-23Buckley Miller Wright RENEWAL89Elwin Sharvill
1032Darci E BowleyAustralia2024-05-17Morlong Associates RENEWAL41Stephen Shaw
1033Jeanfrancois O VenereIndia2024-05-13Rangoni Of Florence RENEWAL89Bernardo Dominic
1034Aika O AmigonAustralia2024-05-06Chemel, James L Cpa UNQUALIFIED66Ivan Magalhaes
1035Cody K RutaFrance2024-05-24Truhlar And Truhlar Attys RENEWAL90Amy Elsner
1036Costa B WaycottIndia2024-05-12Feltz Printing Service QUALIFIED80Xuxue Feng
1037Aruna I NestleArgentina2024-05-26Rangoni Of Florence RENEWAL19Xuxue Feng
1038Jeanfrancois H BowleyArgentina2024-05-18Rangoni Of Florence NEGOTIATION68Amy Elsner
1039Kadeem T AmigonSpain2024-05-16Truhlar And Truhlar Attys UNQUALIFIED79Ivan Magalhaes
1040Octavia N GarufiFrance2024-05-18Buckley Miller Wright RENEWAL46Onyama Limba
1041Cody Y SaylorsCanada2024-04-28Chemel, James L Cpa NEGOTIATION72Bernardo Dominic
1042Murillo A KolmetzJapan2024-05-07Chemel, James L Cpa UNQUALIFIED30Onyama Limba
1043Maisha Y BriddickFrance2024-04-27Chanay, Jeffrey A Esq QUALIFIED53Onyama Limba
1044Mayumi Q OldroydArgentina2024-05-05King, Christopher A Esq UNQUALIFIED95Ivan Magalhaes
1045Octavia T GarufiAustralia2024-05-16Benton, John B Jr PROPOSAL77Asiya Javayant
1046Morrow R IturbideBrazil2024-05-21Chanay, Jeffrey A Esq QUALIFIED13Bernardo Dominic
1047Cody Y MorascaUnited Kingdom2024-05-10Truhlar And Truhlar Attys UNQUALIFIED53Asiya Javayant
1048Aika V PerinCanada2024-05-05Feltz Printing Service NEW1Onyama Limba
1049Arvin J GillianAustralia2024-05-25Benton, John B Jr UNQUALIFIED61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Murillo R GlickIndiaIoni Bowcher RENEWAL
Maria V NestleCanadaOnyama Limba PROPOSAL
Alejandro D KolmetzIndiaIvan Magalhaes PROPOSAL
Greenwood G CaldareraRussiaAmy Elsner NEW
Aika A OstroskyFranceXuxue Feng NEGOTIATION
Adams L MaletJapanBernardo Dominic UNQUALIFIED
Ricardo X ButtRussiaIoni Bowcher NEW
Ricardo F ButtItalyStephen Shaw QUALIFIED
Izzy Y BriddickBrazilBernardo Dominic NEW
Jefferson F WhobreyJapanAmy Elsner RENEWAL
Nicolas D SaylorsAustraliaOnyama Limba RENEWAL
Jennifer V RoysterBrazilIvan Magalhaes NEGOTIATION
Mayumi Z FollerJapanStephen Shaw RENEWAL
Clifford X ChuiFranceElwin Sharvill NEW
Ivar W InouyeFranceAnna Fali NEW
Munro Y WhobreySpainAsiya Javayant NEGOTIATION
Mujtaba N CaldareraGermanyBernardo Dominic QUALIFIED
Maisha V GarufiGermanyAsiya Javayant PROPOSAL
Francesco Z CaldareraJapanAmy Elsner PROPOSAL
Jennifer P WieserGermanyOnyama Limba PROPOSAL
Rodrigues D RulapaughBrazilBernardo Dominic NEW
Tony Q WaycottFranceIvan Magalhaes RENEWAL
Jeanfrancois Q MaletUnited KingdomOnyama Limba UNQUALIFIED
David F CaudyGermanyIoni Bowcher NEW
Arvin J StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Aruna D GauchoBrazilIvan Magalhaes QUALIFIED
Salvatore V SchemmerIndiaAsiya Javayant QUALIFIED
Wickens M GarufiBrazilXuxue Feng NEW
Kadeem A RimFranceIoni Bowcher RENEWAL
Tony D DoeJapanIoni Bowcher PROPOSAL
Nicolas W ChuiJapanElwin Sharvill NEGOTIATION
Alejandro P FerenczGermanyElwin Sharvill NEGOTIATION
Leja W NickaSpainAnna Fali QUALIFIED
Misaki H DoeSpainStephen Shaw PROPOSAL
Costa Y AmigonSpainBernardo Dominic NEW
Jones B MaletSpainStephen Shaw QUALIFIED
Aruna N PaprockiCanadaOnyama Limba PROPOSAL
Alejandro B DilliardBrazilXuxue Feng NEGOTIATION
Aruna T ChuiArgentinaIvan Magalhaes RENEWAL
Faith C BriddickArgentinaIoni Bowcher QUALIFIED
Mujtaba M BologniaAustraliaAmy Elsner UNQUALIFIED
Aika F GauchoRussiaXuxue Feng QUALIFIED
Antonio U StensethIndiaXuxue Feng QUALIFIED
Rodrigues K PoquetteGermanyOnyama Limba NEW
Izzy Q AmigonIndiaAmy Elsner PROPOSAL
Clifford Y MaletBrazilIoni Bowcher UNQUALIFIED
Mujtaba E SlusarskiAustraliaBernardo Dominic UNQUALIFIED
Kadeem F FerenczBrazilOnyama Limba QUALIFIED
Smith O NickaArgentinaBernardo Dominic NEW
Alejandro P RimFranceOnyama Limba PROPOSAL
Frozen Columns
Name
Leon K Caudy
Jeanfrancois E Royster
Nicolas V Kolmetz
Maisha B Gaucho
Maria T Nestle
Isabel V Rulapaugh
Adams Q Rulapaugh
Johnson X Maclead
Jones W Oldroyd
Johnson T Oldroyd
Octavia S Marrier
Aruna Y Rim
Aika M Kolmetz
Smith A Nestle
Faith R Foller
Aruna H Inouye
James L Nestle
Kaitlin B Ruta
Antonio M Caudy
Ivar B Chui
Izzy J Bowley
Smith I Briddick
Aditya O Gillian
Ricardo R Shinko
Alejandro Y Albares
Darci S Kusko
Octavia J Waycott
Stacey R Wieser
Tony Y Caudy
Octavia O Oldroyd
Alejandro Y Venere
Cody I Caldarera
Jones Z Kusko
Juan W Venere
Silvio N Doe
Johnson V Inouye
Mujtaba C Bowley
Ricardo S Inouye
Salvatore H Malet
Ivar X Caldarera
Julie V Perin
Claire J Gaucho
Jones H Flosi
Jefferson N Wieser
Greenwood F Gaucho
Ricardo D Schemmer
Murillo E Slusarski
Maisha H Oldroyd
Isabel I Kusko
Izzy V Darakjy
IdCountryDate
1000Australia2024-05-18
1001France2024-05-01
1002Australia2024-05-13
1003Germany2024-05-25
1004Argentina2024-05-25
1005Australia2024-05-24
1006Japan2024-05-23
1007Italy2024-05-26
1008Russia2024-05-19
1009Russia2024-05-19
1010United Kingdom2024-04-28
1011Australia2024-05-15
1012United Kingdom2024-05-26
1013Germany2024-05-21
1014India2024-05-21
1015Russia2024-05-15
1016Germany2024-04-27
1017United Kingdom2024-05-26
1018India2024-05-14
1019Italy2024-05-08
1020Germany2024-05-18
1021Germany2024-04-29
1022Italy2024-04-27
1023Russia2024-05-20
1024Argentina2024-05-20
1025India2024-05-24
1026Germany2024-04-30
1027Russia2024-05-17
1028India2024-05-23
1029Russia2024-05-25
1030Germany2024-05-05
1031Japan2024-05-11
1032Canada2024-05-17
1033Argentina2024-05-01
1034Australia2024-05-24
1035Brazil2024-05-26
1036Spain2024-05-19
1037Brazil2024-05-23
1038United Kingdom2024-05-15
1039Spain2024-05-17
1040Brazil2024-05-25
1041India2024-05-25
1042Australia2024-05-04
1043Japan2024-05-20
1044Canada2024-04-28
1045Russia2024-05-06
1046France2024-05-15
1047France2024-05-19
1048United Kingdom2024-05-23
1049United Kingdom2024-05-08

On-Demand Data

NameIdCountryDate
Kaitlin O Shinko1000Argentina2024-05-10
Izzy D Foller1001Spain2024-05-03
Misaki H Wieser1002France2024-05-17
Adams A Oldroyd1003United Kingdom2024-05-26
Darci Z Rulapaugh1004Spain2024-05-26
Maisha O Amigon1005France2024-05-02
Jeanfrancois U Gaucho1006Australia2024-04-28
Jefferson I Ferencz1007Germany2024-05-01
Jones Z Campain1008India2024-04-27
Maisha J Bowley1009Brazil2024-05-05
Munro K Vocelka1010Germany2024-05-19
Clifford F Inouye1011United Kingdom2024-05-06
Leon S Venere1012United Kingdom2024-04-28
Leon M Shinko1013Germany2024-05-02
Faith Q Bolognia1014Spain2024-05-23
Kadeem I Inouye1015Italy2024-05-21
Antonio W Foller1016Canada2024-05-20
Rodrigues L Kusko1017Germany2024-05-07
Mujtaba L Bowley1018Australia2024-05-16
Jennifer L Schemmer1019Spain2024-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel C RutaGermanyXuxue Feng QUALIFIED
Aditya I CaudySpainAsiya Javayant RENEWAL
Mujtaba M FollerSpainAmy Elsner UNQUALIFIED
Mayumi A NestleIndiaAmy Elsner NEGOTIATION
Kadeem R DilliardBrazilStephen Shaw NEW
Nicolas R WieserAustraliaXuxue Feng RENEWAL
Aditya L RoysterJapanStephen Shaw RENEWAL
Jennifer G DoeRussiaXuxue Feng QUALIFIED
Munro S OstroskySpainElwin Sharvill NEGOTIATION
Wickens H KolmetzBrazilOnyama Limba RENEWAL
Kaitlin X SergiJapanAmy Elsner RENEWAL
Cody O FerenczAustraliaIvan Magalhaes PROPOSAL
Rodrigues X FlosiFranceAmy Elsner PROPOSAL
Arvin V FlosiFranceAsiya Javayant NEGOTIATION
Emily V IturbideFranceIvan Magalhaes RENEWAL
Juan K RutaFranceBernardo Dominic PROPOSAL
Stacey O PoquetteArgentinaIvan Magalhaes NEW
Arvin P ChuiBrazilIoni Bowcher UNQUALIFIED
Greenwood U MacleadIndiaXuxue Feng NEW
James S ButtCanadaAmy Elsner PROPOSAL
James E DarakjyCanadaBernardo Dominic UNQUALIFIED
Wickens A VenereFranceElwin Sharvill UNQUALIFIED
Jefferson I SchemmerFranceElwin Sharvill NEGOTIATION
Octavia K CaudyCanadaOnyama Limba QUALIFIED
Alejandro K FerenczSpainStephen Shaw RENEWAL
Leon Q ChuiSpainBernardo Dominic NEGOTIATION
Nicolas Y FerenczItalyXuxue Feng NEW
Aruna U WhobreyJapanIvan Magalhaes NEGOTIATION
Wickens L GarufiArgentinaStephen Shaw QUALIFIED
Nicolas S BowleyCanadaOnyama Limba QUALIFIED
Aika Z IturbideItalyOnyama Limba QUALIFIED
Arvin N KuskoCanadaIvan Magalhaes QUALIFIED
Faith M DarakjyItalyElwin Sharvill UNQUALIFIED
Faith X CampainGermanyElwin Sharvill NEGOTIATION
Kadeem O FerenczCanadaIvan Magalhaes NEGOTIATION
Munro W InouyeGermanyBernardo Dominic PROPOSAL
Antonio E ButtAustraliaOnyama Limba UNQUALIFIED
Morrow K GarufiItalyXuxue Feng UNQUALIFIED
Wickens W ButtUnited KingdomStephen Shaw NEGOTIATION
Darci M SchemmerCanadaIvan Magalhaes 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>