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 C SlusarskiFranceAnna Fali QUALIFIED
Emily D FerenczIndiaElwin Sharvill UNQUALIFIED
David F PoquetteIndiaAnna Fali PROPOSAL
Claire H OstroskyItalyXuxue Feng NEGOTIATION
Rodrigues H VenereJapanXuxue Feng RENEWAL
Kaitlin D KolmetzFranceAsiya Javayant PROPOSAL
Clifford R NickaGermanyAsiya Javayant QUALIFIED
David S StensethJapanXuxue Feng RENEWAL
Ashley K GauchoUnited KingdomXuxue Feng RENEWAL
Deepesh K MacleadUnited KingdomOnyama Limba QUALIFIED
Juan X BriddickJapanAnna Fali UNQUALIFIED
Mayumi O ChuiJapanIoni Bowcher UNQUALIFIED
Munro F SaylorsGermanyOnyama Limba NEGOTIATION
Mujtaba F OstroskyGermanyStephen Shaw UNQUALIFIED
Jones Z WaycottFranceIvan Magalhaes QUALIFIED
Jeanfrancois M SchemmerBrazilElwin Sharvill QUALIFIED
Alejandro Z SaylorsItalyOnyama Limba NEGOTIATION
Antonio O BriddickAustraliaElwin Sharvill QUALIFIED
Rodrigues P FerenczIndiaElwin Sharvill QUALIFIED
Juan C RoysterIndiaAmy Elsner QUALIFIED
Rodrigues E InouyeIndiaAsiya Javayant RENEWAL
Jeanfrancois O PoquetteCanadaElwin Sharvill PROPOSAL
Nicolas W MacleadFranceAmy Elsner PROPOSAL
Kadeem U SlusarskiIndiaElwin Sharvill QUALIFIED
Wickens K VocelkaSpainIoni Bowcher PROPOSAL
Isabel R WhobreyAustraliaIvan Magalhaes PROPOSAL
Stacey D MaletUnited KingdomElwin Sharvill PROPOSAL
Maisha I MarrierIndiaBernardo Dominic PROPOSAL
Leja I SergiCanadaElwin Sharvill PROPOSAL
Maria R PerinRussiaAsiya Javayant QUALIFIED
Morrow E KolmetzAustraliaIvan Magalhaes QUALIFIED
Juan J DarakjyAustraliaBernardo Dominic NEGOTIATION
Tony X GauchoItalyOnyama Limba NEW
Maria B PerinUnited KingdomAmy Elsner NEGOTIATION
Octavia U BologniaItalyAmy Elsner UNQUALIFIED
Emily P AlbaresIndiaBernardo Dominic RENEWAL
Claire E MarrierSpainAsiya Javayant QUALIFIED
Johnson I DoeArgentinaIvan Magalhaes QUALIFIED
Aditya L FigeroaRussiaAmy Elsner PROPOSAL
Leon X RutaCanadaIoni Bowcher RENEWAL
Kaitlin X GillianArgentinaBernardo Dominic PROPOSAL
Izzy N SchemmerFranceXuxue Feng UNQUALIFIED
Rodrigues O CaudyBrazilXuxue Feng NEGOTIATION
Julie L SergiSpainStephen Shaw QUALIFIED
Clifford Q FlosiBrazilElwin Sharvill NEW
James N BowleyCanadaAmy Elsner NEW
Costa Z FlosiIndiaIoni Bowcher NEW
Izzy G StensethUnited KingdomXuxue Feng QUALIFIED
Emily U MacleadCanadaOnyama Limba NEGOTIATION
Maisha P WieserUnited KingdomAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin R FerenczRussiaXuxue Feng NEW
Johnson D RutaIndiaAmy Elsner NEGOTIATION
Julie F GlickCanadaAnna Fali UNQUALIFIED
Ivar D PerinBrazilBernardo Dominic PROPOSAL
Arvin A NestleGermanyXuxue Feng RENEWAL
Antonio W InouyeArgentinaXuxue Feng PROPOSAL
Aruna G SergiRussiaBernardo Dominic QUALIFIED
Jeanfrancois A GlickAustraliaIvan Magalhaes UNQUALIFIED
Adams V CampainBrazilOnyama Limba NEGOTIATION
Antonio G InouyeSpainAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois I NickaJapan2024-05-30Commercial Press NEGOTIATION59Asiya Javayant
1001Mujtaba D MacleadIndia2024-06-17Printing Dimensions NEGOTIATION35Stephen Shaw
1002Wickens Z MorascaItaly2024-05-29Chemel, James L Cpa PROPOSAL58Bernardo Dominic
1003Jones H WhobreyUnited Kingdom2024-05-31Buckley Miller Wright PROPOSAL35Xuxue Feng
1004Claire T PerinRussia2024-06-05Feiner Bros NEGOTIATION70Anna Fali
1005Mayumi V FollerItaly2024-06-12King, Christopher A Esq UNQUALIFIED15Amy Elsner
1006Faith Q OldroydRussia2024-06-21Feltz Printing Service NEW47Xuxue Feng
1007Juan F SergiAustralia2024-06-21Rousseaux, Michael Esq PROPOSAL42Anna Fali
1008Morrow C StockhamItaly2024-05-27Dorl, James J Esq QUALIFIED25Anna Fali
1009Maisha K ButtIndia2024-06-16Rousseaux, Michael Esq PROPOSAL97Onyama Limba
1010Silvio T GauchoGermany2024-06-05Dorl, James J Esq NEGOTIATION15Amy Elsner
1011Morrow M MarrierArgentina2024-05-29Benton, John B Jr NEGOTIATION10Asiya Javayant
1012Mayumi L FigeroaFrance2024-06-16Commercial Press NEGOTIATION86Stephen Shaw
1013Claire T VocelkaJapan2024-05-31Rousseaux, Michael Esq NEW14Bernardo Dominic
1014Mayumi J SergiGermany2024-05-26Chanay, Jeffrey A Esq PROPOSAL59Onyama Limba
1015Salvatore O WieserAustralia2024-06-07Buckley Miller Wright QUALIFIED13Onyama Limba
1016Costa R WieserCanada2024-05-29Feltz Printing Service QUALIFIED76Elwin Sharvill
1017Isabel C DoeJapan2024-06-24Chanay, Jeffrey A Esq QUALIFIED91Stephen Shaw
1018Julie W OldroydCanada2024-06-09Chanay, Jeffrey A Esq QUALIFIED64Bernardo Dominic
1019Octavia Q DilliardBrazil2024-05-26Feiner Bros NEGOTIATION67Elwin Sharvill
1020Arvin Q StockhamBrazil2024-06-23Morlong Associates PROPOSAL85Elwin Sharvill
1021Cody Y CaudyBrazil2024-06-16King, Christopher A Esq RENEWAL82Bernardo Dominic
1022Emily I WaycottArgentina2024-06-21Chanay, Jeffrey A Esq NEGOTIATION10Anna Fali
1023David K ShinkoCanada2024-05-29King, Christopher A Esq NEGOTIATION56Ivan Magalhaes
1024Chavez S BowleyItaly2024-06-24Rangoni Of Florence PROPOSAL9Ioni Bowcher
1025Antonio P AmigonCanada2024-06-17Dorl, James J Esq NEW72Bernardo Dominic
1026Jones K StockhamRussia2024-06-02Rangoni Of Florence RENEWAL64Onyama Limba
1027Salvatore W FigeroaUnited Kingdom2024-06-15Rangoni Of Florence RENEWAL79Anna Fali
1028Kadeem A GauchoItaly2024-06-16Feiner Bros RENEWAL66Xuxue Feng
1029Misaki M DilliardJapan2024-06-12Chemel, James L Cpa NEGOTIATION79Ioni Bowcher
1030Aruna X GillianItaly2024-06-23Chanay, Jeffrey A Esq PROPOSAL15Ivan Magalhaes
1031Ivar U WieserArgentina2024-06-16Chapman, Ross E Esq QUALIFIED72Bernardo Dominic
1032Rodrigues G RoysterArgentina2024-06-10Printing Dimensions RENEWAL43Amy Elsner
1033Greenwood T OstroskyUnited Kingdom2024-06-12Commercial Press NEW43Stephen Shaw
1034Smith U MarrierBrazil2024-06-16Printing Dimensions PROPOSAL71Ioni Bowcher
1035Izzy H VocelkaBrazil2024-06-20Chemel, James L Cpa NEW71Bernardo Dominic
1036Ivar Z DoeRussia2024-06-23Benton, John B Jr NEGOTIATION89Ivan Magalhaes
1037Nicolas L VenereUnited Kingdom2024-06-09Rousseaux, Michael Esq NEW38Asiya Javayant
1038Francesco G ButtCanada2024-06-03Dorl, James J Esq NEW61Elwin Sharvill
1039Clifford V GlickIndia2024-05-28Buckley Miller Wright NEW26Anna Fali
1040Jones T RulapaughRussia2024-06-04Feiner Bros RENEWAL55Xuxue Feng
1041Octavia V KolmetzArgentina2024-06-13Printing Dimensions QUALIFIED48Bernardo Dominic
1042Aika G PerinRussia2024-06-19Printing Dimensions RENEWAL50Stephen Shaw
1043Morrow C SchemmerFrance2024-06-08Feltz Printing Service NEGOTIATION78Ivan Magalhaes
1044Smith Y SergiFrance2024-06-13Benton, John B Jr UNQUALIFIED38Amy Elsner
1045Arvin U DarakjyGermany2024-06-20Chanay, Jeffrey A Esq RENEWAL3Ioni Bowcher
1046Aditya H MaletGermany2024-05-30Benton, John B Jr QUALIFIED55Stephen Shaw
1047Jennifer P CaudyRussia2024-05-27Rousseaux, Michael Esq NEW7Xuxue Feng
1048Silvio H CaldareraRussia2024-06-13King, Christopher A Esq QUALIFIED36Ioni Bowcher
1049Jennifer U TollnerGermany2024-06-07Chanay, Jeffrey A Esq NEW76Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Emily W DoeJapanStephen Shaw RENEWAL
Silvio N NickaGermanyBernardo Dominic NEGOTIATION
Claire R MaletJapanStephen Shaw NEW
Arvin Q SergiArgentinaAsiya Javayant NEW
Misaki Y SaylorsGermanyElwin Sharvill NEGOTIATION
Mujtaba E RimRussiaBernardo Dominic UNQUALIFIED
Kadeem H CaldareraItalyIoni Bowcher RENEWAL
Ivar A NickaCanadaOnyama Limba RENEWAL
Aruna G MacleadArgentinaXuxue Feng RENEWAL
Kadeem W NickaAustraliaAnna Fali NEW
Emily F BowleyArgentinaAnna Fali RENEWAL
Ricardo P BowleySpainStephen Shaw NEGOTIATION
James K FerenczCanadaAmy Elsner NEW
Octavia N WaycottIndiaAsiya Javayant NEGOTIATION
Francesco G KuskoSpainElwin Sharvill PROPOSAL
Ashley D FollerBrazilIoni Bowcher RENEWAL
Ashley C GillianItalyOnyama Limba UNQUALIFIED
Misaki D ChuiRussiaAmy Elsner UNQUALIFIED
Maisha R TollnerUnited KingdomXuxue Feng UNQUALIFIED
Deepesh P AmigonBrazilOnyama Limba QUALIFIED
James D NickaUnited KingdomOnyama Limba NEGOTIATION
Cody J GauchoRussiaAmy Elsner UNQUALIFIED
Murillo J KuskoAustraliaOnyama Limba PROPOSAL
Juan M SergiFranceAsiya Javayant NEGOTIATION
Murillo O GillianIndiaAmy Elsner UNQUALIFIED
David R RutaBrazilOnyama Limba UNQUALIFIED
Juan C CaudyUnited KingdomIvan Magalhaes UNQUALIFIED
Sinclair E SlusarskiItalyAmy Elsner NEW
Octavia B StockhamBrazilIvan Magalhaes NEGOTIATION
Juan V MorascaUnited KingdomBernardo Dominic QUALIFIED
Claire O KolmetzJapanAsiya Javayant UNQUALIFIED
Mujtaba U ButtItalyOnyama Limba PROPOSAL
Morrow C CampainRussiaBernardo Dominic PROPOSAL
James T MacleadArgentinaAnna Fali QUALIFIED
Ivar T StockhamUnited KingdomIvan Magalhaes NEW
Morrow T VocelkaCanadaElwin Sharvill PROPOSAL
Chavez M CaudyCanadaAmy Elsner PROPOSAL
Munro L SergiJapanElwin Sharvill PROPOSAL
Morrow K SchemmerIndiaAmy Elsner QUALIFIED
Arvin C CaldareraArgentinaBernardo Dominic NEW
Jefferson V VenereFranceIvan Magalhaes NEGOTIATION
Octavia B PerinUnited KingdomIvan Magalhaes UNQUALIFIED
Deepesh U RimSpainIoni Bowcher PROPOSAL
Claire I CaudyArgentinaBernardo Dominic NEGOTIATION
Ricardo O ButtCanadaAsiya Javayant NEW
Darci I InouyeFranceAmy Elsner UNQUALIFIED
Octavia B AlbaresFranceStephen Shaw QUALIFIED
Stacey H OstroskySpainBernardo Dominic NEW
Mayumi U WhobreyAustraliaAmy Elsner RENEWAL
Wickens M KolmetzFranceXuxue Feng RENEWAL
Frozen Columns
Name
Maria D Campain
Maria E Paprocki
Tony Z Vocelka
Murillo U Saylors
David O Stockham
Leon S Darakjy
James O Marrier
Leja V Campain
Johnson F Malet
Jones K Gillian
Johnson B Bolognia
Adams M Inouye
David S Foller
Salvatore Z Rulapaugh
Smith W Caldarera
Sinclair O Kolmetz
Mayumi U Shinko
Mujtaba M Bowley
Adams V Shinko
Chavez I Slusarski
Mujtaba Y Rim
Smith U Waycott
Maisha K Stenseth
Wickens A Nestle
Jennifer Y Flosi
Jones I Dilliard
Francesco A Inouye
Mujtaba S Stenseth
Jeanfrancois A Rulapaugh
Ricardo C Saylors
Jennifer T Chui
Alejandro I Albares
Smith N Butt
Morrow Q Glick
Smith E Poquette
Maisha R Kolmetz
Maisha H Briddick
Aditya O Malet
Aditya A Rim
Nicolas H Stockham
Isabel Q Rim
Adams P Albares
Wickens P Figeroa
Silvio Y Campain
Ivar Q Dilliard
Clifford S Ruta
Claire R Flosi
James N Nestle
Silvio M Butt
Misaki W Saylors
IdCountryDate
1000Italy2024-05-28
1001Italy2024-06-03
1002Argentina2024-06-11
1003United Kingdom2024-05-30
1004Japan2024-06-12
1005Germany2024-06-16
1006United Kingdom2024-06-01
1007Japan2024-06-07
1008United Kingdom2024-06-01
1009Brazil2024-06-22
1010Argentina2024-05-27
1011United Kingdom2024-06-08
1012Russia2024-05-31
1013Brazil2024-06-21
1014Argentina2024-06-07
1015United Kingdom2024-05-27
1016France2024-05-26
1017Italy2024-05-30
1018Italy2024-05-27
1019Canada2024-06-05
1020Japan2024-06-17
1021Argentina2024-06-21
1022Argentina2024-06-19
1023Russia2024-05-29
1024Brazil2024-06-11
1025United Kingdom2024-06-20
1026Germany2024-05-31
1027India2024-05-30
1028United Kingdom2024-05-29
1029Spain2024-06-23
1030Germany2024-06-21
1031Russia2024-05-29
1032Japan2024-06-15
1033Japan2024-06-15
1034Italy2024-06-05
1035France2024-06-11
1036Australia2024-06-01
1037Italy2024-06-20
1038Italy2024-06-08
1039Russia2024-06-06
1040Italy2024-06-03
1041Brazil2024-06-08
1042France2024-06-16
1043Japan2024-06-17
1044Germany2024-06-07
1045India2024-06-14
1046Canada2024-06-20
1047France2024-06-09
1048France2024-06-09
1049Japan2024-05-26

On-Demand Data

NameIdCountryDate
Murillo R Nestle1000Brazil2024-06-03
Costa X Butt1001France2024-06-13
Aditya W Tollner1002Brazil2024-06-18
Morrow H Maclead1003Canada2024-05-31
Alejandro O Perin1004Spain2024-06-23
Aika Q Doe1005Australia2024-05-27
Salvatore M Poquette1006India2024-06-05
Maria Y Rim1007United Kingdom2024-05-29
Isabel H Bowley1008Germany2024-06-19
Leja Y Butt1009Germany2024-06-13
Murillo M Malet1010Russia2024-06-01
Nicolas H Bolognia1011Brazil2024-06-21
Aruna E Stenseth1012India2024-06-01
Sinclair I Paprocki1013Japan2024-06-15
Chavez C Venere1014Canada2024-06-11
Octavia P Albares1015Argentina2024-06-09
Rodrigues K Rim1016Russia2024-06-17
Maria T Nicka1017Australia2024-06-24
Faith Q Kusko1018Australia2024-06-04
Leon T Paprocki1019Australia2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy F PoquetteGermanyIoni Bowcher RENEWAL
Aditya F FigeroaJapanAmy Elsner QUALIFIED
Alejandro V BriddickAustraliaAsiya Javayant NEGOTIATION
Ivar N OldroydAustraliaIoni Bowcher NEW
Isabel F DoeJapanOnyama Limba UNQUALIFIED
Sinclair K WieserArgentinaBernardo Dominic PROPOSAL
Stacey R GillianUnited KingdomStephen Shaw QUALIFIED
Aika W WaycottCanadaAsiya Javayant QUALIFIED
Salvatore H ShinkoIndiaAmy Elsner PROPOSAL
Juan C MorascaArgentinaElwin Sharvill UNQUALIFIED
Jones M PaprockiIndiaElwin Sharvill QUALIFIED
Leja O MacleadSpainAmy Elsner PROPOSAL
Salvatore L RutaUnited KingdomAsiya Javayant NEW
James M GillianAustraliaXuxue Feng PROPOSAL
Aika Q DarakjyUnited KingdomAmy Elsner NEGOTIATION
Aruna W KuskoIndiaAmy Elsner RENEWAL
Johnson O ButtBrazilElwin Sharvill NEGOTIATION
Faith Q GlickArgentinaIoni Bowcher RENEWAL
Juan L GauchoArgentinaXuxue Feng UNQUALIFIED
Francesco X RoysterGermanyAmy Elsner NEGOTIATION
Munro K WieserItalyBernardo Dominic QUALIFIED
Ashley C KolmetzItalyStephen Shaw NEGOTIATION
Isabel Q MarrierUnited KingdomAsiya Javayant UNQUALIFIED
Nicolas P FlosiSpainBernardo Dominic PROPOSAL
Misaki R BowleyFranceIoni Bowcher UNQUALIFIED
Adams R CampainSpainBernardo Dominic PROPOSAL
Sinclair X FollerCanadaIvan Magalhaes NEGOTIATION
Darci Q CaudyFranceAnna Fali PROPOSAL
Chavez J ButtJapanStephen Shaw PROPOSAL
Ricardo M VocelkaItalyIoni Bowcher QUALIFIED
Ivar V ShinkoCanadaAnna Fali RENEWAL
Murillo L SaylorsRussiaOnyama Limba RENEWAL
Jeanfrancois C AmigonArgentinaAsiya Javayant QUALIFIED
Leja E BowleyUnited KingdomAsiya Javayant RENEWAL
Jennifer G SergiGermanyIvan Magalhaes RENEWAL
Octavia K CampainItalyAsiya Javayant QUALIFIED
Deepesh O IturbideJapanOnyama Limba PROPOSAL
Mayumi O WaycottJapanAnna Fali QUALIFIED
Claire H StockhamIndiaIvan Magalhaes NEW
Octavia C CampainJapanElwin Sharvill 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>