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
Kaitlin J KolmetzRussiaAmy Elsner NEGOTIATION
Leja U OstroskyIndiaBernardo Dominic QUALIFIED
Misaki K ChuiAustraliaOnyama Limba QUALIFIED
Isabel W NestleGermanyIvan Magalhaes QUALIFIED
Chavez B GauchoRussiaAmy Elsner RENEWAL
Salvatore R FollerItalyXuxue Feng NEGOTIATION
Johnson P FerenczArgentinaAnna Fali NEGOTIATION
Deepesh P KuskoRussiaElwin Sharvill NEW
Wickens M FollerJapanXuxue Feng UNQUALIFIED
Jefferson H VocelkaBrazilOnyama Limba NEGOTIATION
Francesco P CaldareraCanadaAnna Fali RENEWAL
Salvatore Z OldroydAustraliaStephen Shaw PROPOSAL
Clifford A KuskoFranceAnna Fali NEW
Salvatore Y DilliardUnited KingdomXuxue Feng RENEWAL
Clifford B FlosiArgentinaAnna Fali NEW
Maisha B GauchoAustraliaIoni Bowcher PROPOSAL
Costa D WhobreyAustraliaOnyama Limba UNQUALIFIED
Stacey U FlosiCanadaBernardo Dominic RENEWAL
Ricardo D GlickSpainAnna Fali NEW
James P DarakjyFranceIoni Bowcher RENEWAL
Tony N GarufiAustraliaElwin Sharvill NEW
Stacey R TollnerItalyAnna Fali UNQUALIFIED
Julie I WieserRussiaBernardo Dominic NEW
Kadeem L PoquetteJapanAsiya Javayant QUALIFIED
Deepesh Q ChuiUnited KingdomElwin Sharvill QUALIFIED
Aruna N CampainArgentinaAmy Elsner QUALIFIED
Antonio S OldroydIndiaIvan Magalhaes NEGOTIATION
Jennifer X SergiItalyIoni Bowcher UNQUALIFIED
Salvatore E RulapaughJapanStephen Shaw NEW
Ricardo N IturbideIndiaAmy Elsner PROPOSAL
Julie P StensethUnited KingdomAmy Elsner PROPOSAL
Jefferson N GillianFranceAmy Elsner UNQUALIFIED
Chavez X PoquetteIndiaAnna Fali QUALIFIED
Wickens T BriddickArgentinaAsiya Javayant QUALIFIED
Aditya N KolmetzFranceStephen Shaw NEGOTIATION
Isabel O DarakjyItalyIvan Magalhaes UNQUALIFIED
Tony D SchemmerUnited KingdomAnna Fali UNQUALIFIED
Octavia M MorascaSpainIoni Bowcher UNQUALIFIED
Sinclair B SergiSpainElwin Sharvill RENEWAL
Maria K WhobreyIndiaElwin Sharvill NEGOTIATION
Leon X StockhamBrazilAsiya Javayant RENEWAL
Chavez O ShinkoGermanyElwin Sharvill RENEWAL
Deepesh S VenereRussiaIoni Bowcher NEGOTIATION
Mayumi R PoquetteJapanAsiya Javayant QUALIFIED
Salvatore Z RimIndiaStephen Shaw PROPOSAL
Kaitlin Z TollnerArgentinaBernardo Dominic NEGOTIATION
Ashley S CaldareraCanadaStephen Shaw NEGOTIATION
Nicolas L GarufiItalyAnna Fali QUALIFIED
Greenwood C GillianJapanIvan Magalhaes QUALIFIED
Jefferson V RutaAustraliaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Darci P RulapaughUnited KingdomAmy Elsner RENEWAL
Aruna B InouyeItalyAsiya Javayant QUALIFIED
Mayumi Y FerenczCanadaIoni Bowcher PROPOSAL
Ricardo M GarufiBrazilIoni Bowcher UNQUALIFIED
Alejandro O DoeJapanXuxue Feng QUALIFIED
Smith H PerinCanadaOnyama Limba PROPOSAL
Juan M NickaSpainIvan Magalhaes UNQUALIFIED
Jefferson W TollnerItalyBernardo Dominic UNQUALIFIED
Juan F DoeAustraliaAnna Fali QUALIFIED
Kaitlin N GarufiJapanStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan Q CampainSpain2024-06-16Benton, John B Jr PROPOSAL6Asiya Javayant
1001Juan W MacleadCanada2024-05-29Truhlar And Truhlar Attys QUALIFIED65Elwin Sharvill
1002Silvio A FlosiRussia2024-05-30Dorl, James J Esq PROPOSAL81Bernardo Dominic
1003Octavia A NickaIndia2024-06-10Buckley Miller Wright NEW18Ioni Bowcher
1004Tony U RutaBrazil2024-06-06Truhlar And Truhlar Attys UNQUALIFIED95Ivan Magalhaes
1005Octavia Z DilliardArgentina2024-06-07Feltz Printing Service PROPOSAL61Stephen Shaw
1006Rodrigues W SaylorsJapan2024-06-12Buckley Miller Wright NEW52Stephen Shaw
1007Sinclair S OldroydItaly2024-06-01Chanay, Jeffrey A Esq UNQUALIFIED80Ivan Magalhaes
1008Mujtaba M ShinkoItaly2024-05-30Rangoni Of Florence RENEWAL53Ivan Magalhaes
1009Izzy X FigeroaIndia2024-05-30Printing Dimensions RENEWAL12Stephen Shaw
1010Nicolas J MacleadItaly2024-05-20Chapman, Ross E Esq NEGOTIATION10Stephen Shaw
1011Jones A RimRussia2024-06-05Commercial Press NEW54Onyama Limba
1012Jones Q DilliardUnited Kingdom2024-05-22Rousseaux, Michael Esq RENEWAL45Onyama Limba
1013Morrow I MarrierBrazil2024-06-13Benton, John B Jr PROPOSAL65Xuxue Feng
1014Adams N CaudyUnited Kingdom2024-06-04Feiner Bros NEW59Onyama Limba
1015Aditya V OldroydUnited Kingdom2024-06-15Dorl, James J Esq PROPOSAL18Xuxue Feng
1016Izzy Z RulapaughItaly2024-05-28Chemel, James L Cpa NEW89Bernardo Dominic
1017Claire V PaprockiIndia2024-05-29Feiner Bros RENEWAL33Onyama Limba
1018Jeanfrancois B SergiUnited Kingdom2024-06-11Buckley Miller Wright RENEWAL61Bernardo Dominic
1019Francesco N WieserUnited Kingdom2024-06-09Benton, John B Jr QUALIFIED29Asiya Javayant
1020Clifford I CampainFrance2024-06-08Dorl, James J Esq PROPOSAL71Ioni Bowcher
1021Murillo Q MaletAustralia2024-06-04Feltz Printing Service UNQUALIFIED76Bernardo Dominic
1022Maria R MaletJapan2024-05-25Chapman, Ross E Esq UNQUALIFIED66Ioni Bowcher
1023Nicolas H ShinkoFrance2024-06-15Feiner Bros RENEWAL70Ioni Bowcher
1024Aruna X AmigonAustralia2024-06-01Printing Dimensions PROPOSAL53Bernardo Dominic
1025Aditya Q AlbaresBrazil2024-05-27King, Christopher A Esq PROPOSAL9Asiya Javayant
1026Jefferson W BriddickIndia2024-06-10Buckley Miller Wright RENEWAL2Asiya Javayant
1027James H CaudyAustralia2024-05-23Benton, John B Jr QUALIFIED41Onyama Limba
1028Leja T MaletGermany2024-05-25Buckley Miller Wright NEW64Elwin Sharvill
1029Deepesh K RulapaughCanada2024-06-05Feltz Printing Service NEGOTIATION19Onyama Limba
1030Aditya C DilliardGermany2024-06-03Morlong Associates RENEWAL33Ioni Bowcher
1031Darci V DilliardIndia2024-06-04Chapman, Ross E Esq QUALIFIED24Ivan Magalhaes
1032Maria H StensethBrazil2024-06-15Benton, John B Jr UNQUALIFIED33Bernardo Dominic
1033Greenwood C WaycottRussia2024-05-21Buckley Miller Wright QUALIFIED81Xuxue Feng
1034Kaitlin H DarakjyRussia2024-05-19Buckley Miller Wright QUALIFIED95Elwin Sharvill
1035Salvatore Y PerinFrance2024-06-02Feiner Bros QUALIFIED96Onyama Limba
1036Smith N RulapaughSpain2024-05-26Dorl, James J Esq NEGOTIATION43Stephen Shaw
1037Silvio J CaudyItaly2024-05-30Feiner Bros RENEWAL8Asiya Javayant
1038Claire P InouyeFrance2024-06-12Chemel, James L Cpa NEGOTIATION47Amy Elsner
1039Aika G KolmetzItaly2024-05-22Truhlar And Truhlar Attys UNQUALIFIED70Asiya Javayant
1040Mayumi V StockhamArgentina2024-05-31Truhlar And Truhlar Attys RENEWAL73Ioni Bowcher
1041Tony F VenereSpain2024-06-03Commercial Press QUALIFIED40Xuxue Feng
1042Claire R ShinkoRussia2024-06-01Rousseaux, Michael Esq NEGOTIATION15Amy Elsner
1043Julie B WaycottFrance2024-06-15Feltz Printing Service NEW27Xuxue Feng
1044Tony I KuskoJapan2024-05-24Commercial Press UNQUALIFIED26Anna Fali
1045Murillo I VenereGermany2024-06-03Benton, John B Jr UNQUALIFIED90Anna Fali
1046Murillo Y PerinArgentina2024-06-15King, Christopher A Esq RENEWAL26Anna Fali
1047Clifford W StockhamCanada2024-05-20Rangoni Of Florence QUALIFIED6Ioni Bowcher
1048Chavez O BologniaFrance2024-05-24Buckley Miller Wright UNQUALIFIED61Onyama Limba
1049Kaitlin B MacleadIndia2024-06-12Feltz Printing Service UNQUALIFIED96Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Ricardo F AlbaresBrazilBernardo Dominic RENEWAL
Octavia R PaprockiGermanyElwin Sharvill UNQUALIFIED
Costa A BowleyRussiaIvan Magalhaes RENEWAL
Stacey N SchemmerArgentinaAmy Elsner UNQUALIFIED
Ivar P VocelkaSpainAsiya Javayant RENEWAL
Deepesh G PoquetteIndiaAsiya Javayant NEGOTIATION
Jeanfrancois A CaudyRussiaBernardo Dominic QUALIFIED
Greenwood X ChuiIndiaOnyama Limba UNQUALIFIED
Silvio W SergiJapanXuxue Feng NEGOTIATION
Deepesh R OstroskyRussiaBernardo Dominic PROPOSAL
Munro D StockhamArgentinaOnyama Limba QUALIFIED
Adams V WhobreyFranceIvan Magalhaes QUALIFIED
Maisha J SergiSpainOnyama Limba QUALIFIED
Juan J RimFranceIoni Bowcher QUALIFIED
Juan F RutaUnited KingdomBernardo Dominic RENEWAL
Mujtaba C NickaJapanAmy Elsner UNQUALIFIED
Alejandro H MarrierUnited KingdomAmy Elsner QUALIFIED
Arvin P NickaRussiaBernardo Dominic NEGOTIATION
Ashley I VenereUnited KingdomAmy Elsner QUALIFIED
Rodrigues S MaletAustraliaStephen Shaw NEGOTIATION
Claire Y GauchoGermanyOnyama Limba RENEWAL
Johnson U CaudyRussiaAnna Fali RENEWAL
Rodrigues G FollerCanadaAnna Fali UNQUALIFIED
Aruna X OldroydBrazilXuxue Feng QUALIFIED
Johnson U FollerBrazilXuxue Feng NEGOTIATION
Octavia L IturbideAustraliaXuxue Feng PROPOSAL
Sinclair H AmigonCanadaAnna Fali RENEWAL
Johnson F BologniaJapanXuxue Feng QUALIFIED
Jennifer U FerenczRussiaIoni Bowcher UNQUALIFIED
Munro B CampainGermanyStephen Shaw NEW
Izzy T RimSpainIvan Magalhaes UNQUALIFIED
Maisha B GarufiCanadaBernardo Dominic UNQUALIFIED
Leja U ShinkoUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois V PaprockiSpainElwin Sharvill NEGOTIATION
Mayumi G ShinkoCanadaElwin Sharvill RENEWAL
Mujtaba Q RutaAustraliaAmy Elsner NEGOTIATION
Julie F MacleadBrazilBernardo Dominic PROPOSAL
Nicolas G FollerIndiaElwin Sharvill PROPOSAL
Kaitlin O RoysterItalyIvan Magalhaes PROPOSAL
Salvatore D FlosiFranceStephen Shaw QUALIFIED
Costa Y TollnerFranceIoni Bowcher NEW
Leon B IturbideJapanElwin Sharvill NEGOTIATION
Chavez X MacleadArgentinaXuxue Feng NEGOTIATION
Murillo L DarakjyBrazilElwin Sharvill PROPOSAL
Deepesh J GarufiItalyIoni Bowcher NEW
Johnson U NickaItalyStephen Shaw UNQUALIFIED
Nicolas K VocelkaArgentinaXuxue Feng PROPOSAL
Leja U VocelkaArgentinaBernardo Dominic NEW
Wickens W SergiJapanAmy Elsner NEGOTIATION
Salvatore W BriddickSpainAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Misaki C Nestle
Smith U Stenseth
Kaitlin N Shinko
Morrow M Ostrosky
Munro M Inouye
Julie L Darakjy
Kadeem S Chui
Rodrigues B Dilliard
Nicolas T Waycott
Mujtaba U Figeroa
Faith F Darakjy
Cody F Oldroyd
Ivar N Poquette
Silvio J Wieser
Octavia A Whobrey
Faith D Shinko
Juan A Caldarera
Aruna A Oldroyd
Jeanfrancois L Stenseth
David O Glick
Aditya M Tollner
Tony Q Stenseth
Mujtaba L Caudy
Jefferson H Iturbide
Alejandro A Vocelka
Leja P Wieser
Jennifer O Butt
Silvio A Slusarski
Aditya O Chui
Munro J Morasca
Chavez F Stockham
Tony S Kolmetz
Darci A Caudy
Greenwood N Nestle
Jefferson U Stockham
Claire H Shinko
Aditya A Wieser
Costa G Waycott
Stacey O Flosi
Costa T Waycott
Johnson D Poquette
Silvio B Campain
Claire V Whobrey
Morrow I Waycott
Juan Y Vocelka
Morrow J Inouye
Cody H Stenseth
Rodrigues O Paprocki
Ricardo W Marrier
Smith B Ostrosky
IdCountryDate
1000Australia2024-06-13
1001Italy2024-06-08
1002Brazil2024-06-09
1003Argentina2024-06-03
1004Canada2024-06-05
1005India2024-05-21
1006Canada2024-06-05
1007Italy2024-06-15
1008India2024-05-23
1009Japan2024-06-05
1010Russia2024-05-27
1011Australia2024-05-25
1012Italy2024-05-31
1013Germany2024-06-14
1014Australia2024-05-31
1015Australia2024-05-30
1016Russia2024-06-08
1017Italy2024-05-26
1018Germany2024-06-03
1019Germany2024-05-25
1020Australia2024-06-03
1021Russia2024-06-14
1022Germany2024-06-11
1023Italy2024-06-06
1024France2024-05-26
1025France2024-06-11
1026Argentina2024-06-11
1027Italy2024-05-22
1028United Kingdom2024-05-30
1029India2024-06-04
1030Argentina2024-06-11
1031Brazil2024-05-24
1032Spain2024-05-22
1033Russia2024-05-19
1034Argentina2024-06-08
1035France2024-06-05
1036Brazil2024-06-04
1037Germany2024-06-16
1038Japan2024-05-21
1039Japan2024-06-01
1040Italy2024-06-02
1041Japan2024-06-05
1042India2024-06-06
1043United Kingdom2024-05-31
1044Argentina2024-06-06
1045Russia2024-05-23
1046Brazil2024-06-04
1047United Kingdom2024-06-07
1048Italy2024-05-20
1049Spain2024-06-03

On-Demand Data

NameIdCountryDate
Cody K Shinko1000Canada2024-05-25
Maria Y Iturbide1001Argentina2024-06-12
Deepesh B Nestle1002Russia2024-05-22
Chavez A Garufi1003Canada2024-05-22
Faith E Gillian1004Russia2024-06-03
Adams O Paprocki1005Italy2024-05-25
Faith U Garufi1006Brazil2024-06-01
Leon D Shinko1007United Kingdom2024-05-20
Francesco K Gillian1008Russia2024-06-09
Julie S Vocelka1009India2024-05-27
Smith I Chui1010Australia2024-06-02
Smith V Waycott1011Germany2024-06-06
Misaki G Amigon1012India2024-06-14
Morrow P Flosi1013Japan2024-06-01
Costa D Shinko1014Australia2024-06-08
David X Oldroyd1015Argentina2024-06-13
Ivar F Royster1016Canada2024-06-06
Nicolas J Wieser1017Australia2024-06-07
Octavia R Bowley1018Germany2024-06-17
Leja T Bowley1019United Kingdom2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez T FollerArgentinaIvan Magalhaes RENEWAL
Morrow W DilliardAustraliaElwin Sharvill NEW
Leja A DilliardFranceAsiya Javayant PROPOSAL
Aditya P IturbideArgentinaElwin Sharvill NEGOTIATION
Tony Q StensethGermanyIoni Bowcher NEGOTIATION
Sinclair Z InouyeAustraliaStephen Shaw NEGOTIATION
Misaki M PoquetteUnited KingdomAmy Elsner PROPOSAL
Leon X PoquetteSpainStephen Shaw NEW
Isabel P NestleSpainStephen Shaw QUALIFIED
Claire E CampainJapanStephen Shaw NEGOTIATION
Cody A PaprockiJapanXuxue Feng NEGOTIATION
Greenwood U NestleBrazilAmy Elsner QUALIFIED
Munro T StockhamJapanAnna Fali QUALIFIED
Leja G AlbaresArgentinaAmy Elsner NEW
Francesco Z KolmetzAustraliaOnyama Limba QUALIFIED
Morrow T IturbideRussiaXuxue Feng PROPOSAL
Ricardo J IturbideGermanyIoni Bowcher PROPOSAL
Claire M MarrierGermanyXuxue Feng RENEWAL
Aruna N InouyeRussiaAmy Elsner NEW
Francesco S RoysterGermanyStephen Shaw RENEWAL
Leon V GlickRussiaAnna Fali QUALIFIED
Munro H DilliardGermanyOnyama Limba NEGOTIATION
Jefferson A BowleyIndiaStephen Shaw RENEWAL
James H DoeCanadaAnna Fali QUALIFIED
Darci M VenereBrazilStephen Shaw QUALIFIED
Misaki O RoysterItalyXuxue Feng PROPOSAL
Darci P DoeCanadaAmy Elsner QUALIFIED
Murillo U BowleySpainElwin Sharvill QUALIFIED
Aruna G PerinSpainIvan Magalhaes NEGOTIATION
Ricardo Q WaycottFranceXuxue Feng NEGOTIATION
Aditya E AmigonJapanBernardo Dominic PROPOSAL
Isabel N DarakjyUnited KingdomOnyama Limba RENEWAL
Smith F BowleySpainAsiya Javayant RENEWAL
Julie K NestleCanadaOnyama Limba QUALIFIED
Costa U DarakjyUnited KingdomAnna Fali NEW
Stacey C DilliardGermanyBernardo Dominic NEGOTIATION
Maisha Z ChuiJapanIvan Magalhaes PROPOSAL
Darci P SaylorsUnited KingdomIoni Bowcher NEGOTIATION
Wickens W MacleadArgentinaAsiya Javayant QUALIFIED
Morrow T ChuiRussiaIoni Bowcher NEW

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