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
Faith K RutaGermanyStephen Shaw NEW
Smith Q GlickArgentinaElwin Sharvill PROPOSAL
Smith N StensethItalyIoni Bowcher NEGOTIATION
Silvio Y SchemmerBrazilAsiya Javayant RENEWAL
Aditya P NickaIndiaXuxue Feng RENEWAL
Murillo C GillianUnited KingdomIvan Magalhaes RENEWAL
Adams Y GlickItalyIoni Bowcher PROPOSAL
Isabel V DarakjyIndiaBernardo Dominic NEW
Deepesh D CaldareraItalyBernardo Dominic NEGOTIATION
Johnson O GauchoGermanyIoni Bowcher QUALIFIED
Smith T KuskoJapanAnna Fali RENEWAL
Mujtaba J SergiFranceAsiya Javayant RENEWAL
Juan T IturbideUnited KingdomAmy Elsner QUALIFIED
Francesco G PerinRussiaIvan Magalhaes QUALIFIED
Mujtaba G GauchoIndiaXuxue Feng RENEWAL
Aika V RoysterJapanAmy Elsner NEGOTIATION
Julie J RutaSpainIvan Magalhaes NEGOTIATION
Antonio Q DilliardIndiaXuxue Feng PROPOSAL
Jeanfrancois P PoquetteBrazilXuxue Feng RENEWAL
Antonio E ButtCanadaIvan Magalhaes NEW
Stacey N SlusarskiFranceAmy Elsner NEW
Adams A MacleadAustraliaAmy Elsner QUALIFIED
Silvio A MaletFranceIvan Magalhaes PROPOSAL
Cody L ButtFranceOnyama Limba UNQUALIFIED
Claire P GillianRussiaAnna Fali PROPOSAL
Alejandro E GarufiArgentinaElwin Sharvill UNQUALIFIED
Aika G ChuiRussiaAmy Elsner PROPOSAL
Kadeem H GillianSpainAnna Fali UNQUALIFIED
Murillo W TollnerRussiaStephen Shaw RENEWAL
Alejandro P FollerJapanAsiya Javayant NEGOTIATION
Juan B VenereArgentinaBernardo Dominic NEW
Silvio H GillianCanadaAsiya Javayant UNQUALIFIED
Smith R SlusarskiAustraliaBernardo Dominic NEGOTIATION
Murillo X DilliardSpainBernardo Dominic QUALIFIED
Johnson F CaldareraArgentinaBernardo Dominic PROPOSAL
Sinclair F RoysterRussiaIvan Magalhaes RENEWAL
Antonio R SaylorsIndiaXuxue Feng QUALIFIED
Aditya X CampainUnited KingdomXuxue Feng PROPOSAL
Jeanfrancois R OldroydGermanyAmy Elsner PROPOSAL
David Y ChuiArgentinaAmy Elsner NEGOTIATION
Octavia Y CaldareraArgentinaXuxue Feng RENEWAL
Morrow C MarrierUnited KingdomIvan Magalhaes NEGOTIATION
Francesco B RoysterGermanyAmy Elsner NEGOTIATION
Juan A RutaSpainAsiya Javayant RENEWAL
Ivar L VocelkaItalyAmy Elsner NEGOTIATION
Emily Q PerinRussiaOnyama Limba UNQUALIFIED
Julie R MaletJapanAsiya Javayant NEW
Leon Z ButtBrazilIvan Magalhaes PROPOSAL
Johnson A GarufiIndiaStephen Shaw UNQUALIFIED
Juan P PaprockiJapanXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ricardo D CampainSpainBernardo Dominic PROPOSAL
Silvio N CampainBrazilIoni Bowcher UNQUALIFIED
Silvio J VenereRussiaAnna Fali PROPOSAL
Arvin W GlickGermanyBernardo Dominic UNQUALIFIED
Nicolas X InouyeJapanOnyama Limba UNQUALIFIED
Arvin Y SlusarskiIndiaXuxue Feng NEW
Costa G WieserFranceIvan Magalhaes NEW
Leja J WieserArgentinaBernardo Dominic NEW
Rodrigues J MaletSpainElwin Sharvill RENEWAL
Cody F StockhamIndiaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi S SchemmerJapan2024-05-31Rousseaux, Michael Esq RENEWAL64Xuxue Feng
1001Mayumi E MaletJapan2024-06-20King, Christopher A Esq NEGOTIATION4Asiya Javayant
1002Salvatore G ChuiRussia2024-06-20Morlong Associates QUALIFIED28Elwin Sharvill
1003Leja R FigeroaRussia2024-05-26Morlong Associates PROPOSAL34Onyama Limba
1004Murillo O WhobreySpain2024-06-11Commercial Press PROPOSAL20Xuxue Feng
1005Jennifer N IturbideBrazil2024-06-19Buckley Miller Wright RENEWAL52Elwin Sharvill
1006Chavez F GlickUnited Kingdom2024-06-15Feiner Bros QUALIFIED84Ioni Bowcher
1007Jennifer B PerinFrance2024-05-30Benton, John B Jr QUALIFIED85Ivan Magalhaes
1008Leon V StockhamArgentina2024-06-19Truhlar And Truhlar Attys QUALIFIED76Xuxue Feng
1009Adams L GarufiArgentina2024-06-19Benton, John B Jr NEW14Amy Elsner
1010Julie G BriddickJapan2024-06-12Benton, John B Jr PROPOSAL42Stephen Shaw
1011Murillo A RutaGermany2024-05-27Dorl, James J Esq NEW36Bernardo Dominic
1012Leja I RulapaughFrance2024-06-19Rousseaux, Michael Esq PROPOSAL49Onyama Limba
1013Aika P OldroydSpain2024-06-06Feltz Printing Service RENEWAL6Bernardo Dominic
1014Alejandro V GauchoUnited Kingdom2024-06-04Morlong Associates UNQUALIFIED85Onyama Limba
1015Maisha N StockhamGermany2024-06-17Feltz Printing Service NEW27Ivan Magalhaes
1016Stacey M IturbideSpain2024-05-26Rousseaux, Michael Esq NEW15Stephen Shaw
1017Tony Z GillianItaly2024-05-30Buckley Miller Wright QUALIFIED22Amy Elsner
1018Deepesh Z KuskoIndia2024-06-13Truhlar And Truhlar Attys PROPOSAL39Ioni Bowcher
1019Arvin Y TollnerSpain2024-05-29Dorl, James J Esq NEGOTIATION78Xuxue Feng
1020Faith A NestleBrazil2024-06-10Benton, John B Jr NEW63Stephen Shaw
1021Isabel S CaldareraAustralia2024-06-14Feiner Bros NEGOTIATION96Xuxue Feng
1022Claire K KuskoItaly2024-06-20Printing Dimensions UNQUALIFIED69Stephen Shaw
1023Aika P AmigonBrazil2024-06-02Morlong Associates QUALIFIED0Elwin Sharvill
1024Adams L InouyeFrance2024-06-12Buckley Miller Wright UNQUALIFIED5Ivan Magalhaes
1025Leja T FollerJapan2024-06-12Truhlar And Truhlar Attys QUALIFIED12Ivan Magalhaes
1026Cody D RimCanada2024-06-08Rousseaux, Michael Esq UNQUALIFIED72Anna Fali
1027Jefferson Q CampainBrazil2024-05-28Chanay, Jeffrey A Esq NEW56Ioni Bowcher
1028Faith Q AmigonArgentina2024-06-03Chapman, Ross E Esq QUALIFIED68Onyama Limba
1029Maria M BowleyRussia2024-06-23Printing Dimensions NEW73Ioni Bowcher
1030Munro F OstroskyAustralia2024-06-06Benton, John B Jr RENEWAL52Xuxue Feng
1031Aruna C NestleFrance2024-06-12Buckley Miller Wright NEGOTIATION51Amy Elsner
1032Sinclair Z MaletCanada2024-06-02Truhlar And Truhlar Attys NEW83Xuxue Feng
1033Murillo S ChuiBrazil2024-05-30King, Christopher A Esq UNQUALIFIED53Elwin Sharvill
1034Isabel P SaylorsItaly2024-05-29Chemel, James L Cpa QUALIFIED44Amy Elsner
1035Aruna G MaletBrazil2024-06-16Morlong Associates NEW18Ioni Bowcher
1036Murillo L TollnerRussia2024-06-10Dorl, James J Esq PROPOSAL99Bernardo Dominic
1037Aruna I CampainAustralia2024-05-29Truhlar And Truhlar Attys UNQUALIFIED94Ioni Bowcher
1038Wickens D RimAustralia2024-06-21Truhlar And Truhlar Attys NEGOTIATION70Xuxue Feng
1039Chavez H DilliardUnited Kingdom2024-06-14Benton, John B Jr NEGOTIATION73Elwin Sharvill
1040Alejandro H MaletArgentina2024-06-24Feltz Printing Service RENEWAL39Stephen Shaw
1041Greenwood N FerenczRussia2024-05-31Printing Dimensions NEW90Ioni Bowcher
1042Faith J TollnerAustralia2024-06-24Chemel, James L Cpa NEW28Elwin Sharvill
1043Chavez H SergiRussia2024-06-13Rangoni Of Florence NEW5Stephen Shaw
1044Jeanfrancois O KolmetzBrazil2024-05-26Rangoni Of Florence UNQUALIFIED70Ivan Magalhaes
1045Faith C GarufiAustralia2024-06-13Chapman, Ross E Esq NEGOTIATION76Stephen Shaw
1046Maria H RutaBrazil2024-06-12Chanay, Jeffrey A Esq RENEWAL86Ivan Magalhaes
1047Sinclair U PaprockiArgentina2024-06-12Feiner Bros QUALIFIED66Amy Elsner
1048Claire P SlusarskiCanada2024-06-24Commercial Press UNQUALIFIED97Bernardo Dominic
1049Wickens U AlbaresJapan2024-06-07Feiner Bros NEW80Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ricardo B WaycottItalyAsiya Javayant PROPOSAL
Darci H MaletGermanyIvan Magalhaes QUALIFIED
Aruna X GillianJapanAsiya Javayant NEGOTIATION
Rodrigues G AmigonJapanAsiya Javayant NEW
Juan N CaldareraItalyBernardo Dominic PROPOSAL
Aruna P AlbaresIndiaXuxue Feng PROPOSAL
Rodrigues C StockhamJapanStephen Shaw UNQUALIFIED
Misaki A KuskoGermanyOnyama Limba UNQUALIFIED
Aditya M SaylorsGermanyOnyama Limba RENEWAL
Aditya X KolmetzRussiaStephen Shaw RENEWAL
Rodrigues I PerinCanadaAsiya Javayant PROPOSAL
Greenwood N OldroydArgentinaOnyama Limba PROPOSAL
Maisha K BologniaFranceBernardo Dominic QUALIFIED
Wickens L StockhamSpainXuxue Feng NEW
Leja I AlbaresUnited KingdomElwin Sharvill UNQUALIFIED
Isabel Q DoeCanadaIvan Magalhaes NEW
Faith W OstroskyCanadaAsiya Javayant PROPOSAL
Mayumi P VenereBrazilElwin Sharvill UNQUALIFIED
Cody Q DilliardSpainElwin Sharvill QUALIFIED
Arvin K DilliardBrazilElwin Sharvill QUALIFIED
Maisha S IturbideRussiaElwin Sharvill NEGOTIATION
James W MacleadIndiaIoni Bowcher UNQUALIFIED
Nicolas W NickaIndiaBernardo Dominic QUALIFIED
Mayumi A RutaJapanAmy Elsner NEGOTIATION
Ivar X BowleyArgentinaIoni Bowcher RENEWAL
Jefferson L WhobreyAustraliaStephen Shaw QUALIFIED
Tony X OldroydIndiaIvan Magalhaes NEGOTIATION
Clifford Y BowleyUnited KingdomBernardo Dominic NEW
Silvio F RimUnited KingdomAmy Elsner RENEWAL
Mayumi E WaycottRussiaBernardo Dominic NEGOTIATION
Maria Y PaprockiAustraliaBernardo Dominic PROPOSAL
Munro K OldroydFranceStephen Shaw RENEWAL
Emily H StockhamGermanyXuxue Feng NEW
Emily R GarufiAustraliaAnna Fali NEW
Antonio W DarakjyArgentinaElwin Sharvill RENEWAL
Mayumi M OldroydJapanIvan Magalhaes UNQUALIFIED
Aditya N MorascaItalyIvan Magalhaes RENEWAL
Silvio Y VenereGermanyIoni Bowcher NEGOTIATION
Wickens C ShinkoBrazilAmy Elsner QUALIFIED
Leja M VocelkaJapanAsiya Javayant NEGOTIATION
Greenwood Z MarrierUnited KingdomElwin Sharvill RENEWAL
Aruna Z ShinkoCanadaOnyama Limba PROPOSAL
Clifford W InouyeItalyStephen Shaw QUALIFIED
Antonio L FollerJapanBernardo Dominic NEW
Munro D GlickCanadaIoni Bowcher NEGOTIATION
Mujtaba P SchemmerArgentinaElwin Sharvill RENEWAL
Darci K FigeroaItalyAsiya Javayant RENEWAL
Faith D ButtFranceElwin Sharvill RENEWAL
Sinclair V BowleyArgentinaAnna Fali PROPOSAL
Izzy V SlusarskiArgentinaXuxue Feng UNQUALIFIED
Frozen Columns
Name
Jennifer X Nestle
Ashley P Butt
Jones B Iturbide
Faith N Sergi
Francesco D Perin
Leja O Garufi
David O Stenseth
Rodrigues R Inouye
David P Flosi
Nicolas F Nicka
Ivar X Albares
Darci J Maclead
Octavia S Campain
Nicolas P Poquette
Sinclair R Wieser
Ricardo Q Morasca
Clifford V Slusarski
Aditya A Malet
Izzy L Paprocki
Emily C Garufi
Arvin I Iturbide
Izzy C Glick
Munro X Campain
Aditya W Malet
Emily P Rim
Leja E Nestle
Kaitlin S Bowley
Aika L Briddick
Tony L Glick
Darci Z Paprocki
Adams Q Sergi
Maria F Royster
Rodrigues B Gaucho
Jones X Whobrey
Munro A Bolognia
Costa T Flosi
Johnson W Slusarski
Ricardo G Slusarski
Rodrigues E Rulapaugh
Nicolas H Oldroyd
Kadeem B Glick
Sinclair H Gaucho
Aruna V Foller
Nicolas B Garufi
Leon D Royster
Darci I Iturbide
Smith G Nestle
Jeanfrancois V Rim
Aika W Venere
Deepesh H Malet
IdCountryDate
1000France2024-05-26
1001Germany2024-05-28
1002Italy2024-06-02
1003Brazil2024-06-05
1004Germany2024-06-13
1005Japan2024-05-30
1006France2024-06-15
1007Russia2024-06-22
1008France2024-06-03
1009India2024-06-01
1010Argentina2024-06-04
1011Argentina2024-06-06
1012France2024-05-26
1013Australia2024-05-28
1014Brazil2024-06-24
1015Italy2024-05-31
1016Australia2024-06-01
1017Brazil2024-06-11
1018Japan2024-06-05
1019Japan2024-05-29
1020Italy2024-06-24
1021Japan2024-06-13
1022India2024-06-02
1023Italy2024-06-18
1024Japan2024-05-30
1025France2024-06-06
1026Brazil2024-06-21
1027Canada2024-06-21
1028Spain2024-05-26
1029Japan2024-05-27
1030Argentina2024-06-01
1031United Kingdom2024-06-16
1032France2024-06-13
1033United Kingdom2024-06-01
1034United Kingdom2024-05-30
1035France2024-06-16
1036Argentina2024-06-14
1037Argentina2024-05-28
1038Spain2024-06-20
1039Australia2024-06-10
1040Italy2024-05-26
1041Canada2024-06-13
1042Spain2024-06-19
1043Brazil2024-06-09
1044India2024-06-16
1045United Kingdom2024-06-10
1046India2024-05-31
1047Brazil2024-06-10
1048Canada2024-05-28
1049Canada2024-06-07

On-Demand Data

NameIdCountryDate
Sinclair P Malet1000United Kingdom2024-06-23
Julie Q Poquette1001Australia2024-06-05
Nicolas V Maclead1002France2024-06-09
Sinclair X Wieser1003Australia2024-06-06
Kadeem B Campain1004Canada2024-06-04
Ricardo J Briddick1005Canada2024-06-12
Kadeem V Ferencz1006United Kingdom2024-06-18
Johnson Q Flosi1007Spain2024-06-21
Clifford Y Campain1008Australia2024-06-15
Julie Z Rim1009Australia2024-06-17
Sinclair L Albares1010Brazil2024-06-17
Jeanfrancois C Doe1011Argentina2024-06-09
Julie B Gaucho1012Argentina2024-06-13
Silvio W Marrier1013France2024-06-13
Francesco X Gaucho1014Japan2024-06-08
Alejandro N Malet1015Germany2024-06-03
Claire E Kusko1016Italy2024-06-03
Octavia O Gaucho1017Italy2024-06-10
Mayumi W Ostrosky1018Russia2024-06-24
Ashley Y Campain1019Russia2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody D InouyeCanadaAnna Fali QUALIFIED
Izzy H IturbideItalyBernardo Dominic QUALIFIED
Jones C CampainArgentinaBernardo Dominic QUALIFIED
Leon Z BologniaRussiaStephen Shaw NEGOTIATION
Silvio S FlosiBrazilAnna Fali NEGOTIATION
Jennifer M RimItalyIoni Bowcher PROPOSAL
Antonio P KuskoRussiaXuxue Feng NEGOTIATION
Julie U CaudyFranceXuxue Feng QUALIFIED
Octavia Z SergiFranceAmy Elsner NEW
Jones Z ShinkoCanadaAnna Fali RENEWAL
Maisha V OldroydRussiaAnna Fali PROPOSAL
Faith A PoquetteFranceAsiya Javayant PROPOSAL
Aika I WhobreyItalyStephen Shaw QUALIFIED
Leon A IturbideIndiaAsiya Javayant PROPOSAL
Julie K WhobreyGermanyBernardo Dominic NEW
Isabel P AlbaresArgentinaIvan Magalhaes PROPOSAL
Ricardo W FigeroaIndiaOnyama Limba UNQUALIFIED
Antonio T PoquetteSpainIvan Magalhaes UNQUALIFIED
Smith I FlosiCanadaIoni Bowcher NEW
Ricardo L DilliardRussiaStephen Shaw PROPOSAL
Jefferson D StensethSpainXuxue Feng RENEWAL
Johnson I BriddickJapanElwin Sharvill NEGOTIATION
Jennifer R WieserJapanBernardo Dominic NEW
Octavia M FlosiJapanBernardo Dominic RENEWAL
Isabel V NestleItalyAnna Fali QUALIFIED
Wickens U RoysterCanadaElwin Sharvill NEGOTIATION
Jennifer D DilliardArgentinaBernardo Dominic NEW
Arvin A SergiJapanIvan Magalhaes RENEWAL
Murillo Y MorascaGermanyOnyama Limba RENEWAL
Leja K PaprockiGermanyBernardo Dominic PROPOSAL
Aruna J FlosiCanadaXuxue Feng PROPOSAL
Clifford D CaldareraUnited KingdomOnyama Limba QUALIFIED
Maisha P PoquetteCanadaIoni Bowcher PROPOSAL
Francesco S DilliardCanadaBernardo Dominic RENEWAL
Kaitlin F WhobreyFranceBernardo Dominic PROPOSAL
Stacey M WhobreyJapanAnna Fali NEW
Wickens O StockhamJapanXuxue Feng PROPOSAL
Octavia C DoeRussiaStephen Shaw RENEWAL
Salvatore F WhobreyGermanyIoni Bowcher NEW
Ashley L SlusarskiCanadaAmy Elsner NEGOTIATION

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