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
Darci F AmigonGermanyStephen Shaw UNQUALIFIED
Clifford D FerenczCanadaAmy Elsner NEGOTIATION
Isabel O RimGermanyXuxue Feng RENEWAL
Clifford A KuskoSpainIoni Bowcher UNQUALIFIED
Ricardo J RimUnited KingdomXuxue Feng PROPOSAL
Francesco B AlbaresBrazilElwin Sharvill PROPOSAL
Alejandro V RimGermanyAmy Elsner PROPOSAL
Kadeem E PaprockiBrazilIoni Bowcher NEW
Juan R AmigonBrazilStephen Shaw UNQUALIFIED
Nicolas R MorascaJapanStephen Shaw UNQUALIFIED
Aika I PoquetteItalyStephen Shaw RENEWAL
Kaitlin O MacleadAustraliaAnna Fali PROPOSAL
Aika B ButtBrazilAnna Fali RENEWAL
Arvin P KolmetzRussiaAsiya Javayant PROPOSAL
Darci G OstroskyFranceIvan Magalhaes RENEWAL
Claire W StockhamJapanStephen Shaw NEW
Munro J FigeroaItalyIvan Magalhaes NEGOTIATION
Smith S RimFranceIvan Magalhaes PROPOSAL
Kaitlin P PerinJapanBernardo Dominic PROPOSAL
Murillo X NestleBrazilBernardo Dominic NEW
Smith K ButtRussiaOnyama Limba UNQUALIFIED
Julie Y RimUnited KingdomOnyama Limba RENEWAL
Mayumi I IturbideIndiaBernardo Dominic RENEWAL
James X PerinIndiaBernardo Dominic QUALIFIED
Mujtaba Z KolmetzRussiaAsiya Javayant RENEWAL
Tony G BriddickFranceXuxue Feng PROPOSAL
Izzy R KuskoJapanAmy Elsner NEW
Rodrigues Q InouyeItalyStephen Shaw RENEWAL
Costa I GarufiItalyOnyama Limba PROPOSAL
Rodrigues M NestleJapanXuxue Feng RENEWAL
Julie U MorascaItalyElwin Sharvill RENEWAL
Johnson V StensethItalyAsiya Javayant NEW
Jeanfrancois K GarufiFranceAsiya Javayant UNQUALIFIED
Chavez U CaudyGermanyIoni Bowcher UNQUALIFIED
Chavez A CaudyFranceAmy Elsner RENEWAL
Claire T RimGermanyElwin Sharvill NEW
David R ShinkoItalyOnyama Limba NEGOTIATION
Jefferson B RimAustraliaStephen Shaw PROPOSAL
Aruna K MorascaIndiaAsiya Javayant UNQUALIFIED
Julie G FollerRussiaStephen Shaw PROPOSAL
Mayumi I RimJapanAmy Elsner QUALIFIED
Salvatore D ChuiItalyIvan Magalhaes NEW
Kadeem N IturbideAustraliaStephen Shaw PROPOSAL
Emily B SchemmerFranceElwin Sharvill RENEWAL
Ivar B ShinkoItalyAnna Fali QUALIFIED
Aika C PerinRussiaBernardo Dominic QUALIFIED
Munro U KuskoArgentinaStephen Shaw NEW
Jones J SergiGermanyAmy Elsner RENEWAL
Mujtaba Z BriddickGermanyIoni Bowcher QUALIFIED
Greenwood W FerenczAustraliaAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Juan S RimCanadaIoni Bowcher NEW
Greenwood S DarakjyIndiaXuxue Feng UNQUALIFIED
Murillo U ShinkoUnited KingdomOnyama Limba NEW
David M StensethArgentinaBernardo Dominic UNQUALIFIED
Ricardo T AlbaresArgentinaXuxue Feng QUALIFIED
Francesco C ShinkoUnited KingdomIoni Bowcher NEGOTIATION
Darci L ShinkoItalyIoni Bowcher NEW
Maria L RimArgentinaIoni Bowcher QUALIFIED
Greenwood V WieserGermanyBernardo Dominic RENEWAL
Aruna B DoeAustraliaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair G FigeroaGermany2024-05-27Rousseaux, Michael Esq UNQUALIFIED11Anna Fali
1001Misaki Y PaprockiGermany2024-06-15Feiner Bros RENEWAL42Ivan Magalhaes
1002Deepesh V FigeroaCanada2024-05-21Morlong Associates UNQUALIFIED43Ivan Magalhaes
1003Mujtaba L DarakjyRussia2024-05-28Chapman, Ross E Esq RENEWAL27Stephen Shaw
1004Stacey P RulapaughSpain2024-06-14Commercial Press NEW70Asiya Javayant
1005Faith G NestleIndia2024-06-11Chapman, Ross E Esq RENEWAL24Asiya Javayant
1006Julie P NickaItaly2024-05-20Truhlar And Truhlar Attys UNQUALIFIED14Anna Fali
1007Aditya H FerenczItaly2024-05-24Printing Dimensions UNQUALIFIED87Amy Elsner
1008Francesco C OldroydUnited Kingdom2024-06-09Chanay, Jeffrey A Esq NEW82Stephen Shaw
1009Mujtaba D CaudyArgentina2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED11Onyama Limba
1010Stacey P RutaIndia2024-05-23King, Christopher A Esq NEGOTIATION12Ivan Magalhaes
1011Francesco D PaprockiFrance2024-06-02Rangoni Of Florence NEGOTIATION18Onyama Limba
1012Isabel T FollerGermany2024-06-13Buckley Miller Wright UNQUALIFIED2Amy Elsner
1013Leja U DarakjyCanada2024-06-08Benton, John B Jr PROPOSAL65Anna Fali
1014Deepesh I StockhamItaly2024-06-08Feltz Printing Service QUALIFIED89Ivan Magalhaes
1015Cody Y KolmetzSpain2024-06-14Truhlar And Truhlar Attys NEGOTIATION71Onyama Limba
1016Maisha J ButtCanada2024-05-25Benton, John B Jr RENEWAL30Stephen Shaw
1017David F OstroskyUnited Kingdom2024-05-30Chanay, Jeffrey A Esq NEGOTIATION48Asiya Javayant
1018Francesco O WhobreyFrance2024-06-08Chapman, Ross E Esq PROPOSAL82Elwin Sharvill
1019Tony W WhobreyGermany2024-06-12Morlong Associates UNQUALIFIED43Elwin Sharvill
1020Clifford Z BowleyFrance2024-06-15Truhlar And Truhlar Attys UNQUALIFIED79Elwin Sharvill
1021Antonio Q BologniaFrance2024-06-05Commercial Press UNQUALIFIED46Elwin Sharvill
1022Jefferson Z WhobreyIndia2024-05-22Commercial Press PROPOSAL31Xuxue Feng
1023Clifford E DilliardSpain2024-06-04Rangoni Of Florence QUALIFIED42Stephen Shaw
1024Kadeem N PerinAustralia2024-06-05Commercial Press NEGOTIATION91Asiya Javayant
1025Jeanfrancois C FollerJapan2024-06-16Benton, John B Jr QUALIFIED62Xuxue Feng
1026Misaki M PerinFrance2024-05-22Morlong Associates QUALIFIED3Ioni Bowcher
1027Francesco I BowleyUnited Kingdom2024-05-20Rousseaux, Michael Esq NEGOTIATION55Bernardo Dominic
1028Leon E ButtBrazil2024-05-23Printing Dimensions QUALIFIED2Ivan Magalhaes
1029Kaitlin U DoeArgentina2024-05-22Rangoni Of Florence QUALIFIED49Asiya Javayant
1030Johnson I PaprockiSpain2024-06-15Chanay, Jeffrey A Esq UNQUALIFIED0Ioni Bowcher
1031Darci B StensethSpain2024-06-06Buckley Miller Wright UNQUALIFIED68Xuxue Feng
1032Wickens C MarrierSpain2024-06-16Rousseaux, Michael Esq PROPOSAL43Xuxue Feng
1033Mayumi R MarrierSpain2024-06-14Feiner Bros PROPOSAL19Bernardo Dominic
1034Maisha V KolmetzJapan2024-06-16Buckley Miller Wright NEGOTIATION30Ioni Bowcher
1035Jefferson Z SchemmerGermany2024-05-26Truhlar And Truhlar Attys NEW0Stephen Shaw
1036Juan O OstroskyItaly2024-05-23Dorl, James J Esq RENEWAL98Elwin Sharvill
1037Julie V WieserJapan2024-05-28Buckley Miller Wright RENEWAL75Elwin Sharvill
1038Salvatore D DoeFrance2024-06-11Benton, John B Jr RENEWAL97Bernardo Dominic
1039Sinclair N DarakjyUnited Kingdom2024-05-27Truhlar And Truhlar Attys QUALIFIED13Amy Elsner
1040David M PaprockiRussia2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED63Ivan Magalhaes
1041Kaitlin C DarakjyItaly2024-06-17Rangoni Of Florence QUALIFIED24Ioni Bowcher
1042Izzy J InouyeBrazil2024-06-05Rousseaux, Michael Esq RENEWAL12Ioni Bowcher
1043Rodrigues T SaylorsBrazil2024-06-01Rousseaux, Michael Esq PROPOSAL32Elwin Sharvill
1044Greenwood O MorascaJapan2024-05-22Chemel, James L Cpa NEW36Stephen Shaw
1045Alejandro Q WieserCanada2024-06-09Feltz Printing Service QUALIFIED1Amy Elsner
1046Murillo T WieserUnited Kingdom2024-06-03Printing Dimensions RENEWAL86Ioni Bowcher
1047Costa V FigeroaJapan2024-05-29Chemel, James L Cpa PROPOSAL89Bernardo Dominic
1048Silvio M BowleySpain2024-06-08Feltz Printing Service PROPOSAL28Ioni Bowcher
1049Antonio S ShinkoSpain2024-06-06Dorl, James J Esq PROPOSAL58Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Morrow A MaletBrazilAsiya Javayant NEGOTIATION
Salvatore C GlickGermanyXuxue Feng QUALIFIED
Leon N KolmetzAustraliaAnna Fali UNQUALIFIED
Alejandro H GauchoIndiaAnna Fali UNQUALIFIED
David M WhobreyFranceXuxue Feng QUALIFIED
Rodrigues T KuskoUnited KingdomBernardo Dominic PROPOSAL
Faith F MarrierAustraliaStephen Shaw UNQUALIFIED
Darci B FigeroaFranceBernardo Dominic NEW
Sinclair K MacleadIndiaStephen Shaw NEW
Jones U RimIndiaStephen Shaw QUALIFIED
Jeanfrancois A DilliardGermanyStephen Shaw PROPOSAL
Alejandro Y BowleyArgentinaAsiya Javayant RENEWAL
Maria J BriddickAustraliaAnna Fali QUALIFIED
Arvin X GauchoSpainIoni Bowcher QUALIFIED
Ashley P DarakjyGermanyAmy Elsner RENEWAL
Murillo M SchemmerBrazilOnyama Limba NEGOTIATION
Misaki D SergiFranceXuxue Feng NEGOTIATION
Isabel C WhobreyArgentinaIvan Magalhaes QUALIFIED
Jones P PerinFranceAmy Elsner NEW
Murillo W OstroskyCanadaBernardo Dominic UNQUALIFIED
Misaki J FlosiAustraliaAmy Elsner NEW
Salvatore G CaldareraUnited KingdomOnyama Limba NEGOTIATION
Francesco H DilliardIndiaOnyama Limba NEW
Faith K NestleCanadaAnna Fali PROPOSAL
Costa V BowleyRussiaAmy Elsner QUALIFIED
Greenwood G MacleadBrazilIvan Magalhaes NEW
Octavia H WieserItalyIvan Magalhaes NEW
Costa L WaycottJapanElwin Sharvill QUALIFIED
Kaitlin X OldroydSpainAsiya Javayant NEW
Juan A MarrierCanadaOnyama Limba NEGOTIATION
Ivar C WhobreyUnited KingdomAmy Elsner RENEWAL
Maria D WhobreyArgentinaIvan Magalhaes NEGOTIATION
Misaki A GauchoArgentinaOnyama Limba PROPOSAL
Silvio B DoeBrazilOnyama Limba NEW
Nicolas T DarakjyJapanStephen Shaw QUALIFIED
Morrow M GarufiIndiaElwin Sharvill RENEWAL
Costa A AlbaresRussiaAnna Fali UNQUALIFIED
Cody B DarakjyJapanOnyama Limba RENEWAL
Jefferson D CaudySpainIoni Bowcher NEW
Adams A RutaFranceAnna Fali QUALIFIED
Leon K InouyeGermanyBernardo Dominic QUALIFIED
Mayumi S CaldareraCanadaIoni Bowcher NEGOTIATION
David Z ChuiIndiaXuxue Feng RENEWAL
Adams D RutaCanadaBernardo Dominic QUALIFIED
Chavez S CaudyIndiaAmy Elsner UNQUALIFIED
Emily Y MacleadUnited KingdomStephen Shaw QUALIFIED
Munro W FerenczUnited KingdomAsiya Javayant RENEWAL
Nicolas E IturbideItalyXuxue Feng UNQUALIFIED
Emily T TollnerAustraliaStephen Shaw NEW
Misaki U RutaFranceAmy Elsner NEGOTIATION
Frozen Columns
Name
Jeanfrancois A Kolmetz
Nicolas V Foller
Tony E Campain
Johnson N Tollner
Leon R Ferencz
Jennifer W Shinko
Darci Q Vocelka
Cody A Ostrosky
Kadeem B Gillian
Deepesh D Morasca
Arvin D Butt
Maisha B Saylors
Julie T Bolognia
Deepesh G Sergi
Leon S Bolognia
Cody D Schemmer
Alejandro S Stockham
Rodrigues N Saylors
Costa O Vocelka
Francesco R Albares
Smith H Paprocki
Silvio O Poquette
Julie Z Ferencz
Emily K Stenseth
Munro E Malet
Nicolas X Bowley
Ricardo C Royster
Jefferson Z Albares
Arvin A Gillian
Silvio W Bowley
Maisha G Chui
Alejandro S Inouye
Jennifer C Foller
Rodrigues Z Ostrosky
Faith B Marrier
Costa I Paprocki
Sinclair N Oldroyd
Faith J Ferencz
Maria L Kusko
Maisha K Bowley
Ivar Y Slusarski
Antonio G Nicka
Silvio C Gaucho
Maisha F Malet
Maisha N Flosi
Arvin P Bolognia
Nicolas Z Whobrey
Jones R Royster
Maria D Kusko
Faith K Inouye
IdCountryDate
1000Australia2024-06-16
1001Canada2024-06-09
1002Germany2024-06-01
1003Spain2024-06-07
1004Canada2024-06-07
1005France2024-06-08
1006Brazil2024-06-06
1007Australia2024-05-27
1008India2024-06-15
1009Spain2024-06-14
1010Russia2024-06-10
1011Spain2024-05-31
1012Brazil2024-06-06
1013Germany2024-05-20
1014France2024-06-13
1015Argentina2024-05-27
1016Brazil2024-06-03
1017Japan2024-06-07
1018Spain2024-05-19
1019Argentina2024-06-03
1020India2024-06-02
1021Spain2024-05-27
1022Japan2024-05-22
1023Australia2024-06-11
1024Brazil2024-05-21
1025Spain2024-06-11
1026United Kingdom2024-06-08
1027Canada2024-05-20
1028Australia2024-05-24
1029Germany2024-06-08
1030Canada2024-05-24
1031France2024-05-24
1032Russia2024-06-13
1033France2024-05-24
1034Italy2024-06-14
1035Spain2024-06-06
1036Italy2024-06-01
1037Germany2024-06-04
1038United Kingdom2024-05-20
1039Brazil2024-06-15
1040Italy2024-06-14
1041Australia2024-06-17
1042Canada2024-06-06
1043Germany2024-06-10
1044Argentina2024-06-03
1045Argentina2024-05-31
1046Australia2024-06-17
1047Russia2024-05-19
1048Australia2024-05-22
1049Argentina2024-06-05

On-Demand Data

NameIdCountryDate
Chavez P Ferencz1000United Kingdom2024-06-08
Clifford Y Flosi1001Canada2024-05-26
Aika V Caudy1002Russia2024-06-14
Munro R Slusarski1003Japan2024-06-05
Johnson O Sergi1004Spain2024-06-12
Jeanfrancois T Poquette1005Russia2024-06-09
Jeanfrancois O Oldroyd1006India2024-05-30
Adams K Royster1007Australia2024-05-24
Kadeem F Ostrosky1008Canada2024-05-25
Smith Y Kusko1009Germany2024-06-10
Ashley G Ferencz1010Russia2024-06-14
Stacey O Royster1011United Kingdom2024-06-05
Misaki E Poquette1012Italy2024-06-10
Nicolas A Shinko1013Canada2024-05-26
Sinclair Z Ostrosky1014Germany2024-05-31
Darci X Waycott1015Japan2024-05-23
Mujtaba B Bowley1016Spain2024-06-03
Rodrigues U Wieser1017Spain2024-05-20
Aditya O Dilliard1018Japan2024-06-14
Munro A Ferencz1019Germany2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya Z NickaArgentinaAsiya Javayant PROPOSAL
Claire C DoeArgentinaIvan Magalhaes UNQUALIFIED
Ivar W ChuiIndiaIvan Magalhaes NEW
Munro B BowleyAustraliaAnna Fali QUALIFIED
Ashley O CaudyArgentinaElwin Sharvill RENEWAL
Salvatore C KuskoIndiaIvan Magalhaes QUALIFIED
Murillo T GauchoSpainAmy Elsner NEW
Ashley R SergiSpainAmy Elsner UNQUALIFIED
Ricardo K KolmetzFranceAsiya Javayant NEW
Smith M OldroydUnited KingdomIvan Magalhaes PROPOSAL
Antonio N WhobreyRussiaAnna Fali QUALIFIED
Nicolas K ButtGermanyXuxue Feng PROPOSAL
Francesco M RoysterSpainXuxue Feng NEW
Cody Y WieserIndiaStephen Shaw QUALIFIED
Maria E KuskoFranceOnyama Limba RENEWAL
Silvio E StockhamFranceElwin Sharvill UNQUALIFIED
Greenwood S GillianIndiaAnna Fali QUALIFIED
Leon D AmigonIndiaIvan Magalhaes UNQUALIFIED
Clifford D GillianJapanOnyama Limba QUALIFIED
Emily R AmigonCanadaOnyama Limba QUALIFIED
Emily M KolmetzUnited KingdomIvan Magalhaes QUALIFIED
Antonio Y MaletItalyBernardo Dominic PROPOSAL
Tony P GillianAustraliaAmy Elsner QUALIFIED
Jones X ButtGermanyBernardo Dominic QUALIFIED
Kadeem I AlbaresAustraliaOnyama Limba NEW
Aditya J SchemmerArgentinaAnna Fali NEGOTIATION
Aditya Y FerenczGermanyElwin Sharvill NEGOTIATION
Murillo F RutaIndiaOnyama Limba PROPOSAL
Kadeem E RoysterFranceAsiya Javayant NEW
Izzy M KolmetzSpainAnna Fali UNQUALIFIED
Kaitlin O FigeroaArgentinaStephen Shaw QUALIFIED
David V RutaArgentinaOnyama Limba NEW
Antonio D CaudyGermanyElwin Sharvill NEW
Jeanfrancois B SchemmerBrazilAsiya Javayant NEW
Faith T OldroydGermanyXuxue Feng PROPOSAL
Adams M GarufiAustraliaBernardo Dominic NEW
Mayumi U NestleJapanIvan Magalhaes RENEWAL
Aditya N InouyeGermanyAsiya Javayant NEW
Octavia Q KuskoCanadaAsiya Javayant UNQUALIFIED
Darci Z FollerAustraliaElwin 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>