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
Emily F DarakjyItalyIoni Bowcher QUALIFIED
Claire G VocelkaGermanyIvan Magalhaes NEGOTIATION
Clifford V GauchoCanadaElwin Sharvill QUALIFIED
Faith F GillianBrazilAmy Elsner RENEWAL
Salvatore H RimJapanAsiya Javayant UNQUALIFIED
Chavez F FollerJapanElwin Sharvill PROPOSAL
Emily A OstroskyIndiaStephen Shaw RENEWAL
Smith D RimFranceIvan Magalhaes NEGOTIATION
Octavia O StockhamArgentinaBernardo Dominic UNQUALIFIED
Jeanfrancois L DoeJapanIoni Bowcher NEGOTIATION
Ivar T RutaGermanyOnyama Limba NEGOTIATION
Tony V MaletAustraliaXuxue Feng PROPOSAL
Leja V DarakjySpainAnna Fali NEW
Juan F NestleUnited KingdomIoni Bowcher NEGOTIATION
Costa F CampainCanadaAsiya Javayant QUALIFIED
Darci D NestleItalyAmy Elsner UNQUALIFIED
Mayumi E MacleadGermanyAnna Fali NEW
Greenwood X VenereCanadaBernardo Dominic QUALIFIED
Smith Z DoeJapanAnna Fali UNQUALIFIED
Julie L MaletCanadaStephen Shaw NEGOTIATION
Juan V ButtBrazilAmy Elsner NEGOTIATION
Greenwood Z AlbaresBrazilOnyama Limba UNQUALIFIED
Clifford W DoeUnited KingdomStephen Shaw RENEWAL
Tony W RulapaughFranceElwin Sharvill PROPOSAL
Maisha I SergiItalyXuxue Feng NEW
Izzy H WhobreyGermanyAmy Elsner QUALIFIED
Leja A AlbaresFranceOnyama Limba NEW
Faith J RulapaughAustraliaElwin Sharvill RENEWAL
Kaitlin A FerenczItalyBernardo Dominic UNQUALIFIED
Greenwood R FigeroaIndiaOnyama Limba UNQUALIFIED
Kadeem G RulapaughCanadaOnyama Limba NEW
Aditya J WaycottGermanyStephen Shaw RENEWAL
Ivar O DoeSpainIoni Bowcher UNQUALIFIED
Wickens N DarakjyJapanAsiya Javayant RENEWAL
Jeanfrancois X MacleadJapanIvan Magalhaes UNQUALIFIED
Stacey I GlickFranceOnyama Limba QUALIFIED
Julie X GillianJapanBernardo Dominic RENEWAL
Johnson W SchemmerItalyBernardo Dominic QUALIFIED
Maria J GarufiFranceBernardo Dominic QUALIFIED
Izzy D InouyeAustraliaAnna Fali NEW
Izzy K SergiBrazilXuxue Feng PROPOSAL
Mayumi E GauchoJapanOnyama Limba NEW
Adams T CaldareraSpainOnyama Limba NEGOTIATION
Mayumi A MaletGermanyIoni Bowcher NEW
Munro I PerinArgentinaIoni Bowcher QUALIFIED
Ashley D GauchoBrazilElwin Sharvill RENEWAL
Wickens E KolmetzFranceOnyama Limba NEW
Izzy C PoquetteFranceOnyama Limba RENEWAL
Julie O VocelkaArgentinaStephen Shaw NEGOTIATION
Alejandro H DilliardItalyIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Smith S InouyeGermanyElwin Sharvill PROPOSAL
Maisha L ButtGermanyAmy Elsner UNQUALIFIED
Deepesh G ShinkoAustraliaIvan Magalhaes PROPOSAL
Maria H RutaFranceIoni Bowcher QUALIFIED
Adams F VocelkaIndiaElwin Sharvill PROPOSAL
Costa A AlbaresArgentinaXuxue Feng PROPOSAL
Jeanfrancois N MaletSpainElwin Sharvill RENEWAL
Munro L KolmetzIndiaIoni Bowcher QUALIFIED
Julie W PoquetteFranceOnyama Limba PROPOSAL
Darci C ButtIndiaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson W FigeroaIndia2024-06-10Truhlar And Truhlar Attys QUALIFIED85Bernardo Dominic
1001Morrow E WieserGermany2024-06-13Buckley Miller Wright RENEWAL42Bernardo Dominic
1002David O MacleadFrance2024-06-19Morlong Associates RENEWAL74Amy Elsner
1003Maria A IturbideRussia2024-05-31Chemel, James L Cpa RENEWAL63Amy Elsner
1004Ivar R BriddickIndia2024-06-21Truhlar And Truhlar Attys NEGOTIATION24Asiya Javayant
1005Murillo I OstroskyGermany2024-05-29Chanay, Jeffrey A Esq NEW92Ivan Magalhaes
1006Emily A SaylorsUnited Kingdom2024-06-16Truhlar And Truhlar Attys NEW31Anna Fali
1007Johnson M VenereSpain2024-06-14Truhlar And Truhlar Attys RENEWAL94Asiya Javayant
1008Misaki N GarufiBrazil2024-06-05Truhlar And Truhlar Attys QUALIFIED57Ivan Magalhaes
1009Maisha E RimSpain2024-05-30Chanay, Jeffrey A Esq PROPOSAL68Bernardo Dominic
1010Nicolas Z AmigonSpain2024-06-20Truhlar And Truhlar Attys PROPOSAL54Asiya Javayant
1011Emily Z ShinkoGermany2024-05-30Feltz Printing Service PROPOSAL41Amy Elsner
1012Chavez Q DarakjyJapan2024-06-02Rousseaux, Michael Esq RENEWAL72Amy Elsner
1013Leon B KuskoUnited Kingdom2024-05-25Chapman, Ross E Esq QUALIFIED25Elwin Sharvill
1014Faith L CaudyFrance2024-06-09Rousseaux, Michael Esq NEW95Ivan Magalhaes
1015Izzy O VenereRussia2024-06-18Rangoni Of Florence NEW13Onyama Limba
1016Kadeem F RutaSpain2024-06-09Morlong Associates RENEWAL55Xuxue Feng
1017Claire M MorascaJapan2024-06-05Feiner Bros RENEWAL88Ioni Bowcher
1018Aditya F GarufiGermany2024-06-20Morlong Associates QUALIFIED24Asiya Javayant
1019Ivar E IturbideIndia2024-05-24King, Christopher A Esq NEGOTIATION19Asiya Javayant
1020Arvin A GauchoGermany2024-06-07Rousseaux, Michael Esq NEW99Asiya Javayant
1021Jennifer S FlosiFrance2024-06-06Morlong Associates PROPOSAL37Ioni Bowcher
1022Smith N DarakjyJapan2024-06-15Chemel, James L Cpa PROPOSAL49Ivan Magalhaes
1023Claire R NestleUnited Kingdom2024-05-28Chapman, Ross E Esq QUALIFIED83Amy Elsner
1024Tony I RimGermany2024-06-14Dorl, James J Esq PROPOSAL67Stephen Shaw
1025Leja C RulapaughRussia2024-06-19Feltz Printing Service NEGOTIATION21Xuxue Feng
1026Maria A PaprockiFrance2024-06-09Rousseaux, Michael Esq NEW97Stephen Shaw
1027James J WhobreyArgentina2024-06-02Morlong Associates RENEWAL2Xuxue Feng
1028Silvio N VenereRussia2024-06-18Chanay, Jeffrey A Esq NEGOTIATION52Elwin Sharvill
1029Munro A BologniaJapan2024-06-07Chapman, Ross E Esq RENEWAL83Onyama Limba
1030Antonio J DoeArgentina2024-05-28Feiner Bros RENEWAL90Ioni Bowcher
1031Jefferson Q VocelkaRussia2024-06-15Buckley Miller Wright PROPOSAL26Amy Elsner
1032Tony W MaletGermany2024-05-24Buckley Miller Wright NEGOTIATION67Asiya Javayant
1033Misaki L FerenczGermany2024-05-24Chemel, James L Cpa PROPOSAL98Anna Fali
1034Nicolas E CaudyCanada2024-06-10Morlong Associates PROPOSAL31Xuxue Feng
1035Misaki Q VenereBrazil2024-06-11Feltz Printing Service RENEWAL12Bernardo Dominic
1036Kaitlin P OstroskyItaly2024-05-30Truhlar And Truhlar Attys PROPOSAL79Asiya Javayant
1037Kadeem C SergiBrazil2024-05-25Feiner Bros RENEWAL65Onyama Limba
1038Deepesh M MarrierCanada2024-06-11Printing Dimensions PROPOSAL45Asiya Javayant
1039Cody L StockhamCanada2024-05-26Dorl, James J Esq NEGOTIATION16Amy Elsner
1040Jefferson L GillianUnited Kingdom2024-05-31Printing Dimensions PROPOSAL75Ioni Bowcher
1041Alejandro T NickaBrazil2024-06-03Chemel, James L Cpa QUALIFIED98Ivan Magalhaes
1042Chavez I CampainIndia2024-05-30Morlong Associates RENEWAL52Onyama Limba
1043Kaitlin F AlbaresAustralia2024-06-13Dorl, James J Esq QUALIFIED48Ivan Magalhaes
1044Aditya F NestleCanada2024-05-23Rousseaux, Michael Esq RENEWAL88Amy Elsner
1045Isabel J PoquetteAustralia2024-06-08Benton, John B Jr RENEWAL66Asiya Javayant
1046Ivar A PaprockiArgentina2024-06-20Chanay, Jeffrey A Esq RENEWAL43Bernardo Dominic
1047Ricardo G StensethArgentina2024-05-30Buckley Miller Wright QUALIFIED44Asiya Javayant
1048Octavia Q BriddickUnited Kingdom2024-06-01Rangoni Of Florence PROPOSAL78Onyama Limba
1049Leon P FollerArgentina2024-06-01Buckley Miller Wright NEGOTIATION78Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Aruna S DoeArgentinaStephen Shaw NEGOTIATION
Morrow D NestleItalyElwin Sharvill NEW
Sinclair H FlosiItalyIvan Magalhaes NEW
Antonio W MacleadAustraliaXuxue Feng UNQUALIFIED
Stacey M AmigonItalyIoni Bowcher RENEWAL
Nicolas N WhobreyBrazilStephen Shaw QUALIFIED
James T CaudyUnited KingdomAsiya Javayant PROPOSAL
Costa M MaletJapanBernardo Dominic RENEWAL
Murillo B TollnerBrazilIvan Magalhaes PROPOSAL
Jefferson N WieserBrazilElwin Sharvill NEW
Salvatore Q WaycottBrazilXuxue Feng QUALIFIED
Smith O MaletSpainXuxue Feng QUALIFIED
Munro F MarrierRussiaAnna Fali NEGOTIATION
Salvatore R FigeroaItalyElwin Sharvill UNQUALIFIED
Jeanfrancois L GauchoArgentinaElwin Sharvill NEGOTIATION
Ashley V ButtArgentinaOnyama Limba QUALIFIED
David Z RulapaughArgentinaIoni Bowcher PROPOSAL
Aruna F OldroydIndiaAsiya Javayant NEW
Wickens S GauchoJapanIvan Magalhaes RENEWAL
Wickens I GarufiSpainAnna Fali QUALIFIED
Silvio V BowleyFranceOnyama Limba UNQUALIFIED
Faith A FlosiArgentinaXuxue Feng NEW
Greenwood V DarakjyIndiaIvan Magalhaes RENEWAL
Faith C WaycottGermanyIvan Magalhaes PROPOSAL
Francesco A InouyeSpainAsiya Javayant RENEWAL
Ivar A FerenczSpainAsiya Javayant NEW
Nicolas A KuskoJapanAnna Fali NEGOTIATION
Jones B GauchoItalyAmy Elsner NEW
Maisha S NestleGermanyAnna Fali PROPOSAL
Emily V SaylorsSpainIoni Bowcher UNQUALIFIED
Misaki D SergiBrazilAnna Fali QUALIFIED
Cody V BowleyFranceAnna Fali PROPOSAL
Costa J CaudyIndiaStephen Shaw PROPOSAL
Jeanfrancois A OstroskyArgentinaXuxue Feng NEW
Kadeem Q DoeIndiaAmy Elsner NEW
Juan U FigeroaJapanOnyama Limba NEGOTIATION
Faith H OstroskySpainIoni Bowcher NEGOTIATION
Sinclair L WaycottJapanXuxue Feng NEGOTIATION
Julie A KuskoJapanStephen Shaw NEW
Leja V PoquetteArgentinaBernardo Dominic RENEWAL
Mujtaba U StensethRussiaXuxue Feng NEW
Izzy N GauchoGermanyAmy Elsner QUALIFIED
Aditya M StockhamFranceAmy Elsner RENEWAL
Alejandro H VenereCanadaBernardo Dominic RENEWAL
Leja G FerenczAustraliaXuxue Feng NEW
Johnson Y MacleadRussiaStephen Shaw PROPOSAL
Mayumi J MorascaRussiaAnna Fali PROPOSAL
Tony L GarufiRussiaAnna Fali NEW
Rodrigues D DarakjyAustraliaIoni Bowcher NEGOTIATION
Francesco K MarrierJapanOnyama Limba QUALIFIED
Frozen Columns
Name
James X Perin
Deepesh K Iturbide
Leja B Bowley
Munro D Caudy
Salvatore G Inouye
Chavez G Amigon
Alejandro S Garufi
Kadeem M Albares
Rodrigues U Rulapaugh
Ivar B Stenseth
Aruna X Wieser
Jones R Waycott
Adams Y Amigon
Maria G Morasca
Darci T Ostrosky
Aika E Iturbide
Clifford Z Maclead
Leja U Caldarera
James Z Malet
Isabel X Stenseth
Morrow N Garufi
Claire L Garufi
Jones F Caudy
Izzy Z Kolmetz
Francesco I Stenseth
Emily Z Shinko
Misaki V Bowley
Sinclair B Garufi
Kadeem P Garufi
Clifford U Rim
Murillo Z Stockham
Sinclair G Kolmetz
Francesco A Briddick
Faith E Ruta
Cody Z Sergi
Mujtaba L Oldroyd
Deepesh Q Vocelka
Aditya V Iturbide
Jefferson Z Kusko
Cody B Malet
Ivar S Albares
Mujtaba X Darakjy
Deepesh J Caldarera
Chavez S Royster
James L Kolmetz
Aruna T Rim
Ashley N Kolmetz
Darci R Shinko
Cody Z Oldroyd
Alejandro I Waycott
IdCountryDate
1000Canada2024-05-27
1001Italy2024-06-05
1002Russia2024-06-12
1003Brazil2024-05-27
1004India2024-06-18
1005France2024-05-29
1006India2024-06-03
1007Spain2024-06-04
1008India2024-06-15
1009Germany2024-06-12
1010Russia2024-05-27
1011United Kingdom2024-05-28
1012Brazil2024-06-14
1013Russia2024-06-01
1014Australia2024-06-12
1015Russia2024-05-24
1016Australia2024-05-30
1017Germany2024-06-20
1018Canada2024-06-17
1019Japan2024-06-08
1020Spain2024-05-27
1021Germany2024-06-20
1022Germany2024-06-16
1023Germany2024-06-15
1024Canada2024-06-18
1025Japan2024-06-09
1026Argentina2024-06-08
1027India2024-06-02
1028Canada2024-06-04
1029India2024-05-31
1030France2024-06-16
1031Argentina2024-05-25
1032Germany2024-06-07
1033Japan2024-06-04
1034Argentina2024-06-08
1035Italy2024-06-16
1036Canada2024-06-04
1037Argentina2024-06-10
1038Spain2024-06-07
1039India2024-06-21
1040France2024-06-16
1041Spain2024-06-04
1042Russia2024-06-14
1043Canada2024-06-21
1044United Kingdom2024-05-27
1045Argentina2024-06-09
1046Italy2024-06-19
1047Spain2024-06-17
1048Spain2024-05-28
1049Australia2024-06-11

On-Demand Data

NameIdCountryDate
Murillo G Inouye1000Italy2024-06-12
Emily T Sergi1001Russia2024-05-26
Wickens I Poquette1002Canada2024-06-10
Clifford W Doe1003India2024-06-14
Leon Q Dilliard1004Russia2024-06-18
Adams J Garufi1005Japan2024-06-18
Clifford E Doe1006Italy2024-06-07
Tony T Malet1007India2024-06-09
Murillo Z Chui1008Brazil2024-06-10
Greenwood W Poquette1009Russia2024-06-13
Ashley Z Stockham1010France2024-06-03
Misaki S Butt1011Italy2024-06-17
Nicolas U Nestle1012Italy2024-06-06
Juan F Poquette1013Spain2024-05-26
Aika Y Malet1014Argentina2024-06-01
Stacey O Stockham1015India2024-06-08
Leon J Gaucho1016Canada2024-06-18
Antonio Y Butt1017Russia2024-05-24
Salvatore L Caudy1018United Kingdom2024-05-29
Deepesh Z Rim1019United Kingdom2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez O OstroskyBrazilStephen Shaw QUALIFIED
Costa S SergiRussiaIoni Bowcher RENEWAL
James Q SlusarskiArgentinaAsiya Javayant NEW
Emily C VocelkaAustraliaStephen Shaw NEGOTIATION
Julie Y KolmetzFranceIvan Magalhaes PROPOSAL
Francesco U MacleadAustraliaElwin Sharvill PROPOSAL
Izzy N StensethJapanAsiya Javayant QUALIFIED
Emily V IturbideUnited KingdomAsiya Javayant QUALIFIED
Jefferson R MacleadSpainIvan Magalhaes UNQUALIFIED
Isabel F RulapaughGermanyXuxue Feng NEW
Izzy C MorascaJapanXuxue Feng NEW
Antonio Q MacleadIndiaIvan Magalhaes UNQUALIFIED
Jennifer M SergiBrazilAmy Elsner PROPOSAL
Darci S OldroydUnited KingdomOnyama Limba UNQUALIFIED
Wickens N BriddickFranceStephen Shaw RENEWAL
Munro R MorascaCanadaBernardo Dominic NEGOTIATION
Aditya O KolmetzAustraliaIoni Bowcher PROPOSAL
Adams J MaletRussiaAnna Fali QUALIFIED
Alejandro C AmigonBrazilAmy Elsner QUALIFIED
Julie F BowleyUnited KingdomOnyama Limba UNQUALIFIED
Wickens Y AlbaresSpainIvan Magalhaes UNQUALIFIED
Faith G FollerFranceStephen Shaw PROPOSAL
Chavez Q SergiCanadaStephen Shaw UNQUALIFIED
James Y OldroydSpainBernardo Dominic QUALIFIED
Jefferson U BologniaAustraliaAsiya Javayant PROPOSAL
Adams M CampainIndiaAsiya Javayant PROPOSAL
Julie L CaudyUnited KingdomAsiya Javayant NEGOTIATION
Tony O BowleyRussiaStephen Shaw NEW
Nicolas J OstroskyFranceOnyama Limba NEW
Jones U KolmetzAustraliaElwin Sharvill QUALIFIED
Wickens P TollnerItalyElwin Sharvill RENEWAL
Jefferson H GlickCanadaElwin Sharvill PROPOSAL
Jefferson V CaldareraIndiaStephen Shaw NEGOTIATION
Smith H MorascaItalyElwin Sharvill PROPOSAL
Tony B PaprockiItalyIoni Bowcher RENEWAL
Octavia W CaudyBrazilXuxue Feng RENEWAL
Munro Y MaletItalyAmy Elsner NEW
Antonio K DoeUnited KingdomAsiya Javayant PROPOSAL
Francesco F FerenczBrazilOnyama Limba UNQUALIFIED
Tony I DoeArgentinaIvan Magalhaes QUALIFIED

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