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
Darci O TollnerFranceElwin Sharvill PROPOSAL
Faith E TollnerGermanyAmy Elsner UNQUALIFIED
Leon S FerenczIndiaOnyama Limba RENEWAL
Smith O WaycottUnited KingdomIoni Bowcher QUALIFIED
Jefferson K GarufiSpainXuxue Feng RENEWAL
Jeanfrancois A DilliardRussiaAnna Fali NEGOTIATION
Ivar A PerinSpainIvan Magalhaes UNQUALIFIED
Izzy F OstroskyFranceStephen Shaw PROPOSAL
Aika P PoquetteItalyAsiya Javayant NEW
Kadeem O FollerAustraliaXuxue Feng QUALIFIED
Claire W ShinkoGermanyIvan Magalhaes NEW
Clifford I DarakjyItalyIoni Bowcher NEW
Jeanfrancois F GauchoUnited KingdomIvan Magalhaes NEW
Jones T MorascaCanadaXuxue Feng NEGOTIATION
Julie W OldroydRussiaAsiya Javayant NEW
Johnson K KolmetzAustraliaBernardo Dominic NEGOTIATION
Francesco N FlosiFranceXuxue Feng NEGOTIATION
James U PaprockiUnited KingdomAsiya Javayant UNQUALIFIED
Mujtaba Y InouyeFranceElwin Sharvill RENEWAL
David T FerenczSpainAsiya Javayant RENEWAL
James Q MaletGermanyOnyama Limba PROPOSAL
Jeanfrancois T ShinkoAustraliaElwin Sharvill UNQUALIFIED
Smith Y KolmetzItalyBernardo Dominic PROPOSAL
Izzy P RimRussiaElwin Sharvill NEGOTIATION
Tony I StensethRussiaAmy Elsner UNQUALIFIED
Jones N MarrierIndiaIvan Magalhaes QUALIFIED
David N KuskoBrazilOnyama Limba UNQUALIFIED
Greenwood I InouyeSpainOnyama Limba UNQUALIFIED
Stacey D CampainItalyAnna Fali NEGOTIATION
Stacey B NickaArgentinaStephen Shaw UNQUALIFIED
Jones M BriddickGermanyBernardo Dominic NEGOTIATION
Julie K CampainAustraliaAsiya Javayant UNQUALIFIED
Rodrigues Q NickaArgentinaAmy Elsner NEGOTIATION
Darci R IturbideGermanyStephen Shaw QUALIFIED
Johnson D RoysterCanadaIoni Bowcher QUALIFIED
Chavez G OstroskyCanadaBernardo Dominic UNQUALIFIED
Aditya S CaldareraCanadaStephen Shaw UNQUALIFIED
Juan X AmigonFranceXuxue Feng RENEWAL
Mayumi U SchemmerBrazilAmy Elsner NEW
Leon D RoysterRussiaIoni Bowcher NEGOTIATION
Francesco T PerinItalyXuxue Feng NEGOTIATION
Aditya Y NickaAustraliaIoni Bowcher QUALIFIED
Tony P CampainItalyIvan Magalhaes NEW
Sinclair X PaprockiCanadaAmy Elsner PROPOSAL
Rodrigues M ChuiJapanIoni Bowcher PROPOSAL
Francesco U PerinCanadaIoni Bowcher NEGOTIATION
Jeanfrancois P DilliardFranceElwin Sharvill RENEWAL
Stacey U MorascaGermanyIoni Bowcher UNQUALIFIED
Cody C GauchoItalyBernardo Dominic QUALIFIED
Ashley D OldroydUnited KingdomIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Wickens D MaletArgentinaAsiya Javayant NEW
Octavia U PoquetteJapanIoni Bowcher PROPOSAL
Arvin R BowleyBrazilAnna Fali PROPOSAL
Sinclair Z MacleadCanadaXuxue Feng NEW
Tony D BriddickBrazilIoni Bowcher RENEWAL
Faith U SchemmerJapanElwin Sharvill QUALIFIED
Antonio R TollnerAustraliaAnna Fali UNQUALIFIED
James Z BologniaFranceAsiya Javayant QUALIFIED
Ricardo E MaletUnited KingdomAnna Fali RENEWAL
Nicolas G FigeroaRussiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja N WaycottUnited Kingdom2024-08-30Morlong Associates NEW65Ivan Magalhaes
1001Francesco H KolmetzUnited Kingdom2024-09-21King, Christopher A Esq QUALIFIED24Asiya Javayant
1002Smith X SaylorsJapan2024-09-16Dorl, James J Esq PROPOSAL45Elwin Sharvill
1003Juan H DoeArgentina2024-09-05Rousseaux, Michael Esq RENEWAL76Bernardo Dominic
1004Isabel A CampainJapan2024-09-16Feltz Printing Service NEGOTIATION82Anna Fali
1005Rodrigues W RimUnited Kingdom2024-09-14Dorl, James J Esq RENEWAL8Ivan Magalhaes
1006Rodrigues B MorascaRussia2024-09-10Chemel, James L Cpa RENEWAL11Bernardo Dominic
1007Kadeem B BriddickJapan2024-09-17Morlong Associates QUALIFIED57Amy Elsner
1008Ashley C FollerGermany2024-09-14Chemel, James L Cpa RENEWAL51Asiya Javayant
1009Aruna B OldroydFrance2024-08-27Chanay, Jeffrey A Esq RENEWAL23Amy Elsner
1010Julie Q SergiRussia2024-09-15King, Christopher A Esq QUALIFIED27Stephen Shaw
1011Adams F ButtFrance2024-09-02Feiner Bros PROPOSAL32Onyama Limba
1012Chavez W BologniaArgentina2024-09-23Feiner Bros NEGOTIATION32Anna Fali
1013Aruna T GauchoJapan2024-09-17Chanay, Jeffrey A Esq PROPOSAL49Stephen Shaw
1014Alejandro H MorascaCanada2024-08-25Feltz Printing Service NEW97Elwin Sharvill
1015Adams D RulapaughIndia2024-09-09Dorl, James J Esq PROPOSAL61Elwin Sharvill
1016Mujtaba Z MarrierJapan2024-09-19Chanay, Jeffrey A Esq UNQUALIFIED20Amy Elsner
1017Jennifer Z RulapaughRussia2024-09-17Chanay, Jeffrey A Esq RENEWAL28Elwin Sharvill
1018Wickens B AmigonItaly2024-09-04Feiner Bros QUALIFIED3Ivan Magalhaes
1019Francesco E SlusarskiRussia2024-09-21Printing Dimensions QUALIFIED70Elwin Sharvill
1020Julie T WaycottFrance2024-09-17Chanay, Jeffrey A Esq PROPOSAL42Ivan Magalhaes
1021Aditya I ChuiFrance2024-09-18Rousseaux, Michael Esq RENEWAL1Ioni Bowcher
1022Deepesh J BowleyFrance2024-09-14Chapman, Ross E Esq NEW46Xuxue Feng
1023Greenwood J ChuiCanada2024-08-25Printing Dimensions QUALIFIED25Asiya Javayant
1024Ashley P ButtRussia2024-09-07Dorl, James J Esq NEGOTIATION1Anna Fali
1025Johnson R SlusarskiUnited Kingdom2024-09-09King, Christopher A Esq NEGOTIATION90Stephen Shaw
1026Mujtaba P BowleyArgentina2024-09-04Chanay, Jeffrey A Esq RENEWAL2Amy Elsner
1027Clifford L FlosiJapan2024-08-31Rousseaux, Michael Esq RENEWAL28Ivan Magalhaes
1028Francesco T WaycottUnited Kingdom2024-08-27Chanay, Jeffrey A Esq PROPOSAL97Xuxue Feng
1029Smith W ButtGermany2024-08-25Chanay, Jeffrey A Esq PROPOSAL98Anna Fali
1030Jeanfrancois E NickaRussia2024-09-15Chemel, James L Cpa QUALIFIED96Xuxue Feng
1031Alejandro G MaletItaly2024-09-18Rangoni Of Florence UNQUALIFIED47Xuxue Feng
1032Jeanfrancois A AlbaresGermany2024-09-18Chanay, Jeffrey A Esq QUALIFIED96Onyama Limba
1033Tony I FollerIndia2024-08-27Printing Dimensions PROPOSAL88Elwin Sharvill
1034Nicolas A DoeBrazil2024-09-03Morlong Associates NEGOTIATION43Elwin Sharvill
1035Aditya R MarrierBrazil2024-09-22Feiner Bros RENEWAL23Stephen Shaw
1036Juan L BologniaRussia2024-08-29King, Christopher A Esq RENEWAL91Stephen Shaw
1037Stacey F BriddickCanada2024-08-26Chanay, Jeffrey A Esq NEGOTIATION80Ivan Magalhaes
1038Johnson M KolmetzAustralia2024-09-08Chapman, Ross E Esq NEGOTIATION68Onyama Limba
1039Clifford B MaletGermany2024-09-10Commercial Press NEGOTIATION48Anna Fali
1040Juan M StockhamIndia2024-09-08Commercial Press NEGOTIATION44Anna Fali
1041Morrow K SaylorsSpain2024-09-01Printing Dimensions QUALIFIED43Stephen Shaw
1042Maisha S MorascaAustralia2024-09-22Dorl, James J Esq PROPOSAL85Onyama Limba
1043Maria E KuskoGermany2024-09-02Feiner Bros UNQUALIFIED10Ioni Bowcher
1044Faith E GlickJapan2024-09-23Truhlar And Truhlar Attys NEGOTIATION4Ivan Magalhaes
1045Nicolas F StensethAustralia2024-09-21Feltz Printing Service NEGOTIATION93Ivan Magalhaes
1046Darci K AlbaresAustralia2024-09-23Morlong Associates PROPOSAL71Ivan Magalhaes
1047Arvin U SlusarskiItaly2024-09-08Rangoni Of Florence RENEWAL88Ivan Magalhaes
1048Jennifer Z RulapaughArgentina2024-09-07Truhlar And Truhlar Attys RENEWAL39Onyama Limba
1049Costa L WhobreyIndia2024-08-31King, Christopher A Esq NEW9Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ivar S InouyeArgentinaAmy Elsner PROPOSAL
Stacey B RimGermanyXuxue Feng PROPOSAL
Rodrigues Q VenereItalyIvan Magalhaes QUALIFIED
Munro X OstroskyBrazilAnna Fali PROPOSAL
Clifford G PoquetteAustraliaStephen Shaw PROPOSAL
Kaitlin S GauchoGermanyIvan Magalhaes PROPOSAL
Faith I KuskoCanadaAnna Fali NEW
Alejandro K ButtRussiaAsiya Javayant PROPOSAL
Misaki R OstroskySpainBernardo Dominic UNQUALIFIED
Johnson L CaudyGermanyElwin Sharvill RENEWAL
Clifford V CaldareraFranceIvan Magalhaes PROPOSAL
Mujtaba D RoysterJapanElwin Sharvill PROPOSAL
Greenwood J GarufiArgentinaElwin Sharvill NEW
Darci R OldroydIndiaElwin Sharvill RENEWAL
Maisha C MorascaGermanyStephen Shaw PROPOSAL
Costa B MarrierJapanBernardo Dominic PROPOSAL
Sinclair R MarrierArgentinaOnyama Limba UNQUALIFIED
Ricardo H VenereUnited KingdomAnna Fali NEGOTIATION
Faith B PerinRussiaBernardo Dominic RENEWAL
Munro T ShinkoIndiaAsiya Javayant RENEWAL
Greenwood P PerinSpainOnyama Limba QUALIFIED
Aika G FollerArgentinaAsiya Javayant UNQUALIFIED
Adams D FigeroaRussiaAnna Fali QUALIFIED
Nicolas R VocelkaCanadaOnyama Limba RENEWAL
Juan Y FlosiCanadaXuxue Feng NEW
Chavez I RoysterSpainAmy Elsner RENEWAL
Silvio V MarrierFranceAmy Elsner RENEWAL
Julie G GillianFranceBernardo Dominic PROPOSAL
Rodrigues G MarrierSpainAnna Fali NEW
Aditya B DoeUnited KingdomOnyama Limba NEGOTIATION
Salvatore T RutaItalyXuxue Feng UNQUALIFIED
Jones P OstroskyJapanStephen Shaw NEW
Tony E NickaCanadaAnna Fali NEGOTIATION
Kaitlin F FerenczGermanyIoni Bowcher QUALIFIED
Wickens U FollerFranceElwin Sharvill PROPOSAL
Rodrigues B SlusarskiCanadaStephen Shaw QUALIFIED
Rodrigues Q NickaUnited KingdomBernardo Dominic PROPOSAL
Morrow H SlusarskiJapanBernardo Dominic UNQUALIFIED
Octavia Q CaudyBrazilElwin Sharvill UNQUALIFIED
Maisha Z StockhamBrazilOnyama Limba QUALIFIED
Francesco H PerinBrazilBernardo Dominic UNQUALIFIED
Emily J SlusarskiUnited KingdomXuxue Feng QUALIFIED
Chavez P BowleyItalyOnyama Limba NEW
James F GarufiGermanyXuxue Feng NEW
Ricardo H MaletFranceIvan Magalhaes PROPOSAL
Clifford C MaletArgentinaIvan Magalhaes PROPOSAL
Octavia M CampainAustraliaAmy Elsner QUALIFIED
Rodrigues R PerinIndiaAmy Elsner QUALIFIED
Claire S WhobreyUnited KingdomBernardo Dominic NEW
Juan M WaycottFranceElwin Sharvill PROPOSAL
Frozen Columns
Name
Deepesh K Bolognia
Aika U Kolmetz
Deepesh Q Glick
Wickens D Dilliard
Greenwood U Stockham
Antonio Y Inouye
Izzy N Chui
Kadeem A Darakjy
Costa J Inouye
Nicolas E Perin
Ashley R Slusarski
James R Bowley
Maria L Butt
Salvatore R Rulapaugh
Octavia H Caudy
Kadeem R Rim
Leja M Wieser
Juan G Venere
Clifford E Marrier
Clifford V Caudy
Claire Y Caldarera
Juan Z Waycott
Costa K Ostrosky
Octavia L Royster
Ricardo J Darakjy
Rodrigues U Garufi
Aruna W Sergi
Tony C Flosi
Greenwood M Wieser
Adams H Albares
Morrow D Flosi
Leon C Gaucho
Ashley H Garufi
Misaki G Malet
Mayumi Q Kolmetz
Kaitlin Z Gaucho
Jennifer F Ferencz
Jeanfrancois Q Ferencz
Faith D Inouye
Kadeem E Waycott
Leon N Inouye
Cody O Morasca
Aruna R Ostrosky
Izzy X Saylors
Ashley C Wieser
Silvio J Kolmetz
Mujtaba H Kolmetz
Juan Q Paprocki
Smith W Amigon
Wickens I Garufi
IdCountryDate
1000Japan2024-08-26
1001Italy2024-09-16
1002Italy2024-09-11
1003Brazil2024-08-29
1004United Kingdom2024-08-29
1005Brazil2024-08-26
1006India2024-09-16
1007Russia2024-08-28
1008France2024-09-10
1009Brazil2024-09-16
1010France2024-08-27
1011Italy2024-09-06
1012Canada2024-09-10
1013India2024-08-26
1014Italy2024-09-06
1015Germany2024-09-11
1016Brazil2024-09-04
1017United Kingdom2024-08-30
1018Germany2024-09-06
1019India2024-09-20
1020Germany2024-08-31
1021Argentina2024-09-09
1022Australia2024-09-23
1023Australia2024-09-01
1024Brazil2024-09-12
1025Russia2024-09-15
1026Canada2024-09-13
1027France2024-09-03
1028Canada2024-09-14
1029Spain2024-09-20
1030Russia2024-08-26
1031Brazil2024-09-08
1032France2024-09-23
1033Russia2024-08-25
1034United Kingdom2024-09-11
1035Canada2024-09-11
1036Australia2024-08-27
1037Argentina2024-09-08
1038United Kingdom2024-08-26
1039India2024-08-28
1040Spain2024-08-29
1041India2024-09-02
1042Japan2024-08-30
1043India2024-08-27
1044Argentina2024-09-05
1045Australia2024-09-05
1046United Kingdom2024-09-10
1047France2024-09-17
1048India2024-09-22
1049United Kingdom2024-09-17

On-Demand Data

NameIdCountryDate
Sinclair G Marrier1000Brazil2024-09-02
Salvatore M Slusarski1001Brazil2024-09-04
Antonio O Stockham1002Spain2024-08-25
Rodrigues R Nicka1003Russia2024-08-29
Francesco Q Rim1004India2024-09-17
Ashley H Royster1005Canada2024-09-05
Nicolas O Maclead1006Russia2024-09-05
Tony M Flosi1007Japan2024-09-07
Claire F Shinko1008Brazil2024-08-25
Wickens E Whobrey1009Italy2024-09-03
Alejandro D Rim1010Spain2024-08-30
Francesco Z Royster1011France2024-09-09
Wickens W Saylors1012Brazil2024-09-06
Arvin O Maclead1013Italy2024-09-03
Cody P Kusko1014France2024-09-04
Aruna C Paprocki1015Brazil2024-08-25
Antonio K Ruta1016Germany2024-09-07
Smith D Ruta1017Italy2024-08-29
Aditya Z Kolmetz1018Argentina2024-09-12
Ivar R Dilliard1019Italy2024-08-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez E ChuiJapanIoni Bowcher NEW
Leja E CaldareraRussiaAmy Elsner QUALIFIED
Ivar Z MaletCanadaIvan Magalhaes RENEWAL
James Y VenereBrazilOnyama Limba NEGOTIATION
Jones N CampainJapanAnna Fali UNQUALIFIED
Jeanfrancois N BologniaFranceAnna Fali UNQUALIFIED
Ivar M SchemmerSpainXuxue Feng QUALIFIED
Salvatore F StensethBrazilBernardo Dominic NEW
Greenwood S GillianAustraliaBernardo Dominic UNQUALIFIED
Clifford R GauchoArgentinaBernardo Dominic NEW
Aditya W FerenczUnited KingdomOnyama Limba UNQUALIFIED
Jones S VenereItalyXuxue Feng QUALIFIED
Aditya B PaprockiArgentinaIvan Magalhaes NEGOTIATION
Morrow H ChuiJapanAnna Fali NEGOTIATION
Aditya P OldroydFranceBernardo Dominic UNQUALIFIED
James M MaletRussiaIvan Magalhaes NEW
Smith F MaletAustraliaBernardo Dominic RENEWAL
Arvin G StensethFranceBernardo Dominic NEW
Morrow A DilliardSpainElwin Sharvill NEGOTIATION
Jefferson X RoysterFranceStephen Shaw UNQUALIFIED
Ricardo I IturbideBrazilOnyama Limba QUALIFIED
Munro Y DoeIndiaElwin Sharvill PROPOSAL
Aruna M RulapaughItalyAmy Elsner PROPOSAL
Misaki Q NickaFranceAmy Elsner UNQUALIFIED
Claire A SlusarskiBrazilAnna Fali QUALIFIED
Cody Q StockhamItalyIvan Magalhaes NEW
Jennifer B IturbideAustraliaIoni Bowcher RENEWAL
Ivar O GillianIndiaXuxue Feng UNQUALIFIED
Murillo J InouyeRussiaOnyama Limba PROPOSAL
Maisha D MorascaIndiaAnna Fali NEGOTIATION
Kaitlin K RutaArgentinaAmy Elsner NEW
James Y GarufiAustraliaIoni Bowcher PROPOSAL
Julie B MaletArgentinaXuxue Feng UNQUALIFIED
Cody D CaldareraGermanyIvan Magalhaes NEW
Misaki G BowleyJapanIoni Bowcher RENEWAL
Murillo W MaletGermanyXuxue Feng RENEWAL
Faith U GillianAustraliaOnyama Limba NEW
Aruna U PoquetteFranceXuxue Feng UNQUALIFIED
Darci O DarakjyIndiaStephen Shaw UNQUALIFIED
Johnson F BowleyArgentinaAmy Elsner 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>