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
Jeanfrancois U CaudyArgentinaOnyama Limba PROPOSAL
Ricardo Z KuskoUnited KingdomAmy Elsner RENEWAL
Aruna X DarakjyItalyElwin Sharvill RENEWAL
Ricardo Y WieserJapanAnna Fali UNQUALIFIED
Maria K KuskoIndiaIoni Bowcher QUALIFIED
Chavez M PerinGermanyStephen Shaw QUALIFIED
Emily Z KolmetzBrazilXuxue Feng UNQUALIFIED
Emily M FlosiUnited KingdomAsiya Javayant QUALIFIED
Leon C AmigonUnited KingdomElwin Sharvill RENEWAL
Emily X MaletIndiaBernardo Dominic RENEWAL
Jeanfrancois K MarrierRussiaOnyama Limba RENEWAL
Johnson X GlickAustraliaElwin Sharvill NEW
Chavez U BologniaCanadaIoni Bowcher QUALIFIED
Ashley B RoysterFranceStephen Shaw QUALIFIED
Isabel E CampainItalyXuxue Feng QUALIFIED
Murillo Z FollerAustraliaStephen Shaw NEGOTIATION
Ivar D RutaJapanAmy Elsner RENEWAL
Aika Z ButtItalyXuxue Feng NEGOTIATION
Kadeem J ChuiUnited KingdomIvan Magalhaes PROPOSAL
Deepesh E NestleArgentinaAmy Elsner PROPOSAL
Faith K FlosiFranceAsiya Javayant UNQUALIFIED
Munro W DilliardUnited KingdomBernardo Dominic QUALIFIED
Ivar T FerenczCanadaBernardo Dominic NEGOTIATION
Arvin T OstroskyItalyOnyama Limba NEW
Mujtaba H InouyeBrazilAmy Elsner UNQUALIFIED
Greenwood G StensethRussiaAnna Fali UNQUALIFIED
Isabel N RulapaughUnited KingdomElwin Sharvill NEGOTIATION
Francesco O GarufiRussiaAnna Fali NEGOTIATION
Aditya Z AmigonBrazilAmy Elsner UNQUALIFIED
Sinclair G CaudyArgentinaOnyama Limba NEW
Silvio R InouyeCanadaAsiya Javayant QUALIFIED
Emily N DarakjyCanadaAnna Fali NEW
Jennifer Y BologniaCanadaBernardo Dominic NEGOTIATION
Aika I DoeArgentinaIvan Magalhaes NEW
Rodrigues B RoysterGermanyAmy Elsner UNQUALIFIED
Tony U WaycottCanadaBernardo Dominic RENEWAL
Jefferson N MorascaArgentinaElwin Sharvill NEW
Jefferson E CaldareraBrazilAsiya Javayant NEGOTIATION
Munro V CaldareraCanadaStephen Shaw NEW
Sinclair Y MaletIndiaBernardo Dominic PROPOSAL
Isabel Z BologniaCanadaIvan Magalhaes PROPOSAL
Maisha U BriddickSpainIoni Bowcher PROPOSAL
Tony P InouyeBrazilAnna Fali NEW
James T SaylorsSpainIvan Magalhaes QUALIFIED
Kaitlin Z MacleadFranceXuxue Feng UNQUALIFIED
Ashley G MacleadUnited KingdomOnyama Limba RENEWAL
Leon R GlickCanadaXuxue Feng NEW
Salvatore H StockhamIndiaIvan Magalhaes NEW
Murillo W IturbideUnited KingdomBernardo Dominic UNQUALIFIED
Adams O RoysterBrazilXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja M CaldareraIndiaOnyama Limba UNQUALIFIED
Chavez R StensethCanadaAnna Fali UNQUALIFIED
Antonio G WhobreySpainStephen Shaw RENEWAL
Francesco I ChuiItalyXuxue Feng NEGOTIATION
Jeanfrancois W VocelkaBrazilXuxue Feng PROPOSAL
Chavez X AmigonUnited KingdomStephen Shaw NEGOTIATION
Rodrigues I WaycottAustraliaStephen Shaw NEGOTIATION
Tony L SchemmerCanadaOnyama Limba UNQUALIFIED
Maisha J RutaAustraliaAnna Fali PROPOSAL
Ricardo A WieserUnited KingdomAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford F MacleadUnited Kingdom2024-05-06Chanay, Jeffrey A Esq UNQUALIFIED53Ioni Bowcher
1001Ashley T DarakjyJapan2024-04-29Rousseaux, Michael Esq RENEWAL54Bernardo Dominic
1002Chavez W GlickArgentina2024-05-11Rousseaux, Michael Esq UNQUALIFIED32Stephen Shaw
1003Antonio L RoysterArgentina2024-05-26Buckley Miller Wright RENEWAL10Anna Fali
1004Aika P DarakjyGermany2024-05-15Morlong Associates QUALIFIED12Stephen Shaw
1005Emily P MorascaArgentina2024-05-25Dorl, James J Esq PROPOSAL65Anna Fali
1006Morrow Y FigeroaArgentina2024-05-07Chemel, James L Cpa NEGOTIATION72Bernardo Dominic
1007Clifford X FigeroaRussia2024-05-02Chanay, Jeffrey A Esq NEGOTIATION43Ioni Bowcher
1008Silvio J TollnerJapan2024-05-18Dorl, James J Esq UNQUALIFIED59Anna Fali
1009Isabel O VenereIndia2024-05-18Feltz Printing Service QUALIFIED48Onyama Limba
1010Johnson P VocelkaRussia2024-05-07Rousseaux, Michael Esq NEGOTIATION58Anna Fali
1011Murillo F AmigonGermany2024-05-24Buckley Miller Wright PROPOSAL77Onyama Limba
1012Sinclair C PerinJapan2024-04-29Truhlar And Truhlar Attys UNQUALIFIED67Amy Elsner
1013Murillo Z WieserCanada2024-05-13Chapman, Ross E Esq QUALIFIED74Ioni Bowcher
1014Darci O IturbideBrazil2024-05-09Buckley Miller Wright NEW3Elwin Sharvill
1015Maria I VocelkaItaly2024-05-20Benton, John B Jr UNQUALIFIED61Ioni Bowcher
1016Chavez L GauchoIndia2024-05-24Rangoni Of Florence NEGOTIATION47Anna Fali
1017Wickens F FollerJapan2024-05-22Chemel, James L Cpa PROPOSAL10Ioni Bowcher
1018Smith Y OldroydBrazil2024-05-06Morlong Associates NEW28Asiya Javayant
1019Emily W ShinkoSpain2024-05-23Buckley Miller Wright NEGOTIATION57Anna Fali
1020Mujtaba B MaletSpain2024-05-01Morlong Associates QUALIFIED53Xuxue Feng
1021Isabel F IturbideBrazil2024-05-09Buckley Miller Wright NEGOTIATION6Asiya Javayant
1022James D VocelkaRussia2024-05-05Chapman, Ross E Esq UNQUALIFIED68Bernardo Dominic
1023Sinclair T InouyeArgentina2024-05-27Truhlar And Truhlar Attys NEGOTIATION92Xuxue Feng
1024Claire V PaprockiRussia2024-05-26Feiner Bros PROPOSAL13Asiya Javayant
1025Isabel K GauchoJapan2024-05-24Rangoni Of Florence RENEWAL39Amy Elsner
1026Johnson M BologniaIndia2024-05-24Morlong Associates QUALIFIED79Onyama Limba
1027Silvio E DarakjyGermany2024-05-27Rousseaux, Michael Esq PROPOSAL40Xuxue Feng
1028Izzy R CaudyGermany2024-05-23Commercial Press NEGOTIATION24Ivan Magalhaes
1029Deepesh K PaprockiFrance2024-05-18Benton, John B Jr NEW68Ivan Magalhaes
1030Silvio E GarufiJapan2024-05-03Commercial Press NEW73Anna Fali
1031Faith T NestleCanada2024-05-20Benton, John B Jr NEGOTIATION91Anna Fali
1032Francesco C RoysterArgentina2024-05-13Benton, John B Jr PROPOSAL21Ivan Magalhaes
1033Emily A ButtJapan2024-05-05Chanay, Jeffrey A Esq RENEWAL96Anna Fali
1034Maisha T WaycottUnited Kingdom2024-05-15Chanay, Jeffrey A Esq UNQUALIFIED4Ioni Bowcher
1035Morrow T RutaBrazil2024-05-22Chemel, James L Cpa RENEWAL16Ioni Bowcher
1036Arvin K PaprockiRussia2024-05-25Dorl, James J Esq NEW37Asiya Javayant
1037Mayumi D DoeFrance2024-05-14Buckley Miller Wright UNQUALIFIED5Asiya Javayant
1038Nicolas S SlusarskiUnited Kingdom2024-05-22Rangoni Of Florence NEGOTIATION10Stephen Shaw
1039Johnson E RoysterJapan2024-04-28King, Christopher A Esq PROPOSAL74Elwin Sharvill
1040Isabel D BowleySpain2024-05-17Rangoni Of Florence UNQUALIFIED97Ioni Bowcher
1041Tony Z OstroskyBrazil2024-05-03Rousseaux, Michael Esq RENEWAL64Anna Fali
1042Francesco A GillianFrance2024-05-12Rangoni Of Florence RENEWAL59Asiya Javayant
1043Chavez P SaylorsSpain2024-05-20Feiner Bros NEW97Amy Elsner
1044Smith G RutaFrance2024-05-16Rangoni Of Florence NEGOTIATION59Anna Fali
1045Kaitlin E VocelkaJapan2024-05-05Chapman, Ross E Esq PROPOSAL29Xuxue Feng
1046Emily Q GauchoFrance2024-05-01Commercial Press UNQUALIFIED21Xuxue Feng
1047Tony X AmigonItaly2024-05-11Commercial Press QUALIFIED96Stephen Shaw
1048Kadeem C VenereUnited Kingdom2024-05-26Rangoni Of Florence UNQUALIFIED43Bernardo Dominic
1049Aditya V GillianItaly2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED23Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Chavez C KolmetzAustraliaBernardo Dominic RENEWAL
Darci I SlusarskiBrazilAnna Fali RENEWAL
Misaki Q DoeSpainElwin Sharvill PROPOSAL
Maria Y PaprockiBrazilIvan Magalhaes QUALIFIED
Emily I FollerRussiaAsiya Javayant QUALIFIED
Julie S FollerAustraliaStephen Shaw PROPOSAL
Deepesh Y WieserCanadaBernardo Dominic PROPOSAL
Alejandro B CaldareraJapanBernardo Dominic QUALIFIED
Silvio G OldroydItalyBernardo Dominic NEW
Mujtaba F MarrierArgentinaXuxue Feng PROPOSAL
Claire S BowleyUnited KingdomIoni Bowcher RENEWAL
Faith M FerenczRussiaAnna Fali RENEWAL
Tony N KolmetzArgentinaStephen Shaw NEW
Salvatore V DoeFranceIvan Magalhaes PROPOSAL
Deepesh B MacleadUnited KingdomAnna Fali UNQUALIFIED
Clifford I GillianIndiaIoni Bowcher UNQUALIFIED
Rodrigues B VenereArgentinaBernardo Dominic NEGOTIATION
Sinclair A MarrierSpainStephen Shaw NEW
Sinclair U SergiUnited KingdomIoni Bowcher NEGOTIATION
Kadeem C BriddickIndiaXuxue Feng RENEWAL
Faith X NestleItalyIvan Magalhaes NEGOTIATION
Aditya N IturbideUnited KingdomElwin Sharvill PROPOSAL
Octavia P DoeArgentinaXuxue Feng PROPOSAL
Leon M AmigonGermanyIoni Bowcher PROPOSAL
Jennifer R SaylorsFranceIoni Bowcher NEGOTIATION
Smith X FigeroaItalyAmy Elsner PROPOSAL
Isabel P DarakjyGermanyAsiya Javayant PROPOSAL
Ashley M KuskoFranceIoni Bowcher PROPOSAL
Clifford B MorascaSpainBernardo Dominic PROPOSAL
Chavez W WaycottRussiaAnna Fali NEW
Octavia L StockhamCanadaAmy Elsner QUALIFIED
Nicolas I NestleGermanyElwin Sharvill UNQUALIFIED
Ivar R MorascaArgentinaAmy Elsner UNQUALIFIED
Aruna M NickaJapanElwin Sharvill NEW
Alejandro O WhobreyFranceStephen Shaw QUALIFIED
Salvatore L KuskoGermanyAmy Elsner UNQUALIFIED
Cody A FlosiAustraliaXuxue Feng NEW
Emily E SchemmerCanadaIvan Magalhaes NEGOTIATION
Antonio L ShinkoIndiaAnna Fali UNQUALIFIED
Kadeem J CaudyRussiaOnyama Limba RENEWAL
Sinclair A MorascaItalyIvan Magalhaes NEW
Mayumi O ShinkoUnited KingdomAsiya Javayant NEGOTIATION
Stacey F StensethFranceAnna Fali PROPOSAL
Rodrigues Q GauchoGermanyOnyama Limba NEW
David H KuskoAustraliaXuxue Feng UNQUALIFIED
Salvatore D StensethItalyAsiya Javayant RENEWAL
Adams R CaudyFranceXuxue Feng NEW
Aruna P GlickArgentinaIoni Bowcher QUALIFIED
David U KuskoArgentinaElwin Sharvill NEGOTIATION
Maria X SaylorsUnited KingdomAnna Fali RENEWAL
Frozen Columns
Name
Darci H Maclead
Octavia Q Campain
Chavez D Morasca
Jones O Shinko
Faith E Tollner
Nicolas S Ostrosky
Tony T Glick
Stacey Y Briddick
Tony F Saylors
Maria H Ruta
Leon P Briddick
Munro D Ruta
Stacey O Iturbide
Jeanfrancois Q Waycott
Munro P Waycott
Mujtaba T Foller
Julie L Perin
Murillo X Wieser
Greenwood J Marrier
Mayumi I Slusarski
Salvatore T Foller
Chavez C Slusarski
Aruna K Figeroa
Johnson B Slusarski
Julie J Ostrosky
Aditya K Albares
Kaitlin S Chui
Murillo A Bolognia
Adams T Saylors
Greenwood E Dilliard
Jefferson N Malet
Rodrigues A Schemmer
Julie W Waycott
Mayumi B Campain
Costa Q Maclead
Misaki K Nicka
Rodrigues A Campain
Adams R Shinko
Nicolas P Nicka
Faith W Ferencz
Mayumi G Marrier
Deepesh T Slusarski
Misaki W Sergi
Smith P Morasca
Francesco Q Venere
Kaitlin T Flosi
Cody J Albares
Mujtaba Y Malet
Jennifer A Venere
Cody K Figeroa
IdCountryDate
1000Italy2024-05-07
1001India2024-05-14
1002Australia2024-05-09
1003France2024-05-07
1004Japan2024-05-17
1005Japan2024-05-01
1006France2024-05-16
1007Japan2024-05-23
1008Australia2024-04-28
1009Canada2024-05-05
1010Spain2024-05-16
1011United Kingdom2024-05-03
1012Italy2024-05-14
1013Italy2024-04-28
1014Germany2024-05-12
1015Japan2024-05-01
1016India2024-05-18
1017France2024-05-25
1018Canada2024-05-08
1019Australia2024-05-22
1020France2024-05-15
1021Canada2024-05-12
1022Russia2024-05-12
1023Russia2024-05-24
1024Germany2024-05-11
1025United Kingdom2024-05-08
1026Argentina2024-05-07
1027Argentina2024-05-19
1028Australia2024-05-19
1029France2024-05-17
1030Italy2024-05-08
1031Brazil2024-04-29
1032Australia2024-05-07
1033Australia2024-05-22
1034Japan2024-05-12
1035Australia2024-05-02
1036Russia2024-05-24
1037Russia2024-05-07
1038United Kingdom2024-05-19
1039Brazil2024-05-19
1040France2024-05-08
1041Argentina2024-05-26
1042Japan2024-05-14
1043France2024-05-21
1044Russia2024-05-18
1045Australia2024-05-04
1046Russia2024-05-25
1047Japan2024-05-08
1048Russia2024-05-13
1049Australia2024-05-20

On-Demand Data

NameIdCountryDate
Morrow J Iturbide1000India2024-04-28
Maisha A Malet1001Germany2024-05-14
Octavia R Ostrosky1002Argentina2024-05-03
Tony B Ruta1003France2024-05-17
Jefferson L Campain1004Spain2024-04-28
Juan B Gillian1005United Kingdom2024-04-30
Deepesh P Whobrey1006Brazil2024-04-28
Munro I Wieser1007Russia2024-05-03
Kadeem T Nestle1008India2024-04-30
Juan R Ferencz1009India2024-05-08
Isabel Z Chui1010Argentina2024-05-26
Jennifer K Paprocki1011India2024-05-23
Deepesh V Caldarera1012Brazil2024-05-16
Francesco H Royster1013France2024-05-13
Chavez L Malet1014Japan2024-05-18
Adams R Ferencz1015Russia2024-05-05
Misaki N Rim1016United Kingdom2024-04-30
Ashley M Maclead1017Spain2024-05-08
Jones P Bolognia1018France2024-05-08
Jefferson B Shinko1019Spain2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues S MarrierFranceAsiya Javayant QUALIFIED
Jeanfrancois R BologniaArgentinaElwin Sharvill QUALIFIED
Costa T RoysterUnited KingdomAmy Elsner PROPOSAL
Jennifer H WhobreyAustraliaElwin Sharvill NEW
Salvatore Z VocelkaJapanAsiya Javayant RENEWAL
Clifford P MaletAustraliaOnyama Limba QUALIFIED
Francesco W RutaUnited KingdomAsiya Javayant NEW
James X DilliardJapanAnna Fali RENEWAL
Izzy T GillianItalyAnna Fali QUALIFIED
Adams V FigeroaCanadaIvan Magalhaes UNQUALIFIED
Ashley B CaudyFranceBernardo Dominic NEW
Nicolas X IturbideItalyAnna Fali NEGOTIATION
Misaki S KuskoSpainIvan Magalhaes QUALIFIED
Juan G GillianGermanyElwin Sharvill QUALIFIED
Morrow I PerinUnited KingdomBernardo Dominic UNQUALIFIED
Munro J CampainItalyIvan Magalhaes NEGOTIATION
Ricardo F RimRussiaIoni Bowcher QUALIFIED
Darci S FlosiAustraliaXuxue Feng RENEWAL
David P NestleAustraliaAmy Elsner NEGOTIATION
Morrow J MaletArgentinaAnna Fali PROPOSAL
James C BologniaGermanyElwin Sharvill QUALIFIED
Ivar G SergiGermanyAmy Elsner QUALIFIED
Arvin Q GillianCanadaElwin Sharvill PROPOSAL
Francesco F MaletBrazilElwin Sharvill UNQUALIFIED
Julie N StockhamJapanElwin Sharvill PROPOSAL
Arvin Y AlbaresCanadaElwin Sharvill PROPOSAL
Cody B SergiGermanyOnyama Limba QUALIFIED
Claire J FigeroaJapanXuxue Feng PROPOSAL
Greenwood R GlickBrazilStephen Shaw UNQUALIFIED
Silvio R RutaSpainStephen Shaw NEW
Clifford F WhobreyBrazilElwin Sharvill NEGOTIATION
Antonio L AmigonRussiaXuxue Feng UNQUALIFIED
Mujtaba J VocelkaFranceAnna Fali NEW
Greenwood Z AlbaresBrazilIoni Bowcher NEGOTIATION
Aika J BologniaRussiaElwin Sharvill QUALIFIED
Jones E CaudyArgentinaIoni Bowcher NEGOTIATION
Darci L RoysterSpainOnyama Limba RENEWAL
Mujtaba Y SlusarskiBrazilAnna Fali RENEWAL
Tony Q TollnerItalyStephen Shaw NEW
Sinclair I WieserCanadaIvan Magalhaes PROPOSAL

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