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
Jennifer E SergiIndiaOnyama Limba QUALIFIED
Johnson X DoeJapanBernardo Dominic NEGOTIATION
Stacey Y NickaCanadaXuxue Feng RENEWAL
Maisha N WaycottUnited KingdomAnna Fali UNQUALIFIED
Darci N VocelkaBrazilXuxue Feng QUALIFIED
Adams A GillianIndiaIoni Bowcher RENEWAL
Deepesh U BriddickJapanXuxue Feng PROPOSAL
Izzy J StensethJapanIvan Magalhaes NEGOTIATION
Izzy D NickaFranceAnna Fali RENEWAL
Kadeem A IturbideBrazilAnna Fali NEW
Cody I WhobreyRussiaElwin Sharvill QUALIFIED
Johnson X ShinkoCanadaAmy Elsner QUALIFIED
Leon Z WhobreyUnited KingdomAmy Elsner PROPOSAL
Sinclair X StensethItalyBernardo Dominic RENEWAL
Isabel A GlickRussiaAmy Elsner RENEWAL
Johnson N WieserFranceStephen Shaw NEGOTIATION
Octavia Q DoeItalyAnna Fali QUALIFIED
Munro G SaylorsBrazilXuxue Feng NEGOTIATION
Mayumi W GillianUnited KingdomAmy Elsner NEW
Clifford V PerinFranceXuxue Feng PROPOSAL
Izzy K KuskoRussiaStephen Shaw NEGOTIATION
Maisha J MorascaArgentinaAnna Fali RENEWAL
Adams L ChuiJapanAsiya Javayant NEW
Silvio W ShinkoGermanyAmy Elsner PROPOSAL
Alejandro L WaycottBrazilXuxue Feng UNQUALIFIED
Antonio P RoysterUnited KingdomIvan Magalhaes UNQUALIFIED
Ashley B MaletIndiaAmy Elsner QUALIFIED
Sinclair E AmigonJapanBernardo Dominic QUALIFIED
Greenwood D StensethJapanIvan Magalhaes PROPOSAL
Jefferson M KolmetzItalyAnna Fali UNQUALIFIED
Wickens D StockhamBrazilIoni Bowcher UNQUALIFIED
Isabel T NestleUnited KingdomAnna Fali NEGOTIATION
Ivar J SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Murillo C DarakjyJapanIvan Magalhaes RENEWAL
Emily Y TollnerItalyAsiya Javayant QUALIFIED
Maria Z GlickCanadaAmy Elsner QUALIFIED
Munro O TollnerArgentinaBernardo Dominic NEW
Aditya Z ShinkoUnited KingdomAsiya Javayant QUALIFIED
Leon A WieserFranceIvan Magalhaes RENEWAL
Silvio E PerinGermanyAnna Fali RENEWAL
Jones Q OstroskyUnited KingdomAnna Fali PROPOSAL
Isabel Z DoeAustraliaAnna Fali RENEWAL
Darci J PoquetteBrazilBernardo Dominic UNQUALIFIED
Maisha S DoeRussiaAmy Elsner NEW
Leon A FlosiBrazilAnna Fali NEGOTIATION
Munro L PaprockiJapanAsiya Javayant NEGOTIATION
Claire I GarufiRussiaAmy Elsner QUALIFIED
Jeanfrancois W KuskoFranceOnyama Limba QUALIFIED
Alejandro I PoquetteIndiaStephen Shaw QUALIFIED
Rodrigues V CaudyBrazilStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jones N BowleyAustraliaOnyama Limba NEGOTIATION
Leja C InouyeItalyXuxue Feng PROPOSAL
Izzy P NickaGermanyIoni Bowcher RENEWAL
Aruna D InouyeGermanyElwin Sharvill PROPOSAL
Darci S MorascaArgentinaIoni Bowcher NEGOTIATION
Jennifer B WhobreyUnited KingdomAmy Elsner QUALIFIED
Chavez X BriddickIndiaIoni Bowcher NEGOTIATION
Aditya V RimJapanElwin Sharvill NEW
James O WaycottFranceStephen Shaw NEW
Jeanfrancois U CampainUnited KingdomOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo L MaletItaly2024-05-09Buckley Miller Wright UNQUALIFIED43Anna Fali
1001Murillo Q StockhamUnited Kingdom2024-05-24Rangoni Of Florence QUALIFIED13Elwin Sharvill
1002Julie B MacleadFrance2024-05-15Benton, John B Jr UNQUALIFIED19Onyama Limba
1003Nicolas Y FerenczArgentina2024-05-01Feiner Bros NEW30Asiya Javayant
1004Ashley Y PerinIndia2024-05-21Rousseaux, Michael Esq UNQUALIFIED59Ioni Bowcher
1005Arvin A FigeroaArgentina2024-05-03Buckley Miller Wright PROPOSAL43Bernardo Dominic
1006Maisha Q MarrierFrance2024-05-27Printing Dimensions NEGOTIATION46Ivan Magalhaes
1007Mujtaba F RimBrazil2024-04-30Truhlar And Truhlar Attys NEGOTIATION28Ivan Magalhaes
1008Jennifer X GauchoFrance2024-05-02Truhlar And Truhlar Attys NEW70Ivan Magalhaes
1009Ivar F VenereFrance2024-05-08Commercial Press QUALIFIED2Elwin Sharvill
1010Ivar J AmigonGermany2024-05-19Commercial Press RENEWAL52Elwin Sharvill
1011Rodrigues A PaprockiArgentina2024-05-19Chanay, Jeffrey A Esq NEW44Asiya Javayant
1012Sinclair H TollnerItaly2024-05-21Chanay, Jeffrey A Esq UNQUALIFIED96Amy Elsner
1013Kadeem X BologniaBrazil2024-05-17Rousseaux, Michael Esq NEGOTIATION63Elwin Sharvill
1014Jefferson V AmigonArgentina2024-05-22Commercial Press RENEWAL32Onyama Limba
1015Aditya M SlusarskiItaly2024-04-30Feltz Printing Service QUALIFIED7Asiya Javayant
1016Maisha O MacleadArgentina2024-04-28Buckley Miller Wright PROPOSAL82Anna Fali
1017Mayumi J WhobreyGermany2024-05-22Chemel, James L Cpa QUALIFIED76Ioni Bowcher
1018Leon H NestleBrazil2024-05-19Chanay, Jeffrey A Esq PROPOSAL32Xuxue Feng
1019Ricardo C KolmetzGermany2024-05-05Feltz Printing Service RENEWAL0Elwin Sharvill
1020Ashley N SaylorsUnited Kingdom2024-05-27King, Christopher A Esq PROPOSAL9Bernardo Dominic
1021Julie P WieserSpain2024-05-04Dorl, James J Esq NEGOTIATION15Bernardo Dominic
1022Mujtaba B MaletAustralia2024-05-23Printing Dimensions QUALIFIED73Stephen Shaw
1023Chavez S SaylorsIndia2024-04-29Commercial Press QUALIFIED89Stephen Shaw
1024Johnson L FigeroaUnited Kingdom2024-05-26Feltz Printing Service QUALIFIED90Elwin Sharvill
1025Sinclair W PaprockiIndia2024-05-17Benton, John B Jr QUALIFIED21Asiya Javayant
1026Smith I RulapaughBrazil2024-05-24Morlong Associates PROPOSAL71Elwin Sharvill
1027Ashley G AlbaresItaly2024-05-20Feiner Bros NEGOTIATION38Xuxue Feng
1028Salvatore P MaletRussia2024-04-28Chanay, Jeffrey A Esq NEW66Onyama Limba
1029Ricardo Z TollnerRussia2024-05-10Commercial Press PROPOSAL65Stephen Shaw
1030Greenwood W KolmetzIndia2024-05-24Dorl, James J Esq QUALIFIED63Amy Elsner
1031Sinclair M WhobreyUnited Kingdom2024-05-14Feiner Bros NEGOTIATION17Xuxue Feng
1032Maisha V IturbideRussia2024-04-30Commercial Press RENEWAL12Xuxue Feng
1033Mayumi P GauchoItaly2024-05-19Benton, John B Jr NEW89Asiya Javayant
1034Julie H MarrierItaly2024-05-09Rousseaux, Michael Esq UNQUALIFIED14Asiya Javayant
1035Johnson P GauchoAustralia2024-05-27Chanay, Jeffrey A Esq NEW98Stephen Shaw
1036Mayumi V CampainIndia2024-05-12Benton, John B Jr NEGOTIATION1Elwin Sharvill
1037Morrow L SaylorsSpain2024-05-26Chapman, Ross E Esq NEGOTIATION63Ioni Bowcher
1038Deepesh X WieserUnited Kingdom2024-05-15Rousseaux, Michael Esq RENEWAL95Ivan Magalhaes
1039Jefferson G ShinkoRussia2024-05-04Dorl, James J Esq RENEWAL8Ioni Bowcher
1040Julie P MarrierGermany2024-05-12Dorl, James J Esq QUALIFIED30Elwin Sharvill
1041Adams M CaudyUnited Kingdom2024-05-05Commercial Press NEGOTIATION34Bernardo Dominic
1042Claire A TollnerGermany2024-05-08Chapman, Ross E Esq RENEWAL48Ioni Bowcher
1043Mujtaba X RulapaughGermany2024-05-02Dorl, James J Esq RENEWAL49Asiya Javayant
1044Chavez B FlosiRussia2024-05-10Feltz Printing Service PROPOSAL60Stephen Shaw
1045Cody Z DoeCanada2024-05-08Chanay, Jeffrey A Esq QUALIFIED38Anna Fali
1046Maria H DilliardFrance2024-05-18Truhlar And Truhlar Attys RENEWAL6Ioni Bowcher
1047Jefferson V MaletFrance2024-05-17Chapman, Ross E Esq PROPOSAL55Amy Elsner
1048Aditya T ShinkoGermany2024-05-23Buckley Miller Wright QUALIFIED92Bernardo Dominic
1049Aditya K GauchoArgentina2024-05-10Feltz Printing Service UNQUALIFIED80Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aika J GarufiUnited KingdomElwin Sharvill PROPOSAL
Kadeem O OstroskyAustraliaAnna Fali QUALIFIED
Francesco M BologniaCanadaElwin Sharvill PROPOSAL
Adams K SergiCanadaStephen Shaw PROPOSAL
Jones Z RulapaughGermanyXuxue Feng RENEWAL
Chavez N AlbaresCanadaXuxue Feng RENEWAL
Adams N CampainSpainAmy Elsner PROPOSAL
Deepesh M MorascaFranceAsiya Javayant PROPOSAL
Rodrigues W TollnerAustraliaStephen Shaw UNQUALIFIED
Faith A FlosiSpainOnyama Limba PROPOSAL
Faith L BriddickCanadaOnyama Limba PROPOSAL
Jones Z BologniaSpainElwin Sharvill NEGOTIATION
Jefferson A GillianJapanAmy Elsner UNQUALIFIED
Mayumi J KuskoCanadaIvan Magalhaes NEW
Octavia U CaudyItalyAnna Fali RENEWAL
Kadeem C GauchoUnited KingdomElwin Sharvill PROPOSAL
Jennifer P MarrierRussiaXuxue Feng UNQUALIFIED
Sinclair A VenereArgentinaIoni Bowcher NEW
Maisha J StockhamFranceAnna Fali UNQUALIFIED
Misaki S SchemmerJapanOnyama Limba PROPOSAL
Kaitlin C TollnerJapanElwin Sharvill QUALIFIED
Darci I RulapaughUnited KingdomAnna Fali UNQUALIFIED
Ivar T BowleyIndiaAnna Fali NEGOTIATION
Julie K MarrierSpainAmy Elsner NEGOTIATION
Kadeem T RulapaughItalyIoni Bowcher NEGOTIATION
Arvin W BriddickGermanyElwin Sharvill UNQUALIFIED
Aditya V BriddickSpainElwin Sharvill RENEWAL
Mayumi E NestleRussiaAnna Fali NEW
Silvio Q RulapaughBrazilAnna Fali NEW
Chavez A MorascaAustraliaElwin Sharvill RENEWAL
Octavia Y PoquetteItalyIvan Magalhaes UNQUALIFIED
Greenwood D MaletAustraliaAsiya Javayant UNQUALIFIED
Chavez S AlbaresRussiaIvan Magalhaes NEW
Mujtaba P SergiIndiaIoni Bowcher NEGOTIATION
Aruna S GarufiRussiaStephen Shaw NEGOTIATION
Julie O IturbideUnited KingdomStephen Shaw NEW
Jeanfrancois P RutaFranceStephen Shaw UNQUALIFIED
Isabel B RulapaughCanadaIoni Bowcher NEW
Rodrigues X VocelkaJapanOnyama Limba RENEWAL
Izzy I AmigonJapanAmy Elsner NEW
Deepesh M SaylorsBrazilOnyama Limba PROPOSAL
Alejandro N PaprockiCanadaElwin Sharvill PROPOSAL
Mayumi E FerenczCanadaAnna Fali RENEWAL
Chavez J DoeBrazilBernardo Dominic UNQUALIFIED
Johnson Y CaudyRussiaElwin Sharvill RENEWAL
Nicolas R VenereCanadaStephen Shaw RENEWAL
Chavez W AmigonJapanIoni Bowcher QUALIFIED
Jeanfrancois X FlosiCanadaIoni Bowcher UNQUALIFIED
Ricardo C FlosiRussiaStephen Shaw UNQUALIFIED
Munro F DoeRussiaOnyama Limba NEW
Frozen Columns
Name
Juan L Ferencz
Chavez S Glick
Clifford C Venere
Morrow C Kusko
Izzy E Perin
Sinclair M Stockham
Nicolas V Bolognia
Johnson R Royster
Julie N Stockham
Izzy H Slusarski
David F Whobrey
James D Whobrey
Ricardo N Saylors
Juan S Malet
Aruna B Albares
Johnson I Paprocki
Clifford H Poquette
Munro X Bowley
David E Tollner
David S Nicka
David P Royster
Costa I Perin
Stacey J Flosi
Clifford L Inouye
Jones S Inouye
Leja D Caldarera
Tony P Nestle
Aditya V Rulapaugh
Deepesh Z Nestle
Jefferson I Darakjy
Jefferson P Caldarera
Emily I Gaucho
Wickens M Stockham
Ivar O Oldroyd
James S Ferencz
Smith S Wieser
Arvin H Glick
Murillo Q Doe
Leja Z Bowley
Smith F Chui
Maria J Doe
James Q Sergi
Wickens C Tollner
Antonio G Venere
Jennifer B Butt
Kaitlin I Paprocki
Izzy J Flosi
David H Waycott
Kaitlin W Bowley
Octavia G Bolognia
IdCountryDate
1000Russia2024-05-27
1001France2024-05-05
1002United Kingdom2024-05-26
1003Russia2024-05-20
1004Argentina2024-04-30
1005Germany2024-05-04
1006Australia2024-05-25
1007Brazil2024-05-12
1008India2024-05-25
1009India2024-05-04
1010Russia2024-05-15
1011Italy2024-04-28
1012India2024-05-02
1013United Kingdom2024-05-07
1014Brazil2024-05-26
1015United Kingdom2024-05-16
1016Japan2024-05-17
1017Japan2024-04-29
1018France2024-05-10
1019Russia2024-05-13
1020India2024-05-14
1021India2024-05-25
1022Australia2024-05-10
1023Argentina2024-05-12
1024Japan2024-05-13
1025Canada2024-05-12
1026Germany2024-05-10
1027France2024-05-06
1028Germany2024-05-18
1029Italy2024-04-29
1030Germany2024-05-01
1031Brazil2024-05-24
1032Argentina2024-05-27
1033Germany2024-05-22
1034Germany2024-05-18
1035Spain2024-05-20
1036Japan2024-05-15
1037Australia2024-05-12
1038Italy2024-05-13
1039France2024-05-18
1040Russia2024-05-06
1041Spain2024-05-16
1042Canada2024-05-17
1043Australia2024-05-24
1044India2024-05-17
1045Germany2024-04-30
1046Italy2024-05-15
1047Spain2024-05-11
1048Argentina2024-04-28
1049India2024-04-29

On-Demand Data

NameIdCountryDate
Rodrigues J Albares1000Italy2024-05-01
Smith M Butt1001Canada2024-05-22
Adams X Flosi1002Russia2024-05-11
Tony Y Morasca1003Argentina2024-05-20
Wickens J Morasca1004Brazil2024-04-30
Maisha S Stenseth1005Canada2024-05-27
Silvio X Malet1006Australia2024-05-18
Maisha W Vocelka1007Italy2024-05-21
Emily K Slusarski1008France2024-05-18
Jones Y Caldarera1009Brazil2024-05-09
Greenwood T Caldarera1010Spain2024-05-12
Salvatore X Butt1011India2024-05-13
Nicolas P Campain1012Italy2024-05-26
Jefferson K Foller1013Japan2024-05-16
Leon Z Ferencz1014Spain2024-04-29
Stacey D Paprocki1015India2024-05-21
Ricardo G Royster1016Italy2024-05-11
Munro G Amigon1017India2024-05-10
Greenwood C Glick1018France2024-05-24
Clifford B Inouye1019Germany2024-05-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith J GarufiRussiaAnna Fali UNQUALIFIED
Juan W KuskoAustraliaStephen Shaw PROPOSAL
Antonio G KolmetzCanadaAnna Fali QUALIFIED
Cody B FlosiBrazilIvan Magalhaes RENEWAL
Rodrigues N SaylorsRussiaElwin Sharvill NEW
Ashley D PerinBrazilIvan Magalhaes RENEWAL
Tony M VocelkaArgentinaBernardo Dominic NEGOTIATION
Munro M PoquetteGermanyAsiya Javayant RENEWAL
Ashley C RoysterGermanyAsiya Javayant NEW
Jones I MaletBrazilBernardo Dominic UNQUALIFIED
Faith V DilliardGermanyAmy Elsner NEGOTIATION
Ashley T SaylorsItalyAnna Fali UNQUALIFIED
Deepesh T CaudyAustraliaElwin Sharvill UNQUALIFIED
Kadeem L CaldareraAustraliaElwin Sharvill NEW
Darci N PaprockiRussiaElwin Sharvill NEGOTIATION
Clifford A InouyeAustraliaXuxue Feng NEW
Clifford W DoeItalyAsiya Javayant QUALIFIED
Arvin M NestleSpainAmy Elsner NEGOTIATION
Deepesh H NickaRussiaElwin Sharvill UNQUALIFIED
David D BowleyJapanXuxue Feng NEW
Claire L PerinIndiaBernardo Dominic PROPOSAL
Wickens U GarufiItalyElwin Sharvill PROPOSAL
Jeanfrancois Z VenereArgentinaAsiya Javayant NEGOTIATION
Octavia N KolmetzSpainStephen Shaw UNQUALIFIED
Chavez F InouyeItalyElwin Sharvill RENEWAL
Emily R RoysterJapanElwin Sharvill UNQUALIFIED
Deepesh P BriddickJapanXuxue Feng QUALIFIED
Ivar P AlbaresSpainIvan Magalhaes NEGOTIATION
Darci B GauchoRussiaXuxue Feng NEW
Jones U DilliardGermanyElwin Sharvill QUALIFIED
Munro D WieserArgentinaStephen Shaw RENEWAL
Isabel E BowleyRussiaElwin Sharvill PROPOSAL
Isabel Y PerinRussiaXuxue Feng UNQUALIFIED
Adams B MaletGermanyXuxue Feng NEW
Murillo O WaycottAustraliaIoni Bowcher NEW
Jones J OstroskySpainOnyama Limba UNQUALIFIED
Clifford O KuskoFranceIoni Bowcher RENEWAL
Silvio V OstroskyUnited KingdomBernardo Dominic RENEWAL
James G AmigonBrazilAmy Elsner NEGOTIATION
Misaki F NickaSpainElwin Sharvill 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>