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
Salvatore R SaylorsCanadaBernardo Dominic UNQUALIFIED
Wickens T OstroskyJapanAnna Fali UNQUALIFIED
Salvatore E CaudyBrazilElwin Sharvill NEW
Wickens S FollerCanadaXuxue Feng PROPOSAL
Ricardo E RutaCanadaAnna Fali QUALIFIED
Arvin Z OldroydAustraliaStephen Shaw QUALIFIED
Clifford X ButtCanadaAsiya Javayant NEW
Adams B VenereUnited KingdomStephen Shaw QUALIFIED
Aditya V KuskoArgentinaBernardo Dominic NEW
Chavez H FigeroaAustraliaAmy Elsner UNQUALIFIED
Aika T StensethIndiaXuxue Feng NEGOTIATION
Francesco B ShinkoItalyAnna Fali NEGOTIATION
Tony J SergiItalyIoni Bowcher RENEWAL
Francesco B GauchoArgentinaOnyama Limba UNQUALIFIED
Aruna F WieserGermanyIoni Bowcher NEW
Chavez Z RulapaughSpainIoni Bowcher RENEWAL
Costa G CaudyCanadaStephen Shaw UNQUALIFIED
Isabel S VenereCanadaOnyama Limba NEGOTIATION
Deepesh A BriddickItalyStephen Shaw NEW
Octavia Y GauchoAustraliaIoni Bowcher UNQUALIFIED
Alejandro J RimCanadaAmy Elsner NEW
Mayumi W PaprockiSpainAnna Fali RENEWAL
Leja I ChuiGermanyOnyama Limba QUALIFIED
Jennifer O MaletRussiaXuxue Feng NEGOTIATION
Costa M FollerFranceBernardo Dominic QUALIFIED
Kaitlin C MacleadUnited KingdomOnyama Limba QUALIFIED
Johnson P FigeroaIndiaBernardo Dominic PROPOSAL
Johnson C GlickFranceAsiya Javayant UNQUALIFIED
Munro S RulapaughIndiaIvan Magalhaes NEGOTIATION
Mayumi V GlickFranceIvan Magalhaes NEGOTIATION
Kaitlin A PoquetteFranceOnyama Limba UNQUALIFIED
Octavia G CaudyJapanOnyama Limba UNQUALIFIED
Antonio U GillianUnited KingdomAnna Fali UNQUALIFIED
Misaki H FollerUnited KingdomAnna Fali NEW
David U RimAustraliaOnyama Limba NEW
Leon G MacleadBrazilXuxue Feng UNQUALIFIED
Claire U RoysterItalyOnyama Limba QUALIFIED
Kaitlin M AlbaresRussiaAnna Fali RENEWAL
Mayumi X DilliardFranceIvan Magalhaes QUALIFIED
Juan J PoquetteJapanStephen Shaw QUALIFIED
Isabel W CaudyGermanyAmy Elsner NEW
Greenwood M FlosiJapanStephen Shaw PROPOSAL
Arvin M InouyeArgentinaStephen Shaw PROPOSAL
Stacey I InouyeArgentinaIoni Bowcher PROPOSAL
James R MaletCanadaIvan Magalhaes RENEWAL
Darci K StockhamItalyIvan Magalhaes NEGOTIATION
Tony T GlickRussiaStephen Shaw PROPOSAL
Salvatore G DilliardUnited KingdomAmy Elsner QUALIFIED
Izzy M RutaFranceOnyama Limba PROPOSAL
Isabel J SergiJapanAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jefferson W DarakjyGermanyAmy Elsner UNQUALIFIED
David S InouyeCanadaBernardo Dominic NEGOTIATION
Kadeem V AlbaresGermanyElwin Sharvill QUALIFIED
Izzy H FerenczJapanAmy Elsner NEW
Claire T OldroydAustraliaXuxue Feng RENEWAL
Faith G KuskoItalyIoni Bowcher RENEWAL
Cody G ShinkoAustraliaAmy Elsner PROPOSAL
David W VenereCanadaAmy Elsner NEW
Octavia O StensethArgentinaAmy Elsner PROPOSAL
Aruna D CampainCanadaBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin D AlbaresIndia2024-05-30Feltz Printing Service RENEWAL62Bernardo Dominic
1001Ivar G MaletItaly2024-05-26Feltz Printing Service QUALIFIED7Stephen Shaw
1002David Y CaldareraJapan2024-06-12Printing Dimensions NEW51Elwin Sharvill
1003Costa D RimRussia2024-06-01Feiner Bros UNQUALIFIED51Anna Fali
1004Ivar G SlusarskiArgentina2024-06-08Printing Dimensions UNQUALIFIED82Asiya Javayant
1005Maisha A RoysterAustralia2024-06-06King, Christopher A Esq UNQUALIFIED71Ioni Bowcher
1006Ashley X SlusarskiJapan2024-06-05Benton, John B Jr PROPOSAL8Asiya Javayant
1007Cody H DilliardCanada2024-06-08Rousseaux, Michael Esq QUALIFIED11Anna Fali
1008Misaki U DarakjyBrazil2024-05-28Printing Dimensions QUALIFIED38Asiya Javayant
1009Julie B FollerJapan2024-06-06Feltz Printing Service NEW51Bernardo Dominic
1010Greenwood S FlosiJapan2024-05-28Printing Dimensions PROPOSAL78Onyama Limba
1011Alejandro L CampainIndia2024-06-03Buckley Miller Wright PROPOSAL42Bernardo Dominic
1012Julie F WaycottItaly2024-05-20Morlong Associates UNQUALIFIED86Xuxue Feng
1013Stacey G ChuiArgentina2024-06-09Chemel, James L Cpa RENEWAL86Onyama Limba
1014Johnson A FlosiAustralia2024-05-17Chanay, Jeffrey A Esq PROPOSAL85Anna Fali
1015Emily J GillianAustralia2024-06-08Chanay, Jeffrey A Esq NEW41Onyama Limba
1016Greenwood K MaletSpain2024-05-30Benton, John B Jr UNQUALIFIED13Ivan Magalhaes
1017Munro U MaletBrazil2024-05-31Chemel, James L Cpa NEW76Amy Elsner
1018Costa N MarrierIndia2024-05-24Chanay, Jeffrey A Esq QUALIFIED8Bernardo Dominic
1019Morrow F DarakjyUnited Kingdom2024-05-27King, Christopher A Esq QUALIFIED45Ioni Bowcher
1020Maria G FollerAustralia2024-05-24Feiner Bros RENEWAL24Onyama Limba
1021Wickens O AmigonJapan2024-06-12Benton, John B Jr UNQUALIFIED2Amy Elsner
1022Wickens U PerinItaly2024-05-19Printing Dimensions QUALIFIED3Stephen Shaw
1023Stacey D FollerRussia2024-06-01Truhlar And Truhlar Attys UNQUALIFIED0Elwin Sharvill
1024Izzy O FerenczRussia2024-06-06Truhlar And Truhlar Attys PROPOSAL77Bernardo Dominic
1025Greenwood S CaudySpain2024-05-22King, Christopher A Esq UNQUALIFIED24Ioni Bowcher
1026Silvio V NestleGermany2024-06-11Chapman, Ross E Esq UNQUALIFIED56Asiya Javayant
1027Kadeem R BologniaGermany2024-05-23Chemel, James L Cpa UNQUALIFIED36Elwin Sharvill
1028Julie M InouyeAustralia2024-05-18Benton, John B Jr QUALIFIED44Onyama Limba
1029Jennifer W DoeCanada2024-05-27Chapman, Ross E Esq NEGOTIATION21Ivan Magalhaes
1030Ivar I RulapaughAustralia2024-05-22Benton, John B Jr RENEWAL0Xuxue Feng
1031Faith P CaldareraJapan2024-05-19Printing Dimensions RENEWAL61Ioni Bowcher
1032Chavez S CampainJapan2024-05-25Truhlar And Truhlar Attys UNQUALIFIED30Ivan Magalhaes
1033Juan Q SchemmerJapan2024-05-29Printing Dimensions QUALIFIED95Xuxue Feng
1034Aditya L WhobreySpain2024-05-24Chanay, Jeffrey A Esq RENEWAL7Stephen Shaw
1035Maisha R MarrierBrazil2024-05-18Chemel, James L Cpa PROPOSAL56Ivan Magalhaes
1036Emily N OldroydArgentina2024-05-28Commercial Press RENEWAL62Elwin Sharvill
1037Izzy F AmigonJapan2024-06-03Printing Dimensions NEW13Ivan Magalhaes
1038Adams A RulapaughIndia2024-06-08Rousseaux, Michael Esq QUALIFIED97Xuxue Feng
1039Rodrigues P FlosiUnited Kingdom2024-05-17Feltz Printing Service UNQUALIFIED75Elwin Sharvill
1040David H BriddickUnited Kingdom2024-06-07Benton, John B Jr UNQUALIFIED60Anna Fali
1041Wickens Q InouyeFrance2024-06-06King, Christopher A Esq PROPOSAL29Bernardo Dominic
1042Aditya U TollnerAustralia2024-05-18Morlong Associates UNQUALIFIED57Ivan Magalhaes
1043Claire Z CaldareraGermany2024-05-25Chapman, Ross E Esq PROPOSAL58Anna Fali
1044Francesco Z ChuiCanada2024-05-16Feltz Printing Service RENEWAL66Elwin Sharvill
1045Arvin X KolmetzAustralia2024-05-17Chemel, James L Cpa NEW93Stephen Shaw
1046Munro D GarufiGermany2024-05-31Feiner Bros QUALIFIED3Anna Fali
1047Leja M ChuiCanada2024-05-25Chapman, Ross E Esq PROPOSAL38Onyama Limba
1048Silvio O BologniaItaly2024-05-22Rousseaux, Michael Esq UNQUALIFIED20Amy Elsner
1049Mujtaba O WhobreyJapan2024-06-03Feltz Printing Service NEW93Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Silvio I BowleyItalyOnyama Limba NEGOTIATION
Julie L BologniaBrazilBernardo Dominic NEW
Mujtaba C WieserFranceElwin Sharvill NEW
Aditya T RimGermanyAmy Elsner UNQUALIFIED
Munro N RoysterAustraliaAnna Fali NEGOTIATION
Tony A MaletArgentinaIvan Magalhaes UNQUALIFIED
Cody H DarakjyFranceStephen Shaw PROPOSAL
Jefferson R KuskoArgentinaBernardo Dominic NEGOTIATION
Ashley B WaycottSpainXuxue Feng RENEWAL
Mayumi A BowleyUnited KingdomOnyama Limba UNQUALIFIED
Francesco X CampainBrazilIoni Bowcher QUALIFIED
Claire P PerinArgentinaBernardo Dominic PROPOSAL
Aruna S NestleArgentinaAnna Fali QUALIFIED
Smith V BologniaAustraliaIoni Bowcher NEGOTIATION
Aruna N VenereCanadaElwin Sharvill NEGOTIATION
Julie E DarakjyJapanAsiya Javayant PROPOSAL
Aditya L KolmetzJapanStephen Shaw UNQUALIFIED
Clifford U StockhamRussiaXuxue Feng PROPOSAL
Antonio F SchemmerSpainXuxue Feng QUALIFIED
Mujtaba E AmigonUnited KingdomElwin Sharvill RENEWAL
Darci Y VenereItalyAmy Elsner QUALIFIED
Sinclair W InouyeJapanIoni Bowcher QUALIFIED
Julie Z SchemmerBrazilElwin Sharvill NEW
Arvin M IturbideJapanIoni Bowcher PROPOSAL
Jeanfrancois X RimAustraliaElwin Sharvill QUALIFIED
Smith N CaudyFranceAmy Elsner UNQUALIFIED
Arvin U InouyeUnited KingdomOnyama Limba NEGOTIATION
Adams O ChuiUnited KingdomStephen Shaw UNQUALIFIED
Maisha Z DilliardIndiaStephen Shaw NEW
Aruna G CaldareraAustraliaIoni Bowcher PROPOSAL
David K PaprockiArgentinaIoni Bowcher QUALIFIED
Mujtaba Y IturbideFranceAsiya Javayant NEGOTIATION
Aika G CaudyArgentinaStephen Shaw UNQUALIFIED
Mayumi A PoquetteRussiaStephen Shaw NEW
Aditya D FigeroaAustraliaAsiya Javayant PROPOSAL
Francesco C RulapaughArgentinaBernardo Dominic UNQUALIFIED
Ricardo A SchemmerArgentinaIvan Magalhaes NEW
Greenwood Q TollnerIndiaXuxue Feng NEGOTIATION
David V VenereFranceStephen Shaw NEGOTIATION
Isabel A StensethCanadaAmy Elsner PROPOSAL
Jefferson O FigeroaBrazilElwin Sharvill RENEWAL
Arvin Q BowleyRussiaElwin Sharvill UNQUALIFIED
Wickens I ButtArgentinaAnna Fali NEGOTIATION
Tony X PoquetteBrazilAnna Fali UNQUALIFIED
Mujtaba Q MacleadSpainIoni Bowcher PROPOSAL
Smith Y WaycottUnited KingdomAmy Elsner UNQUALIFIED
Wickens P MaletAustraliaIoni Bowcher NEW
Chavez N GlickArgentinaAmy Elsner RENEWAL
Darci Z GillianItalyAmy Elsner QUALIFIED
Alejandro U VenereCanadaXuxue Feng NEW
Frozen Columns
Name
Mujtaba R Kusko
Julie S Stockham
Kadeem L Iturbide
Rodrigues K Darakjy
Antonio V Kolmetz
Ivar C Iturbide
Costa U Foller
Jones S Malet
Julie W Campain
Francesco U Shinko
Antonio N Wieser
Alejandro O Briddick
Octavia J Albares
Arvin M Ostrosky
Rodrigues Q Marrier
Ricardo T Ferencz
Alejandro C Campain
Morrow T Caudy
Deepesh P Malet
Johnson M Poquette
Maisha J Kolmetz
Tony U Shinko
Aruna Z Perin
Johnson Z Venere
Darci N Glick
Maisha R Bowley
Julie Q Albares
Claire O Inouye
Jones Z Tollner
Wickens A Ferencz
Faith M Whobrey
Nicolas D Stockham
Cody N Slusarski
Johnson T Caldarera
Sinclair K Figeroa
Arvin E Sergi
Jefferson L Nestle
Mayumi C Whobrey
Ivar D Shinko
Misaki Q Saylors
Misaki C Briddick
Jefferson Z Kusko
Ricardo R Tollner
Misaki C Nicka
Julie N Oldroyd
Jones O Dilliard
Julie R Amigon
Octavia O Venere
Leja N Marrier
Juan X Wieser
IdCountryDate
1000Italy2024-05-29
1001Italy2024-05-16
1002India2024-05-29
1003Italy2024-06-05
1004United Kingdom2024-05-16
1005Spain2024-05-26
1006India2024-06-07
1007France2024-05-31
1008Argentina2024-05-16
1009Canada2024-05-20
1010Brazil2024-06-06
1011Canada2024-06-09
1012Germany2024-06-07
1013Canada2024-05-26
1014United Kingdom2024-05-17
1015Italy2024-05-20
1016Argentina2024-06-08
1017Australia2024-05-17
1018India2024-05-31
1019Japan2024-06-08
1020Brazil2024-06-05
1021Argentina2024-05-20
1022Spain2024-06-12
1023India2024-06-04
1024Brazil2024-06-08
1025United Kingdom2024-05-29
1026Australia2024-05-26
1027India2024-06-13
1028Spain2024-05-30
1029Argentina2024-06-02
1030Italy2024-06-08
1031India2024-06-01
1032Brazil2024-06-09
1033Brazil2024-05-22
1034France2024-05-28
1035Brazil2024-05-23
1036Russia2024-05-26
1037Brazil2024-06-05
1038Japan2024-06-01
1039Russia2024-05-22
1040India2024-06-13
1041Japan2024-05-30
1042Germany2024-06-11
1043Russia2024-05-23
1044Australia2024-06-08
1045India2024-05-26
1046Argentina2024-06-09
1047Brazil2024-06-10
1048Russia2024-06-01
1049Brazil2024-06-07

On-Demand Data

NameIdCountryDate
Adams R Malet1000United Kingdom2024-05-20
Faith K Perin1001Brazil2024-06-06
Isabel F Royster1002Canada2024-06-08
Murillo D Ferencz1003United Kingdom2024-06-03
Izzy M Perin1004United Kingdom2024-05-27
Greenwood Y Stenseth1005Germany2024-05-25
Tony D Ferencz1006Australia2024-05-25
Juan F Shinko1007Argentina2024-05-23
Aruna Z Schemmer1008Japan2024-06-10
Clifford D Malet1009Australia2024-05-16
David V Marrier1010France2024-05-27
Jones B Wieser1011Germany2024-06-04
Adams O Morasca1012Australia2024-05-28
Mayumi O Nestle1013Canada2024-06-12
Kaitlin L Malet1014Brazil2024-05-29
Antonio F Paprocki1015Russia2024-06-06
Francesco P Rulapaugh1016India2024-06-01
Mujtaba S Rim1017Australia2024-06-04
Leja K Saylors1018India2024-06-04
Mayumi E Nestle1019Canada2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow W MarrierItalyOnyama Limba NEGOTIATION
Claire Y WaycottUnited KingdomOnyama Limba UNQUALIFIED
Julie X MorascaSpainIoni Bowcher PROPOSAL
Kadeem I MaletJapanXuxue Feng NEW
David T NestleItalyXuxue Feng QUALIFIED
Wickens C FigeroaAustraliaBernardo Dominic RENEWAL
Clifford M RutaUnited KingdomXuxue Feng NEGOTIATION
Jennifer Q VenereUnited KingdomOnyama Limba QUALIFIED
Ivar F ButtFranceIoni Bowcher UNQUALIFIED
Morrow L MorascaFranceIoni Bowcher NEW
Alejandro K WaycottCanadaIoni Bowcher QUALIFIED
Mujtaba M FerenczUnited KingdomBernardo Dominic RENEWAL
Kaitlin T RutaIndiaXuxue Feng UNQUALIFIED
Silvio C GillianCanadaElwin Sharvill RENEWAL
Murillo X BriddickItalyIoni Bowcher UNQUALIFIED
Jefferson X CaldareraJapanIoni Bowcher RENEWAL
Jones X SlusarskiFranceBernardo Dominic UNQUALIFIED
Maria E StensethIndiaIoni Bowcher QUALIFIED
Salvatore Z NickaAustraliaIvan Magalhaes NEGOTIATION
Costa N CaudyFranceStephen Shaw RENEWAL
Emily G TollnerBrazilXuxue Feng PROPOSAL
Chavez A CaudyBrazilBernardo Dominic QUALIFIED
Nicolas X MacleadCanadaBernardo Dominic QUALIFIED
Ashley V WhobreyBrazilAmy Elsner NEGOTIATION
Juan H OldroydIndiaXuxue Feng PROPOSAL
Smith M GlickBrazilElwin Sharvill NEW
Sinclair S PoquetteArgentinaAnna Fali UNQUALIFIED
James S GlickIndiaAnna Fali NEGOTIATION
Tony Y BriddickArgentinaIvan Magalhaes NEGOTIATION
Faith A DarakjyItalyOnyama Limba QUALIFIED
Stacey L RulapaughFranceAmy Elsner NEGOTIATION
Antonio K GauchoSpainIvan Magalhaes NEW
Claire Y WhobreyIndiaIoni Bowcher RENEWAL
James G CaldareraJapanXuxue Feng UNQUALIFIED
Clifford Z RulapaughIndiaAsiya Javayant NEW
Smith O FerenczGermanyStephen Shaw PROPOSAL
Aika Z CampainArgentinaIvan Magalhaes UNQUALIFIED
Costa Y WaycottUnited KingdomAnna Fali PROPOSAL
Aditya O PerinSpainElwin Sharvill PROPOSAL
Stacey P KuskoJapanBernardo Dominic 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>