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
Greenwood K DoeCanadaStephen Shaw PROPOSAL
Mayumi A StockhamSpainAsiya Javayant NEGOTIATION
Wickens I RoysterJapanOnyama Limba RENEWAL
Arvin O CampainArgentinaAnna Fali QUALIFIED
Costa I MorascaUnited KingdomAnna Fali RENEWAL
Maria B DilliardIndiaAsiya Javayant QUALIFIED
Mayumi R BriddickFranceIvan Magalhaes UNQUALIFIED
Johnson U StensethItalyIvan Magalhaes UNQUALIFIED
Cody I InouyeFranceBernardo Dominic PROPOSAL
Rodrigues Z WaycottAustraliaAmy Elsner UNQUALIFIED
Arvin I NickaItalyAmy Elsner RENEWAL
Smith W GlickJapanElwin Sharvill RENEWAL
Costa Q VenereJapanElwin Sharvill PROPOSAL
Jeanfrancois Y PaprockiIndiaIoni Bowcher RENEWAL
Julie B RutaArgentinaXuxue Feng QUALIFIED
Isabel F StockhamRussiaStephen Shaw NEGOTIATION
Darci H StensethAustraliaOnyama Limba NEW
Murillo U VenereRussiaOnyama Limba QUALIFIED
Jones J PoquetteJapanAmy Elsner NEW
Jeanfrancois R PoquetteAustraliaAmy Elsner RENEWAL
Misaki E WaycottIndiaAsiya Javayant NEW
Salvatore P MaletUnited KingdomOnyama Limba NEGOTIATION
Maisha H GillianSpainAmy Elsner PROPOSAL
Rodrigues N FlosiAustraliaIoni Bowcher RENEWAL
Salvatore D CampainGermanyElwin Sharvill RENEWAL
Jeanfrancois R ChuiArgentinaElwin Sharvill PROPOSAL
Silvio M PaprockiCanadaElwin Sharvill NEW
Wickens E FollerUnited KingdomElwin Sharvill PROPOSAL
Salvatore G AlbaresArgentinaAmy Elsner PROPOSAL
Aika S SchemmerJapanElwin Sharvill QUALIFIED
Smith J GillianRussiaAmy Elsner PROPOSAL
Kadeem O ShinkoArgentinaXuxue Feng NEGOTIATION
Sinclair E RoysterArgentinaIvan Magalhaes QUALIFIED
Chavez Z MarrierArgentinaAnna Fali NEGOTIATION
Isabel W VenereJapanAmy Elsner PROPOSAL
Aditya G MarrierCanadaAmy Elsner NEW
Aruna T WhobreyBrazilIvan Magalhaes UNQUALIFIED
Leon U MarrierCanadaAmy Elsner NEGOTIATION
Leon K MarrierAustraliaIoni Bowcher RENEWAL
Mujtaba K RutaGermanyIvan Magalhaes QUALIFIED
Jennifer Z PoquetteFranceIvan Magalhaes QUALIFIED
Chavez V PoquetteUnited KingdomIvan Magalhaes NEW
James B KuskoArgentinaIoni Bowcher RENEWAL
Octavia Y DarakjyAustraliaAnna Fali QUALIFIED
Costa H MaletAustraliaAmy Elsner UNQUALIFIED
Deepesh C KuskoJapanIoni Bowcher PROPOSAL
Smith M MaletBrazilAnna Fali NEW
Maisha C PoquetteUnited KingdomXuxue Feng NEGOTIATION
Wickens R FigeroaUnited KingdomIvan Magalhaes NEW
Mayumi B FigeroaGermanyIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kadeem M RimSpainBernardo Dominic UNQUALIFIED
Leja S GlickGermanyAsiya Javayant UNQUALIFIED
Leon X ButtJapanStephen Shaw QUALIFIED
Kaitlin N InouyeCanadaIoni Bowcher NEW
Munro L NestleIndiaBernardo Dominic QUALIFIED
Mayumi I PaprockiItalyAmy Elsner UNQUALIFIED
Izzy Y ChuiCanadaBernardo Dominic QUALIFIED
Ashley R MaletAustraliaOnyama Limba NEGOTIATION
Murillo G FlosiGermanyOnyama Limba NEW
Adams S AlbaresArgentinaBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois U StensethArgentina2025-04-21Morlong Associates NEW43Stephen Shaw
1001Ricardo G ButtArgentina2025-04-17Buckley Miller Wright PROPOSAL97Amy Elsner
1002Ashley J DoeAustralia2025-04-07Rangoni Of Florence PROPOSAL75Asiya Javayant
1003Leja R OldroydArgentina2025-04-04Truhlar And Truhlar Attys PROPOSAL0Elwin Sharvill
1004Chavez Q WhobreyGermany2025-04-19Truhlar And Truhlar Attys NEW47Xuxue Feng
1005Leja S GarufiJapan2025-04-22Rousseaux, Michael Esq NEGOTIATION64Anna Fali
1006Greenwood P GillianIndia2025-04-27Chapman, Ross E Esq RENEWAL54Elwin Sharvill
1007Munro T StockhamJapan2025-04-16Chemel, James L Cpa NEGOTIATION47Asiya Javayant
1008Mujtaba W MaletUnited Kingdom2025-04-02Chemel, James L Cpa RENEWAL96Ivan Magalhaes
1009Murillo A OldroydBrazil2025-04-15Truhlar And Truhlar Attys NEGOTIATION65Anna Fali
1010Kadeem L ChuiRussia2025-04-22Chapman, Ross E Esq QUALIFIED6Ivan Magalhaes
1011Silvio F RulapaughIndia2025-04-28King, Christopher A Esq NEW5Elwin Sharvill
1012Octavia I ChuiBrazil2025-04-06Rangoni Of Florence PROPOSAL45Ivan Magalhaes
1013Costa K OldroydAustralia2025-04-08Feiner Bros NEGOTIATION11Ivan Magalhaes
1014Maria T DarakjyArgentina2025-04-16Chapman, Ross E Esq RENEWAL87Asiya Javayant
1015Isabel X MaletGermany2025-04-10Benton, John B Jr RENEWAL66Anna Fali
1016Kaitlin V BologniaIndia2025-04-17Printing Dimensions NEW98Anna Fali
1017Aika T FigeroaCanada2025-04-07Benton, John B Jr QUALIFIED99Bernardo Dominic
1018Rodrigues W BologniaCanada2025-04-17Commercial Press NEGOTIATION68Xuxue Feng
1019Rodrigues N FerenczArgentina2025-04-23Chemel, James L Cpa NEGOTIATION54Asiya Javayant
1020Arvin T VenereBrazil2025-04-01Truhlar And Truhlar Attys QUALIFIED6Asiya Javayant
1021Aditya F KolmetzUnited Kingdom2025-04-03Chemel, James L Cpa NEW64Onyama Limba
1022David U MacleadItaly2025-04-13Chanay, Jeffrey A Esq NEW90Asiya Javayant
1023David W MarrierBrazil2025-04-04Dorl, James J Esq UNQUALIFIED23Stephen Shaw
1024Leon U FollerItaly2025-04-08Morlong Associates RENEWAL49Elwin Sharvill
1025Kaitlin Q CampainGermany2025-04-17Printing Dimensions UNQUALIFIED56Elwin Sharvill
1026Darci D FerenczSpain2025-04-16Feltz Printing Service NEW74Elwin Sharvill
1027Octavia Z DilliardIndia2025-04-05Chapman, Ross E Esq RENEWAL64Xuxue Feng
1028David M GauchoGermany2025-04-05Feltz Printing Service NEW67Asiya Javayant
1029Misaki N StensethIndia2025-04-13Printing Dimensions PROPOSAL25Elwin Sharvill
1030Maisha B GlickFrance2025-04-01King, Christopher A Esq NEGOTIATION80Xuxue Feng
1031Juan Z BologniaJapan2025-04-28Chapman, Ross E Esq PROPOSAL65Ivan Magalhaes
1032Johnson H PaprockiRussia2025-04-20Rousseaux, Michael Esq PROPOSAL27Elwin Sharvill
1033Ashley P RimAustralia2025-04-03Feiner Bros NEGOTIATION21Xuxue Feng
1034Costa M RutaFrance2025-04-22Buckley Miller Wright UNQUALIFIED40Xuxue Feng
1035Aika Y BriddickUnited Kingdom2025-04-05Chapman, Ross E Esq RENEWAL50Ivan Magalhaes
1036Juan V DoeRussia2025-04-10King, Christopher A Esq PROPOSAL32Onyama Limba
1037Maisha S SchemmerSpain2025-04-25Rangoni Of Florence QUALIFIED81Elwin Sharvill
1038Morrow L AlbaresUnited Kingdom2025-04-11Morlong Associates PROPOSAL25Xuxue Feng
1039Costa H DilliardGermany2025-04-01Rousseaux, Michael Esq RENEWAL67Bernardo Dominic
1040Wickens Y RimIndia2025-04-25Commercial Press UNQUALIFIED64Amy Elsner
1041Greenwood G PaprockiAustralia2025-04-27Rangoni Of Florence NEGOTIATION90Ioni Bowcher
1042Alejandro J CaudyGermany2025-04-27Commercial Press QUALIFIED46Xuxue Feng
1043Ashley N IturbideRussia2025-04-14Dorl, James J Esq NEGOTIATION18Ivan Magalhaes
1044Claire T MarrierAustralia2025-04-15Printing Dimensions PROPOSAL1Amy Elsner
1045Sinclair J FollerRussia2025-04-19Morlong Associates RENEWAL38Ioni Bowcher
1046Claire R RutaUnited Kingdom2025-04-23Dorl, James J Esq QUALIFIED20Ioni Bowcher
1047Maisha U MacleadFrance2025-03-31Morlong Associates NEGOTIATION26Stephen Shaw
1048Tony A VenereAustralia2025-04-12Benton, John B Jr RENEWAL13Ioni Bowcher
1049Wickens H StensethFrance2025-04-21Feiner Bros QUALIFIED4Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Ivar D FollerIndiaIvan Magalhaes PROPOSAL
Julie D RimIndiaIvan Magalhaes QUALIFIED
Leja P NickaUnited KingdomAmy Elsner QUALIFIED
Antonio H GillianSpainBernardo Dominic PROPOSAL
Greenwood E ButtItalyElwin Sharvill RENEWAL
Julie K NestleUnited KingdomOnyama Limba QUALIFIED
Leon Y DilliardUnited KingdomAnna Fali QUALIFIED
Jennifer Q InouyeRussiaXuxue Feng NEW
Kaitlin L SchemmerJapanOnyama Limba RENEWAL
James M MaletBrazilXuxue Feng NEW
Francesco U ChuiUnited KingdomAnna Fali NEGOTIATION
Salvatore S IturbideFranceAnna Fali RENEWAL
Izzy Z CaudyUnited KingdomIvan Magalhaes PROPOSAL
Antonio Y OstroskyGermanyAsiya Javayant UNQUALIFIED
James I PoquetteCanadaXuxue Feng PROPOSAL
Morrow L BriddickItalyElwin Sharvill PROPOSAL
Clifford R GillianBrazilBernardo Dominic UNQUALIFIED
Tony D InouyeCanadaAsiya Javayant PROPOSAL
Deepesh P ChuiCanadaElwin Sharvill RENEWAL
Arvin D SergiItalyBernardo Dominic QUALIFIED
Murillo I MorascaCanadaIoni Bowcher QUALIFIED
Greenwood H ChuiBrazilAnna Fali NEW
Deepesh E BriddickItalyOnyama Limba NEW
Ricardo Z PaprockiRussiaAmy Elsner UNQUALIFIED
Juan J PoquetteCanadaOnyama Limba NEGOTIATION
Wickens X RutaAustraliaIvan Magalhaes RENEWAL
Faith L VocelkaGermanyIvan Magalhaes NEGOTIATION
Jefferson P KuskoBrazilAmy Elsner NEGOTIATION
Silvio E KolmetzCanadaElwin Sharvill PROPOSAL
Jeanfrancois B PoquetteFranceStephen Shaw NEGOTIATION
Leon Y KuskoUnited KingdomAsiya Javayant PROPOSAL
Julie Z BriddickJapanElwin Sharvill NEGOTIATION
James T WhobreyAustraliaBernardo Dominic RENEWAL
Juan L FlosiIndiaAmy Elsner NEGOTIATION
Maisha I WhobreyArgentinaStephen Shaw NEGOTIATION
Morrow G NestleFranceAmy Elsner QUALIFIED
Deepesh T OldroydGermanyIoni Bowcher QUALIFIED
Jeanfrancois E FigeroaUnited KingdomXuxue Feng NEW
Johnson Y RutaUnited KingdomIoni Bowcher NEW
Mayumi W SaylorsBrazilXuxue Feng NEGOTIATION
James Q OstroskyBrazilBernardo Dominic RENEWAL
David N PoquetteFranceAmy Elsner RENEWAL
Kadeem K PaprockiArgentinaElwin Sharvill UNQUALIFIED
David N GlickAustraliaAsiya Javayant QUALIFIED
Darci N KolmetzItalyAnna Fali NEW
Jeanfrancois I RutaUnited KingdomElwin Sharvill NEW
Kadeem J GarufiIndiaAsiya Javayant QUALIFIED
Smith A InouyeUnited KingdomXuxue Feng PROPOSAL
Salvatore L VenereBrazilIoni Bowcher PROPOSAL
Izzy V AlbaresIndiaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Alejandro H Oldroyd
Jefferson X Schemmer
Julie B Iturbide
Ashley P Garufi
Leon B Flosi
Cody K Shinko
Faith R Gaucho
Salvatore V Sergi
Kadeem V Chui
Misaki X Gillian
Rodrigues O Oldroyd
Arvin G Perin
Kadeem T Amigon
Adams Q Dilliard
Greenwood Q Amigon
Greenwood K Venere
Murillo P Poquette
Aika X Kusko
Claire B Royster
Costa A Amigon
Octavia G Flosi
Rodrigues V Nicka
Maisha H Briddick
Ivar I Gillian
Johnson P Perin
Johnson I Venere
Ivar E Garufi
Leon G Tollner
Jeanfrancois K Bolognia
Francesco Y Briddick
Ricardo V Slusarski
James F Nicka
James S Rulapaugh
Mujtaba P Nicka
Leja K Kolmetz
Costa W Iturbide
Juan H Nestle
Morrow T Briddick
Morrow W Venere
Darci E Perin
Ricardo D Gillian
Jefferson F Royster
Alejandro F Foller
Murillo T Whobrey
Maria Z Glick
Smith H Wieser
Stacey Z Whobrey
Ricardo I Stockham
Kaitlin O Stockham
Morrow G Amigon
IdCountryDate
1000Argentina2025-04-07
1001France2025-04-28
1002Australia2025-04-16
1003Argentina2025-04-25
1004France2025-04-12
1005France2025-03-31
1006India2025-04-02
1007Brazil2025-04-24
1008Canada2025-04-17
1009Australia2025-04-03
1010Canada2025-04-22
1011India2025-04-10
1012United Kingdom2025-04-19
1013India2025-04-17
1014Russia2025-04-01
1015Germany2025-04-23
1016Argentina2025-04-18
1017Germany2025-04-08
1018Italy2025-04-27
1019Australia2025-04-07
1020India2025-04-24
1021France2025-04-24
1022India2025-03-31
1023Japan2025-04-26
1024Germany2025-04-06
1025Brazil2025-04-22
1026France2025-04-12
1027Spain2025-04-12
1028Italy2025-04-08
1029Japan2025-04-17
1030Japan2025-04-23
1031Canada2025-04-01
1032Australia2025-04-11
1033France2025-04-24
1034Brazil2025-03-31
1035Canada2025-04-22
1036Canada2025-04-22
1037Russia2025-04-15
1038France2025-04-24
1039Canada2025-04-16
1040Germany2025-04-22
1041Australia2025-04-08
1042Brazil2025-04-05
1043Australia2025-04-01
1044India2025-04-15
1045India2025-04-23
1046Brazil2025-04-28
1047France2025-04-17
1048Russia2025-04-28
1049Australia2025-04-18

On-Demand Data

NameIdCountryDate
Ivar D Ruta1000Canada2025-04-17
Izzy S Ruta1001Australia2025-04-24
Juan K Flosi1002Japan2025-04-09
Mujtaba U Garufi1003Germany2025-04-19
Silvio Y Nicka1004Japan2025-04-14
Jones H Dilliard1005Australia2025-04-27
Clifford B Iturbide1006India2025-04-23
Chavez M Glick1007Russia2025-04-08
Darci J Perin1008Spain2025-04-03
Mujtaba X Waycott1009Russia2025-04-24
Cody Z Oldroyd1010Brazil2025-04-25
Ricardo A Rulapaugh1011Germany2025-04-29
Greenwood V Gaucho1012Italy2025-04-22
Greenwood Q Figeroa1013India2025-04-20
Aika Y Waycott1014Germany2025-04-04
Munro G Paprocki1015Argentina2025-04-08
Antonio T Wieser1016Germany2025-04-14
Isabel A Amigon1017Italy2025-04-01
Ivar P Morasca1018Spain2025-04-16
Aika N Stenseth1019Spain2025-04-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja T VocelkaItalyOnyama Limba PROPOSAL
Jeanfrancois G GauchoItalyAmy Elsner NEGOTIATION
James Y WhobreyArgentinaAsiya Javayant NEGOTIATION
Isabel B KolmetzFranceElwin Sharvill NEGOTIATION
Ricardo S SlusarskiFranceIvan Magalhaes PROPOSAL
Rodrigues Q VocelkaCanadaOnyama Limba QUALIFIED
Adams Y SaylorsIndiaAnna Fali NEW
Leja V StockhamSpainIoni Bowcher PROPOSAL
Kaitlin N FlosiIndiaAmy Elsner QUALIFIED
Juan H GarufiSpainIvan Magalhaes RENEWAL
Johnson C ShinkoSpainBernardo Dominic NEW
Darci E FollerItalyIoni Bowcher QUALIFIED
Cody S OstroskyArgentinaStephen Shaw QUALIFIED
Octavia F IturbideItalyIvan Magalhaes RENEWAL
Cody B PoquetteItalyAmy Elsner NEW
Aditya E SergiJapanStephen Shaw QUALIFIED
Nicolas Q PerinGermanyBernardo Dominic RENEWAL
Maria X MarrierArgentinaElwin Sharvill QUALIFIED
Aditya P MaletFranceOnyama Limba NEGOTIATION
Jones Y TollnerArgentinaBernardo Dominic UNQUALIFIED
Faith E OstroskyUnited KingdomAnna Fali QUALIFIED
Faith Z BologniaArgentinaXuxue Feng UNQUALIFIED
Jeanfrancois O MaletIndiaAnna Fali QUALIFIED
Aruna U StensethItalyBernardo Dominic PROPOSAL
Isabel C IturbideJapanStephen Shaw UNQUALIFIED
Juan Y MarrierFranceIoni Bowcher NEGOTIATION
Greenwood F GarufiBrazilIvan Magalhaes PROPOSAL
Kadeem B RoysterGermanyElwin Sharvill UNQUALIFIED
Munro N FollerArgentinaXuxue Feng NEW
Jennifer Y NestleSpainStephen Shaw UNQUALIFIED
Chavez A CaudyRussiaIvan Magalhaes NEW
Misaki P IturbideGermanyStephen Shaw PROPOSAL
Murillo M FigeroaBrazilIvan Magalhaes QUALIFIED
Chavez Q DoeUnited KingdomIoni Bowcher NEGOTIATION
Wickens V BologniaBrazilOnyama Limba NEW
Aika U NestleJapanAsiya Javayant NEGOTIATION
Morrow V KuskoArgentinaXuxue Feng NEGOTIATION
Maisha D KuskoItalyAnna Fali QUALIFIED
Ricardo L StockhamRussiaIvan Magalhaes NEW
James R ShinkoAustraliaXuxue Feng UNQUALIFIED

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