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
Leon V AmigonGermanyAnna Fali NEGOTIATION
Stacey X KuskoIndiaAnna Fali QUALIFIED
Aruna Z TollnerAustraliaAnna Fali RENEWAL
Costa R GillianBrazilAnna Fali UNQUALIFIED
Ricardo E GarufiRussiaIoni Bowcher UNQUALIFIED
Deepesh V ShinkoIndiaIvan Magalhaes NEGOTIATION
Julie J RutaSpainStephen Shaw NEGOTIATION
Murillo T PoquetteArgentinaElwin Sharvill UNQUALIFIED
James U BowleySpainBernardo Dominic QUALIFIED
Juan D GarufiSpainAsiya Javayant QUALIFIED
Claire N VenereItalyAmy Elsner NEW
Julie Z DoeGermanyOnyama Limba UNQUALIFIED
Silvio D GlickJapanElwin Sharvill NEW
Jones P PoquetteGermanyIoni Bowcher RENEWAL
Deepesh W MaletJapanAsiya Javayant PROPOSAL
Chavez J KolmetzFranceAmy Elsner UNQUALIFIED
Ivar C GillianRussiaAnna Fali NEW
Chavez B FlosiRussiaOnyama Limba UNQUALIFIED
Claire T BologniaAustraliaIoni Bowcher UNQUALIFIED
Octavia T IturbideAustraliaXuxue Feng NEGOTIATION
Maria A RimAustraliaBernardo Dominic PROPOSAL
Alejandro S MacleadItalyAnna Fali QUALIFIED
Aruna Y StockhamFranceAsiya Javayant RENEWAL
Alejandro G AmigonItalyBernardo Dominic PROPOSAL
Aruna E SlusarskiRussiaAsiya Javayant PROPOSAL
Arvin X TollnerGermanyOnyama Limba NEW
Greenwood Z FlosiRussiaAsiya Javayant NEGOTIATION
Darci L FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Aruna J TollnerAustraliaXuxue Feng PROPOSAL
Jennifer J CampainItalyXuxue Feng NEW
Mujtaba V MorascaBrazilStephen Shaw PROPOSAL
Munro L DarakjyIndiaAsiya Javayant NEW
David K DoeItalyAsiya Javayant RENEWAL
Mayumi S RutaArgentinaXuxue Feng NEGOTIATION
Murillo G StockhamGermanyAsiya Javayant RENEWAL
Kadeem X DarakjyAustraliaXuxue Feng QUALIFIED
Claire A NickaIndiaOnyama Limba PROPOSAL
Munro E ButtFranceIoni Bowcher RENEWAL
Jeanfrancois D WhobreyFranceAsiya Javayant NEGOTIATION
Leon C MaletBrazilOnyama Limba UNQUALIFIED
Munro Z RulapaughUnited KingdomElwin Sharvill QUALIFIED
Salvatore K VenereItalyOnyama Limba NEGOTIATION
Maisha L RoysterItalyIvan Magalhaes UNQUALIFIED
Mujtaba A DoeBrazilOnyama Limba PROPOSAL
Maisha T BriddickSpainBernardo Dominic PROPOSAL
Izzy L MarrierBrazilIoni Bowcher PROPOSAL
Wickens N OstroskyUnited KingdomAnna Fali NEGOTIATION
Costa B InouyeSpainElwin Sharvill QUALIFIED
Faith V KolmetzSpainStephen Shaw UNQUALIFIED
Costa V RutaFranceStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ivar U WieserAustraliaOnyama Limba PROPOSAL
Morrow X SaylorsSpainXuxue Feng UNQUALIFIED
Maria A BowleyIndiaAmy Elsner QUALIFIED
Ashley A BowleyIndiaAmy Elsner RENEWAL
Kadeem Z DarakjyCanadaIvan Magalhaes RENEWAL
Stacey V SaylorsArgentinaAmy Elsner NEW
Clifford G SaylorsRussiaAsiya Javayant PROPOSAL
Maisha Q VocelkaGermanyAsiya Javayant UNQUALIFIED
Salvatore C GillianArgentinaAmy Elsner QUALIFIED
Darci L VocelkaIndiaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas R GarufiIndia2024-06-21Printing Dimensions PROPOSAL35Elwin Sharvill
1001Jennifer S IturbideGermany2024-06-14Buckley Miller Wright RENEWAL98Amy Elsner
1002Jennifer X OldroydArgentina2024-05-29Dorl, James J Esq NEW73Elwin Sharvill
1003Salvatore K VenereFrance2024-06-09Chemel, James L Cpa NEGOTIATION11Asiya Javayant
1004Chavez D MaletUnited Kingdom2024-06-19King, Christopher A Esq QUALIFIED11Anna Fali
1005Ricardo C FigeroaUnited Kingdom2024-06-14Buckley Miller Wright NEGOTIATION6Onyama Limba
1006Isabel U InouyeGermany2024-06-05Printing Dimensions NEW75Bernardo Dominic
1007Tony I NickaFrance2024-06-06Printing Dimensions NEW36Anna Fali
1008Mayumi P WaycottFrance2024-06-22Buckley Miller Wright NEGOTIATION1Ioni Bowcher
1009Silvio W NestleRussia2024-05-27Rousseaux, Michael Esq PROPOSAL33Xuxue Feng
1010Chavez B WaycottCanada2024-05-29Rousseaux, Michael Esq QUALIFIED32Onyama Limba
1011Adams K ButtItaly2024-06-14Rousseaux, Michael Esq NEGOTIATION41Bernardo Dominic
1012Francesco S BologniaUnited Kingdom2024-06-05Morlong Associates NEGOTIATION5Bernardo Dominic
1013Maria D MaletCanada2024-05-28Benton, John B Jr UNQUALIFIED14Anna Fali
1014Tony Z RimFrance2024-06-16Truhlar And Truhlar Attys PROPOSAL31Anna Fali
1015Jones V DilliardAustralia2024-06-20Dorl, James J Esq UNQUALIFIED96Anna Fali
1016Mujtaba G SergiItaly2024-06-10Feiner Bros UNQUALIFIED84Bernardo Dominic
1017Ricardo U FerenczFrance2024-05-27King, Christopher A Esq RENEWAL62Anna Fali
1018Deepesh X BowleyIndia2024-06-17Feiner Bros QUALIFIED11Bernardo Dominic
1019Munro J OstroskySpain2024-06-21Feiner Bros NEW93Amy Elsner
1020Jefferson U SaylorsSpain2024-06-12Chanay, Jeffrey A Esq NEW38Asiya Javayant
1021Kaitlin E VenereGermany2024-06-14Feiner Bros RENEWAL20Xuxue Feng
1022Claire P FigeroaSpain2024-06-02Commercial Press NEW85Anna Fali
1023Jefferson D GlickFrance2024-06-19Printing Dimensions PROPOSAL67Ioni Bowcher
1024Morrow L CampainFrance2024-06-12Buckley Miller Wright NEW18Asiya Javayant
1025Nicolas P SergiJapan2024-06-11Truhlar And Truhlar Attys NEGOTIATION27Elwin Sharvill
1026Francesco G WieserFrance2024-06-02Printing Dimensions QUALIFIED72Amy Elsner
1027Isabel D NestleArgentina2024-06-03Buckley Miller Wright NEW45Xuxue Feng
1028Tony I GlickUnited Kingdom2024-06-05Rousseaux, Michael Esq NEW76Asiya Javayant
1029Nicolas T GillianItaly2024-06-20Feltz Printing Service RENEWAL81Bernardo Dominic
1030Maisha N MarrierGermany2024-06-23Printing Dimensions RENEWAL61Stephen Shaw
1031Clifford V FlosiSpain2024-06-15Rangoni Of Florence QUALIFIED92Anna Fali
1032Leon U FigeroaUnited Kingdom2024-06-06Commercial Press RENEWAL41Anna Fali
1033Jefferson L PaprockiArgentina2024-05-30Feiner Bros NEGOTIATION64Amy Elsner
1034Silvio U FigeroaItaly2024-05-28Dorl, James J Esq RENEWAL36Ioni Bowcher
1035Faith F BologniaJapan2024-06-22Printing Dimensions UNQUALIFIED5Ivan Magalhaes
1036Stacey I DarakjyArgentina2024-06-18Commercial Press PROPOSAL69Elwin Sharvill
1037Wickens T SlusarskiSpain2024-06-22Commercial Press PROPOSAL2Xuxue Feng
1038Munro S GarufiFrance2024-06-01King, Christopher A Esq PROPOSAL3Elwin Sharvill
1039Emily D SchemmerSpain2024-06-11Chanay, Jeffrey A Esq UNQUALIFIED82Asiya Javayant
1040Ivar V OldroydCanada2024-06-19Chapman, Ross E Esq NEGOTIATION59Bernardo Dominic
1041Johnson A KolmetzGermany2024-06-15Truhlar And Truhlar Attys PROPOSAL52Ioni Bowcher
1042Adams F BowleyIndia2024-05-28Rangoni Of Florence QUALIFIED92Amy Elsner
1043Mujtaba P RulapaughCanada2024-06-05Rangoni Of Florence NEGOTIATION30Stephen Shaw
1044Misaki U VenereBrazil2024-05-31Chanay, Jeffrey A Esq UNQUALIFIED21Elwin Sharvill
1045Smith H SchemmerGermany2024-05-28Buckley Miller Wright PROPOSAL47Stephen Shaw
1046Faith J RutaBrazil2024-05-27Feltz Printing Service UNQUALIFIED94Stephen Shaw
1047Francesco M RoysterGermany2024-06-04Feltz Printing Service QUALIFIED25Ivan Magalhaes
1048Mujtaba W MorascaFrance2024-06-13Truhlar And Truhlar Attys NEGOTIATION57Asiya Javayant
1049Kaitlin U GillianAustralia2024-06-15Commercial Press PROPOSAL80Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ricardo N StockhamGermanyIoni Bowcher PROPOSAL
Misaki M DarakjyUnited KingdomIoni Bowcher NEW
Tony U BriddickBrazilIoni Bowcher NEGOTIATION
Faith E FigeroaJapanElwin Sharvill UNQUALIFIED
Jefferson F SergiJapanElwin Sharvill QUALIFIED
Cody S SergiJapanBernardo Dominic RENEWAL
Maisha O MorascaAustraliaStephen Shaw UNQUALIFIED
Jennifer K ButtArgentinaXuxue Feng RENEWAL
Johnson N RimFranceStephen Shaw PROPOSAL
Murillo V OldroydSpainBernardo Dominic QUALIFIED
Wickens F NestleAustraliaIvan Magalhaes NEW
Deepesh V MacleadCanadaBernardo Dominic NEGOTIATION
Stacey J FollerCanadaStephen Shaw PROPOSAL
Maria R GarufiIndiaStephen Shaw UNQUALIFIED
Johnson X OldroydGermanyIvan Magalhaes RENEWAL
Jeanfrancois I MorascaIndiaElwin Sharvill PROPOSAL
Ivar E KolmetzItalyOnyama Limba UNQUALIFIED
Ivar V GarufiFranceAnna Fali RENEWAL
Aika M SchemmerCanadaIoni Bowcher UNQUALIFIED
Alejandro A DilliardBrazilXuxue Feng UNQUALIFIED
Antonio C MaletCanadaAmy Elsner RENEWAL
Mayumi W StensethRussiaIoni Bowcher PROPOSAL
Adams I ChuiUnited KingdomIoni Bowcher UNQUALIFIED
Salvatore U RulapaughRussiaAsiya Javayant NEGOTIATION
Leja A RulapaughAustraliaAmy Elsner UNQUALIFIED
Clifford B ChuiUnited KingdomIoni Bowcher QUALIFIED
Claire G IturbideSpainAnna Fali RENEWAL
Aruna E NestleSpainIvan Magalhaes PROPOSAL
Izzy H GarufiSpainElwin Sharvill UNQUALIFIED
Nicolas C VenereCanadaIoni Bowcher NEW
Silvio B DoeArgentinaBernardo Dominic RENEWAL
Morrow Y WieserFranceBernardo Dominic UNQUALIFIED
Costa W OldroydFranceIoni Bowcher PROPOSAL
Adams G WieserCanadaAmy Elsner PROPOSAL
Octavia M GlickUnited KingdomOnyama Limba NEGOTIATION
Munro D MorascaJapanIoni Bowcher UNQUALIFIED
Aditya W StensethCanadaIoni Bowcher UNQUALIFIED
Sinclair Z FollerItalyBernardo Dominic QUALIFIED
Chavez C BriddickArgentinaBernardo Dominic NEGOTIATION
Mujtaba H IturbideAustraliaStephen Shaw RENEWAL
Claire B AlbaresAustraliaOnyama Limba QUALIFIED
Salvatore B MorascaBrazilStephen Shaw QUALIFIED
Alejandro V WaycottIndiaIoni Bowcher UNQUALIFIED
Mujtaba J PoquetteSpainAsiya Javayant RENEWAL
Murillo R FerenczAustraliaIvan Magalhaes RENEWAL
Arvin U GauchoUnited KingdomBernardo Dominic NEGOTIATION
Kadeem M StockhamSpainAnna Fali NEW
Jefferson K MarrierSpainOnyama Limba NEW
Cody T GarufiAustraliaAmy Elsner QUALIFIED
Jeanfrancois F NestleGermanyElwin Sharvill RENEWAL
Frozen Columns
Name
Julie X Inouye
Silvio L Campain
Adams L Morasca
Ricardo U Glick
Izzy H Nicka
Clifford O Wieser
Izzy P Oldroyd
Julie O Albares
Maria R Amigon
Rodrigues R Rim
Sinclair J Briddick
Jones P Foller
Ashley T Bolognia
Faith X Rim
Izzy K Dilliard
Kadeem S Iturbide
Silvio K Briddick
Jones V Marrier
Antonio A Caudy
Alejandro P Nestle
Greenwood B Bolognia
Julie E Sergi
Maria N Sergi
Munro G Slusarski
Stacey R Flosi
Izzy Y Sergi
Smith F Ostrosky
Cody W Foller
Rodrigues A Briddick
Costa D Iturbide
Johnson K Tollner
Aika U Doe
Maria V Doe
Stacey R Rim
Leja U Bowley
Murillo S Flosi
Cody T Ferencz
Cody O Caldarera
Smith S Figeroa
Greenwood Q Iturbide
Aika F Malet
Jones M Figeroa
Claire P Caldarera
Leon Q Dilliard
Mayumi K Poquette
Alejandro H Venere
Smith U Foller
Kaitlin O Waycott
Munro I Venere
Greenwood O Flosi
IdCountryDate
1000Australia2024-06-24
1001France2024-06-22
1002Brazil2024-05-26
1003United Kingdom2024-06-22
1004France2024-06-02
1005Australia2024-06-23
1006Brazil2024-06-24
1007Argentina2024-06-01
1008United Kingdom2024-06-22
1009Japan2024-06-23
1010Russia2024-05-31
1011Japan2024-06-04
1012Spain2024-06-23
1013Germany2024-06-17
1014India2024-06-20
1015United Kingdom2024-05-26
1016Australia2024-06-14
1017Germany2024-06-24
1018India2024-06-19
1019France2024-06-12
1020Brazil2024-06-03
1021France2024-06-04
1022Germany2024-05-30
1023United Kingdom2024-05-27
1024Japan2024-06-04
1025Argentina2024-06-14
1026Argentina2024-06-08
1027France2024-06-23
1028India2024-06-12
1029Italy2024-06-20
1030United Kingdom2024-06-24
1031France2024-06-13
1032Australia2024-05-26
1033Argentina2024-06-11
1034Brazil2024-06-19
1035France2024-06-23
1036United Kingdom2024-06-11
1037Argentina2024-06-19
1038India2024-06-06
1039Russia2024-05-27
1040Spain2024-05-28
1041Australia2024-06-01
1042France2024-06-03
1043United Kingdom2024-06-16
1044Germany2024-06-16
1045Spain2024-06-21
1046Russia2024-06-23
1047United Kingdom2024-05-28
1048France2024-06-01
1049Italy2024-06-11

On-Demand Data

NameIdCountryDate
Emily Y Kolmetz1000Germany2024-06-01
Antonio O Ostrosky1001Italy2024-06-01
Jennifer J Inouye1002Australia2024-05-28
Ricardo A Shinko1003Germany2024-06-14
Johnson W Albares1004India2024-06-02
Clifford V Caudy1005Russia2024-06-15
Maria J Amigon1006United Kingdom2024-05-31
Chavez S Gillian1007India2024-06-03
Rodrigues P Chui1008France2024-06-18
Maisha B Paprocki1009United Kingdom2024-06-16
Tony F Nicka1010Russia2024-06-05
Emily Q Morasca1011Argentina2024-06-01
Leon C Slusarski1012Russia2024-06-07
Jennifer N Gaucho1013Argentina2024-05-26
Costa P Caudy1014Italy2024-06-03
Rodrigues R Figeroa1015France2024-06-13
Greenwood O Ostrosky1016Australia2024-05-28
Juan U Foller1017Germany2024-06-10
Ricardo J Amigon1018France2024-05-28
Nicolas P Perin1019United Kingdom2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood C VocelkaItalyAmy Elsner NEGOTIATION
Murillo B WaycottRussiaIvan Magalhaes PROPOSAL
Francesco Q AlbaresCanadaIoni Bowcher QUALIFIED
Nicolas P GillianGermanyXuxue Feng PROPOSAL
Silvio B BriddickCanadaIoni Bowcher PROPOSAL
Faith X BowleyAustraliaIoni Bowcher PROPOSAL
Leon T MorascaGermanyOnyama Limba NEGOTIATION
Deepesh B GlickArgentinaBernardo Dominic NEGOTIATION
Kaitlin M CaldareraRussiaBernardo Dominic RENEWAL
David T MarrierGermanyIvan Magalhaes UNQUALIFIED
Misaki M KuskoArgentinaOnyama Limba RENEWAL
Chavez Z NestleUnited KingdomAsiya Javayant NEW
Silvio V RoysterJapanStephen Shaw RENEWAL
Sinclair V SchemmerCanadaAsiya Javayant NEW
Leon M MaletJapanBernardo Dominic UNQUALIFIED
Aruna N AmigonBrazilIoni Bowcher NEW
Clifford O ChuiUnited KingdomOnyama Limba PROPOSAL
Isabel R SchemmerIndiaStephen Shaw UNQUALIFIED
James Q ShinkoRussiaAnna Fali PROPOSAL
Chavez P MacleadJapanXuxue Feng NEW
Julie P WaycottGermanyOnyama Limba PROPOSAL
Ashley K MaletBrazilAmy Elsner PROPOSAL
Rodrigues H InouyeSpainElwin Sharvill RENEWAL
Ashley C SlusarskiCanadaStephen Shaw NEGOTIATION
Emily D NestleUnited KingdomAnna Fali PROPOSAL
Izzy J BowleyArgentinaStephen Shaw NEGOTIATION
Tony J SaylorsGermanyAmy Elsner PROPOSAL
Ricardo B InouyeBrazilElwin Sharvill UNQUALIFIED
Jones C NickaUnited KingdomIoni Bowcher UNQUALIFIED
Misaki J FollerSpainStephen Shaw NEGOTIATION
Arvin F BowleyIndiaAnna Fali QUALIFIED
Leon I BologniaIndiaXuxue Feng NEW
Leon L GauchoJapanStephen Shaw UNQUALIFIED
Adams C BowleyRussiaBernardo Dominic PROPOSAL
Murillo T WaycottJapanIvan Magalhaes NEGOTIATION
Aditya I VocelkaItalyAnna Fali UNQUALIFIED
Smith J GlickItalyIoni Bowcher QUALIFIED
Johnson F CampainCanadaIvan Magalhaes QUALIFIED
Claire L WhobreyFranceElwin Sharvill UNQUALIFIED
Rodrigues B BriddickIndiaIoni Bowcher RENEWAL

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