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 S DoeFranceBernardo Dominic NEW
Johnson D TollnerAustraliaXuxue Feng PROPOSAL
Jennifer K FigeroaFranceStephen Shaw NEW
Stacey Y BologniaRussiaXuxue Feng NEGOTIATION
David S ShinkoAustraliaStephen Shaw QUALIFIED
Alejandro T InouyeAustraliaAsiya Javayant UNQUALIFIED
Jennifer M MacleadJapanAmy Elsner PROPOSAL
Jennifer N RimAustraliaXuxue Feng QUALIFIED
James U CampainGermanyAsiya Javayant NEW
Smith U WieserAustraliaAsiya Javayant QUALIFIED
Johnson E CaudyJapanIvan Magalhaes PROPOSAL
Arvin W IturbideJapanBernardo Dominic QUALIFIED
Johnson L ShinkoCanadaXuxue Feng UNQUALIFIED
David X SergiGermanyOnyama Limba PROPOSAL
Arvin B WaycottIndiaBernardo Dominic QUALIFIED
Misaki C GauchoSpainAsiya Javayant NEGOTIATION
Jeanfrancois F SchemmerSpainIvan Magalhaes NEGOTIATION
Jeanfrancois E GlickItalyXuxue Feng QUALIFIED
Mujtaba O VocelkaJapanIvan Magalhaes NEGOTIATION
David F SergiCanadaElwin Sharvill NEGOTIATION
Stacey N OldroydUnited KingdomXuxue Feng QUALIFIED
Aruna U RoysterIndiaXuxue Feng PROPOSAL
Salvatore N RimGermanyIvan Magalhaes NEW
Aika H MarrierRussiaOnyama Limba PROPOSAL
Aika Y CaudySpainStephen Shaw NEW
Rodrigues W PoquetteArgentinaXuxue Feng RENEWAL
Morrow F GillianGermanyAmy Elsner UNQUALIFIED
Faith U DarakjyFranceAnna Fali PROPOSAL
Nicolas I KolmetzCanadaAsiya Javayant UNQUALIFIED
Darci V RimUnited KingdomAnna Fali QUALIFIED
Jeanfrancois A CaldareraArgentinaIvan Magalhaes RENEWAL
Darci S SlusarskiFranceElwin Sharvill RENEWAL
Octavia V RulapaughRussiaAnna Fali UNQUALIFIED
Clifford T DarakjyGermanyStephen Shaw QUALIFIED
Aika Z MorascaArgentinaOnyama Limba NEGOTIATION
Salvatore W TollnerIndiaIvan Magalhaes RENEWAL
Adams Y OldroydUnited KingdomBernardo Dominic UNQUALIFIED
Alejandro Q NestleGermanyIvan Magalhaes NEGOTIATION
Antonio I NestleArgentinaIoni Bowcher PROPOSAL
Maisha A OldroydFranceOnyama Limba NEW
Sinclair X PerinUnited KingdomAsiya Javayant QUALIFIED
Silvio N MaletSpainBernardo Dominic UNQUALIFIED
Ashley Z WhobreySpainBernardo Dominic UNQUALIFIED
Ivar S ShinkoItalyIoni Bowcher PROPOSAL
Julie Q BriddickBrazilElwin Sharvill QUALIFIED
James K VenereArgentinaAsiya Javayant RENEWAL
Wickens S GillianCanadaAsiya Javayant NEGOTIATION
Francesco B WieserRussiaAnna Fali QUALIFIED
Smith G SchemmerAustraliaStephen Shaw QUALIFIED
James Q RoysterGermanyIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco E AmigonJapanBernardo Dominic RENEWAL
Cody G StensethItalyElwin Sharvill NEGOTIATION
Wickens Q DilliardArgentinaStephen Shaw RENEWAL
Misaki T MorascaGermanyIvan Magalhaes NEW
Murillo V RimFranceXuxue Feng PROPOSAL
Tony G StockhamItalyXuxue Feng RENEWAL
Costa E OstroskyIndiaIvan Magalhaes NEW
James K DoeCanadaElwin Sharvill QUALIFIED
Maisha P MacleadArgentinaStephen Shaw NEW
Claire E StockhamGermanyBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha F GillianItaly2024-06-09Feltz Printing Service NEGOTIATION78Anna Fali
1001Ivar X StockhamFrance2024-06-05Rangoni Of Florence NEW11Onyama Limba
1002Aditya Z KuskoUnited Kingdom2024-06-01Rousseaux, Michael Esq QUALIFIED0Ivan Magalhaes
1003Arvin A NickaBrazil2024-06-18Rousseaux, Michael Esq NEW79Bernardo Dominic
1004Octavia Q KuskoJapan2024-06-15Buckley Miller Wright RENEWAL97Ioni Bowcher
1005Aruna O BriddickIndia2024-06-16Benton, John B Jr PROPOSAL31Xuxue Feng
1006Chavez W NestleJapan2024-06-10Truhlar And Truhlar Attys QUALIFIED30Stephen Shaw
1007Juan L ShinkoItaly2024-06-09Benton, John B Jr NEGOTIATION71Onyama Limba
1008Jefferson E WieserGermany2024-06-13King, Christopher A Esq RENEWAL59Onyama Limba
1009Salvatore U SergiItaly2024-06-04Morlong Associates UNQUALIFIED69Stephen Shaw
1010Aruna D AmigonFrance2024-05-27Feiner Bros NEGOTIATION27Elwin Sharvill
1011Alejandro T BriddickBrazil2024-06-18Morlong Associates QUALIFIED2Ivan Magalhaes
1012Jennifer Y AmigonCanada2024-06-12Morlong Associates NEW54Elwin Sharvill
1013Ashley C RimFrance2024-06-12Dorl, James J Esq QUALIFIED57Elwin Sharvill
1014Maisha Y WieserSpain2024-06-12Dorl, James J Esq NEW2Onyama Limba
1015Jefferson S AmigonUnited Kingdom2024-06-14Chanay, Jeffrey A Esq RENEWAL36Stephen Shaw
1016Maisha G VocelkaSpain2024-06-03Feiner Bros UNQUALIFIED50Anna Fali
1017Antonio M RutaItaly2024-06-23Commercial Press UNQUALIFIED2Asiya Javayant
1018Emily D CaldareraUnited Kingdom2024-06-07Rousseaux, Michael Esq NEW19Ivan Magalhaes
1019Faith F WaycottBrazil2024-06-22Rousseaux, Michael Esq PROPOSAL39Amy Elsner
1020Murillo T FollerCanada2024-06-17Feltz Printing Service PROPOSAL57Onyama Limba
1021Stacey T MarrierArgentina2024-06-13Feiner Bros NEGOTIATION95Anna Fali
1022Ricardo H BriddickIndia2024-06-17Truhlar And Truhlar Attys RENEWAL85Stephen Shaw
1023Julie S BriddickSpain2024-06-20Rangoni Of Florence PROPOSAL40Asiya Javayant
1024Leon W MacleadIndia2024-06-18Morlong Associates QUALIFIED68Ivan Magalhaes
1025Tony M KolmetzAustralia2024-06-16Chemel, James L Cpa QUALIFIED68Stephen Shaw
1026Aditya R PaprockiUnited Kingdom2024-06-12Rangoni Of Florence NEW67Ioni Bowcher
1027Kaitlin I OldroydCanada2024-05-28Feiner Bros UNQUALIFIED69Stephen Shaw
1028Jefferson Z WieserAustralia2024-06-08Truhlar And Truhlar Attys PROPOSAL70Bernardo Dominic
1029Jeanfrancois N GlickSpain2024-06-21Feiner Bros RENEWAL44Ioni Bowcher
1030Ivar N SaylorsJapan2024-05-31Rangoni Of Florence UNQUALIFIED43Ivan Magalhaes
1031Faith A NickaJapan2024-06-04Buckley Miller Wright NEGOTIATION21Xuxue Feng
1032Smith X SchemmerUnited Kingdom2024-06-03Chemel, James L Cpa QUALIFIED11Xuxue Feng
1033Isabel G FollerArgentina2024-06-24Morlong Associates RENEWAL51Ioni Bowcher
1034Francesco R WaycottSpain2024-06-11King, Christopher A Esq UNQUALIFIED3Stephen Shaw
1035James Y MarrierFrance2024-06-18Truhlar And Truhlar Attys NEGOTIATION37Onyama Limba
1036Mujtaba Q KuskoJapan2024-05-31Rangoni Of Florence NEGOTIATION18Amy Elsner
1037Faith I PoquetteRussia2024-06-10Feiner Bros NEW81Onyama Limba
1038Claire A MaletGermany2024-06-05Rousseaux, Michael Esq RENEWAL3Stephen Shaw
1039Murillo N BologniaBrazil2024-06-16Truhlar And Truhlar Attys RENEWAL90Amy Elsner
1040Antonio E OstroskyArgentina2024-05-27Rousseaux, Michael Esq RENEWAL7Bernardo Dominic
1041Maria R BowleyCanada2024-06-05King, Christopher A Esq PROPOSAL28Onyama Limba
1042Mujtaba Z BriddickCanada2024-06-13Dorl, James J Esq PROPOSAL24Xuxue Feng
1043Morrow Y VenereItaly2024-06-14Chemel, James L Cpa RENEWAL35Ioni Bowcher
1044Antonio M CaldareraRussia2024-06-24Morlong Associates NEGOTIATION69Ioni Bowcher
1045Munro X MarrierSpain2024-06-17Buckley Miller Wright NEGOTIATION98Anna Fali
1046Leja T SchemmerBrazil2024-06-18Rousseaux, Michael Esq NEW55Amy Elsner
1047Deepesh Q CaudyIndia2024-05-29Feiner Bros PROPOSAL15Elwin Sharvill
1048Ashley M DilliardArgentina2024-06-18Printing Dimensions NEGOTIATION88Xuxue Feng
1049David J TollnerJapan2024-05-27Printing Dimensions RENEWAL38Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Greenwood T VocelkaRussiaAnna Fali PROPOSAL
Aruna D MorascaItalyAmy Elsner PROPOSAL
Emily M MaletCanadaAmy Elsner PROPOSAL
David V GlickCanadaAnna Fali QUALIFIED
Greenwood U GauchoIndiaAnna Fali NEW
Jeanfrancois S MorascaCanadaIvan Magalhaes RENEWAL
Claire Q NickaItalyXuxue Feng UNQUALIFIED
Kadeem E RulapaughSpainOnyama Limba RENEWAL
Jennifer P KolmetzRussiaElwin Sharvill NEGOTIATION
Wickens Z TollnerAustraliaIoni Bowcher NEW
Aika N KuskoItalyIoni Bowcher PROPOSAL
Rodrigues P SaylorsAustraliaIvan Magalhaes RENEWAL
Murillo L CaudyAustraliaAnna Fali NEW
James N AlbaresFranceXuxue Feng NEW
Munro E PaprockiItalyOnyama Limba NEW
Morrow V DarakjyUnited KingdomBernardo Dominic NEW
Morrow K InouyeSpainAsiya Javayant UNQUALIFIED
David R PaprockiUnited KingdomXuxue Feng RENEWAL
Alejandro Z BowleyArgentinaOnyama Limba NEW
Smith Z GauchoArgentinaOnyama Limba RENEWAL
Aika B CaudyBrazilAsiya Javayant NEGOTIATION
Adams L SlusarskiFranceElwin Sharvill UNQUALIFIED
Salvatore N FollerBrazilStephen Shaw NEW
Jones T PoquetteBrazilOnyama Limba PROPOSAL
Alejandro R SaylorsFranceXuxue Feng NEGOTIATION
Octavia D SaylorsSpainAmy Elsner PROPOSAL
Emily P MorascaBrazilOnyama Limba NEW
Silvio D RimJapanAnna Fali PROPOSAL
Arvin O BowleyBrazilAmy Elsner QUALIFIED
James K KuskoIndiaAsiya Javayant NEW
Chavez M MarrierBrazilAnna Fali QUALIFIED
Murillo V AmigonGermanyAnna Fali QUALIFIED
Silvio V DarakjyJapanIvan Magalhaes NEW
Rodrigues O RulapaughItalyIoni Bowcher UNQUALIFIED
Johnson G PerinJapanAmy Elsner NEW
Costa B CaldareraGermanyOnyama Limba PROPOSAL
Francesco X GillianBrazilBernardo Dominic RENEWAL
Aika D ButtCanadaAsiya Javayant UNQUALIFIED
Misaki Z RoysterGermanyIvan Magalhaes NEGOTIATION
Johnson P BologniaAustraliaStephen Shaw UNQUALIFIED
Faith Q PoquetteBrazilElwin Sharvill PROPOSAL
David E MorascaFranceXuxue Feng UNQUALIFIED
Nicolas P WhobreyCanadaStephen Shaw RENEWAL
Claire I IturbideAustraliaBernardo Dominic RENEWAL
Salvatore L KuskoGermanyOnyama Limba NEGOTIATION
Clifford P MorascaUnited KingdomAsiya Javayant RENEWAL
Kaitlin L ButtItalyAsiya Javayant UNQUALIFIED
Jeanfrancois T PoquetteFranceAmy Elsner PROPOSAL
Alejandro C FlosiArgentinaXuxue Feng PROPOSAL
Kadeem H ShinkoAustraliaStephen Shaw NEW
Frozen Columns
Name
Ashley S Stockham
Adams U Schemmer
Wickens E Ruta
Nicolas H Schemmer
Ricardo S Gillian
Chavez Z Flosi
Wickens U Glick
Mayumi M Shinko
Mujtaba O Foller
Leja H Nestle
Antonio M Foller
Salvatore O Flosi
Misaki B Whobrey
Chavez K Flosi
Rodrigues F Ferencz
Greenwood O Whobrey
Tony A Stenseth
Murillo W Shinko
Leja H Royster
Rodrigues T Dilliard
Mayumi X Campain
Rodrigues Z Caldarera
James G Bolognia
Kadeem W Tollner
Izzy G Rim
Darci P Malet
Emily B Marrier
Wickens D Nestle
Arvin D Oldroyd
Aruna O Wieser
James Z Morasca
Jefferson O Bolognia
Jones Q Tollner
Isabel S Perin
Chavez Z Oldroyd
Francesco Q Nicka
Ricardo Q Garufi
Leja C Tollner
Morrow I Ruta
Julie Q Darakjy
Julie S Dilliard
Julie W Garufi
Munro N Paprocki
Smith D Paprocki
Alejandro O Waycott
Misaki V Rim
Adams S Caudy
Mujtaba L Chui
Izzy S Waycott
Murillo Z Saylors
IdCountryDate
1000Spain2024-05-29
1001Italy2024-06-19
1002Australia2024-06-08
1003Russia2024-06-21
1004India2024-06-24
1005Brazil2024-05-27
1006Russia2024-06-22
1007Japan2024-05-31
1008Spain2024-06-14
1009Brazil2024-06-06
1010Canada2024-06-23
1011Argentina2024-06-18
1012Australia2024-06-08
1013Argentina2024-06-08
1014Russia2024-05-26
1015France2024-06-06
1016Canada2024-06-07
1017India2024-06-12
1018India2024-06-19
1019Brazil2024-06-12
1020India2024-05-30
1021India2024-06-22
1022France2024-06-19
1023Spain2024-06-15
1024Russia2024-06-05
1025Russia2024-06-12
1026Canada2024-06-06
1027France2024-06-12
1028Spain2024-06-11
1029Spain2024-06-08
1030Canada2024-06-07
1031Germany2024-06-21
1032Brazil2024-05-26
1033Russia2024-05-29
1034France2024-05-30
1035Argentina2024-06-06
1036Argentina2024-05-31
1037Italy2024-06-03
1038United Kingdom2024-06-24
1039Spain2024-05-30
1040France2024-06-20
1041Russia2024-05-28
1042Canada2024-06-24
1043Brazil2024-06-02
1044Germany2024-06-12
1045Japan2024-06-20
1046France2024-06-13
1047Italy2024-06-20
1048Australia2024-05-30
1049Spain2024-06-01

On-Demand Data

NameIdCountryDate
Aika G Saylors1000Italy2024-05-29
Costa A Dilliard1001Australia2024-06-11
Munro J Chui1002Germany2024-06-15
Aditya E Glick1003Canada2024-06-18
Morrow G Stenseth1004India2024-06-13
Deepesh F Foller1005Australia2024-06-02
Munro U Bowley1006Australia2024-06-12
Morrow A Ostrosky1007Canada2024-06-20
Maisha J Bowley1008France2024-06-13
Jeanfrancois V Chui1009Spain2024-05-31
Johnson X Malet1010Russia2024-06-05
Izzy E Glick1011Australia2024-06-20
Alejandro L Bowley1012Argentina2024-06-24
Johnson E Oldroyd1013United Kingdom2024-05-28
Kaitlin B Stenseth1014Spain2024-06-10
Cody H Whobrey1015France2024-06-11
Maisha V Paprocki1016Italy2024-06-19
Jeanfrancois O Whobrey1017United Kingdom2024-06-16
Faith G Garufi1018Russia2024-06-23
Munro G Butt1019Australia2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba V MaletSpainBernardo Dominic NEGOTIATION
Maria Z SlusarskiUnited KingdomIoni Bowcher NEGOTIATION
Costa U BriddickRussiaBernardo Dominic PROPOSAL
Ashley I WaycottGermanyAmy Elsner NEW
Salvatore N KolmetzRussiaElwin Sharvill QUALIFIED
Greenwood L WhobreyAustraliaBernardo Dominic RENEWAL
Ivar N StockhamItalyAsiya Javayant RENEWAL
Jefferson O RimGermanyStephen Shaw NEW
Silvio N CaldareraAustraliaIoni Bowcher NEW
Darci H FigeroaSpainAmy Elsner RENEWAL
Jeanfrancois O FigeroaSpainElwin Sharvill PROPOSAL
Maisha K WaycottFranceXuxue Feng NEGOTIATION
Darci J StensethFranceIvan Magalhaes NEGOTIATION
Julie W SergiUnited KingdomAnna Fali NEW
Morrow C CaldareraJapanStephen Shaw QUALIFIED
Kadeem S SergiJapanIoni Bowcher NEGOTIATION
Nicolas B WaycottSpainAmy Elsner QUALIFIED
Smith S CaldareraJapanBernardo Dominic PROPOSAL
Clifford D FigeroaUnited KingdomXuxue Feng NEW
Kaitlin M RulapaughArgentinaStephen Shaw NEW
Julie L WieserFranceIoni Bowcher QUALIFIED
Maria B FigeroaSpainIvan Magalhaes UNQUALIFIED
Aika M FerenczAustraliaAmy Elsner NEW
Kaitlin O GillianItalyAmy Elsner QUALIFIED
Nicolas Y ChuiIndiaAnna Fali UNQUALIFIED
Aika I CampainItalyIoni Bowcher NEW
Sinclair T MorascaGermanyIvan Magalhaes RENEWAL
Jefferson A OstroskyGermanyBernardo Dominic PROPOSAL
Ivar A StensethArgentinaStephen Shaw NEW
Chavez A MacleadUnited KingdomIoni Bowcher UNQUALIFIED
James X AmigonAustraliaAmy Elsner QUALIFIED
Darci M NickaBrazilIvan Magalhaes PROPOSAL
Maria Q BowleyArgentinaStephen Shaw QUALIFIED
Ashley Q ButtArgentinaStephen Shaw PROPOSAL
Isabel C FollerJapanAmy Elsner NEW
Aruna I NickaJapanOnyama Limba RENEWAL
Aruna P ButtBrazilAnna Fali QUALIFIED
Salvatore D AmigonCanadaAmy Elsner QUALIFIED
Antonio Y VenereCanadaAmy Elsner UNQUALIFIED
Francesco W FollerAustraliaBernardo Dominic 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>