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
Mayumi M FollerRussiaElwin Sharvill UNQUALIFIED
Murillo W FlosiCanadaBernardo Dominic UNQUALIFIED
Tony N DarakjyRussiaXuxue Feng RENEWAL
Isabel K PerinBrazilAmy Elsner QUALIFIED
Jennifer D IturbideBrazilIvan Magalhaes RENEWAL
Adams I NestleArgentinaAnna Fali QUALIFIED
Leon S StensethBrazilAnna Fali NEW
Darci N InouyeUnited KingdomAnna Fali PROPOSAL
Antonio M MorascaGermanyAsiya Javayant PROPOSAL
Francesco X FigeroaSpainElwin Sharvill RENEWAL
Jefferson G OldroydAustraliaIvan Magalhaes NEGOTIATION
David W RimUnited KingdomAnna Fali NEW
Aditya A RutaGermanyXuxue Feng QUALIFIED
Smith L BowleyGermanyAsiya Javayant PROPOSAL
Leja M WhobreyRussiaIvan Magalhaes NEGOTIATION
Murillo J FerenczAustraliaStephen Shaw NEGOTIATION
Stacey O BowleyFranceAnna Fali RENEWAL
Mujtaba C FerenczSpainAmy Elsner QUALIFIED
Francesco N BriddickSpainIoni Bowcher NEW
Nicolas C BriddickJapanOnyama Limba NEGOTIATION
Maria I CaldareraIndiaElwin Sharvill RENEWAL
Wickens S SergiUnited KingdomIvan Magalhaes UNQUALIFIED
Juan P WaycottJapanXuxue Feng RENEWAL
Mayumi X GlickArgentinaStephen Shaw NEGOTIATION
Stacey M SaylorsGermanyXuxue Feng QUALIFIED
Arvin P DoeIndiaAnna Fali UNQUALIFIED
Arvin L DoeGermanyAmy Elsner NEGOTIATION
Faith F ShinkoFranceAmy Elsner RENEWAL
James D VocelkaItalyAmy Elsner RENEWAL
Munro L VocelkaItalyAmy Elsner UNQUALIFIED
Isabel Y VocelkaCanadaAsiya Javayant NEW
Alejandro U BologniaCanadaIvan Magalhaes PROPOSAL
Darci X KolmetzAustraliaOnyama Limba RENEWAL
Wickens O RoysterBrazilAsiya Javayant UNQUALIFIED
Emily Q TollnerIndiaAnna Fali NEW
Tony K StockhamGermanyBernardo Dominic PROPOSAL
Maria Q OstroskyBrazilAmy Elsner RENEWAL
Ivar M SaylorsRussiaXuxue Feng QUALIFIED
Greenwood P VenereFranceAmy Elsner QUALIFIED
Greenwood R AlbaresUnited KingdomAsiya Javayant QUALIFIED
Wickens Z SergiSpainIvan Magalhaes NEW
Ricardo K FigeroaItalyIvan Magalhaes RENEWAL
Jennifer K ShinkoSpainIoni Bowcher NEW
David F FollerFranceXuxue Feng NEGOTIATION
Alejandro T IturbideFranceIvan Magalhaes NEGOTIATION
Leja P WaycottSpainAnna Fali QUALIFIED
Leon U FlosiJapanXuxue Feng UNQUALIFIED
Stacey N FigeroaAustraliaElwin Sharvill PROPOSAL
Faith B TollnerSpainAmy Elsner NEGOTIATION
David X SergiIndiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Murillo C FlosiRussiaOnyama Limba RENEWAL
Ricardo O StockhamUnited KingdomBernardo Dominic QUALIFIED
Chavez E IturbideJapanBernardo Dominic NEW
Octavia J StensethAustraliaStephen Shaw RENEWAL
Faith T PoquetteUnited KingdomStephen Shaw NEW
Silvio L RulapaughGermanyStephen Shaw QUALIFIED
Chavez G MacleadCanadaStephen Shaw NEW
Morrow K FigeroaCanadaIvan Magalhaes NEGOTIATION
Kadeem N IturbideAustraliaAnna Fali RENEWAL
Aika Z MarrierSpainXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer D WhobreyItaly2024-05-25Morlong Associates PROPOSAL40Ioni Bowcher
1001Nicolas S MacleadUnited Kingdom2024-06-18Chapman, Ross E Esq UNQUALIFIED62Amy Elsner
1002Arvin T GauchoIndia2024-06-11Feltz Printing Service NEGOTIATION35Stephen Shaw
1003Cody I InouyeAustralia2024-05-24Rangoni Of Florence PROPOSAL33Xuxue Feng
1004Ivar L CaldareraItaly2024-06-16Benton, John B Jr RENEWAL0Bernardo Dominic
1005Wickens W MaletAustralia2024-06-10Dorl, James J Esq QUALIFIED21Elwin Sharvill
1006Ashley J GlickGermany2024-05-31Chemel, James L Cpa RENEWAL57Onyama Limba
1007Francesco A ButtCanada2024-06-06Benton, John B Jr QUALIFIED68Amy Elsner
1008Antonio Y RimFrance2024-06-17Feltz Printing Service NEW4Asiya Javayant
1009Emily R GarufiUnited Kingdom2024-06-18King, Christopher A Esq NEGOTIATION29Anna Fali
1010Kaitlin M DarakjyJapan2024-06-13Chapman, Ross E Esq QUALIFIED39Amy Elsner
1011Juan F PaprockiAustralia2024-06-20Benton, John B Jr UNQUALIFIED51Amy Elsner
1012Ricardo Z MacleadCanada2024-06-01Buckley Miller Wright UNQUALIFIED79Anna Fali
1013Cody T WaycottArgentina2024-06-05Chemel, James L Cpa UNQUALIFIED88Elwin Sharvill
1014Jennifer T RoysterFrance2024-05-29Rousseaux, Michael Esq NEGOTIATION87Ioni Bowcher
1015Octavia Y WhobreySpain2024-06-11Chanay, Jeffrey A Esq RENEWAL63Ivan Magalhaes
1016Misaki G RoysterIndia2024-06-18Chemel, James L Cpa NEGOTIATION94Bernardo Dominic
1017Jefferson V PaprockiItaly2024-06-19Dorl, James J Esq PROPOSAL35Anna Fali
1018Nicolas F SchemmerBrazil2024-06-04Truhlar And Truhlar Attys RENEWAL70Asiya Javayant
1019Leon V PoquetteIndia2024-06-01King, Christopher A Esq NEW87Onyama Limba
1020Jones L RoysterAustralia2024-05-28Rangoni Of Florence NEW82Onyama Limba
1021Emily U SaylorsItaly2024-05-31Chapman, Ross E Esq QUALIFIED47Asiya Javayant
1022Claire R FerenczIndia2024-06-13Morlong Associates QUALIFIED99Amy Elsner
1023Munro H FlosiGermany2024-05-31Feiner Bros UNQUALIFIED46Bernardo Dominic
1024Jeanfrancois D RoysterBrazil2024-05-29Chemel, James L Cpa RENEWAL89Amy Elsner
1025Salvatore J GauchoAustralia2024-06-22Feiner Bros UNQUALIFIED48Bernardo Dominic
1026Rodrigues N DarakjyItaly2024-06-20Chapman, Ross E Esq NEW1Asiya Javayant
1027Jeanfrancois A WaycottFrance2024-06-12Truhlar And Truhlar Attys RENEWAL84Bernardo Dominic
1028James G FerenczGermany2024-05-26Buckley Miller Wright NEW98Amy Elsner
1029Isabel W NestleSpain2024-06-21Chapman, Ross E Esq QUALIFIED94Amy Elsner
1030Aika Y IturbideRussia2024-06-02Buckley Miller Wright QUALIFIED98Bernardo Dominic
1031Darci Q SchemmerUnited Kingdom2024-06-14King, Christopher A Esq NEW42Asiya Javayant
1032Jennifer Z BologniaUnited Kingdom2024-06-11King, Christopher A Esq NEW4Stephen Shaw
1033Darci X WhobreyGermany2024-05-24Chapman, Ross E Esq QUALIFIED57Elwin Sharvill
1034Clifford Y BriddickFrance2024-06-08Chanay, Jeffrey A Esq QUALIFIED76Ioni Bowcher
1035Nicolas W PerinItaly2024-06-04King, Christopher A Esq NEW35Ioni Bowcher
1036Costa Z MaletBrazil2024-06-12Rousseaux, Michael Esq QUALIFIED14Bernardo Dominic
1037Maria N IturbideSpain2024-06-12Printing Dimensions PROPOSAL57Anna Fali
1038Ivar U SlusarskiGermany2024-06-12Feltz Printing Service UNQUALIFIED58Ivan Magalhaes
1039Jones S GarufiBrazil2024-06-09Feiner Bros PROPOSAL23Xuxue Feng
1040Deepesh E WhobreyUnited Kingdom2024-05-30Printing Dimensions PROPOSAL85Stephen Shaw
1041Ivar M KuskoIndia2024-06-08Chanay, Jeffrey A Esq NEGOTIATION36Asiya Javayant
1042Ricardo I FlosiUnited Kingdom2024-05-24Chapman, Ross E Esq QUALIFIED88Bernardo Dominic
1043James V BriddickArgentina2024-06-14Feltz Printing Service NEW23Anna Fali
1044Darci M DilliardSpain2024-06-22Chapman, Ross E Esq RENEWAL77Ivan Magalhaes
1045Alejandro G PaprockiAustralia2024-06-05Feiner Bros UNQUALIFIED89Amy Elsner
1046Misaki H PerinUnited Kingdom2024-06-07Morlong Associates NEW67Stephen Shaw
1047Aika N SlusarskiArgentina2024-06-15Commercial Press RENEWAL36Bernardo Dominic
1048Octavia Z FlosiGermany2024-06-11Printing Dimensions PROPOSAL83Anna Fali
1049Aditya U MorascaCanada2024-06-08King, Christopher A Esq PROPOSAL98Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Francesco O PerinAustraliaAnna Fali QUALIFIED
Morrow S MaletArgentinaAmy Elsner NEW
Sinclair H MaletBrazilOnyama Limba QUALIFIED
Ricardo L OldroydUnited KingdomIvan Magalhaes PROPOSAL
Misaki P StockhamJapanBernardo Dominic UNQUALIFIED
Faith I CampainUnited KingdomAmy Elsner UNQUALIFIED
Maria E ButtRussiaElwin Sharvill UNQUALIFIED
Stacey D FigeroaUnited KingdomIoni Bowcher UNQUALIFIED
Sinclair H FigeroaItalyAnna Fali RENEWAL
Maisha O FollerRussiaElwin Sharvill UNQUALIFIED
Jones L IturbideGermanyIoni Bowcher PROPOSAL
Kaitlin C DilliardSpainAmy Elsner PROPOSAL
Faith R BriddickRussiaOnyama Limba NEGOTIATION
Jefferson Q RutaUnited KingdomIoni Bowcher QUALIFIED
Julie H TollnerUnited KingdomAnna Fali NEGOTIATION
Aditya G RutaRussiaAsiya Javayant QUALIFIED
Adams I DilliardJapanStephen Shaw NEGOTIATION
James S MorascaRussiaXuxue Feng QUALIFIED
Stacey M BologniaFranceAmy Elsner RENEWAL
Smith E DilliardIndiaBernardo Dominic NEW
Sinclair G GlickUnited KingdomBernardo Dominic PROPOSAL
James A DoeCanadaAnna Fali NEGOTIATION
Leja Y RutaRussiaAmy Elsner PROPOSAL
James O OldroydFranceAsiya Javayant UNQUALIFIED
Darci E CampainUnited KingdomElwin Sharvill QUALIFIED
Faith B SergiCanadaAnna Fali NEGOTIATION
Munro P ButtRussiaIvan Magalhaes RENEWAL
Ricardo F CaudyJapanAmy Elsner QUALIFIED
Leon M StensethCanadaAnna Fali NEGOTIATION
Salvatore C ChuiIndiaAsiya Javayant RENEWAL
Emily Y CampainArgentinaAsiya Javayant RENEWAL
Sinclair W ChuiRussiaXuxue Feng NEGOTIATION
Leon V VocelkaCanadaStephen Shaw PROPOSAL
Jeanfrancois H CampainItalyBernardo Dominic RENEWAL
Misaki U CaudySpainBernardo Dominic NEGOTIATION
Misaki I RulapaughGermanyBernardo Dominic QUALIFIED
Rodrigues C CaudyItalyIoni Bowcher NEGOTIATION
Maria I StockhamJapanBernardo Dominic PROPOSAL
Salvatore M FollerArgentinaAmy Elsner UNQUALIFIED
Deepesh X GarufiBrazilIvan Magalhaes RENEWAL
Sinclair M RulapaughCanadaOnyama Limba NEW
Francesco Z OstroskyJapanBernardo Dominic UNQUALIFIED
Juan N CampainItalyIoni Bowcher NEGOTIATION
Jefferson B MaletIndiaXuxue Feng PROPOSAL
Octavia R GarufiAustraliaOnyama Limba NEW
Chavez W StensethFranceAnna Fali QUALIFIED
Aruna I StensethFranceIoni Bowcher QUALIFIED
Maisha N CampainBrazilIvan Magalhaes PROPOSAL
Morrow C FlosiJapanStephen Shaw NEGOTIATION
Aika Y CaldareraItalyAnna Fali PROPOSAL
Frozen Columns
Name
Alejandro A Malet
Silvio U Paprocki
Faith L Slusarski
Silvio K Albares
Darci Z Bolognia
Aruna C Paprocki
Cody O Vocelka
Antonio M Morasca
Leja V Bolognia
Maisha T Butt
Octavia E Figeroa
Wickens K Campain
Silvio R Schemmer
Tony Y Rim
Nicolas E Dilliard
Greenwood Q Saylors
Kadeem B Chui
Aditya R Marrier
Nicolas W Darakjy
Claire E Paprocki
Kadeem D Marrier
Faith C Ferencz
Tony L Glick
Adams O Flosi
Ivar U Oldroyd
Jeanfrancois S Stenseth
Stacey L Nicka
Alejandro S Glick
Izzy A Morasca
Antonio H Paprocki
Leja Y Schemmer
Darci L Kusko
Isabel V Shinko
Octavia L Sergi
Faith Q Ostrosky
Aruna D Sergi
Jones W Darakjy
Jeanfrancois N Nestle
Darci A Tollner
Isabel K Slusarski
Jennifer R Dilliard
Juan I Iturbide
Misaki G Iturbide
Salvatore F Rulapaugh
David W Caudy
Deepesh U Saylors
Darci K Ostrosky
Salvatore N Nicka
Emily R Nicka
Kadeem S Slusarski
IdCountryDate
1000Japan2024-05-29
1001Germany2024-05-28
1002Russia2024-06-07
1003United Kingdom2024-06-13
1004Brazil2024-06-15
1005France2024-05-26
1006Italy2024-06-11
1007India2024-06-20
1008Canada2024-06-09
1009France2024-06-04
1010Brazil2024-06-02
1011Germany2024-05-24
1012United Kingdom2024-06-17
1013Japan2024-06-02
1014Russia2024-06-17
1015United Kingdom2024-05-28
1016Argentina2024-05-30
1017Australia2024-05-31
1018Spain2024-06-11
1019Spain2024-05-28
1020Russia2024-06-09
1021Russia2024-06-08
1022Canada2024-05-28
1023France2024-06-18
1024Italy2024-06-07
1025Japan2024-05-27
1026Argentina2024-06-12
1027India2024-06-15
1028Italy2024-06-15
1029Canada2024-06-13
1030Brazil2024-06-16
1031Canada2024-06-12
1032Australia2024-06-09
1033Canada2024-06-01
1034Germany2024-06-17
1035Spain2024-05-26
1036Germany2024-06-14
1037United Kingdom2024-06-16
1038India2024-05-27
1039Spain2024-06-19
1040United Kingdom2024-05-28
1041Spain2024-06-11
1042Argentina2024-05-30
1043Brazil2024-06-06
1044Brazil2024-06-19
1045United Kingdom2024-06-13
1046Canada2024-06-09
1047Canada2024-06-11
1048France2024-06-11
1049Australia2024-06-18

On-Demand Data

NameIdCountryDate
Cody B Sergi1000Japan2024-06-15
Tony J Oldroyd1001Argentina2024-05-24
Emily I Kusko1002France2024-06-13
Maria X Slusarski1003Germany2024-06-13
Jeanfrancois C Gaucho1004Germany2024-05-26
Jennifer S Stockham1005Italy2024-06-08
Emily F Dilliard1006Canada2024-05-24
Silvio U Rulapaugh1007Russia2024-05-26
Morrow K Tollner1008France2024-05-28
Stacey H Iturbide1009United Kingdom2024-05-25
Ivar M Glick1010France2024-06-11
Chavez M Rim1011Australia2024-06-17
Kadeem Q Malet1012Canada2024-05-24
Smith H Oldroyd1013Russia2024-06-17
Emily P Rim1014Australia2024-06-09
Ashley F Shinko1015Spain2024-05-24
Jefferson G Glick1016France2024-06-03
Maisha E Ruta1017India2024-06-13
Octavia D Butt1018Argentina2024-06-10
Deepesh P Flosi1019France2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio V RimItalyAsiya Javayant RENEWAL
Deepesh B PoquetteIndiaXuxue Feng NEW
Mujtaba M KuskoCanadaXuxue Feng NEGOTIATION
Alejandro W BologniaAustraliaXuxue Feng RENEWAL
Stacey P BriddickGermanyXuxue Feng QUALIFIED
Costa B GarufiCanadaAnna Fali NEW
Jeanfrancois L OstroskyUnited KingdomAnna Fali NEGOTIATION
Munro U CampainGermanyXuxue Feng QUALIFIED
Silvio T DarakjyGermanyAsiya Javayant RENEWAL
Aditya O OstroskyAustraliaStephen Shaw NEW
Cody N FigeroaBrazilAsiya Javayant NEW
Misaki H DoeRussiaIvan Magalhaes RENEWAL
Johnson A WhobreyCanadaXuxue Feng PROPOSAL
Emily D FlosiAustraliaAsiya Javayant QUALIFIED
Tony M OldroydGermanyAmy Elsner NEW
Adams C CampainJapanOnyama Limba RENEWAL
James B RutaItalyAnna Fali NEGOTIATION
Sinclair K PoquetteJapanIvan Magalhaes NEGOTIATION
Chavez T GillianIndiaAsiya Javayant RENEWAL
Rodrigues P MorascaArgentinaIvan Magalhaes PROPOSAL
Arvin X PaprockiIndiaBernardo Dominic UNQUALIFIED
Mujtaba V GillianCanadaAsiya Javayant UNQUALIFIED
Leja Z BologniaIndiaAmy Elsner NEGOTIATION
Juan A VocelkaRussiaElwin Sharvill QUALIFIED
Murillo P DilliardCanadaAnna Fali RENEWAL
Arvin E MacleadRussiaOnyama Limba PROPOSAL
Darci O GillianCanadaOnyama Limba RENEWAL
Silvio B ChuiUnited KingdomIvan Magalhaes NEGOTIATION
Nicolas J BowleySpainXuxue Feng QUALIFIED
Adams Z InouyeItalyIoni Bowcher RENEWAL
Emily X OldroydGermanyOnyama Limba NEGOTIATION
Octavia L SlusarskiJapanOnyama Limba QUALIFIED
Juan T NestleCanadaIoni Bowcher UNQUALIFIED
Rodrigues H StockhamBrazilAmy Elsner PROPOSAL
Clifford N ChuiUnited KingdomAmy Elsner UNQUALIFIED
Tony N CampainUnited KingdomAsiya Javayant RENEWAL
Maria M OldroydAustraliaElwin Sharvill PROPOSAL
Chavez Y DarakjyRussiaIoni Bowcher UNQUALIFIED
Aditya H BriddickCanadaAnna Fali QUALIFIED
David H CaldareraCanadaStephen Shaw 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>