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
Misaki F NestleItalyBernardo Dominic RENEWAL
Mujtaba A MorascaGermanyElwin Sharvill UNQUALIFIED
Leja Y GillianArgentinaOnyama Limba NEW
Aditya D MorascaGermanyOnyama Limba PROPOSAL
Sinclair O OstroskyBrazilAnna Fali NEGOTIATION
Cody T RulapaughCanadaIoni Bowcher NEW
Adams W IturbideJapanOnyama Limba NEGOTIATION
Jones L OstroskyUnited KingdomElwin Sharvill NEGOTIATION
Deepesh U CaudySpainBernardo Dominic RENEWAL
Maisha S BriddickJapanAsiya Javayant NEW
Johnson S MarrierIndiaStephen Shaw UNQUALIFIED
Antonio F MorascaFranceOnyama Limba NEGOTIATION
Johnson D GauchoFranceAnna Fali NEGOTIATION
Adams J BowleyRussiaAsiya Javayant UNQUALIFIED
Juan Q DarakjyUnited KingdomStephen Shaw RENEWAL
Emily N MaletIndiaAmy Elsner PROPOSAL
Munro R BriddickItalyIoni Bowcher NEW
Misaki N BologniaCanadaAsiya Javayant QUALIFIED
Izzy L StockhamArgentinaAnna Fali QUALIFIED
Costa A DoeSpainOnyama Limba RENEWAL
Jones H PoquetteCanadaIvan Magalhaes PROPOSAL
Isabel A AmigonRussiaStephen Shaw PROPOSAL
Adams Y PaprockiUnited KingdomOnyama Limba NEGOTIATION
Wickens U NestleFranceIvan Magalhaes RENEWAL
David O NickaUnited KingdomAnna Fali UNQUALIFIED
Johnson I DoeUnited KingdomIvan Magalhaes PROPOSAL
Isabel H GauchoItalyAmy Elsner QUALIFIED
Mayumi F SaylorsRussiaAmy Elsner NEGOTIATION
Octavia U GlickItalyStephen Shaw NEW
Octavia J ChuiAustraliaAmy Elsner UNQUALIFIED
Aruna D StensethIndiaStephen Shaw UNQUALIFIED
Adams D TollnerFranceAnna Fali NEGOTIATION
Ashley I MorascaJapanStephen Shaw RENEWAL
Clifford Z MaletGermanyIvan Magalhaes QUALIFIED
Rodrigues A CaudyGermanyElwin Sharvill PROPOSAL
Kadeem L SchemmerArgentinaBernardo Dominic NEW
Chavez M KolmetzGermanyIoni Bowcher RENEWAL
Wickens A BologniaItalyIvan Magalhaes UNQUALIFIED
Clifford V BowleyUnited KingdomBernardo Dominic PROPOSAL
Isabel T GarufiAustraliaElwin Sharvill PROPOSAL
Chavez R RulapaughCanadaOnyama Limba QUALIFIED
Francesco M CaldareraJapanStephen Shaw PROPOSAL
Cody S VocelkaArgentinaOnyama Limba NEGOTIATION
Arvin N RimGermanyOnyama Limba UNQUALIFIED
Kadeem T RutaAustraliaStephen Shaw QUALIFIED
Jefferson F TollnerSpainAnna Fali NEW
Faith L SchemmerCanadaAmy Elsner PROPOSAL
Izzy C OstroskyRussiaIoni Bowcher NEW
Mayumi W TollnerIndiaAmy Elsner RENEWAL
Claire U MacleadRussiaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro V FigeroaFranceAsiya Javayant UNQUALIFIED
Maria N ButtUnited KingdomStephen Shaw NEGOTIATION
Alejandro D VenereRussiaXuxue Feng QUALIFIED
Johnson N AmigonJapanXuxue Feng RENEWAL
Johnson S TollnerFranceElwin Sharvill PROPOSAL
Adams E FollerCanadaXuxue Feng NEGOTIATION
Cody J DilliardItalyAmy Elsner RENEWAL
Jeanfrancois Z RulapaughSpainXuxue Feng NEGOTIATION
Greenwood H RutaItalyBernardo Dominic PROPOSAL
Johnson G GauchoBrazilAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey P CampainArgentina2024-05-02Commercial Press PROPOSAL97Stephen Shaw
1001Julie F OldroydIndia2024-05-15Chemel, James L Cpa RENEWAL59Bernardo Dominic
1002Jeanfrancois L MacleadCanada2024-05-12Feiner Bros NEW20Xuxue Feng
1003Silvio V VenereIndia2024-05-18Feltz Printing Service NEGOTIATION63Asiya Javayant
1004Faith L VocelkaIndia2024-05-07Dorl, James J Esq NEW94Onyama Limba
1005Aruna C NickaUnited Kingdom2024-05-08Commercial Press RENEWAL77Amy Elsner
1006Smith P RutaIndia2024-05-28Buckley Miller Wright UNQUALIFIED62Bernardo Dominic
1007Johnson Z ButtGermany2024-05-04Dorl, James J Esq UNQUALIFIED91Elwin Sharvill
1008Darci J IturbideGermany2024-05-22Rousseaux, Michael Esq QUALIFIED13Ioni Bowcher
1009Darci P SchemmerSpain2024-05-06Chemel, James L Cpa PROPOSAL31Ioni Bowcher
1010Mujtaba U MorascaRussia2024-05-07Chemel, James L Cpa QUALIFIED24Asiya Javayant
1011Julie H RimAustralia2024-05-19Commercial Press RENEWAL68Anna Fali
1012Stacey T SergiJapan2024-05-09Feiner Bros NEW78Stephen Shaw
1013Salvatore V IturbideIndia2024-05-10Chemel, James L Cpa UNQUALIFIED13Onyama Limba
1014Faith R SlusarskiBrazil2024-05-22Benton, John B Jr NEW39Elwin Sharvill
1015Jeanfrancois G WhobreyUnited Kingdom2024-05-16Rangoni Of Florence RENEWAL41Xuxue Feng
1016Faith Q OldroydIndia2024-05-26Chanay, Jeffrey A Esq PROPOSAL67Amy Elsner
1017Clifford Q MorascaSpain2024-05-25King, Christopher A Esq UNQUALIFIED94Anna Fali
1018Izzy J ShinkoFrance2024-05-24King, Christopher A Esq RENEWAL12Onyama Limba
1019Cody Q FlosiFrance2024-05-15Benton, John B Jr NEGOTIATION77Elwin Sharvill
1020Francesco W ButtAustralia2024-05-30Buckley Miller Wright NEW86Stephen Shaw
1021Aditya D ChuiJapan2024-05-10Feiner Bros QUALIFIED44Anna Fali
1022Ashley N WhobreySpain2024-05-17Feiner Bros QUALIFIED18Anna Fali
1023Ricardo D BriddickSpain2024-05-08Chapman, Ross E Esq RENEWAL13Stephen Shaw
1024Jeanfrancois Z OldroydArgentina2024-05-06Commercial Press RENEWAL78Ivan Magalhaes
1025Sinclair K IturbideFrance2024-05-14Truhlar And Truhlar Attys UNQUALIFIED30Elwin Sharvill
1026Munro C FigeroaAustralia2024-05-06King, Christopher A Esq RENEWAL19Elwin Sharvill
1027Ivar F TollnerFrance2024-05-08Truhlar And Truhlar Attys RENEWAL36Bernardo Dominic
1028Munro M SchemmerJapan2024-05-23King, Christopher A Esq NEW68Elwin Sharvill
1029Mujtaba L OldroydBrazil2024-05-16Rousseaux, Michael Esq NEW8Xuxue Feng
1030Salvatore K BologniaRussia2024-05-08Chanay, Jeffrey A Esq RENEWAL69Amy Elsner
1031Munro G RoysterUnited Kingdom2024-05-18Feltz Printing Service QUALIFIED76Anna Fali
1032Rodrigues E InouyeCanada2024-05-10King, Christopher A Esq NEGOTIATION74Onyama Limba
1033Adams V RoysterGermany2024-05-21Dorl, James J Esq QUALIFIED74Elwin Sharvill
1034Aditya K DoeCanada2024-05-17Commercial Press QUALIFIED86Ivan Magalhaes
1035Ivar Z WhobreyAustralia2024-05-08Chapman, Ross E Esq QUALIFIED15Stephen Shaw
1036Costa I BriddickBrazil2024-05-29Benton, John B Jr NEW43Bernardo Dominic
1037Aditya O PerinUnited Kingdom2024-05-03Rangoni Of Florence QUALIFIED66Onyama Limba
1038Stacey C WhobreyCanada2024-05-27Rousseaux, Michael Esq UNQUALIFIED76Onyama Limba
1039Tony B NestleCanada2024-05-26Commercial Press UNQUALIFIED62Bernardo Dominic
1040Juan N TollnerGermany2024-05-02Buckley Miller Wright PROPOSAL10Xuxue Feng
1041Faith V AlbaresRussia2024-05-12Morlong Associates QUALIFIED98Stephen Shaw
1042Morrow K KolmetzItaly2024-05-09Chapman, Ross E Esq NEGOTIATION87Xuxue Feng
1043Johnson T DarakjyUnited Kingdom2024-05-09Printing Dimensions UNQUALIFIED25Bernardo Dominic
1044Juan V IturbideIndia2024-05-13Chanay, Jeffrey A Esq UNQUALIFIED11Amy Elsner
1045Johnson Z OstroskyCanada2024-05-16King, Christopher A Esq QUALIFIED24Elwin Sharvill
1046Arvin O GarufiSpain2024-05-01Chemel, James L Cpa UNQUALIFIED90Ivan Magalhaes
1047Deepesh G SaylorsArgentina2024-05-16Feiner Bros PROPOSAL18Amy Elsner
1048Aruna G StensethAustralia2024-05-29Rousseaux, Michael Esq NEGOTIATION0Amy Elsner
1049Jefferson L BowleyCanada2024-05-24Rangoni Of Florence NEGOTIATION87Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin E SchemmerCanadaAnna Fali UNQUALIFIED
Aditya K AlbaresArgentinaAmy Elsner NEW
Juan M NickaSpainIoni Bowcher UNQUALIFIED
Jennifer Y RulapaughAustraliaStephen Shaw UNQUALIFIED
Ivar A ButtBrazilBernardo Dominic NEW
Claire G InouyeUnited KingdomOnyama Limba QUALIFIED
Aika D GlickCanadaXuxue Feng PROPOSAL
Cody Z BowleySpainStephen Shaw RENEWAL
Jeanfrancois H KolmetzFranceAnna Fali NEGOTIATION
Costa J MaletItalyBernardo Dominic QUALIFIED
Faith N GarufiAustraliaBernardo Dominic NEW
Costa J KuskoRussiaOnyama Limba PROPOSAL
Kadeem X KuskoSpainIvan Magalhaes QUALIFIED
Johnson X InouyeGermanyAnna Fali NEW
Antonio D GarufiArgentinaOnyama Limba NEGOTIATION
Salvatore S FlosiFranceBernardo Dominic NEGOTIATION
Adams N RimUnited KingdomIoni Bowcher NEW
Salvatore U BriddickArgentinaOnyama Limba UNQUALIFIED
Arvin K InouyeJapanOnyama Limba QUALIFIED
Octavia N FigeroaJapanStephen Shaw NEGOTIATION
Emily A RutaJapanXuxue Feng PROPOSAL
Faith I PoquetteItalyElwin Sharvill UNQUALIFIED
Cody M FlosiGermanyIvan Magalhaes NEW
Julie G KolmetzAustraliaOnyama Limba UNQUALIFIED
Jefferson L BriddickUnited KingdomAmy Elsner RENEWAL
Wickens C PoquetteAustraliaBernardo Dominic RENEWAL
Ivar W StensethAustraliaAnna Fali RENEWAL
Jones Z DilliardArgentinaAnna Fali UNQUALIFIED
Stacey S PoquetteArgentinaElwin Sharvill NEW
Kadeem U SergiGermanyAmy Elsner NEW
Izzy E DarakjyGermanyAnna Fali RENEWAL
Morrow H PaprockiGermanyStephen Shaw UNQUALIFIED
Mayumi R FigeroaGermanyIvan Magalhaes QUALIFIED
James V FigeroaAustraliaXuxue Feng UNQUALIFIED
Faith G GlickJapanIvan Magalhaes PROPOSAL
Sinclair G RimIndiaBernardo Dominic UNQUALIFIED
Jefferson M KolmetzUnited KingdomOnyama Limba NEGOTIATION
Leja P StensethIndiaElwin Sharvill NEGOTIATION
Nicolas L AmigonItalyOnyama Limba NEW
Munro F BriddickCanadaAsiya Javayant NEGOTIATION
Faith N TollnerItalyAsiya Javayant PROPOSAL
Darci X GarufiSpainAnna Fali NEGOTIATION
Nicolas A GauchoSpainXuxue Feng NEW
Murillo V TollnerJapanAnna Fali UNQUALIFIED
Munro J MaletUnited KingdomElwin Sharvill PROPOSAL
Costa U ShinkoGermanyStephen Shaw NEGOTIATION
Deepesh Y RulapaughJapanAnna Fali NEW
Aditya J BowleyUnited KingdomAnna Fali NEGOTIATION
Arvin T SlusarskiAustraliaAnna Fali RENEWAL
Juan L RulapaughGermanyIoni Bowcher QUALIFIED
Frozen Columns
Name
Johnson I Rulapaugh
Tony C Venere
Kaitlin M Perin
Alejandro L Darakjy
Cody N Vocelka
Costa P Dilliard
Costa T Shinko
Misaki J Foller
Ricardo X Doe
Ricardo O Iturbide
Aika X Wieser
Aika C Morasca
Leja K Poquette
Smith B Morasca
Stacey W Kolmetz
Cody X Gaucho
Claire E Briddick
James Y Maclead
Kadeem U Wieser
Octavia Z Royster
Jones Y Doe
Faith D Gaucho
Johnson E Venere
Leja V Venere
Claire U Shinko
Juan T Wieser
Stacey V Figeroa
Claire X Vocelka
Leon H Garufi
Adams U Morasca
Isabel I Royster
Julie I Stockham
Ricardo S Glick
Greenwood F Ruta
Ivar K Iturbide
Ricardo O Ferencz
Greenwood C Malet
Emily W Caldarera
Jeanfrancois A Tollner
Ashley R Bowley
Kadeem U Wieser
Jefferson G Garufi
Octavia N Ferencz
Jennifer F Bowley
Francesco F Nestle
Silvio C Butt
Aruna S Caldarera
Kaitlin Q Bolognia
Stacey I Malet
Maisha S Flosi
IdCountryDate
1000Russia2024-05-18
1001Brazil2024-05-19
1002Spain2024-05-01
1003Germany2024-05-07
1004Japan2024-05-20
1005India2024-05-28
1006India2024-05-13
1007Australia2024-05-05
1008Spain2024-05-27
1009Russia2024-05-08
1010Japan2024-05-28
1011Australia2024-05-27
1012Germany2024-05-12
1013Italy2024-05-11
1014India2024-05-03
1015Germany2024-05-17
1016Japan2024-05-25
1017Italy2024-05-19
1018Italy2024-05-25
1019Canada2024-05-28
1020United Kingdom2024-05-03
1021India2024-05-25
1022Brazil2024-05-06
1023France2024-05-11
1024Italy2024-05-08
1025Australia2024-05-10
1026Spain2024-05-11
1027United Kingdom2024-05-23
1028Italy2024-05-04
1029Italy2024-05-05
1030India2024-05-12
1031India2024-05-09
1032Italy2024-05-20
1033India2024-05-21
1034France2024-05-02
1035India2024-05-24
1036India2024-05-20
1037Brazil2024-05-25
1038Canada2024-05-29
1039France2024-05-08
1040Brazil2024-05-28
1041Russia2024-05-05
1042Argentina2024-05-08
1043France2024-05-20
1044Argentina2024-05-30
1045Spain2024-05-24
1046Canada2024-05-28
1047Brazil2024-05-07
1048Italy2024-05-28
1049Germany2024-05-15

On-Demand Data

NameIdCountryDate
Antonio G Slusarski1000Brazil2024-05-23
Aika B Darakjy1001Germany2024-05-24
Darci T Flosi1002Argentina2024-05-30
Greenwood B Albares1003United Kingdom2024-05-09
Ricardo W Wieser1004Japan2024-05-27
Izzy U Waycott1005Germany2024-05-19
Julie Y Rulapaugh1006Australia2024-05-15
Julie L Ostrosky1007Germany2024-05-18
Maria G Ostrosky1008Argentina2024-05-09
Salvatore U Inouye1009Brazil2024-05-22
Misaki L Caldarera1010India2024-05-12
Johnson S Royster1011Argentina2024-05-15
Mayumi M Foller1012Italy2024-05-28
Adams A Iturbide1013Italy2024-05-15
Jeanfrancois Z Slusarski1014Canada2024-05-03
Jefferson C Briddick1015Canada2024-05-26
Chavez A Waycott1016Australia2024-05-07
Cody Q Saylors1017Japan2024-05-17
Claire N Gillian1018Russia2024-05-17
Morrow E Shinko1019Japan2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow P CampainSpainElwin Sharvill PROPOSAL
Leja K DarakjyCanadaXuxue Feng PROPOSAL
Jefferson H TollnerSpainStephen Shaw NEW
Ivar X StockhamRussiaElwin Sharvill RENEWAL
Salvatore S CampainArgentinaStephen Shaw UNQUALIFIED
Leon L AmigonFranceStephen Shaw NEW
Ivar P SchemmerRussiaIvan Magalhaes QUALIFIED
Johnson P FlosiBrazilOnyama Limba UNQUALIFIED
Maria B GlickIndiaElwin Sharvill QUALIFIED
Adams S IturbideIndiaIoni Bowcher NEW
Rodrigues K RoysterUnited KingdomIvan Magalhaes PROPOSAL
Emily D VocelkaGermanyOnyama Limba UNQUALIFIED
Johnson D VocelkaAustraliaBernardo Dominic NEGOTIATION
Octavia S PerinAustraliaAnna Fali NEW
Juan N TollnerRussiaIoni Bowcher RENEWAL
Johnson Z AmigonBrazilIvan Magalhaes UNQUALIFIED
Rodrigues J InouyeItalyIvan Magalhaes PROPOSAL
Salvatore P MaletFranceIvan Magalhaes RENEWAL
Johnson C AlbaresJapanOnyama Limba NEGOTIATION
Leon L AlbaresSpainAmy Elsner RENEWAL
Ashley K OstroskyAustraliaIoni Bowcher QUALIFIED
Ashley G KolmetzUnited KingdomAmy Elsner UNQUALIFIED
Jefferson B TollnerJapanXuxue Feng RENEWAL
Leon R WieserGermanyBernardo Dominic RENEWAL
Costa X GlickJapanIvan Magalhaes NEW
Nicolas K GlickArgentinaAsiya Javayant QUALIFIED
Claire B FerenczGermanyAnna Fali UNQUALIFIED
Maisha N PaprockiIndiaAmy Elsner UNQUALIFIED
Aditya Z KolmetzSpainAmy Elsner QUALIFIED
Antonio X FerenczCanadaIvan Magalhaes NEW
Emily S FigeroaRussiaStephen Shaw QUALIFIED
Alejandro C IturbideArgentinaAmy Elsner NEGOTIATION
Alejandro H FlosiFranceIoni Bowcher NEGOTIATION
Nicolas X MaletRussiaElwin Sharvill NEW
Morrow X CampainGermanyIvan Magalhaes NEW
Aruna V CaudyArgentinaIoni Bowcher RENEWAL
Sinclair O MaletSpainAsiya Javayant PROPOSAL
Salvatore N SaylorsRussiaAmy Elsner NEGOTIATION
Smith C StockhamItalyIoni Bowcher NEW
Nicolas C CaudyAustraliaBernardo 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>