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
Tony M FlosiRussiaAnna Fali PROPOSAL
Alejandro V ChuiFranceAnna Fali RENEWAL
Ashley D OldroydIndiaAmy Elsner QUALIFIED
Darci D VocelkaGermanyAsiya Javayant QUALIFIED
Juan J TollnerBrazilOnyama Limba PROPOSAL
Deepesh W MaletBrazilOnyama Limba UNQUALIFIED
Nicolas T MarrierRussiaAnna Fali PROPOSAL
Wickens K ButtJapanAsiya Javayant QUALIFIED
Emily Y MorascaArgentinaBernardo Dominic UNQUALIFIED
Mujtaba E NickaArgentinaOnyama Limba RENEWAL
Izzy G BowleySpainElwin Sharvill NEGOTIATION
Jeanfrancois Y RulapaughSpainStephen Shaw UNQUALIFIED
Wickens M SergiFranceIoni Bowcher QUALIFIED
Cody L BriddickRussiaXuxue Feng QUALIFIED
Sinclair H RimIndiaXuxue Feng UNQUALIFIED
Julie Q DilliardFranceStephen Shaw QUALIFIED
Mayumi E RulapaughGermanyStephen Shaw NEGOTIATION
Julie F ShinkoRussiaBernardo Dominic NEGOTIATION
Johnson S AmigonItalyXuxue Feng RENEWAL
Ivar U FigeroaJapanIoni Bowcher NEGOTIATION
Octavia M OldroydSpainAnna Fali NEGOTIATION
Smith P DarakjyJapanBernardo Dominic UNQUALIFIED
Mujtaba M AmigonAustraliaAnna Fali RENEWAL
Wickens J FigeroaBrazilOnyama Limba UNQUALIFIED
Mayumi V BriddickRussiaIvan Magalhaes NEW
Morrow K RoysterAustraliaOnyama Limba PROPOSAL
Kadeem K BowleyUnited KingdomOnyama Limba RENEWAL
Johnson A SchemmerIndiaOnyama Limba PROPOSAL
Chavez R CampainBrazilOnyama Limba RENEWAL
James G CampainFranceXuxue Feng NEW
Jeanfrancois U GlickItalyAnna Fali NEW
David U RulapaughAustraliaAmy Elsner UNQUALIFIED
Tony G MaletArgentinaAsiya Javayant UNQUALIFIED
Mayumi C AmigonFranceAsiya Javayant UNQUALIFIED
Kaitlin M FigeroaIndiaAnna Fali NEW
Johnson Z OldroydItalyAmy Elsner UNQUALIFIED
Ashley Z OstroskyFranceAnna Fali NEW
Faith Y ButtJapanBernardo Dominic PROPOSAL
Maria W InouyeSpainIoni Bowcher PROPOSAL
Greenwood W MorascaAustraliaIvan Magalhaes UNQUALIFIED
Darci A BriddickArgentinaBernardo Dominic UNQUALIFIED
Juan F OstroskyFranceAsiya Javayant NEW
Tony P InouyeSpainAsiya Javayant RENEWAL
Francesco F VocelkaCanadaAsiya Javayant NEGOTIATION
Sinclair V OstroskyJapanXuxue Feng NEGOTIATION
Faith D PerinFranceIoni Bowcher NEW
Antonio E RoysterJapanStephen Shaw UNQUALIFIED
Ivar L DoeJapanStephen Shaw PROPOSAL
Kaitlin J OstroskyItalyOnyama Limba NEGOTIATION
Aika V FerenczItalyIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Costa P PoquetteArgentinaIvan Magalhaes PROPOSAL
Chavez A SaylorsFranceStephen Shaw QUALIFIED
Smith B BriddickGermanyIvan Magalhaes NEW
Maria S SaylorsBrazilElwin Sharvill PROPOSAL
Cody F TollnerGermanyIoni Bowcher PROPOSAL
Leon X AlbaresAustraliaIoni Bowcher UNQUALIFIED
Ashley D IturbideUnited KingdomAnna Fali QUALIFIED
Kadeem T RoysterGermanyAsiya Javayant QUALIFIED
Faith S IturbideFranceIoni Bowcher UNQUALIFIED
Jeanfrancois L StensethAustraliaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily A OstroskyGermany2024-05-18Chanay, Jeffrey A Esq QUALIFIED52Bernardo Dominic
1001Kaitlin Y KolmetzBrazil2024-05-30Chanay, Jeffrey A Esq NEW38Asiya Javayant
1002Claire S GillianJapan2024-05-25Rousseaux, Michael Esq RENEWAL2Ioni Bowcher
1003Nicolas A CaudyItaly2024-05-09Truhlar And Truhlar Attys NEW64Onyama Limba
1004Cody I SaylorsItaly2024-05-10Rangoni Of Florence NEW34Amy Elsner
1005Salvatore C TollnerFrance2024-05-04Chapman, Ross E Esq RENEWAL64Bernardo Dominic
1006Jennifer E RulapaughGermany2024-05-14Commercial Press PROPOSAL29Elwin Sharvill
1007Ashley Z AlbaresJapan2024-05-03Chapman, Ross E Esq NEGOTIATION18Asiya Javayant
1008Munro M OldroydGermany2024-05-05Chanay, Jeffrey A Esq UNQUALIFIED38Ivan Magalhaes
1009Rodrigues K RutaFrance2024-05-16Truhlar And Truhlar Attys RENEWAL18Elwin Sharvill
1010Ashley Q KolmetzUnited Kingdom2024-05-17Chapman, Ross E Esq QUALIFIED25Asiya Javayant
1011Kadeem E BologniaRussia2024-05-18Commercial Press NEGOTIATION93Amy Elsner
1012Faith G PerinUnited Kingdom2024-05-20King, Christopher A Esq NEW27Elwin Sharvill
1013Wickens Q OstroskyUnited Kingdom2024-05-11Printing Dimensions PROPOSAL83Amy Elsner
1014Chavez R KolmetzGermany2024-05-15Chapman, Ross E Esq PROPOSAL87Anna Fali
1015Darci P BriddickJapan2024-05-07Benton, John B Jr RENEWAL23Elwin Sharvill
1016Maria F IturbideCanada2024-05-14Rangoni Of Florence PROPOSAL78Asiya Javayant
1017Mujtaba V BriddickJapan2024-05-18King, Christopher A Esq RENEWAL66Amy Elsner
1018Salvatore G ShinkoUnited Kingdom2024-05-06Dorl, James J Esq NEGOTIATION84Asiya Javayant
1019Cody T InouyeUnited Kingdom2024-05-21Printing Dimensions PROPOSAL93Ivan Magalhaes
1020Johnson D OstroskyGermany2024-05-29Chanay, Jeffrey A Esq QUALIFIED84Stephen Shaw
1021Leon K CaudyBrazil2024-05-16Morlong Associates PROPOSAL60Elwin Sharvill
1022Murillo F DoeBrazil2024-05-26Benton, John B Jr PROPOSAL96Ioni Bowcher
1023James V WieserUnited Kingdom2024-05-28Rangoni Of Florence QUALIFIED67Elwin Sharvill
1024Tony F StensethItaly2024-05-11Commercial Press UNQUALIFIED95Stephen Shaw
1025Chavez E RoysterIndia2024-05-27King, Christopher A Esq RENEWAL82Stephen Shaw
1026Claire S WaycottBrazil2024-05-07Feiner Bros PROPOSAL66Xuxue Feng
1027Juan M PerinItaly2024-05-17Feltz Printing Service QUALIFIED65Anna Fali
1028Faith L StensethIndia2024-05-09Commercial Press RENEWAL88Stephen Shaw
1029Jennifer O SchemmerArgentina2024-05-07Chapman, Ross E Esq NEW40Amy Elsner
1030Maisha K GlickCanada2024-05-22Chanay, Jeffrey A Esq RENEWAL31Elwin Sharvill
1031Leja B SaylorsIndia2024-05-01Benton, John B Jr RENEWAL32Stephen Shaw
1032Nicolas U CaldareraCanada2024-05-19Benton, John B Jr PROPOSAL89Anna Fali
1033Alejandro M GarufiArgentina2024-05-10Commercial Press QUALIFIED37Stephen Shaw
1034Costa V RimJapan2024-05-17Benton, John B Jr RENEWAL78Onyama Limba
1035Salvatore Q BowleyCanada2024-05-23Rangoni Of Florence UNQUALIFIED21Ivan Magalhaes
1036Jeanfrancois E BowleyRussia2024-05-13Morlong Associates NEGOTIATION83Bernardo Dominic
1037David I FigeroaIndia2024-05-07Benton, John B Jr QUALIFIED33Xuxue Feng
1038Ricardo M WhobreyRussia2024-05-05Morlong Associates RENEWAL47Xuxue Feng
1039Murillo C RulapaughCanada2024-05-07Rangoni Of Florence PROPOSAL20Ioni Bowcher
1040Greenwood D NickaItaly2024-05-23Printing Dimensions RENEWAL22Onyama Limba
1041Juan X CaudyUnited Kingdom2024-05-08Benton, John B Jr QUALIFIED7Stephen Shaw
1042Aika C GlickJapan2024-05-11Chanay, Jeffrey A Esq UNQUALIFIED58Ivan Magalhaes
1043Leon R RutaFrance2024-05-13Rousseaux, Michael Esq NEGOTIATION59Elwin Sharvill
1044Emily G FerenczUnited Kingdom2024-05-29Benton, John B Jr NEGOTIATION87Anna Fali
1045Mujtaba W KuskoCanada2024-05-30Benton, John B Jr NEW85Stephen Shaw
1046Faith F KuskoJapan2024-05-23Feiner Bros UNQUALIFIED38Ioni Bowcher
1047Stacey I AlbaresItaly2024-05-09Commercial Press RENEWAL88Stephen Shaw
1048Kadeem Y OstroskyCanada2024-05-09Chanay, Jeffrey A Esq UNQUALIFIED96Xuxue Feng
1049Leon B GauchoIndia2024-05-12Rousseaux, Michael Esq PROPOSAL54Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Salvatore O CampainIndiaBernardo Dominic QUALIFIED
Johnson W IturbideIndiaStephen Shaw NEGOTIATION
Chavez J NickaAustraliaBernardo Dominic RENEWAL
Stacey Z DoeCanadaAnna Fali NEGOTIATION
Jennifer M GarufiItalyBernardo Dominic NEGOTIATION
Salvatore R MaletFranceIoni Bowcher UNQUALIFIED
Clifford P MorascaGermanyElwin Sharvill NEW
Isabel A DilliardFranceAmy Elsner QUALIFIED
Ivar R PerinArgentinaBernardo Dominic RENEWAL
Claire F GlickFranceAnna Fali NEGOTIATION
Kadeem J DilliardItalyAmy Elsner QUALIFIED
Claire S CampainSpainElwin Sharvill PROPOSAL
Jones W MaletRussiaBernardo Dominic RENEWAL
Jeanfrancois Q MarrierJapanXuxue Feng UNQUALIFIED
Johnson C KolmetzFranceIvan Magalhaes PROPOSAL
Julie A GlickUnited KingdomElwin Sharvill PROPOSAL
Ricardo N DilliardSpainIoni Bowcher RENEWAL
Maria F BowleyGermanyStephen Shaw QUALIFIED
Rodrigues F RulapaughRussiaAmy Elsner QUALIFIED
Morrow Q BriddickUnited KingdomAnna Fali QUALIFIED
Francesco M KuskoFranceOnyama Limba QUALIFIED
Julie I AmigonAustraliaStephen Shaw NEGOTIATION
Aditya K CaldareraJapanStephen Shaw NEGOTIATION
Francesco V TollnerUnited KingdomBernardo Dominic NEW
David H VenereJapanAmy Elsner NEGOTIATION
Antonio W DilliardBrazilAsiya Javayant NEGOTIATION
Ivar V BowleyCanadaOnyama Limba UNQUALIFIED
Maria Q FigeroaFranceElwin Sharvill NEGOTIATION
Ashley T MacleadArgentinaElwin Sharvill QUALIFIED
Mayumi I PerinJapanIoni Bowcher QUALIFIED
Ivar A GauchoRussiaAsiya Javayant PROPOSAL
Deepesh C CaudySpainXuxue Feng QUALIFIED
Nicolas E FlosiItalyIoni Bowcher UNQUALIFIED
Tony I ShinkoArgentinaElwin Sharvill NEGOTIATION
Adams H OstroskyUnited KingdomStephen Shaw QUALIFIED
Ivar S AlbaresFranceAsiya Javayant PROPOSAL
Maisha K VocelkaUnited KingdomIoni Bowcher PROPOSAL
Johnson X FerenczCanadaAsiya Javayant PROPOSAL
Rodrigues J SlusarskiFranceIoni Bowcher PROPOSAL
James F OldroydIndiaAsiya Javayant NEW
David F RoysterItalyAmy Elsner RENEWAL
Greenwood E VocelkaRussiaElwin Sharvill NEGOTIATION
Deepesh U GlickGermanyIvan Magalhaes QUALIFIED
Tony V FigeroaCanadaAmy Elsner NEGOTIATION
James V OldroydItalyAnna Fali NEGOTIATION
Maria N MorascaRussiaAnna Fali NEW
Kaitlin J CampainFranceAsiya Javayant QUALIFIED
Claire F GauchoJapanOnyama Limba NEW
Emily J ShinkoItalyIoni Bowcher NEGOTIATION
Jeanfrancois N OldroydBrazilXuxue Feng QUALIFIED
Frozen Columns
Name
Smith W Shinko
Aditya R Shinko
James T Poquette
Julie D Venere
Deepesh B Stenseth
Morrow L Sergi
Emily Y Inouye
Misaki O Shinko
Misaki L Bowley
Adams M Darakjy
Kadeem G Campain
Claire P Albares
Arvin B Ruta
Rodrigues U Kolmetz
Smith V Slusarski
Stacey E Iturbide
Adams D Tollner
Clifford M Poquette
Mujtaba R Caudy
Silvio X Nestle
Mujtaba Y Gaucho
Jones I Ferencz
Juan E Whobrey
Leon R Albares
Deepesh U Ostrosky
Leon Q Foller
Johnson K Gillian
Salvatore C Kolmetz
Deepesh D Slusarski
Sinclair J Maclead
Jefferson T Slusarski
Kadeem T Marrier
Julie Y Stockham
Misaki F Chui
Izzy V Briddick
Mujtaba I Sergi
Clifford A Campain
Kadeem W Garufi
Chavez D Campain
Greenwood Y Chui
James X Bowley
Adams S Amigon
Misaki G Shinko
Jeanfrancois V Poquette
Costa S Maclead
Jeanfrancois Z Sergi
Chavez S Gillian
Salvatore F Kusko
Salvatore K Kusko
Smith X Caudy
IdCountryDate
1000Argentina2024-05-27
1001Russia2024-05-06
1002France2024-05-26
1003Brazil2024-05-22
1004United Kingdom2024-05-26
1005Argentina2024-05-04
1006Japan2024-05-02
1007Spain2024-05-19
1008Italy2024-05-02
1009Argentina2024-05-02
1010United Kingdom2024-05-29
1011Italy2024-05-08
1012United Kingdom2024-05-26
1013Italy2024-05-16
1014Brazil2024-05-21
1015United Kingdom2024-05-27
1016India2024-05-30
1017Spain2024-05-14
1018Brazil2024-05-06
1019Russia2024-05-21
1020Australia2024-05-07
1021France2024-05-07
1022Italy2024-05-16
1023Japan2024-05-17
1024Germany2024-05-20
1025Russia2024-05-18
1026Germany2024-05-15
1027India2024-05-05
1028Brazil2024-05-28
1029Canada2024-05-04
1030Germany2024-05-07
1031Australia2024-05-25
1032Spain2024-05-16
1033Spain2024-05-20
1034Australia2024-05-08
1035Argentina2024-05-19
1036Australia2024-05-24
1037Brazil2024-05-21
1038Spain2024-05-22
1039Argentina2024-05-18
1040Canada2024-05-26
1041United Kingdom2024-05-24
1042Spain2024-05-05
1043Germany2024-05-27
1044Brazil2024-05-17
1045Spain2024-05-10
1046United Kingdom2024-05-19
1047United Kingdom2024-05-27
1048Japan2024-05-26
1049United Kingdom2024-05-28

On-Demand Data

NameIdCountryDate
Ivar V Bolognia1000Spain2024-05-07
Jeanfrancois L Marrier1001Spain2024-05-11
Deepesh Z Marrier1002United Kingdom2024-05-02
Silvio X Foller1003Italy2024-05-15
Mayumi U Marrier1004Germany2024-05-08
Leon U Foller1005India2024-05-03
Juan E Nestle1006Russia2024-05-27
Deepesh M Venere1007Japan2024-05-13
Antonio A Stenseth1008France2024-05-14
Adams M Rulapaugh1009Italy2024-05-07
Juan Z Oldroyd1010Argentina2024-05-26
Nicolas S Malet1011Canada2024-05-03
Ivar S Nicka1012United Kingdom2024-05-08
Darci W Kolmetz1013Russia2024-05-12
Faith A Maclead1014Brazil2024-05-12
Leja O Morasca1015Japan2024-05-05
Arvin U Perin1016Russia2024-05-17
Cody H Shinko1017Italy2024-05-05
Aditya N Bolognia1018France2024-05-22
Isabel C Wieser1019Italy2024-05-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy G RimArgentinaElwin Sharvill NEGOTIATION
Emily R BologniaGermanyXuxue Feng PROPOSAL
Munro S MacleadJapanAnna Fali NEW
Johnson D ChuiIndiaAnna Fali UNQUALIFIED
Leon U WieserAustraliaAnna Fali RENEWAL
Silvio A IturbideItalyXuxue Feng RENEWAL
Octavia Z AlbaresBrazilOnyama Limba RENEWAL
Maisha W BriddickCanadaXuxue Feng PROPOSAL
Tony I RutaItalyBernardo Dominic NEGOTIATION
Francesco S RulapaughAustraliaOnyama Limba NEGOTIATION
Chavez I SergiAustraliaOnyama Limba NEW
Aruna M VenereCanadaIoni Bowcher NEW
Mujtaba M MacleadArgentinaOnyama Limba NEW
Jeanfrancois A SaylorsCanadaIvan Magalhaes UNQUALIFIED
Claire I CampainRussiaIvan Magalhaes NEW
Murillo N PoquetteSpainAmy Elsner RENEWAL
Cody H OstroskyBrazilElwin Sharvill NEGOTIATION
Chavez O WhobreyIndiaStephen Shaw NEW
Chavez Q MaletUnited KingdomIvan Magalhaes NEW
James M FollerSpainBernardo Dominic RENEWAL
Faith N RutaJapanAmy Elsner NEGOTIATION
Maisha E AmigonBrazilElwin Sharvill RENEWAL
Nicolas X SchemmerFranceXuxue Feng PROPOSAL
Tony W FlosiUnited KingdomBernardo Dominic RENEWAL
Greenwood M RulapaughBrazilXuxue Feng NEW
Clifford S PaprockiBrazilXuxue Feng UNQUALIFIED
Wickens J DilliardCanadaStephen Shaw QUALIFIED
Jeanfrancois W GauchoItalyAsiya Javayant UNQUALIFIED
Ricardo B PerinGermanyAsiya Javayant NEW
Maria P SlusarskiAustraliaStephen Shaw UNQUALIFIED
Antonio Z BriddickJapanElwin Sharvill NEGOTIATION
Deepesh Q MaletJapanIoni Bowcher NEW
Smith O ChuiArgentinaXuxue Feng RENEWAL
Adams F CaldareraAustraliaOnyama Limba PROPOSAL
Alejandro W ShinkoJapanOnyama Limba NEW
Antonio N SaylorsRussiaAmy Elsner RENEWAL
Mayumi G BowleyBrazilXuxue Feng UNQUALIFIED
David C StockhamCanadaAmy Elsner NEW
Smith X CaudySpainIoni Bowcher PROPOSAL
Darci B StockhamItalyBernardo Dominic 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>