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
Ivar W MaletBrazilBernardo Dominic RENEWAL
Stacey P RimSpainXuxue Feng PROPOSAL
Arvin Q KolmetzFranceAsiya Javayant UNQUALIFIED
Nicolas N ButtSpainStephen Shaw PROPOSAL
Faith N FigeroaSpainOnyama Limba NEGOTIATION
Leon H SlusarskiAustraliaAmy Elsner NEW
Johnson T SaylorsFranceAsiya Javayant NEGOTIATION
Jefferson M NickaCanadaAmy Elsner PROPOSAL
Ashley M KolmetzJapanAsiya Javayant RENEWAL
Silvio J OldroydJapanAsiya Javayant QUALIFIED
Antonio P WaycottGermanyStephen Shaw NEW
Maria W WieserIndiaIvan Magalhaes NEW
Aditya X GauchoIndiaElwin Sharvill PROPOSAL
Faith E NestleBrazilIoni Bowcher NEGOTIATION
Kaitlin U FigeroaAustraliaElwin Sharvill NEW
Rodrigues U PoquetteRussiaIvan Magalhaes QUALIFIED
Izzy V SlusarskiUnited KingdomBernardo Dominic PROPOSAL
Jeanfrancois S FlosiRussiaBernardo Dominic QUALIFIED
Jeanfrancois R BriddickAustraliaXuxue Feng RENEWAL
Francesco Y MaletArgentinaAmy Elsner RENEWAL
Ricardo M BologniaCanadaBernardo Dominic NEW
Claire A CaldareraIndiaAsiya Javayant NEW
Greenwood M SaylorsGermanyBernardo Dominic NEW
Julie Q FerenczArgentinaBernardo Dominic QUALIFIED
Mayumi Y CaudyArgentinaAsiya Javayant UNQUALIFIED
Emily O RoysterGermanyElwin Sharvill UNQUALIFIED
Jones Q WaycottCanadaXuxue Feng PROPOSAL
Cody H WieserAustraliaAmy Elsner PROPOSAL
Alejandro J RulapaughAustraliaElwin Sharvill PROPOSAL
Jefferson J SaylorsSpainAnna Fali PROPOSAL
Nicolas L RimCanadaXuxue Feng NEGOTIATION
Costa P TollnerCanadaAnna Fali RENEWAL
Jones D ButtRussiaAnna Fali QUALIFIED
Ashley G VocelkaUnited KingdomAmy Elsner QUALIFIED
Maria T ShinkoIndiaStephen Shaw PROPOSAL
Jeanfrancois A StensethCanadaStephen Shaw UNQUALIFIED
Alejandro G PaprockiFranceIoni Bowcher QUALIFIED
Mayumi J MarrierCanadaAmy Elsner NEGOTIATION
Sinclair H RutaRussiaXuxue Feng QUALIFIED
Claire A WaycottJapanIvan Magalhaes UNQUALIFIED
Johnson Y StensethGermanyIvan Magalhaes PROPOSAL
Emily J VocelkaUnited KingdomOnyama Limba NEW
Mujtaba H RimArgentinaAsiya Javayant UNQUALIFIED
Isabel N VenereSpainElwin Sharvill PROPOSAL
Juan Z WhobreyItalyIvan Magalhaes RENEWAL
Jennifer I CaudyUnited KingdomAmy Elsner UNQUALIFIED
Francesco F GillianRussiaAnna Fali NEW
Munro O CaudyArgentinaStephen Shaw PROPOSAL
Deepesh A SchemmerCanadaOnyama Limba PROPOSAL
Julie I BowleyBrazilAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Antonio Z KuskoArgentinaOnyama Limba NEGOTIATION
Silvio P StensethSpainOnyama Limba RENEWAL
Aditya W RulapaughArgentinaOnyama Limba UNQUALIFIED
Smith A MarrierIndiaIvan Magalhaes NEGOTIATION
James F StensethSpainElwin Sharvill UNQUALIFIED
Wickens F BologniaRussiaAnna Fali QUALIFIED
Munro B FigeroaSpainBernardo Dominic RENEWAL
Ashley L MaletUnited KingdomOnyama Limba RENEWAL
Kadeem U ShinkoUnited KingdomAsiya Javayant RENEWAL
Jennifer A WaycottArgentinaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel O InouyeArgentina2024-06-13Benton, John B Jr NEGOTIATION67Xuxue Feng
1001Johnson W SlusarskiCanada2024-06-21Chemel, James L Cpa NEW86Onyama Limba
1002Clifford U PerinItaly2024-06-16Benton, John B Jr RENEWAL6Xuxue Feng
1003Julie L WieserJapan2024-05-30Buckley Miller Wright NEGOTIATION70Asiya Javayant
1004Aika U NickaBrazil2024-06-20Truhlar And Truhlar Attys QUALIFIED54Onyama Limba
1005Murillo S MaletRussia2024-06-18Truhlar And Truhlar Attys UNQUALIFIED41Ioni Bowcher
1006Juan B GillianIndia2024-06-02Chemel, James L Cpa UNQUALIFIED20Stephen Shaw
1007Greenwood K SergiItaly2024-06-19Feiner Bros NEW26Xuxue Feng
1008Juan P AlbaresIndia2024-05-30Rousseaux, Michael Esq UNQUALIFIED42Bernardo Dominic
1009Maisha C VocelkaRussia2024-06-19Rangoni Of Florence UNQUALIFIED35Asiya Javayant
1010Isabel W AmigonIndia2024-05-26Chemel, James L Cpa NEGOTIATION97Stephen Shaw
1011Alejandro A SaylorsJapan2024-06-05Chanay, Jeffrey A Esq NEW99Stephen Shaw
1012Johnson X ButtSpain2024-06-18Commercial Press NEW42Onyama Limba
1013Kadeem D RutaIndia2024-06-19Chapman, Ross E Esq QUALIFIED74Anna Fali
1014Aditya I DoeAustralia2024-06-02Printing Dimensions PROPOSAL9Elwin Sharvill
1015Greenwood H SergiBrazil2024-06-19Rangoni Of Florence UNQUALIFIED34Asiya Javayant
1016Sinclair N BologniaArgentina2024-05-28Commercial Press UNQUALIFIED55Stephen Shaw
1017Darci L BriddickGermany2024-06-02Chemel, James L Cpa UNQUALIFIED96Ioni Bowcher
1018Antonio I AlbaresFrance2024-06-05Rangoni Of Florence UNQUALIFIED64Anna Fali
1019Murillo U MaletSpain2024-05-30Truhlar And Truhlar Attys UNQUALIFIED95Xuxue Feng
1020Munro D BologniaGermany2024-06-18Truhlar And Truhlar Attys QUALIFIED22Elwin Sharvill
1021Costa N BriddickArgentina2024-05-29Benton, John B Jr PROPOSAL13Ioni Bowcher
1022Deepesh T AmigonCanada2024-06-10Buckley Miller Wright UNQUALIFIED38Onyama Limba
1023Aditya R OstroskySpain2024-05-30Feiner Bros NEW12Onyama Limba
1024Francesco K CaudyRussia2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED65Ivan Magalhaes
1025Claire N AmigonGermany2024-05-28Buckley Miller Wright QUALIFIED76Anna Fali
1026Leon G RimSpain2024-05-30Benton, John B Jr QUALIFIED34Elwin Sharvill
1027James T RutaItaly2024-06-04Truhlar And Truhlar Attys NEW85Elwin Sharvill
1028Stacey G AmigonRussia2024-06-02Printing Dimensions PROPOSAL15Ioni Bowcher
1029Izzy M OldroydIndia2024-06-12Chemel, James L Cpa NEGOTIATION54Elwin Sharvill
1030Leon C WhobreyJapan2024-06-14Chanay, Jeffrey A Esq NEW61Bernardo Dominic
1031Alejandro A NickaJapan2024-05-30Printing Dimensions QUALIFIED36Stephen Shaw
1032Costa Q NestleIndia2024-05-29Truhlar And Truhlar Attys QUALIFIED71Asiya Javayant
1033Maria V PaprockiAustralia2024-06-20Truhlar And Truhlar Attys UNQUALIFIED23Amy Elsner
1034Leja K WhobreyIndia2024-05-25Chapman, Ross E Esq QUALIFIED37Ivan Magalhaes
1035Francesco A KuskoGermany2024-05-26Rousseaux, Michael Esq NEW83Anna Fali
1036Faith R ChuiCanada2024-06-20Rangoni Of Florence NEW72Onyama Limba
1037Leon X SchemmerBrazil2024-06-15Chemel, James L Cpa UNQUALIFIED13Elwin Sharvill
1038Cody W RimCanada2024-06-08Feiner Bros QUALIFIED46Stephen Shaw
1039Faith P FigeroaSpain2024-05-29Commercial Press UNQUALIFIED97Bernardo Dominic
1040Ricardo Y StensethArgentina2024-05-31Chanay, Jeffrey A Esq NEW93Asiya Javayant
1041Francesco T AlbaresBrazil2024-06-03Morlong Associates NEGOTIATION85Anna Fali
1042Ricardo A FerenczIndia2024-06-13Chemel, James L Cpa QUALIFIED29Onyama Limba
1043Mujtaba T BriddickSpain2024-06-13Chanay, Jeffrey A Esq PROPOSAL9Ivan Magalhaes
1044Claire F DoeUnited Kingdom2024-06-14Chanay, Jeffrey A Esq NEGOTIATION10Ivan Magalhaes
1045Deepesh I VenereJapan2024-06-16Feltz Printing Service NEW10Ioni Bowcher
1046Nicolas N TollnerArgentina2024-06-08Feltz Printing Service NEW69Asiya Javayant
1047Maria S RimUnited Kingdom2024-06-18Chanay, Jeffrey A Esq RENEWAL66Anna Fali
1048Ashley Z SaylorsGermany2024-05-31Buckley Miller Wright UNQUALIFIED30Onyama Limba
1049Stacey J DilliardSpain2024-05-29Chapman, Ross E Esq PROPOSAL12Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois R StockhamBrazilElwin Sharvill QUALIFIED
Costa L CaudyArgentinaAsiya Javayant QUALIFIED
Aditya F FerenczGermanyElwin Sharvill PROPOSAL
Greenwood R KuskoAustraliaStephen Shaw PROPOSAL
Leon B CaldareraCanadaBernardo Dominic RENEWAL
Darci X ButtBrazilIoni Bowcher NEW
Ashley A AmigonItalyBernardo Dominic NEGOTIATION
Jeanfrancois F GlickCanadaElwin Sharvill QUALIFIED
Octavia S FlosiCanadaAmy Elsner NEW
Tony Z PoquetteCanadaOnyama Limba PROPOSAL
Stacey N BowleyBrazilOnyama Limba UNQUALIFIED
Emily W WieserAustraliaElwin Sharvill QUALIFIED
Aruna E MacleadRussiaIvan Magalhaes NEGOTIATION
Cody Y StensethFranceXuxue Feng PROPOSAL
Greenwood B PerinAustraliaIoni Bowcher NEW
Darci J VenereItalyAnna Fali NEGOTIATION
Isabel Q RulapaughAustraliaElwin Sharvill NEGOTIATION
Murillo F MarrierUnited KingdomAnna Fali RENEWAL
Maisha Y MaletArgentinaIoni Bowcher NEW
Misaki J MorascaCanadaIvan Magalhaes RENEWAL
Antonio A SlusarskiAustraliaOnyama Limba QUALIFIED
Aditya N MacleadIndiaAsiya Javayant PROPOSAL
Antonio U FollerGermanyIoni Bowcher QUALIFIED
Kadeem X VocelkaJapanAnna Fali UNQUALIFIED
Ivar L WhobreyIndiaXuxue Feng NEW
Stacey Z WieserSpainOnyama Limba QUALIFIED
Clifford J RulapaughGermanyAsiya Javayant UNQUALIFIED
Ashley Y VocelkaSpainStephen Shaw QUALIFIED
Kadeem S GlickFranceAsiya Javayant NEW
Tony L TollnerUnited KingdomXuxue Feng PROPOSAL
Stacey Z VenereRussiaOnyama Limba UNQUALIFIED
Ashley B VenereBrazilOnyama Limba QUALIFIED
Aika Z StensethArgentinaXuxue Feng PROPOSAL
Mayumi T FerenczIndiaElwin Sharvill QUALIFIED
Sinclair C RulapaughUnited KingdomXuxue Feng UNQUALIFIED
Salvatore J VenereJapanIvan Magalhaes RENEWAL
Ricardo M BowleyFranceIvan Magalhaes QUALIFIED
Greenwood Q DilliardRussiaElwin Sharvill UNQUALIFIED
Misaki V MaletCanadaAsiya Javayant RENEWAL
Costa K InouyeRussiaStephen Shaw RENEWAL
Deepesh U NestleAustraliaElwin Sharvill NEGOTIATION
Salvatore P FerenczFranceOnyama Limba QUALIFIED
Arvin O MaletSpainStephen Shaw PROPOSAL
Isabel K WieserItalyOnyama Limba NEW
Francesco F GarufiArgentinaIoni Bowcher UNQUALIFIED
Isabel R RutaFranceAmy Elsner NEGOTIATION
Faith G WhobreyCanadaXuxue Feng NEGOTIATION
Kadeem U MaletArgentinaIvan Magalhaes RENEWAL
Deepesh W KolmetzArgentinaIvan Magalhaes QUALIFIED
James E AlbaresFranceAsiya Javayant RENEWAL
Frozen Columns
Name
Deepesh E Malet
Faith K Kolmetz
Aditya L Chui
Isabel U Albares
David L Stockham
Morrow W Shinko
Aruna A Royster
Salvatore C Schemmer
Aika U Garufi
Octavia G Shinko
Stacey B Wieser
Francesco Y Butt
Mayumi Y Campain
Deepesh V Dilliard
Silvio Z Maclead
Nicolas I Morasca
Ivar B Sergi
Jennifer E Campain
Jones K Figeroa
Arvin I Venere
Alejandro E Marrier
Antonio B Darakjy
Francesco O Bolognia
Francesco H Venere
Nicolas L Darakjy
Maria V Dilliard
Jones C Schemmer
Munro H Shinko
Greenwood C Garufi
Jefferson A Briddick
Leja D Darakjy
Maisha R Gillian
Isabel V Dilliard
Morrow E Tollner
Faith K Maclead
Ashley D Paprocki
Jefferson H Sergi
Arvin J Doe
Izzy H Slusarski
Murillo J Ferencz
Juan G Shinko
Maisha K Kusko
Darci Q Albares
Kadeem R Perin
Kaitlin C Ferencz
Jefferson G Kolmetz
Kadeem N Figeroa
Greenwood H Albares
Jefferson J Rim
Octavia A Stockham
IdCountryDate
1000Germany2024-06-15
1001Australia2024-06-11
1002Spain2024-06-08
1003United Kingdom2024-06-09
1004India2024-06-14
1005India2024-06-03
1006Argentina2024-06-02
1007Canada2024-06-16
1008Brazil2024-06-04
1009United Kingdom2024-05-31
1010Japan2024-05-29
1011Canada2024-06-18
1012Canada2024-06-05
1013Brazil2024-06-04
1014Germany2024-05-31
1015Brazil2024-06-14
1016Spain2024-06-13
1017Russia2024-05-23
1018Germany2024-06-11
1019Australia2024-05-24
1020Canada2024-06-15
1021Italy2024-06-11
1022Brazil2024-06-05
1023India2024-06-13
1024Australia2024-05-24
1025France2024-06-14
1026Canada2024-06-18
1027India2024-06-12
1028Italy2024-06-15
1029Germany2024-06-09
1030Brazil2024-06-06
1031Argentina2024-06-10
1032Australia2024-06-05
1033Germany2024-06-20
1034Japan2024-05-28
1035Russia2024-06-08
1036Spain2024-06-18
1037Russia2024-05-23
1038Japan2024-06-18
1039Germany2024-06-03
1040Italy2024-06-06
1041France2024-06-18
1042Germany2024-05-29
1043Russia2024-05-31
1044United Kingdom2024-06-11
1045France2024-05-23
1046Argentina2024-06-11
1047Germany2024-06-12
1048Russia2024-06-14
1049India2024-06-19

On-Demand Data

NameIdCountryDate
Costa I Kusko1000Argentina2024-05-23
Faith R Caudy1001India2024-06-17
Antonio F Saylors1002United Kingdom2024-05-26
Jefferson J Campain1003Germany2024-06-12
Mayumi R Whobrey1004Spain2024-06-20
Sinclair X Perin1005Australia2024-06-03
Kadeem F Nestle1006India2024-06-08
Jones X Poquette1007Russia2024-06-10
Ashley A Rim1008Argentina2024-06-11
Izzy B Bolognia1009France2024-05-26
Rodrigues W Stockham1010Brazil2024-06-19
Francesco O Bolognia1011Spain2024-06-12
Deepesh R Caudy1012Spain2024-05-31
Nicolas O Darakjy1013Italy2024-05-23
David G Waycott1014Australia2024-06-12
David H Flosi1015Australia2024-05-25
Octavia N Waycott1016Argentina2024-06-13
Ivar G Chui1017France2024-06-10
Rodrigues M Amigon1018India2024-06-18
Adams A Caudy1019Canada2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey B PaprockiAustraliaAnna Fali NEGOTIATION
Silvio H RutaFranceAnna Fali RENEWAL
Ivar P DilliardArgentinaIvan Magalhaes PROPOSAL
Clifford U PaprockiIndiaIvan Magalhaes RENEWAL
Adams R ChuiArgentinaIvan Magalhaes NEW
Ivar S BologniaBrazilAmy Elsner NEW
Jeanfrancois P MarrierSpainAsiya Javayant NEGOTIATION
Ricardo Y SergiSpainElwin Sharvill NEGOTIATION
Aditya W ChuiAustraliaAnna Fali NEW
Sinclair W FollerGermanyIvan Magalhaes UNQUALIFIED
Jennifer O WieserGermanyAsiya Javayant QUALIFIED
Greenwood U PerinItalyAsiya Javayant NEGOTIATION
Octavia L CaudySpainBernardo Dominic QUALIFIED
Clifford H StockhamItalyAnna Fali UNQUALIFIED
Murillo X AmigonJapanStephen Shaw RENEWAL
Adams Q MaletSpainIoni Bowcher UNQUALIFIED
Salvatore Y BologniaFranceOnyama Limba UNQUALIFIED
Julie F VocelkaCanadaBernardo Dominic NEW
Salvatore T DoeSpainOnyama Limba PROPOSAL
Cody J DarakjyFranceIvan Magalhaes RENEWAL
Aditya R RoysterGermanyAnna Fali QUALIFIED
Stacey T FigeroaGermanyAmy Elsner NEW
Smith L NickaJapanAmy Elsner RENEWAL
Leja Q ShinkoBrazilIvan Magalhaes NEGOTIATION
Darci Q NickaSpainAsiya Javayant QUALIFIED
Ivar K AlbaresItalyBernardo Dominic NEW
Jones Q GarufiBrazilAnna Fali NEW
James M StockhamSpainOnyama Limba QUALIFIED
Maria H PerinGermanyAmy Elsner NEW
Aika K StensethJapanIvan Magalhaes NEGOTIATION
Salvatore N PaprockiFranceOnyama Limba UNQUALIFIED
Jefferson W VenereArgentinaXuxue Feng NEW
Murillo Q WieserJapanElwin Sharvill RENEWAL
Mayumi P VenereFranceElwin Sharvill NEW
Johnson J GarufiFranceBernardo Dominic QUALIFIED
Octavia O PaprockiItalyXuxue Feng QUALIFIED
Ashley N RimGermanyIvan Magalhaes NEGOTIATION
Salvatore K WaycottGermanyBernardo Dominic PROPOSAL
Antonio S RulapaughSpainXuxue Feng QUALIFIED
David K NestleUnited KingdomStephen Shaw 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>