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
Maria N MaletGermanyStephen Shaw RENEWAL
Isabel M TollnerIndiaAnna Fali UNQUALIFIED
Darci J MaletFranceOnyama Limba PROPOSAL
Darci F MaletBrazilIoni Bowcher QUALIFIED
Greenwood X DarakjyItalyIvan Magalhaes NEW
Wickens G InouyeJapanAmy Elsner RENEWAL
Alejandro I KolmetzSpainAsiya Javayant RENEWAL
Salvatore O ButtRussiaAnna Fali UNQUALIFIED
David O FlosiAustraliaAmy Elsner RENEWAL
Leja M FigeroaCanadaStephen Shaw NEGOTIATION
Ivar H FigeroaItalyIoni Bowcher NEW
Maria Z ChuiFranceIvan Magalhaes QUALIFIED
Maria T MaletSpainAsiya Javayant NEGOTIATION
Antonio T RimGermanyOnyama Limba PROPOSAL
Stacey D RoysterBrazilIoni Bowcher NEW
Clifford X BologniaJapanAmy Elsner QUALIFIED
Leja A CampainSpainAnna Fali QUALIFIED
Ricardo W DarakjyJapanBernardo Dominic UNQUALIFIED
Juan H RimFranceXuxue Feng RENEWAL
Isabel I DoeUnited KingdomOnyama Limba NEGOTIATION
Salvatore Y SlusarskiFranceStephen Shaw PROPOSAL
Claire B IturbideSpainBernardo Dominic UNQUALIFIED
Claire G BologniaItalyBernardo Dominic RENEWAL
Julie C CampainRussiaAnna Fali RENEWAL
Costa L StockhamRussiaIvan Magalhaes NEGOTIATION
Isabel X NestleIndiaIoni Bowcher NEGOTIATION
Salvatore M BowleyJapanIvan Magalhaes NEGOTIATION
Ricardo F NickaCanadaStephen Shaw NEGOTIATION
Aditya I MaletItalyBernardo Dominic RENEWAL
Smith I CaldareraRussiaElwin Sharvill NEGOTIATION
Sinclair G StensethArgentinaAmy Elsner NEGOTIATION
Ricardo I BologniaUnited KingdomIvan Magalhaes UNQUALIFIED
Murillo N RoysterFranceIvan Magalhaes QUALIFIED
Chavez S MacleadSpainBernardo Dominic PROPOSAL
Stacey S RoysterJapanElwin Sharvill PROPOSAL
Antonio Q MaletFranceIoni Bowcher PROPOSAL
Kaitlin V BowleyGermanyIoni Bowcher PROPOSAL
Maisha W KuskoIndiaStephen Shaw QUALIFIED
Kadeem E BriddickIndiaElwin Sharvill RENEWAL
Leja I KuskoArgentinaIoni Bowcher UNQUALIFIED
Maisha Q VenereCanadaIoni Bowcher QUALIFIED
Wickens A ButtRussiaIvan Magalhaes RENEWAL
Chavez D AmigonRussiaStephen Shaw UNQUALIFIED
Nicolas R NestleAustraliaBernardo Dominic UNQUALIFIED
James L TollnerIndiaAmy Elsner QUALIFIED
Cody E AmigonItalyIoni Bowcher QUALIFIED
Ivar F WaycottUnited KingdomAnna Fali QUALIFIED
Jefferson N DoeFranceStephen Shaw RENEWAL
Clifford B BologniaCanadaAsiya Javayant RENEWAL
Adams T RutaIndiaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin W RulapaughUnited KingdomAnna Fali UNQUALIFIED
Jones A ShinkoCanadaAmy Elsner UNQUALIFIED
Alejandro G IturbideArgentinaBernardo Dominic NEGOTIATION
Francesco M WieserJapanXuxue Feng NEGOTIATION
Rodrigues F MorascaItalyAnna Fali RENEWAL
Juan I SaylorsIndiaXuxue Feng PROPOSAL
Costa F StockhamJapanIvan Magalhaes NEW
Chavez Q GillianIndiaAnna Fali QUALIFIED
Julie C SaylorsRussiaIoni Bowcher UNQUALIFIED
Kadeem M ButtAustraliaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya Q SaylorsSpain2024-05-17Buckley Miller Wright QUALIFIED11Elwin Sharvill
1001Smith M KolmetzGermany2024-05-07Feiner Bros UNQUALIFIED64Onyama Limba
1002Cody F CaldareraArgentina2024-05-13Feiner Bros QUALIFIED83Ivan Magalhaes
1003Francesco A WieserGermany2024-05-19Chapman, Ross E Esq NEGOTIATION44Ioni Bowcher
1004Mayumi Z MacleadRussia2024-05-12Benton, John B Jr UNQUALIFIED23Onyama Limba
1005Munro V FerenczAustralia2024-05-05Printing Dimensions PROPOSAL75Ivan Magalhaes
1006Stacey A RoysterIndia2024-04-30Chanay, Jeffrey A Esq NEW85Ivan Magalhaes
1007Julie L NestleSpain2024-05-19Truhlar And Truhlar Attys RENEWAL45Ioni Bowcher
1008Silvio D SlusarskiUnited Kingdom2024-04-29Rousseaux, Michael Esq NEW94Amy Elsner
1009Isabel O MorascaBrazil2024-05-02Chemel, James L Cpa NEW88Xuxue Feng
1010Jeanfrancois W StockhamGermany2024-05-05Chapman, Ross E Esq NEW89Xuxue Feng
1011Wickens N OstroskyArgentina2024-05-19Benton, John B Jr QUALIFIED59Xuxue Feng
1012Maisha S CampainArgentina2024-04-26Feltz Printing Service RENEWAL97Elwin Sharvill
1013Aika Q MorascaBrazil2024-04-29Chanay, Jeffrey A Esq NEW88Stephen Shaw
1014Ashley A SergiCanada2024-05-08Dorl, James J Esq NEGOTIATION17Xuxue Feng
1015Alejandro G SlusarskiItaly2024-05-10Benton, John B Jr RENEWAL64Amy Elsner
1016Izzy W SchemmerCanada2024-05-01Buckley Miller Wright RENEWAL87Amy Elsner
1017Izzy U CampainAustralia2024-04-30Rangoni Of Florence NEGOTIATION77Onyama Limba
1018Kadeem D StockhamJapan2024-05-12Dorl, James J Esq QUALIFIED81Stephen Shaw
1019Jones W FerenczItaly2024-05-12Chemel, James L Cpa NEGOTIATION89Xuxue Feng
1020Murillo L MacleadBrazil2024-04-29Morlong Associates RENEWAL83Onyama Limba
1021Emily Y KuskoFrance2024-05-08Feiner Bros QUALIFIED82Bernardo Dominic
1022Adams S AlbaresBrazil2024-04-30Buckley Miller Wright NEGOTIATION90Anna Fali
1023Tony G MarrierAustralia2024-05-25Chanay, Jeffrey A Esq NEGOTIATION85Ivan Magalhaes
1024Cody Y FigeroaRussia2024-05-15Chapman, Ross E Esq NEGOTIATION49Amy Elsner
1025Salvatore X BriddickBrazil2024-05-19Dorl, James J Esq NEW13Onyama Limba
1026Johnson I GauchoJapan2024-05-21Feiner Bros NEGOTIATION99Onyama Limba
1027Silvio L TollnerCanada2024-04-27Chapman, Ross E Esq PROPOSAL8Ioni Bowcher
1028Leja Y InouyeRussia2024-05-15Truhlar And Truhlar Attys PROPOSAL3Onyama Limba
1029Munro E FlosiBrazil2024-04-27Feltz Printing Service NEGOTIATION69Stephen Shaw
1030Maisha L RulapaughArgentina2024-05-21Chapman, Ross E Esq RENEWAL38Stephen Shaw
1031Aika J MorascaRussia2024-05-10Chapman, Ross E Esq UNQUALIFIED87Anna Fali
1032Clifford E MaletItaly2024-05-04Feltz Printing Service QUALIFIED81Bernardo Dominic
1033Adams S ChuiItaly2024-05-09Commercial Press QUALIFIED62Onyama Limba
1034Arvin J DoeGermany2024-05-17Dorl, James J Esq RENEWAL66Stephen Shaw
1035Jefferson I ChuiCanada2024-05-01Chanay, Jeffrey A Esq NEW59Ivan Magalhaes
1036Clifford H SchemmerUnited Kingdom2024-05-10Chapman, Ross E Esq QUALIFIED22Asiya Javayant
1037Rodrigues T TollnerItaly2024-05-24Feltz Printing Service RENEWAL31Elwin Sharvill
1038Nicolas C BriddickSpain2024-05-11Truhlar And Truhlar Attys NEGOTIATION78Ioni Bowcher
1039Aika E RoysterCanada2024-04-27Morlong Associates NEW37Onyama Limba
1040Johnson B BowleyIndia2024-05-24Chapman, Ross E Esq NEW25Ioni Bowcher
1041Wickens P MaletIndia2024-05-25Feiner Bros NEGOTIATION65Xuxue Feng
1042Adams P PaprockiSpain2024-05-13Truhlar And Truhlar Attys NEW32Onyama Limba
1043Alejandro U CaldareraUnited Kingdom2024-05-19Chanay, Jeffrey A Esq QUALIFIED23Ivan Magalhaes
1044Maria Y ChuiRussia2024-05-18Morlong Associates NEGOTIATION10Ioni Bowcher
1045Murillo Z DoeGermany2024-05-09Buckley Miller Wright PROPOSAL99Ioni Bowcher
1046Nicolas L CampainGermany2024-05-06Commercial Press NEW62Ioni Bowcher
1047Greenwood V BriddickArgentina2024-05-16Morlong Associates RENEWAL78Ioni Bowcher
1048Leja Q FigeroaJapan2024-04-28Rangoni Of Florence NEW16Xuxue Feng
1049Aruna A DilliardGermany2024-04-28Printing Dimensions PROPOSAL58Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Murillo A StockhamUnited KingdomElwin Sharvill UNQUALIFIED
Francesco Z PerinGermanyOnyama Limba RENEWAL
Ricardo P FollerUnited KingdomIoni Bowcher RENEWAL
Aruna S RimRussiaIoni Bowcher NEW
James N StockhamFranceBernardo Dominic NEGOTIATION
Mayumi J CaudyRussiaAsiya Javayant NEW
Maisha E WaycottCanadaBernardo Dominic RENEWAL
Silvio Q KuskoIndiaAnna Fali UNQUALIFIED
Ricardo F RulapaughIndiaXuxue Feng PROPOSAL
Jones J TollnerJapanStephen Shaw RENEWAL
Claire D MaletArgentinaIvan Magalhaes PROPOSAL
Faith G FlosiCanadaBernardo Dominic QUALIFIED
Jefferson V SchemmerArgentinaAmy Elsner UNQUALIFIED
Costa J OstroskyCanadaElwin Sharvill NEW
Claire J SergiSpainAsiya Javayant NEGOTIATION
Kadeem J GauchoIndiaBernardo Dominic PROPOSAL
Jeanfrancois D KuskoRussiaIvan Magalhaes NEGOTIATION
Adams Q NestleBrazilIvan Magalhaes NEGOTIATION
Jefferson O RutaItalyIvan Magalhaes NEW
Murillo R MaletJapanAnna Fali NEGOTIATION
Faith I MorascaAustraliaElwin Sharvill NEW
Jeanfrancois G SchemmerFranceAnna Fali UNQUALIFIED
Julie K BriddickSpainElwin Sharvill QUALIFIED
Silvio Z PerinUnited KingdomAsiya Javayant NEW
Rodrigues O GillianIndiaAsiya Javayant NEW
Adams N StockhamBrazilBernardo Dominic NEGOTIATION
Leja L StockhamIndiaElwin Sharvill UNQUALIFIED
Stacey P RoysterSpainStephen Shaw PROPOSAL
Kadeem W PoquetteSpainBernardo Dominic QUALIFIED
Aditya G WhobreyJapanOnyama Limba NEW
Ashley W FollerGermanyXuxue Feng QUALIFIED
Silvio Z PaprockiRussiaAnna Fali QUALIFIED
Claire F VenereCanadaBernardo Dominic UNQUALIFIED
Emily W RimGermanyAsiya Javayant RENEWAL
James J KolmetzBrazilElwin Sharvill RENEWAL
Octavia N FlosiArgentinaXuxue Feng QUALIFIED
Jennifer G FollerJapanElwin Sharvill QUALIFIED
Antonio X InouyeJapanStephen Shaw PROPOSAL
Morrow G SchemmerGermanyAsiya Javayant RENEWAL
Ivar N KolmetzJapanAnna Fali RENEWAL
Alejandro M ChuiItalyIoni Bowcher RENEWAL
Mayumi D PerinUnited KingdomAsiya Javayant RENEWAL
Wickens O ChuiUnited KingdomXuxue Feng QUALIFIED
Francesco Z NickaJapanIoni Bowcher NEW
Salvatore B OstroskyCanadaXuxue Feng RENEWAL
Kaitlin F MorascaSpainElwin Sharvill NEW
Alejandro J GillianBrazilIvan Magalhaes NEGOTIATION
Salvatore U VocelkaCanadaAsiya Javayant NEW
Izzy I OstroskyIndiaIvan Magalhaes QUALIFIED
Mayumi S DilliardAustraliaAmy Elsner QUALIFIED
Frozen Columns
Name
Deepesh L Kolmetz
Johnson R Albares
Morrow U Amigon
Claire Z Malet
Munro R Waycott
Jefferson S Kusko
Kadeem U Bowley
Nicolas J Slusarski
Aditya K Rulapaugh
Kadeem T Doe
Darci H Vocelka
Mayumi C Saylors
Cody Z Vocelka
Octavia Q Campain
Faith V Albares
Aruna I Rim
Cody W Oldroyd
Aruna C Perin
Alejandro S Saylors
Claire H Poquette
Jefferson I Bowley
Mayumi A Figeroa
Maria L Stockham
Silvio A Doe
Costa P Inouye
Aika S Vocelka
Juan W Saylors
Nicolas A Malet
Clifford D Darakjy
Munro I Gaucho
Maria V Slusarski
Wickens B Whobrey
Ivar I Whobrey
Jones R Briddick
Maria V Royster
Arvin W Tollner
Greenwood U Nestle
Antonio T Oldroyd
Costa X Rulapaugh
Johnson S Doe
Emily P Amigon
Rodrigues X Perin
James W Wieser
Adams C Garufi
Tony F Sergi
Cody T Campain
Leja P Royster
Salvatore M Foller
Aika K Figeroa
Cody B Nestle
IdCountryDate
1000France2024-05-15
1001Italy2024-05-11
1002Russia2024-05-12
1003France2024-05-13
1004India2024-05-12
1005Australia2024-04-27
1006Canada2024-05-16
1007Brazil2024-04-30
1008Australia2024-05-09
1009India2024-05-16
1010Australia2024-05-04
1011Canada2024-05-02
1012Brazil2024-05-11
1013Japan2024-04-29
1014France2024-05-07
1015Brazil2024-05-23
1016Australia2024-05-19
1017India2024-05-20
1018Italy2024-05-14
1019India2024-05-19
1020Brazil2024-05-22
1021India2024-05-24
1022Australia2024-05-16
1023Argentina2024-05-10
1024Spain2024-05-20
1025Russia2024-05-19
1026Germany2024-05-09
1027Australia2024-04-28
1028Russia2024-05-20
1029Italy2024-04-26
1030Italy2024-05-18
1031India2024-05-05
1032Italy2024-05-12
1033Spain2024-05-15
1034France2024-05-16
1035Australia2024-05-17
1036Spain2024-05-10
1037Canada2024-05-13
1038Australia2024-04-26
1039Italy2024-04-30
1040Spain2024-04-30
1041Argentina2024-04-30
1042Spain2024-05-04
1043Spain2024-05-21
1044Spain2024-05-16
1045Italy2024-04-26
1046Russia2024-05-22
1047India2024-05-18
1048France2024-05-18
1049Argentina2024-04-28

On-Demand Data

NameIdCountryDate
Mujtaba C Chui1000France2024-05-15
Mujtaba P Albares1001Germany2024-04-27
Jefferson X Waycott1002Russia2024-04-29
Kaitlin S Vocelka1003Russia2024-05-24
Maria N Inouye1004Germany2024-05-17
Leon E Foller1005Germany2024-04-30
Izzy P Wieser1006Argentina2024-05-14
Adams J Campain1007Brazil2024-05-13
Deepesh X Sergi1008France2024-05-07
Ashley I Schemmer1009Australia2024-05-17
Jones U Chui1010France2024-05-08
Arvin A Malet1011India2024-04-30
Jefferson V Wieser1012Canada2024-05-07
Isabel O Rulapaugh1013India2024-05-06
Nicolas U Royster1014India2024-05-14
Claire O Maclead1015Argentina2024-05-19
Misaki U Briddick1016France2024-05-08
Morrow E Shinko1017India2024-05-16
Misaki B Slusarski1018Italy2024-05-23
Mayumi S Perin1019Canada2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie V SaylorsItalyAmy Elsner NEGOTIATION
Jones J PaprockiUnited KingdomIoni Bowcher RENEWAL
Emily R AmigonSpainAmy Elsner QUALIFIED
Arvin F VocelkaGermanyIvan Magalhaes QUALIFIED
Murillo D TollnerArgentinaIvan Magalhaes NEGOTIATION
Jones A TollnerBrazilOnyama Limba NEGOTIATION
Darci H RutaIndiaAsiya Javayant QUALIFIED
Jeanfrancois N BologniaAustraliaAmy Elsner NEW
Faith M KuskoAustraliaOnyama Limba PROPOSAL
Silvio B CampainArgentinaElwin Sharvill NEW
Ashley P KolmetzSpainBernardo Dominic QUALIFIED
David G SlusarskiAustraliaBernardo Dominic NEGOTIATION
Faith B StockhamItalyBernardo Dominic PROPOSAL
Leja U WieserIndiaAnna Fali RENEWAL
Murillo G TollnerRussiaXuxue Feng RENEWAL
Deepesh E RoysterJapanElwin Sharvill QUALIFIED
Costa V NickaGermanyElwin Sharvill NEGOTIATION
Jones G KuskoFranceXuxue Feng QUALIFIED
Izzy L BriddickArgentinaAmy Elsner NEGOTIATION
Greenwood T TollnerJapanBernardo Dominic NEGOTIATION
Kadeem B SlusarskiFranceXuxue Feng NEW
Salvatore J NickaFranceOnyama Limba RENEWAL
Juan X SlusarskiUnited KingdomIvan Magalhaes NEGOTIATION
Morrow O SlusarskiFranceBernardo Dominic UNQUALIFIED
Antonio Q GlickRussiaOnyama Limba QUALIFIED
Wickens Z SergiRussiaAsiya Javayant NEGOTIATION
Deepesh Z OldroydAustraliaBernardo Dominic QUALIFIED
Ricardo P MorascaCanadaBernardo Dominic RENEWAL
Francesco C ButtBrazilBernardo Dominic PROPOSAL
Munro N RimSpainStephen Shaw NEGOTIATION
Clifford M DoeUnited KingdomOnyama Limba NEGOTIATION
Misaki K IturbideItalyElwin Sharvill RENEWAL
Antonio F GauchoArgentinaAsiya Javayant UNQUALIFIED
Jennifer L WieserBrazilXuxue Feng PROPOSAL
Mujtaba T BowleyItalyXuxue Feng QUALIFIED
Ashley B NickaItalyElwin Sharvill QUALIFIED
Jefferson S AmigonUnited KingdomIvan Magalhaes PROPOSAL
Cody D PerinRussiaIvan Magalhaes NEGOTIATION
Stacey L SlusarskiAustraliaAnna Fali NEGOTIATION
Jefferson Z NestleJapanAmy Elsner RENEWAL

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