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
Izzy S DilliardFranceXuxue Feng RENEWAL
Julie Z NickaBrazilOnyama Limba PROPOSAL
Aruna E DilliardItalyIvan Magalhaes PROPOSAL
Misaki I FigeroaSpainIvan Magalhaes RENEWAL
Claire Z BowleySpainStephen Shaw UNQUALIFIED
James F SaylorsBrazilElwin Sharvill NEW
James F DarakjyRussiaBernardo Dominic NEGOTIATION
Faith W KolmetzUnited KingdomAnna Fali NEW
Jefferson S AmigonCanadaOnyama Limba PROPOSAL
Rodrigues F PaprockiAustraliaOnyama Limba UNQUALIFIED
Leon X BologniaJapanOnyama Limba RENEWAL
Rodrigues V SlusarskiFranceIoni Bowcher QUALIFIED
Misaki S IturbideJapanIoni Bowcher UNQUALIFIED
Jeanfrancois R ChuiJapanAnna Fali NEW
Clifford J BriddickIndiaBernardo Dominic PROPOSAL
Maisha U InouyeCanadaOnyama Limba RENEWAL
Mujtaba V WieserBrazilAnna Fali NEGOTIATION
Smith P RimGermanyBernardo Dominic UNQUALIFIED
Kadeem X PoquetteArgentinaIoni Bowcher NEW
Jeanfrancois R PoquetteJapanAmy Elsner NEW
Chavez C FlosiUnited KingdomAnna Fali NEGOTIATION
Rodrigues Y PerinAustraliaIvan Magalhaes RENEWAL
Rodrigues H SchemmerIndiaAnna Fali NEGOTIATION
Munro B BologniaUnited KingdomAsiya Javayant PROPOSAL
Maisha O NestleArgentinaAnna Fali NEW
Juan S ShinkoJapanStephen Shaw NEGOTIATION
Mayumi F DarakjyArgentinaBernardo Dominic RENEWAL
Maria D RulapaughJapanXuxue Feng PROPOSAL
Morrow P PaprockiRussiaAnna Fali QUALIFIED
Kaitlin S DarakjyCanadaXuxue Feng QUALIFIED
Claire H DilliardSpainAmy Elsner QUALIFIED
Darci O PaprockiRussiaOnyama Limba NEW
Chavez H VenereFranceAsiya Javayant UNQUALIFIED
Maria P CaudySpainIoni Bowcher RENEWAL
Emily C SchemmerItalyStephen Shaw QUALIFIED
Leja W StensethAustraliaIvan Magalhaes PROPOSAL
Octavia C RulapaughGermanyAmy Elsner UNQUALIFIED
Salvatore J RoysterSpainElwin Sharvill UNQUALIFIED
Ricardo C BriddickSpainStephen Shaw NEGOTIATION
Alejandro C SlusarskiGermanyIvan Magalhaes RENEWAL
Munro F TollnerUnited KingdomStephen Shaw NEW
Nicolas Z PoquetteRussiaElwin Sharvill UNQUALIFIED
Adams J MaletBrazilBernardo Dominic QUALIFIED
Smith W FollerItalyOnyama Limba UNQUALIFIED
Jeanfrancois U GauchoFranceBernardo Dominic PROPOSAL
Claire T InouyeBrazilStephen Shaw UNQUALIFIED
Mujtaba I GillianIndiaXuxue Feng RENEWAL
Ashley X InouyeUnited KingdomBernardo Dominic UNQUALIFIED
Leon Q SlusarskiRussiaAnna Fali RENEWAL
Ricardo M PerinCanadaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Ivar Q MarrierCanadaXuxue Feng QUALIFIED
Kadeem F DarakjySpainIvan Magalhaes NEGOTIATION
Costa D MorascaIndiaAnna Fali NEGOTIATION
Misaki L SlusarskiUnited KingdomIvan Magalhaes PROPOSAL
Stacey V NickaIndiaXuxue Feng PROPOSAL
Leon C MaletBrazilXuxue Feng PROPOSAL
Faith X SlusarskiSpainAsiya Javayant NEGOTIATION
Mayumi H DarakjyJapanAnna Fali RENEWAL
Jennifer J KuskoItalyOnyama Limba NEW
Murillo P StockhamIndiaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon B GarufiUnited Kingdom2024-06-13Chemel, James L Cpa UNQUALIFIED11Ioni Bowcher
1001Deepesh T CaldareraCanada2024-06-14Feiner Bros QUALIFIED68Xuxue Feng
1002Costa M ButtBrazil2024-06-20King, Christopher A Esq NEGOTIATION31Stephen Shaw
1003Stacey A InouyeCanada2024-05-30Commercial Press QUALIFIED99Bernardo Dominic
1004James D MacleadGermany2024-06-04Feiner Bros UNQUALIFIED68Xuxue Feng
1005Kaitlin J DarakjyIndia2024-05-24Chanay, Jeffrey A Esq NEGOTIATION60Ioni Bowcher
1006Costa B MacleadJapan2024-06-19Truhlar And Truhlar Attys NEW5Xuxue Feng
1007Munro A CaldareraJapan2024-06-06Buckley Miller Wright UNQUALIFIED51Xuxue Feng
1008Emily V ChuiUnited Kingdom2024-06-02Rousseaux, Michael Esq RENEWAL99Amy Elsner
1009Jeanfrancois G TollnerGermany2024-06-15Buckley Miller Wright NEGOTIATION23Elwin Sharvill
1010Kaitlin A SlusarskiSpain2024-06-12King, Christopher A Esq QUALIFIED0Stephen Shaw
1011Leon G MaletCanada2024-06-02Buckley Miller Wright RENEWAL9Asiya Javayant
1012Mayumi P MaletGermany2024-05-26Chemel, James L Cpa NEW24Ioni Bowcher
1013Arvin R FigeroaArgentina2024-06-16King, Christopher A Esq RENEWAL19Bernardo Dominic
1014Smith Q IturbideGermany2024-06-21Buckley Miller Wright PROPOSAL59Ioni Bowcher
1015Adams J VocelkaArgentina2024-06-15Truhlar And Truhlar Attys UNQUALIFIED17Asiya Javayant
1016Aditya A MorascaSpain2024-05-29Morlong Associates QUALIFIED37Asiya Javayant
1017Maria B CaudyFrance2024-06-10Feiner Bros NEW88Bernardo Dominic
1018Wickens V GlickAustralia2024-06-09Commercial Press NEW42Asiya Javayant
1019Munro C MaletJapan2024-06-19Feiner Bros UNQUALIFIED21Amy Elsner
1020Silvio W MacleadItaly2024-05-29Rangoni Of Florence QUALIFIED16Bernardo Dominic
1021Nicolas Q FlosiIndia2024-05-31Truhlar And Truhlar Attys NEW49Asiya Javayant
1022Greenwood A CaldareraFrance2024-05-24Printing Dimensions UNQUALIFIED53Ivan Magalhaes
1023Kaitlin T PoquetteRussia2024-06-09Commercial Press PROPOSAL12Amy Elsner
1024Smith G WaycottItaly2024-05-27Buckley Miller Wright PROPOSAL81Anna Fali
1025Aika E CaldareraAustralia2024-06-11Rangoni Of Florence NEW10Elwin Sharvill
1026Chavez W IturbideItaly2024-06-03Chapman, Ross E Esq PROPOSAL70Ioni Bowcher
1027Adams S FlosiAustralia2024-06-17Printing Dimensions NEW49Bernardo Dominic
1028Murillo K StensethFrance2024-05-27Buckley Miller Wright NEW54Xuxue Feng
1029Murillo O ButtItaly2024-06-05Morlong Associates NEGOTIATION97Elwin Sharvill
1030Jefferson D VocelkaGermany2024-06-04Buckley Miller Wright NEGOTIATION56Xuxue Feng
1031Misaki X FollerItaly2024-05-25Feltz Printing Service NEGOTIATION76Bernardo Dominic
1032Smith Q ShinkoCanada2024-06-06King, Christopher A Esq UNQUALIFIED32Asiya Javayant
1033Jefferson I RoysterRussia2024-06-16Chapman, Ross E Esq QUALIFIED74Ivan Magalhaes
1034Nicolas K AmigonBrazil2024-06-16Printing Dimensions NEGOTIATION73Ivan Magalhaes
1035Chavez H OldroydArgentina2024-05-23Rousseaux, Michael Esq PROPOSAL71Bernardo Dominic
1036Adams O FerenczArgentina2024-06-11Chapman, Ross E Esq NEW96Xuxue Feng
1037Mayumi A CaudyUnited Kingdom2024-06-20Printing Dimensions QUALIFIED18Asiya Javayant
1038Wickens B OstroskyGermany2024-05-25Feiner Bros UNQUALIFIED79Onyama Limba
1039Leon E GillianBrazil2024-06-01Printing Dimensions UNQUALIFIED64Onyama Limba
1040Silvio T StensethRussia2024-06-16Chapman, Ross E Esq QUALIFIED97Xuxue Feng
1041Salvatore J StensethJapan2024-05-24Chanay, Jeffrey A Esq RENEWAL6Onyama Limba
1042Leon C FigeroaGermany2024-06-15Printing Dimensions UNQUALIFIED60Ivan Magalhaes
1043Francesco V MacleadItaly2024-05-28Dorl, James J Esq UNQUALIFIED93Stephen Shaw
1044Antonio V PerinSpain2024-06-11Benton, John B Jr NEGOTIATION46Elwin Sharvill
1045Izzy N DarakjyAustralia2024-06-17Truhlar And Truhlar Attys NEGOTIATION47Ioni Bowcher
1046Arvin A KolmetzJapan2024-06-19Benton, John B Jr RENEWAL74Elwin Sharvill
1047Isabel D PerinGermany2024-06-06Benton, John B Jr QUALIFIED71Xuxue Feng
1048Mujtaba G DarakjyGermany2024-06-01Buckley Miller Wright QUALIFIED20Amy Elsner
1049Maria C SergiCanada2024-05-24King, Christopher A Esq NEGOTIATION89Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Julie U ChuiGermanyIoni Bowcher PROPOSAL
Jeanfrancois L PerinFranceAsiya Javayant NEW
Aditya T RulapaughSpainAmy Elsner QUALIFIED
Sinclair K MacleadIndiaOnyama Limba NEW
Ivar Z KuskoIndiaAnna Fali QUALIFIED
Salvatore F DarakjyCanadaBernardo Dominic QUALIFIED
Johnson Q VocelkaBrazilOnyama Limba RENEWAL
Mujtaba B CaudyUnited KingdomBernardo Dominic RENEWAL
Octavia T RutaUnited KingdomStephen Shaw UNQUALIFIED
Stacey Q RoysterUnited KingdomIvan Magalhaes RENEWAL
Darci G RulapaughAustraliaXuxue Feng UNQUALIFIED
Ivar L CaudySpainXuxue Feng RENEWAL
Kadeem I RutaBrazilIvan Magalhaes NEGOTIATION
Wickens Z MaletSpainAsiya Javayant PROPOSAL
Maria H BologniaJapanBernardo Dominic UNQUALIFIED
Murillo X SchemmerFranceStephen Shaw QUALIFIED
Silvio P WhobreyFranceAsiya Javayant NEW
Arvin U IturbideAustraliaAnna Fali UNQUALIFIED
Claire D InouyeCanadaAmy Elsner PROPOSAL
Rodrigues W SaylorsIndiaAsiya Javayant NEW
Tony P CaudyArgentinaStephen Shaw QUALIFIED
Francesco H AmigonArgentinaAmy Elsner NEGOTIATION
Aika G MaletFranceOnyama Limba QUALIFIED
Jennifer X VocelkaCanadaElwin Sharvill UNQUALIFIED
Emily K CampainRussiaAsiya Javayant NEW
Leja D SergiCanadaIvan Magalhaes NEW
Isabel K SaylorsIndiaAnna Fali NEGOTIATION
Emily T KolmetzCanadaAmy Elsner PROPOSAL
Adams M BologniaBrazilAsiya Javayant UNQUALIFIED
Darci G KuskoItalyAmy Elsner NEGOTIATION
Aika U AlbaresAustraliaElwin Sharvill NEGOTIATION
Leon R ChuiAustraliaIoni Bowcher PROPOSAL
Greenwood J AmigonAustraliaBernardo Dominic NEW
Alejandro Q MaletSpainIvan Magalhaes QUALIFIED
Darci J ButtItalyElwin Sharvill NEW
Izzy A PoquetteCanadaIoni Bowcher PROPOSAL
Antonio V WieserRussiaOnyama Limba NEGOTIATION
Maisha H MacleadUnited KingdomOnyama Limba RENEWAL
Morrow T BowleyBrazilIoni Bowcher NEGOTIATION
Aruna Z SaylorsItalyIvan Magalhaes NEGOTIATION
Costa F KuskoAustraliaStephen Shaw RENEWAL
Cody K MarrierJapanIvan Magalhaes QUALIFIED
James T InouyeFranceBernardo Dominic NEGOTIATION
Smith X WaycottCanadaAmy Elsner RENEWAL
Maisha F SchemmerGermanyAsiya Javayant UNQUALIFIED
Misaki E BriddickJapanIoni Bowcher RENEWAL
Aruna J MorascaCanadaIoni Bowcher QUALIFIED
Emily J SlusarskiItalyAsiya Javayant QUALIFIED
Arvin O FigeroaBrazilBernardo Dominic PROPOSAL
Rodrigues I StockhamCanadaAnna Fali NEGOTIATION
Frozen Columns
Name
Jennifer I Bowley
Juan A Glick
Cody D Saylors
Maria N Morasca
Ricardo R Campain
Murillo P Oldroyd
Leon U Butt
Misaki C Amigon
Francesco E Oldroyd
Claire P Kusko
Julie M Ruta
Deepesh M Kusko
Sinclair H Rim
Ricardo A Paprocki
David I Dilliard
Maria T Briddick
Morrow I Flosi
Jefferson A Nicka
Aruna C Stenseth
Antonio J Ferencz
Jefferson W Saylors
Jeanfrancois L Kolmetz
Jennifer G Campain
Jeanfrancois C Venere
Nicolas S Campain
Antonio X Waycott
Clifford D Gillian
Ivar Y Gillian
Wickens Z Figeroa
Julie A Malet
Leja G Glick
Izzy U Albares
Adams M Bolognia
Tony M Perin
Adams S Saylors
Morrow D Morasca
Faith P Chui
Adams T Perin
Salvatore Y Nicka
Silvio K Rim
Leja M Caudy
Francesco Y Waycott
Kadeem B Slusarski
James D Darakjy
Francesco P Malet
Kadeem Z Caldarera
Morrow W Doe
Julie Y Saylors
Jennifer B Amigon
Alejandro R Gillian
IdCountryDate
1000Canada2024-05-28
1001Japan2024-06-20
1002Russia2024-06-20
1003France2024-06-08
1004Brazil2024-06-03
1005India2024-06-01
1006Canada2024-06-09
1007Brazil2024-06-07
1008Canada2024-06-15
1009United Kingdom2024-06-08
1010France2024-06-03
1011Germany2024-05-31
1012Canada2024-06-12
1013France2024-05-28
1014Spain2024-05-27
1015Japan2024-06-04
1016Russia2024-06-07
1017Russia2024-06-20
1018Spain2024-06-18
1019France2024-06-21
1020Japan2024-05-23
1021Russia2024-05-23
1022France2024-06-01
1023Argentina2024-05-28
1024Argentina2024-05-25
1025Japan2024-06-11
1026Brazil2024-05-30
1027Italy2024-06-10
1028Brazil2024-05-27
1029Germany2024-06-19
1030Japan2024-06-15
1031Argentina2024-06-11
1032Brazil2024-06-19
1033India2024-06-10
1034India2024-06-11
1035India2024-05-30
1036Canada2024-05-24
1037United Kingdom2024-06-01
1038Argentina2024-06-08
1039Spain2024-05-30
1040Germany2024-05-30
1041Spain2024-06-16
1042India2024-05-25
1043Brazil2024-06-01
1044Italy2024-05-27
1045Russia2024-06-10
1046Russia2024-06-12
1047France2024-06-19
1048United Kingdom2024-06-19
1049Argentina2024-06-11

On-Demand Data

NameIdCountryDate
Kaitlin F Inouye1000Brazil2024-05-24
Mayumi Z Gillian1001Australia2024-06-17
Adams I Figeroa1002Japan2024-05-23
Sinclair M Flosi1003Italy2024-06-20
James Y Paprocki1004Italy2024-06-01
Julie P Ostrosky1005Argentina2024-06-01
Stacey H Gaucho1006Canada2024-05-25
Claire F Oldroyd1007Argentina2024-06-01
Ashley V Paprocki1008Brazil2024-06-14
Clifford K Oldroyd1009Russia2024-06-14
Ricardo A Amigon1010Japan2024-06-20
Kaitlin O Rim1011United Kingdom2024-05-27
Octavia C Slusarski1012Canada2024-05-31
Faith I Waycott1013Argentina2024-06-16
Kadeem H Maclead1014Germany2024-06-06
Greenwood R Ostrosky1015Spain2024-06-02
Leja V Bowley1016Australia2024-06-02
Emily L Inouye1017Japan2024-05-31
Leja Q Nestle1018India2024-06-05
Clifford X Ferencz1019United Kingdom2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa R MorascaFranceXuxue Feng UNQUALIFIED
Jeanfrancois K SchemmerGermanyXuxue Feng NEGOTIATION
Kaitlin Y GarufiRussiaAsiya Javayant QUALIFIED
Nicolas X MarrierCanadaOnyama Limba QUALIFIED
Aditya S GillianGermanyAmy Elsner PROPOSAL
Munro X AlbaresBrazilXuxue Feng RENEWAL
James V PaprockiArgentinaStephen Shaw RENEWAL
Arvin O CaldareraArgentinaStephen Shaw QUALIFIED
Tony J MacleadRussiaStephen Shaw RENEWAL
Chavez A FlosiIndiaElwin Sharvill PROPOSAL
Silvio T MaletBrazilOnyama Limba NEGOTIATION
Sinclair T SaylorsGermanyAsiya Javayant UNQUALIFIED
Morrow T OstroskyAustraliaAsiya Javayant QUALIFIED
Misaki W PoquetteCanadaXuxue Feng PROPOSAL
Maisha X StockhamGermanyXuxue Feng QUALIFIED
Juan G DarakjyAustraliaXuxue Feng UNQUALIFIED
Kaitlin E CampainArgentinaOnyama Limba PROPOSAL
Rodrigues S CaudyGermanyOnyama Limba RENEWAL
Rodrigues K BologniaGermanyStephen Shaw QUALIFIED
Clifford M RimSpainXuxue Feng NEGOTIATION
Sinclair W CampainSpainStephen Shaw NEW
Misaki A OstroskyItalyBernardo Dominic NEGOTIATION
Deepesh M MorascaRussiaAmy Elsner NEGOTIATION
Jeanfrancois L MaletSpainBernardo Dominic RENEWAL
Jones W BriddickSpainIoni Bowcher PROPOSAL
Misaki U SlusarskiUnited KingdomXuxue Feng PROPOSAL
Izzy T FerenczItalyIvan Magalhaes NEW
David N AlbaresSpainBernardo Dominic QUALIFIED
Aruna K StensethSpainAmy Elsner NEW
Johnson X DilliardRussiaOnyama Limba NEGOTIATION
Adams A AmigonGermanyXuxue Feng QUALIFIED
Tony T WaycottRussiaAnna Fali NEW
Jennifer V DoeItalyXuxue Feng RENEWAL
Jeanfrancois S AlbaresRussiaIvan Magalhaes UNQUALIFIED
Julie I PaprockiGermanyAsiya Javayant NEW
Isabel P NestleFranceIvan Magalhaes NEW
Stacey S SchemmerBrazilIoni Bowcher NEGOTIATION
Munro I InouyeItalyAnna Fali NEGOTIATION
Kaitlin C DoeArgentinaIoni Bowcher RENEWAL
Aditya P OstroskyJapanAsiya Javayant 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>